Loading...
 

Table of contents

PlayGround

Tikiwiki on SuSE-based Linux Systems


This section is a start for a Page "Installing tikiwiki on SuSE-based Linux Systems".

Anon Checkout on sf.net

#!/bin/bash
# far from being usable
PN=${0##*/}
export CVSROOT=":pserver:anonymous@cvs.sourceforge.net:/cvsroot/tikiwiki"
BASE=`pwd`
LOGDIR=${BASE}/logs
tikiversions="1.10:tikiwiki 1.9:BRANCH-1-9"
cvsmode=${1:-update}
cvsclean()
{
   find . -type d -name "CVS" -exec rm -rf {} > /dev/null 2>&1 \;
   find . -type f -exec md5sum {} \; > ${LOGDIR}/md5sums.${jav%%*:}
}


bckold()
{
   local jav
   local iav
   printf "%s\n" "Backup old Data ..."
   [ ! -d old ] && mkdir old
   for iav in ${tikiversions} ; do
      jav=${iav%%:*}
      if [ -d ${jav} ]; then
         if [ "${removedirs}" = "yes" ]; then
            tar cf - ${jav} | ( cd old ; tar xf - )       
            rm -rf ${jav}
            mkdir ${jav}
         fi
      else
         [ "${removedirs}" = "no" ] && cvsmode=co
         mkdir ${BASE}/${jav}
      fi
   done
}


cvslogin()
{
   cvs login
   rc=$?
   return $rc
}

checkout()
{
   local a=${1:-`pwd`}
   local jav
   printf "%s\n" "Checkout"
   for jav in ${tikiversions} ; do
      printf "%s\n" "Checkout ${jav%%:*}"
      cd ${BASE}/${jav%%:*}
      echo ${jav##*:} | grep -i BRANCH >/dev/null 2>&1
      if [ $? -eq 0 ]; then
         cvsmode="${cvsmode} -r"
      fi
      cvs -z3 ${cvsmode} ${jav##*:} tikiwiki > ${LOGDIR}/logfile.${jav%%:*}
      [ $? -eq 0 ] && cvsclean
   done
}

#main()
[ "${cvsmode}" = "update" ] && removedirs=no || removedirs=yes
bckold
cvslogin
checkout ${BASE}

spec.file for tikiwiki 1.9.x on SuSE-based Linux Systems

# tikiwiki.spec
# version: 0.0.1

%define   is_suse    %([ -f /etc/SuSE-release ] && echo 1 || echo 0 )
%if %{is_suse} == 1
%define   SUSEVER %(awk ' /^VERSION/ { sub(/\./,""); print $NF }  ' /etc/SuSE-release  )
%endif
%if %{SUSEVER} < 30
%define is_sles 1
%define _mydist sles%{SUSEVER}
%else
%define is_sles 0
%define _mydist suse%{SUSEVER}
%endif
%define  name    tikiwiki
%define  sname   tiki
%define  version 1.9.2
%define  release 22%{_mydist}
%define  webroot /srv/www
%define  wwwowner wwwrun
%define  wwwgroup www
%define  usesetupsh  0
Summary:     A PHP based CMS/Groupware with a full WIKI environment
Name:        %{name}
Version:     %{version}
Release:     %{release}
Source:      http://prdownloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
License:     LGPL
Packager:    Frank Hollmann 
Group:       Applications/Internet
URL:         http://www.tiki.org
Requires:    webserver php mysql php-mysql
BuildArch:   noarch
BuildRoot:   %{_tmppath}/%{name}-root
Provides:    tikiwiki

%description
Tikiwiki is an opensource (LGPL), php-based, CMS/Groupware web application with a full wiki environment.



%prep

%setup -q

%build

%install
install -d -m0750 -o root -g root -p %{buildroot}%{webroot}
install -d -m0750 -o root -g root -p %{buildroot}%{webroot}/%{sname}-%{version}
# cleanup cvs tree
find . -type d -name *CVS* | xargs -- rm -rf >/dev/null 2>&1
find . -name ".cvsignore" -exec rm -f {} \;
rm -rf templates_c/*
rm -f modules/cache/*.cache
# copy  the files
tar cf - . | ( cd %{buildroot}/%{webroot}/%{sname}-%{version} ; tar xf - )
%clean
if [ -n %{buildroot} -a ! %{buildroot} = "/" ]; then
   rm -rf %{buildroot}
fi

%pre
# for SuSE only.
%if %{is_suse} == 0
    printf "%s\n" "This is a package for SuSE Distributions. Sorry for the unconveniance"
    exit 1
%endif

%post
cd %{webroot}/%{sname}-%{version}
if [  %{usesetupsh} -eq 0 ]; then
   if [ -f fixperms.sh ]; then
      sh ./fixperms.sh fix %{wwwowner} %{wwwgroup}
   fi
else
   if [ -f setup.sh ]; then
      chmod 700 setup.sh
      sh ./setup.sh %{wwwowner} %{wwwgroup}
   fi
fi

%preun
rm -rf templates_c/*
rm -f modules/cache/*.cache


%files
%defattr(-, %{wwwowner}, %{wwwgroup})
%doc README INSTALL fixperms.sh setup.sh
%{webroot}/%{sname}-%{version}/*


%changelog
* Tue Oct 04 2005 Frank Hollmann   1.9.2-1
- cvs tree used
- first package for SUSE

Created by: Last Modification: Friday 20 September 2019 16:55:39 GMT-0000 by drsassafras
List Slides