From bd6b56f2ab81a4f1a23c98e67b083ee519f27279 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Sat, 23 Mar 2013 03:07:53 -0300 Subject: gnome-{desktop2,menus},libtasn1,usermin,xsp,webmin: adding packages to [libre] repo due rebranding --- libre/gnome-desktop2/PKGBUILD | 35 +++++++ libre/gnome-menus/PKGBUILD | 36 +++++++ libre/gnome-menus/menus.patch | 25 +++++ libre/libtasn1/PKGBUILD | 36 +++++++ libre/libtasn1/libtasn1.install | 18 ++++ libre/usermin/PKGBUILD | 134 ++++++++++++++++++++++++ libre/usermin/usermin.install | 34 +++++++ libre/usermin/usermin.rc | 44 ++++++++ libre/usermin/usermin.service | 9 ++ libre/webmin/PKGBUILD | 221 ++++++++++++++++++++++++++++++++++++++++ libre/webmin/webmin.install | 35 +++++++ libre/webmin/webmin.rc | 46 +++++++++ libre/webmin/webmin.service | 11 ++ libre/xsp/PKGBUILD | 64 ++++++++++++ libre/xsp/xsp.conf.d | 10 ++ libre/xsp/xsp.install | 37 +++++++ libre/xsp/xsp.rc.d | 40 ++++++++ libre/xsp/xsp.service | 8 ++ libre/xsp/xsp.webapp | 8 ++ 19 files changed, 851 insertions(+) create mode 100644 libre/gnome-desktop2/PKGBUILD create mode 100644 libre/gnome-menus/PKGBUILD create mode 100644 libre/gnome-menus/menus.patch create mode 100644 libre/libtasn1/PKGBUILD create mode 100644 libre/libtasn1/libtasn1.install create mode 100644 libre/usermin/PKGBUILD create mode 100644 libre/usermin/usermin.install create mode 100644 libre/usermin/usermin.rc create mode 100644 libre/usermin/usermin.service create mode 100644 libre/webmin/PKGBUILD create mode 100644 libre/webmin/webmin.install create mode 100644 libre/webmin/webmin.rc create mode 100644 libre/webmin/webmin.service create mode 100644 libre/xsp/PKGBUILD create mode 100644 libre/xsp/xsp.conf.d create mode 100644 libre/xsp/xsp.install create mode 100644 libre/xsp/xsp.rc.d create mode 100644 libre/xsp/xsp.service create mode 100644 libre/xsp/xsp.webapp (limited to 'libre') diff --git a/libre/gnome-desktop2/PKGBUILD b/libre/gnome-desktop2/PKGBUILD new file mode 100644 index 000000000..e8744d4a4 --- /dev/null +++ b/libre/gnome-desktop2/PKGBUILD @@ -0,0 +1,35 @@ +# $Id$ +# Maintainer: Jan "heftig" Steffens +# Contributor: Jan de Groot + +_pkgname=gnome-desktop +pkgname=${_pkgname}2 +pkgver=2.32.1 +pkgrel=2.1 +pkgdesc="Library with common API for various GNOME modules (legacy version), Parabola rebranded" +arch=(i686 x86_64 mips64el) +license=(GPL LGPL) +depends=(gconf gtk2 startup-notification) +makedepends=(gnome-doc-utils intltool) +url="http://www.gnome.org" +options=(!libtool !emptydirs) +source=(http://ftp.gnome.org/pub/gnome/sources/$_pkgname/${pkgver%.*}/$_pkgname-$pkgver.tar.bz2) +sha256sums=('55cbecf67efe1fa1e57ac966520a7c46d799c8ba3c652a1219f60cafccb3739d') + +build() { + cd "$srcdir/$_pkgname-$pkgver" + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static \ + --with-gnome-distributor="Parabola GNU/Linux-libre" \ + --disable-scrollkeeper \ + --disable-gnome-about --disable-desktop-docs + + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' -e 's/ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then/ func_append compile_command " -Wl,-O1,--as-needed"\n func_append finalize_command " -Wl,-O1,--as-needed"\n\0/' libtool + + make +} + +package() { + cd "$srcdir/$_pkgname-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/libre/gnome-menus/PKGBUILD b/libre/gnome-menus/PKGBUILD new file mode 100644 index 000000000..186473b5b --- /dev/null +++ b/libre/gnome-menus/PKGBUILD @@ -0,0 +1,36 @@ +# $Id$ +# Maintainer: Jan de Groot + +pkgname=gnome-menus +pkgver=3.6.2 +pkgrel=1.1 +pkgdesc="GNOME menu specifications, Parabola rebranded" +arch=('i686' 'x86_64' 'mips64el') +depends=('glib2' 'python2-gobject') +makedepends=('intltool' 'gobject-introspection') +options=('!libtool') +license=('GPL' 'LGPL') +url="http://www.gnome.org" +source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz + menus.patch) +sha256sums=('f6cefb25ce3ca2a0e4cb43894089cc6079bf948230e99bc0e244b380fa84bf4f' + 'de14815d63ab98f999975680a8981702dee0f70d129d4d4fcf4778d966e67435') + +build() { + cd "$pkgname-$pkgver" + + patch -Np0 -i "$srcdir/menus.patch" + + PYTHON=/usr/bin/python2 ./configure \ + --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var --disable-static + make +} + +package(){ + cd "$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + + sed -i "1s|#!/usr/bin/env python$|&2|" \ + "$pkgdir/usr/lib/python2.7/site-packages/GMenuSimpleEditor/config.py" +} diff --git a/libre/gnome-menus/menus.patch b/libre/gnome-menus/menus.patch new file mode 100644 index 000000000..6648e09ec --- /dev/null +++ b/libre/gnome-menus/menus.patch @@ -0,0 +1,25 @@ +--- layout/applications.menu 2005-06-28 10:16:39.000000000 +0200 ++++ layout/applications.menu 2005-09-12 23:21:20.000000000 +0200 +@@ -7,7 +7,6 @@ + Applications.directory + + +- + /etc/X11/applnk + /usr/share/gnome/apps + +@@ -18,6 +17,14 @@ + + + ++ ++ ++ Parabola ++ Parabola.directory ++ ++ Parabola ++ ++ + + + Accessories diff --git a/libre/libtasn1/PKGBUILD b/libre/libtasn1/PKGBUILD new file mode 100644 index 000000000..2131a323b --- /dev/null +++ b/libre/libtasn1/PKGBUILD @@ -0,0 +1,36 @@ +# $Id$ +# Maintainer: Jan de Groot +# Contributor: judd + +pkgname=libtasn1 +pkgver=3.2 +pkgrel=1.1 +pkgdesc="The ASN.1 library used in GNUTLS, Parabola rebranded" +arch=('i686' 'x86_64' 'mips64el') +license=('GPL3' 'LGPL') +url="http://www.gnu.org/software/libtasn1/" +depends=('glibc' 'texinfo') +options=('!libtool') +install=libtasn1.install +source=(http://ftp.gnu.org/gnu/libtasn1/${pkgname}-${pkgver}.tar.gz{,.sig}) +md5sums=('1b07629163025b9693aae9b8957842b2' + '67bdae9b78ac7bbfa2ab24c7d46bd577') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr \ + --with-packager="Parabola GNU/Linux-libre" \ + --with-packager-bug-reports="https://labs.parabola.nu/" \ + --with-packager-version=${pkgver}-${pkgrel} + make +} + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + make check +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/libre/libtasn1/libtasn1.install b/libre/libtasn1/libtasn1.install new file mode 100644 index 000000000..2d1ecc09f --- /dev/null +++ b/libre/libtasn1/libtasn1.install @@ -0,0 +1,18 @@ +info_dir=/usr/share/info +info_files=(libtasn1.info) + +post_install() { + for f in ${info_files[@]}; do + install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + for f in ${info_files[@]}; do + install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null + done +} diff --git a/libre/usermin/PKGBUILD b/libre/usermin/PKGBUILD new file mode 100644 index 000000000..745718aec --- /dev/null +++ b/libre/usermin/PKGBUILD @@ -0,0 +1,134 @@ +# $Id$ +# Maintainer: Tobias Powalowski +pkgname=usermin +pkgver=1.540 +pkgrel=1.1 +pkgdesc="a web interface that can be used to easily perform tasks like reading mail, setting up SSH or configuring mail forwarding (Parabola branding)" +arch=(i686 x86_64 mips64el) +license=('custom:usermin') +url="http://www.webmin.com/" +depends=('perl' 'webmin') +makedepends=('perl-net-ssleay') +backup=('etc/usermin/miniserv.conf' 'etc/usermin/miniserv.users' 'etc/usermin/config' 'etc/usermin/usermin.cats' \ +'etc/usermin/at/config' \ +'etc/usermin/man/config' \ +'etc/usermin/ssh/config' \ +'etc/usermin/chfn/config' \ +'etc/usermin/cron/config' \ +'etc/usermin/file/config' \ +'etc/usermin/plan/config' \ +'etc/usermin/proc/config' \ +'etc/usermin/spam/config' \ +'etc/usermin/htaccess/config' \ +'etc/usermin/cshrc/config' \ +'etc/usermin/gnupg/config' \ +'etc/usermin/mysql/config' \ +'etc/usermin/quota/config' \ +'etc/usermin/shell/config' \ +'etc/usermin/theme/config' \ +'etc/usermin/mailbox/config' \ +'etc/usermin/schedule/config' \ +'etc/usermin/config' \ +'etc/usermin/commands/config' \ +'etc/usermin/htaccess-htpasswd/config' \ +'etc/usermin/forward/config' \ +'etc/usermin/telnet/config' \ +'etc/usermin/tunnel/config' \ +'etc/usermin/updown/config' \ +'etc/usermin/procmail/config' \ +'etc/usermin/fetchmail/config' \ +'etc/usermin/changepass/config' \ +'etc/usermin/language/config' \ +'etc/usermin/postgresql/config' \ +'etc/usermin/usermount/config' \ +) +install=usermin.install +source=(http://downloads.sourceforge.net/sourceforge/webadmin/$pkgname-$pkgver.tar.gz + usermin.rc + usermin.service + ftp://ftp.archlinux.org/other/usermin/usermin-config.tar.bz2) + +package() { + cd "$srcdir"/$pkgname-$pkgver + + # remove modules we do not support + + #remove config files from other distros + rm -f $(find . ! -name 'config-generic-linux' ! -name 'config-\*-linux' ! -name 'config-lib.pl' -name 'config-*') + + # remove caldera theme + rm -rf caldera + + # remove init-scripts from other distros + rm usermin-init + rm usermin-daemon + + # setting perl path + (find . -name '*.cgi' ; find . -name '*.pl') | perl perlpath.pl /usr/bin/perl - + + # create dirs + mkdir -p "$pkgdir"/opt/usermin + mkdir -p "$pkgdir"/var/log/usermin + mkdir -p "$pkgdir"/etc/usermin + + # install pam stuff + install -D -m 644 usermin-pam "$pkgdir"/etc/pam.d/usermin + + # remove other distros and add only Parabola GNU/Linux-libre don't change next line else it will not work! + rm os_list.txt + echo 'Parabola GNU/Linux-libre Any version generic-linux * -d "/etc/pacman.d"' >> os_list.txt + + # copy stuff to right dirs + cd "$srcdir"/$pkgname-$pkgver + cp -rp * "$pkgdir"/opt/usermin + cd "$srcdir"/usermin-config + cp -rfp * "$pkgdir"/opt/usermin + + # define parameters for setup.sh + config_dir="$pkgdir"/etc/usermin + var_dir="$pkgdir"/var/log/usermin + perl=/usr/bin/perl + autoos=1 + port=20000 + login=root + crypt="XXX" + ssl=1 + atboot=0 + nostart=1 + nochown=1 + autothird=1 + nouninstall=1 + noperlpath=1 + atbootyn=n + tempdir="$pkgdir"/tmp + export config_dir var_dir perl autoos port tempdir ssl nochown autothird nouninstall nostart noperlpath atbootyn login crypt + + # Fix setup.sh + sed -i -e 's:read atbootyn::g' -e 's:exit 13::g' "$pkgdir"/opt/usermin/setup.sh + "$pkgdir"/opt/usermin/setup.sh + + # Fixup the config files to use their real locations + sed -i 's:^pidfile=.*$:pidfile=/var/run/usermin.pid:' "$pkgdir"/etc/usermin/miniserv.conf + find "$pkgdir"/etc/usermin -type f -exec sed -i "s:$pkgdir::g" {} \; + + # make it only accessible by localhost + echo 'allow=127.0.0.1' >> "$pkgdir"/etc/usermin/miniserv.conf + + # enable user and password login + sed -i -e '/localauth/d' "$pkgdir"/etc/usermin/miniserv.conf + + #install systemd service file + install -D -m 644 "$srcdir"/usermin.service "$pkgdir"/usr/lib/systemd/system/usermin.service + + #install rc file + install -D -m 755 "$srcdir"/usermin.rc "$pkgdir"/etc/rc.d/usermin + + # delete temp dir + rm -r "$pkgdir"/tmp + #install license + install -m 644 -D "$srcdir"/$pkgname-$pkgver/LICENCE "$pkgdir"/usr/share/licenses/usermin/LICENCE +} +md5sums=('d29c9fdebab14c168c33bde8906efe21' + 'cfef4490cd1ef9517c0b39a7bd75c968' + 'a5bd5e5ee779f8a3cf3d776ca77ee36e' + 'ec37a79f948f778224550930d2a7ca07') diff --git a/libre/usermin/usermin.install b/libre/usermin/usermin.install new file mode 100644 index 000000000..3ace10ea2 --- /dev/null +++ b/libre/usermin/usermin.install @@ -0,0 +1,34 @@ +# arg 1: the new package version +post_install() { + local crypt=$(grep "^root:" ${ROOT}/etc/shadow | cut -f 2 -d :) + crypt=${crypt//\\/\\\\} + crypt=${crypt//\//\\\/} + sed -i "s/root:XXX/root:${crypt}/" /etc/usermin/miniserv.users +cat << EOF +Note: +==> It is not allowed to install 3rd party modules, or delete existing modules. +==> Please write your own PKGBUILDS for 3rd party modules and additional themes. +Setup: +==> To make usermin start at boot time, add usermin to rc.conf daemons +==> Point your web browser to http://localhost:20000 to use usermin. +==> To change the modules setup please use webmin. + +==> The access is restricted to localhost, if you want to connect from other locations +==> change /etc/usermin/miniserv.conf to something like that: allow=127.0.0.1 +==> If you want to have ssl encryption please install 'perl-net-ssleay' additional. +EOF +# fix man module + cd /opt/usermin/man + gzip -df $(find . -name '*.gz') +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + post_install $1 +} + +pre_remove() { + # uninstall unzipped files + rm -r /opt/usermin/man +} diff --git a/libre/usermin/usermin.rc b/libre/usermin/usermin.rc new file mode 100644 index 000000000..af365780a --- /dev/null +++ b/libre/usermin/usermin.rc @@ -0,0 +1,44 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +start=/etc/usermin/start +stop=/etc/usermin/stop +lockfile=/var/lock/usermin + +case "$1" in +'start') + stat_busy "Starting Usermin daemon" + $start >/dev/null 2>&1 /dev/null 2>&1 + stat_done + else + stat_fail +fi +;; + +'stop') + stat_busy "Stopping Usermin daemon" + $stop >/dev/null 2>&1 +pkgname=webmin +pkgver=1.620 +pkgrel=1.1 +pkgdesc="a web-based interface for system administration, Parabola rebranded" +arch=(i686 x86_64 mips64el) +license=('custom:webmin') +url="http://www.webmin.com/" +depends=('perl' 'perl-perl4-corelibs') +makedepends=('perl-net-ssleay') +backup=('etc/webmin/miniserv.conf' 'etc/webmin/miniserv.users' 'etc/webmin/config' 'etc/webmin/webmin.cats' \ +'etc/webmin/pacman/config' \ +'etc/webmin/at/config' \ +'etc/webmin/acl/config' \ +'etc/webmin/lvm/config' \ +'etc/webmin/net/config' \ +'etc/webmin/nis/config' \ +'etc/webmin/pam/config' \ +'etc/webmin/cron/config' \ +'etc/webmin/file/config' \ +'etc/webmin/grub/config' \ +'etc/webmin/init/config' \ +'etc/webmin/ipfw/config' \ +'etc/webmin/lilo/config' \ +'etc/webmin/proc/config' \ +'etc/webmin/raid/config' \ +'etc/webmin/spam/config' \ +'etc/webmin/sshd/config' \ +'etc/webmin/time/config' \ +'etc/webmin/cluster-passwd/config' \ +'etc/webmin/software/config' \ +'etc/webmin/webminlog/config' \ +'etc/webmin/cluster-webmin/config' \ +'etc/webmin/bind8/config' \ +'etc/webmin/dhcpd/config' \ +'etc/webmin/fdisk/config' \ +'etc/webmin/mount/config' \ +'etc/webmin/mysql/config' \ +'etc/webmin/quota/config' \ +'etc/webmin/samba/config' \ +'etc/webmin/shell/config' \ +'etc/webmin/squid/config' \ +'etc/webmin/adsl-client/config' \ +'etc/webmin/servers/config' \ +'etc/webmin/cluster-shell/config' \ +'etc/webmin/bandwidth/config' \ +'etc/webmin/ppp-client/config' \ +'etc/webmin/lpadmin/config' \ +'etc/webmin/apache/config' \ +'etc/webmin/firewall/config' \ +'etc/webmin/stunnel/config' \ +'etc/webmin/burner/config' \ +'etc/webmin/exports/config' \ +'etc/webmin/backup-config/config' \ +'etc/webmin/custom/config' \ +'etc/webmin/htaccess-htpasswd/config' \ +'etc/webmin/logrotate/config' \ +'etc/webmin/format/config' \ +'etc/webmin/fsdump/config' \ +'etc/webmin/passwd/config' \ +'etc/webmin/cluster-useradmin/config' \ +'etc/webmin/cluster-software/config' \ +'etc/webmin/cluster-copy/config' \ +'etc/webmin/cluster-cron/config' \ +'etc/webmin/telnet/config' \ +'etc/webmin/status/config' \ +'etc/webmin/syslog/config' \ +'etc/webmin/updown/config' \ +'etc/webmin/usermin/config' \ +'etc/webmin/webmin/config' \ +'etc/webmin/xinetd/config' \ +'etc/webmin/openslp/config' \ +'etc/webmin/procmail/config' \ +'etc/webmin/fetchmail/config' \ +'etc/webmin/postgresql/config' \ +'etc/webmin/useradmin/config' \ +'etc/webmin/mailboxes/config' \ +'etc/webmin/inittab/config' \ +'etc/webmin/change-user/config' \ +'etc/webmin/postfix/config' \ +'etc/webmin/proftpd/config' \ +'etc/webmin/pserver/config' \ +'etc/webmin/dnsadmin/config' ) +install=webmin.install +source=(http://downloads.sourceforge.net/sourceforge/webadmin/$pkgname-$pkgver.tar.gz + ftp://ftp.archlinux.org/other/webmin/webmin-config.tar.bz2 + ftp://ftp.archlinux.org/other/webmin/webmin-pacman.tar.bz2 + webmin.rc + webmin.service) +options=(!strip) + +package() { + # NOTE: USE --asroot build option to avoid fakeroot error! + cd "$srcdir"/$pkgname-$pkgver + # add patches from webmin.com + #for i in ../*.wbm + #do tar xvf $i + #done + #for i in ../*.wbt + #do tar xvf $i + #done + # delete stuff that's not needed + rm -f mount/freebsd-mounts* + rm -f mount/openbsd-mounts* + rm -f mount/macos-mounts* + + # remove modules we do not support + rm -rf {bacula-backup,ldap-useradmin,mon,sentry,frox,jabber,majordomo,qmail,sendmail,sarg,wuftpd,webalizer,inetd,ipsec,pap,pptp-client,pptp-server,shorewall,smart-status,vgetty,heartbeat,cfengine,cpan,sgiexports,hpuxexports,qmailadmin,bsdexports,dfsadmin} + + #remove config files from other distros + rm -f $(find . ! -name 'config-generic-linux' ! -name 'config-\*-linux' ! -name 'config-lib.pl' -name 'config-*') + + # remove caldera theme + rm -rf caldera + + # remove init-scripts from other distros + rm webmin-gentoo-init + rm webmin-init + rm webmin-caldera-init + rm webmin-daemon + + # remove update stuff to avoid problems with updating webmin,modules and themes without pacman + rm -f webmin/{update.cgi,update.pl,update_sched.cgi,upgrade.cgi,edit_upgrade.cgi,install_mod.cgi,delete_mod.cgi,install_theme.cgi} + rm -f usermin/{upgrade.cgi,update.cgi,update.pl,edit_upgrade.cgi,install_mod.cgi,delete_mod.cgi,install_theme.cgi} + + # remove modules add because we don't want files installed without pacman control + rm -f webmin/{install_mod.cgi,delete_mod.cgi} + + # setting perl path + (find . -name '*.cgi' ; find . -name '*.pl') | perl perlpath.pl /usr/bin/perl - + + # create dirs + mkdir -p "$pkgdir"/opt/webmin + mkdir -p "$pkgdir"/var/log/webmin + mkdir -p "$pkgdir"/etc/webmin + + # install pam stuff + install -D -m 644 webmin-pam "$pkgdir"/etc/pam.d/webmin + + # remove other distros and add only Parabola GNU/Linux-libre don't change next line else it will not work! + rm os_list.txt + echo 'Parabola GNU/linux-libre Any version generic-linux * -d "/etc/pacman.d"' >> os_list.txt + + # Add rc.conf support to boot and shutdown menu and lock editing of this module + cd init/ + sed -i -e 's:^local_down=.*:local_down=Parabola GNU/Linux-libre RC.CONF,3,None:g' $(find . ! -name 'config.info.pl' -name 'config.info*') + sed -i -e 's:^local_script=.*:local_script=Parabola GNU/Linux-libre RC.LOCAL,3,None:g' $(find . ! -name 'config.info.pl' -name 'config.info*') + sed -i -e 's:^index_downscript=.*:index_downscript=Parabola GNU/Linux-libre RC.CONF:g' lang/* + sed -i -e 's:^index_script=.*:index_script=Parabola GNU/Linux-libre RC.LOCAL:g' lang/* + sed -i -e 's:^noconfig=0:noconfig=1:g' defaultacl + + # Add pacman menu + cd "$srcdir"/$pkgname-$pkgver + cp -rf custom/ pacman + cp -rf mscstyle3/custom mscstyle3/pacman + sed -i -e 's:^noconfig=0:noconfig=1:g' -e 's:^edit=1:edit=0:g' pacman/defaultacl + sed -i -e '/desc/d' -e '/longdesc/d' pacman/module.info + sed -i -e 's:^name=Custom:name=Pacman:g' pacman/module.info + echo 'category=system' >> pacman/module.info + echo 'desc=Pacman' >> pacman/module.info + sed -i -e 's:^index_title=.*:index_title=Pacman:g' pacman/lang/* + + # copy stuff to right dirs + cd "$srcdir"/$pkgname-$pkgver + cp -rp * "$pkgdir"/opt/webmin + cd "$srcdir"/webmin-config + cp -rfp * "$pkgdir"/opt/webmin + + # define parameters for setup.sh + config_dir="$pkgdir"/etc/webmin + var_dir="$pkgdir"/var/log/webmin + perl=/usr/bin/perl + autoos=1 + port=10000 + login=root + crypt="XXX" + ssl=1 + atboot=0 + nostart=1 + nochown=1 + autothird=1 + nouninstall=1 + noperlpath=1 + atbootyn=n + tempdir="$pkgdir"/tmp + export config_dir var_dir perl autoos port tempdir login crypt ssl nochown autothird nouninstall nostart noperlpath atbootyn + + # Fix setup.sh + sed -i -e 's:read atbootyn::g' -e 's:exit 13::g' "$pkgdir"/opt/webmin/setup.sh + "$pkgdir"/opt/webmin/setup.sh + + # Fixup the config files to use their real locations + sed -i 's:^pidfile=.*$:pidfile=/var/run/webmin.pid:' "$pkgdir"/etc/webmin/miniserv.conf + find "$pkgdir"/etc/webmin -type f -exec sed -i "s:$pkgdir::g" {} \; + + # make it only accessible by localhost + echo 'allow=127.0.0.1' >> "$pkgdir"/etc/webmin/miniserv.conf + + # install pacman menu + cd "$srcdir"/webmin-pacman/config + cp -rfp * "$pkgdir"/etc/webmin/pacman + + #install rc file + install -D -m 755 "$srcdir"/webmin.rc "$pkgdir"/etc/rc.d/webmin + + # install systemd files + install -D -m 644 $srcdir/webmin.service $pkgdir/usr/lib/systemd/system/webmin.service + + # delete temp dir + rm -r "$pkgdir"/tmp + # change sticky bit + chmod 0644 $pkgdir/opt/webmin/man/config-generic-linux + # install license + install -m 644 -D "$srcdir"/$pkgname-$pkgver/LICENCE "$pkgdir"/usr/share/licenses/webmin/LICENCE +} +md5sums=('e93bc5057a5b7d7e31ecb2bb228d7044' + 'b0b3e3fb231a12e60165b6b4d604dcfa' + 'bfebb75bb94029b48c46b7f1ba1aa811' + 'c77dfcd621b417a7826d25f56a1e60ae' + 'fc29ecb6a5cd8c278abe054e60381095') diff --git a/libre/webmin/webmin.install b/libre/webmin/webmin.install new file mode 100644 index 000000000..efdd9291d --- /dev/null +++ b/libre/webmin/webmin.install @@ -0,0 +1,35 @@ +# arg 1: the new package version +post_install() { + local crypt=$(grep "^root:" ${ROOT}/etc/shadow | cut -f 2 -d :) + crypt=${crypt//\\/\\\\} + crypt=${crypt//\//\\\/} + sed -i "s/root:XXX/root:${crypt}/" /etc/webmin/miniserv.users + +cat << EOF +Note: +==> It is not allowed to install 3rd party modules, or delete existing modules. +==> Please write your own PKGBUILDS for 3rd party modules and additional themes. +Setup: +==> To make webmin start at boot time, add webmin to rc.conf daemons +==> Point your web browser to http://localhost:10000 to use webmin. +==> The access is restricted to localhost, if you want to connect from other locations +==> change /etc/webmin/miniserv.conf to something like that: allow=127.0.0.1 +==> If you want to have ssl encryption please install 'perl-net-ssleay' additional. +EOF +# fix man module + cd /opt/webmin/man + for i in $(find . -name '*.gz'); do + gzip -df $i + done +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + post_install $1 +} + +pre_remove() { + # uninstall unzipped files + rm -r /opt/webmin/man +} diff --git a/libre/webmin/webmin.rc b/libre/webmin/webmin.rc new file mode 100644 index 000000000..6aac8941d --- /dev/null +++ b/libre/webmin/webmin.rc @@ -0,0 +1,46 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +start=/etc/webmin/start +stop=/etc/webmin/stop +lockfile=/var/lock/webmin + +case "$1" in +'start') + stat_busy "Starting Webmin daemon" + $start >/dev/null 2>&1 /dev/null 2>&1 + add_daemon webmin + stat_done + else + stat_fail +fi +;; + +'stop') + stat_busy "Stopping Webmin daemon" + $stop >/dev/null 2>&1 +# Contributor: Tobias Kieslich + +pkgname=xsp +pkgver=2.10.2 +pkgrel=4.1 +pkgdesc="A simple webserver based on mono - provides ASP.NET support, Parabola branding" +arch=(i686 x86_64 mips64el) +license=('custom') +url="http://www.go-mono.com" +depends=('mono>=2.10.2' 'sqlite') +options=(!makeflags) +install=${pkgname}.install +source=(http://download.mono-project.com/sources/xsp/xsp-2.10.2.tar.bz2 + ${pkgname}.rc.d ${pkgname}.conf.d ${pkgname}.webapp ${pkgname}.service) + +build() { + # get rid of that .wapi errors; thanks to brice + export MONO_SHARED_DIR=${srcdir}/src/weird + mkdir -p "${MONO_SHARED_DIR}" + # import pathes + # build + cd ${srcdir}/${pkgname}-${pkgver} + #sed -i 's|/bin/sh|\0\nexport MONO_PATH=${MONO_PATH}:/opt/mono/lib/mono/1.0|' scripts/script.in + ./configure --prefix=/usr --sysconfdir=/etc + make || return 1 + # tweak the xsp shellscript to grab system dll's + for script in scripts/*2; do + sed -i 's|/usr/lib/mono/1.0|/usr/lib/mono/2.0|' $script + done + #destdir related bugfixes + sed -i 's|mkdir \$(datadir)|mkdir $(DESTDIR)$(datadir)|' test/2.0/treeview/Makefile + sed -i 's|gif \$(datadir)|gif $(DESTDIR)$(datadir)|' test/2.0/treeview/Makefile +} + +package(){ + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir}/ install + # move test files from share to arch' default html home + mkdir -p ${pkgdir}/srv/http/html + mv ${pkgdir}/usr/lib/xsp/test ${pkgdir}/srv/http/html/xsp + rm -rf ${pkgdir}/usr/share + chown -R http:http ${pkgdir}/srv/http/html/${pkgname} + + # install a deamon + install -D -m755 ${srcdir}/${pkgname}.rc.d \ + ${pkgdir}/etc/rc.d/${pkgname} + # install a deamon configurationfile + install -D -m644 ${srcdir}/$pkgname.conf.d \ + ${pkgdir}/etc/conf.d/${pkgname} + # install a xsp configuration home + install -D -m644 ${srcdir}/${pkgname}.webapp \ + ${pkgdir}/etc/${pkgname}/${pkgname}.webapp + install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/COPYING + # install systemd service file + install -D -m644 ${srcdir}/${pkgname}.service \ + ${pkgdir}/usr/lib/systemd/system/xsp.service +} +md5sums=('4fe62fc95ad5dc136d8a7f3299d523b6' + '9575bd7d6f64d51ba05bdd6370665858' + '35d921df0fefc30f47a438c95d420efc' + 'c917c07f68b945691506c29750db482f' + '9d83bd36d209f8d36a11dfbc4fa50819') diff --git a/libre/xsp/xsp.conf.d b/libre/xsp/xsp.conf.d new file mode 100644 index 000000000..b100baef1 --- /dev/null +++ b/libre/xsp/xsp.conf.d @@ -0,0 +1,10 @@ +# xsp options + + +# note that is just the helping app for mod_mono if you like production like +# quality +# xsp is for ASP testing mainly -- read the manpage for xsp to know what +# options are available. Parabola will provide xsp configured by a .webapp +# configuration file which rests in /etc/xsp + +XSP_PARAMS="--appconfigdir /etc/xsp" diff --git a/libre/xsp/xsp.install b/libre/xsp/xsp.install new file mode 100644 index 000000000..d2cc5955a --- /dev/null +++ b/libre/xsp/xsp.install @@ -0,0 +1,37 @@ +# arg 1: the new package version +post_install() { + cat << EOM + +--> xsp is just the helping app for mod_mono if you like a production like +--> server. xsp itself is for ASP testing mainly -- read the manpage for xsp +--> to know which options are available. +--> Parabola will provide xsp configured by a .webapp configuration file +--> which rests in /etc/xsp. Just put your other webapp files there to let +--> xsp pick them up. +--> xsp is commandline based configuration is done in /etc/conf.d/xsp. Set all +--> your arguments there. Don't forget that you can run xsp from the console +--> as oridinary user, which is safer and for testing absolutely sufficient!! + +--> You can run the testpages simply by starting the server and calling + http://localhost:8080 +--> from your browser's location bar + + +EOM +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + post_install $1 +} + +# arg 1: the old package version +pre_remove() { + /bin/true +} + +# arg 1: the old package version +post_remove() { + /bin/true +} diff --git a/libre/xsp/xsp.rc.d b/libre/xsp/xsp.rc.d new file mode 100644 index 000000000..b4fcda15c --- /dev/null +++ b/libre/xsp/xsp.rc.d @@ -0,0 +1,40 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +# source application-specific settings +[ -f /etc/conf.d/xsp ] && . /etc/conf.d/xsp + +PID=`pidof -o %PPID /usr/bin/mono` +case "$1" in + start) + stat_busy "Starting Xsp Daemon" + if [ -z "$PID" ]; then + /usr/bin/xsp $XSP_PARAMS --nonstop &> /dev/null & + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon xsp + stat_done + fi + ;; + stop) + stat_busy "Stopping Xsp Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon xsp + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/libre/xsp/xsp.service b/libre/xsp/xsp.service new file mode 100644 index 000000000..36b802e21 --- /dev/null +++ b/libre/xsp/xsp.service @@ -0,0 +1,8 @@ +[Unit] +Description=XSP Web Server + +[Service] +ExecStart=/usr/bin/xsp --appconfigdir /etc/xsp --nonstop + +[Install] +WantedBy=multi-user.target diff --git a/libre/xsp/xsp.webapp b/libre/xsp/xsp.webapp new file mode 100644 index 000000000..a685dd171 --- /dev/null +++ b/libre/xsp/xsp.webapp @@ -0,0 +1,8 @@ + + + Root + / + /srv/http/html/xsp + localhost + + -- cgit v1.2.3