diff options
author | root <root@rshg054.dnsready.net> | 2012-06-18 00:01:40 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-06-18 00:01:40 +0000 |
commit | 0838a7ed482f29ddf71cf05e7ec6cf7c2728ce34 (patch) | |
tree | c7eab7aecb6ae497d23cfa7074bffd060d5eb8fe | |
parent | 61f450a3578b7e51c337e1a687c0cef2bc07ff35 (diff) |
Mon Jun 18 00:01:40 UTC 2012
277 files changed, 10626 insertions, 340 deletions
diff --git a/community-staging/lxdm/PKGBUILD b/community-staging/lxdm/PKGBUILD new file mode 100644 index 000000000..a35c35f31 --- /dev/null +++ b/community-staging/lxdm/PKGBUILD @@ -0,0 +1,62 @@ +# $Id: PKGBUILD 72524 2012-06-16 08:50:39Z bpiotrowski $ +# Maintainer: Bartłomiej Piotrowski +# Contributor: AndyRTR <andyrtr@archlinux.org> +# Contributor: kiefer <jorgelmadrid@gmail.com> + +pkgname=lxdm +pkgver=0.4.1 +pkgrel=12 +pkgdesc='Lightweight X11 Display Manager' +arch=('i686' 'x86_64') +url="http://sourceforge.net/projects/lxdm/" +license=('GPL') +groups=('lxde') +depends=('gtk2' 'xorg-server' 'consolekit') +makedepends=('intltool') +install=${pkgname}.install +backup=('etc/lxdm/lxdm.conf' 'etc/pam.d/lxdm' 'etc/lxdm/Xsession' + 'etc/lxdm/PreLogin' 'etc/lxdm/LoginReady' 'etc/lxdm/PostLogin' + 'etc/lxdm/PostLogout' 'etc/lxdm/PreReboot' 'etc/lxdm/PreShutdown') +source=(http://downloads.sourceforge.net/lxde/$pkgname-$pkgver.tar.gz + glib2-2.32.0.patch lxdm.patch lxdm.conf.patch Xsession.patch + greeter-session.patch rc.d lxdm-pam service) +md5sums=('8da1cfc2be6dc9217c85a7cf51e1e821' + 'a1e3c46a8bef691bc544028f5b6cfe22' + 'baed9055e8825a5511712bc095197519' + 'c50dd01b715b0a236407d48066191601' + 'd2e4a4a22ee2aa1a986be154c647b6c6' + '28475239d0c8b4fd778ec49f5ec72962' + '705f394052fdd0dec22e95321d170de0' + 'b20fe3c8487a039050986d60e45233a9' + '4aaa9a7175cf327d9f7651c2586ef922') + +build() { + cd $srcdir/$pkgname-$pkgver + + patch -Np1 -i $srcdir/glib2-2.32.0.patch + patch -Np1 -i $srcdir/greeter-session.patch + + ./configure --sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib/lxdm + make + + patch -Np0 -i $srcdir/lxdm.patch + patch -Np0 -i $srcdir/lxdm.conf.patch + patch -Np0 -i $srcdir/Xsession.patch +} + + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install + + install -m644 $srcdir/lxdm-pam $pkgdir/etc/pam.d/lxdm + install -Dm755 $srcdir/rc.d $pkgdir/etc/rc.d/lxdm + install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/lxdm.service + install -d $pkgdir/var/{lib,run}/lxdm + + # fix the greeter location + sed -i -e 's/local\/libexec/lib\/lxdm/' $pkgdir/etc/lxdm/lxdm.conf + + # avoid conflict with filesystem>=2012.06 + rm -r $pkgdir/var/run +} diff --git a/community-staging/lxdm/Xsession.patch b/community-staging/lxdm/Xsession.patch new file mode 100644 index 000000000..035ff0383 --- /dev/null +++ b/community-staging/lxdm/Xsession.patch @@ -0,0 +1,11 @@ +--- data/Xsession.orig 2011-07-29 15:42:33.000000000 +0200 ++++ data/Xsession 2011-12-03 09:09:14.592876087 +0100 +@@ -9,6 +9,8 @@ + LXSESSION=/usr/bin/startlxde + fi + ++[ -f /etc/profile ] && . /etc/profile ++[ -f ~/.profile ] && . ~/.profile + [ -f /etc/xprofile ] && . /etc/xprofile + [ -f ~/.xprofile ] && . ~/.xprofile + diff --git a/community-staging/lxdm/glib2-2.32.0.patch b/community-staging/lxdm/glib2-2.32.0.patch new file mode 100644 index 000000000..cebfc6133 --- /dev/null +++ b/community-staging/lxdm/glib2-2.32.0.patch @@ -0,0 +1,21 @@ +From: dgod <dgod.osa@gmail.com> +Date: Sun, 25 Dec 2011 07:23:19 +0000 (+0800) +Subject: fix event check bug caused cpu 100% +X-Git-Url: http://lxde.git.sourceforge.net/git/gitweb.cgi?p=lxde%2Flxdm;a=commitdiff_plain;h=d4e41ecb;hp=f0951bdf736026b041001e846d2cb93f7f2852e1 + +fix event check bug caused cpu 100% +--- + +diff --git a/src/lxcom.c b/src/lxcom.c +index 02763eb..18ee12e 100644 +--- a/src/lxcom.c ++++ b/src/lxcom.c +@@ -89,7 +89,7 @@ static gboolean lxcom_prepare (GSource *source,gint *timeout) + + static gboolean lxcom_check(GSource *source) + { +- return TRUE; ++ return (((LXComSource*)source)->poll.revents&G_IO_IN)?TRUE:FALSE; + } + + static gboolean lxcom_dispatch (GSource *source,GSourceFunc callback,gpointer user_data) diff --git a/community-staging/lxdm/greeter-session.patch b/community-staging/lxdm/greeter-session.patch new file mode 100644 index 000000000..f3b94a57a --- /dev/null +++ b/community-staging/lxdm/greeter-session.patch @@ -0,0 +1,13 @@ +diff --git a/src/greeter.c b/src/greeter.c +index c0c150d..1f6b88e 100644 +--- a/src/greeter.c ++++ b/src/greeter.c +@@ -114,7 +114,7 @@ static char *get_session_exec(void) + GtkTreeModel* model; + GtkTreeIter it; + gchar *res; +- if(!lang) ++ if(!sessions) + return g_strdup(""); + + if(!gtk_combo_box_get_active_iter(GTK_COMBO_BOX(sessions), &it)) diff --git a/community-staging/lxdm/lxdm-pam b/community-staging/lxdm/lxdm-pam new file mode 100644 index 000000000..3f5df04a7 --- /dev/null +++ b/community-staging/lxdm/lxdm-pam @@ -0,0 +1,8 @@ +#%PAM-1.0 +auth requisite pam_nologin.so +auth required pam_env.so +auth required pam_unix.so +account required pam_unix.so +session required pam_limits.so +session required pam_unix.so +password required pam_unix.so diff --git a/community-staging/lxdm/lxdm.conf.patch b/community-staging/lxdm/lxdm.conf.patch new file mode 100644 index 000000000..1744e557e --- /dev/null +++ b/community-staging/lxdm/lxdm.conf.patch @@ -0,0 +1,11 @@ +--- data/lxdm.conf.orig 2011-11-01 17:57:59.208757577 +0100 ++++ data/lxdm.conf 2011-11-01 18:03:55.608741945 +0100 +@@ -27,7 +27,7 @@ + gtk_theme=Clearlooks + + ## background of the greeter +-bg=/usr/share/backgrounds/default.png ++# bg=/usr/share/backgrounds/default.png + + ## if show bottom pane + bottom_pane=1 diff --git a/community-staging/lxdm/lxdm.install b/community-staging/lxdm/lxdm.install new file mode 100644 index 000000000..eaf2339cd --- /dev/null +++ b/community-staging/lxdm/lxdm.install @@ -0,0 +1,24 @@ +pkgname=lxdm + +post_install() { + if [ -z "`getent group "lxdm" 2> /dev/null`" ]; then + groupadd lxdm + chown root:lxdm /etc/lxdm/lxdm.conf + fi + chown -R root:lxdm /var/lib/lxdm > /dev/null + chmod +r /etc/lxdm/lxdm.conf +} + +post_upgrade() { + post_install +} + +post_remove() { + getent group "lxdm" &>/dev/null && groupdel lxdm #1>/dev/null + return 0 +} + +op=$1 +shift + +$op "$@" diff --git a/community-staging/lxdm/lxdm.patch b/community-staging/lxdm/lxdm.patch new file mode 100644 index 000000000..a703a386d --- /dev/null +++ b/community-staging/lxdm/lxdm.patch @@ -0,0 +1,26 @@ +--- data/lxdm.orig 2010-01-24 16:58:42.262866825 -0200 ++++ data/lxdm 2010-01-19 11:56:34.308668692 -0200 +@@ -1,21 +1,13 @@ + #!/bin/sh + +-[ -f /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n +- +-if [ -z "$LANG" -a -e /etc/sysconfig/language ]; then +- . /etc/sysconfig/language +- if [ -n "$RC_LANG"]; then +- LANG=$RC_LANG +- fi ++if [ -r /etc/profile.d/locale.sh ]; then ++ . /etc/profile.d/locale.sh + fi + + if [ -n "$LANG" ]; then + export LANG + fi + +-[ -f /etc/sysconfig/desktop ] && . /etc/sysconfig/desktop +-[ -f /etc/sysconfig/windowmanager ] && . /etc/sysconfig/windowmanager +- + if [ -n "$DEFAULT_WM" ]; then + PREFERRED=$DEFAULT_WM + fi diff --git a/community-staging/lxdm/rc.d b/community-staging/lxdm/rc.d new file mode 100644 index 000000000..68eb6225d --- /dev/null +++ b/community-staging/lxdm/rc.d @@ -0,0 +1,36 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=$(pidof -o %PPID `which lxdm-binary`) +case "$1" in + start) + stat_busy "Starting LXDM Display Manager" + [ -z "$PID" ] && /usr/sbin/lxdm -d &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon lxdm + stat_done + fi + ;; + stop) + stat_busy "Stopping LXDM Display Manager" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon lxdm + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/community-staging/lxdm/service b/community-staging/lxdm/service new file mode 100644 index 000000000..b76e1190e --- /dev/null +++ b/community-staging/lxdm/service @@ -0,0 +1,9 @@ +[Unit] +Description=LXDE Display Manager +After=systemd-user-sessions.service + +[Service] +ExecStart=/usr/sbin/lxdm + +[Install] +WantedBy=graphical.target diff --git a/community-testing/chrony/PKGBUILD b/community-testing/chrony/PKGBUILD new file mode 100644 index 000000000..d066a606e --- /dev/null +++ b/community-testing/chrony/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 72549 2012-06-16 17:08:48Z dreisner $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> +# Contributor: Patrick Leslie Polzer <leslie.polzer@gmx.net> +# Contributor: cdhotfire <cdhotfire@gmail.com> +# Contributor: Shinlun Hsieh <yngwiexx@yahoo.com.tw> +# Contributor: Elisamuel Resto <ryuji@simplysam.us> + +pkgname=chrony +pkgver=1.26 +pkgrel=3 +pkgdesc='Lightweight NTP client and server' +arch=('i686' 'x86_64') +url="http://chrony.tuxfamily.org/" +options=('strip') +license=('GPL') +depends=('readline' 'libcap') +backup=('etc/chrony.conf') +source=(http://download.tuxfamily.org/chrony/${pkgname}-${pkgver}.tar.gz + rc.d + service) +md5sums=('ad6dd619ff1986e4ff780363c64e2246' + 'd8b653c8bcc76cef00aa10fbd3eeb4f7' + 'd78e6189c6f51a2af30a65bdedcdb2eb') + +build() { + cd $srcdir/$pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install + + install -Dm0644 $srcdir/$pkgname-$pkgver/examples/chrony.conf.example $pkgdir/etc/chrony.conf + install -Dm0755 $srcdir/rc.d $pkgdir/etc/rc.d/chrony + install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/chrony.service +} diff --git a/community-testing/chrony/rc.d b/community-testing/chrony/rc.d new file mode 100644 index 000000000..ec042d798 --- /dev/null +++ b/community-testing/chrony/rc.d @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/chronyd` +case "$1" in + start) + stat_busy "Starting chrony Daemon" + if [ -z "$PID" ]; then + /usr/sbin/chronyd $NTPD_ARGS & + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon chrony + stat_done + fi + ;; + stop) + stat_busy "Stopping chrony Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon chrony + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/community-testing/chrony/service b/community-testing/chrony/service new file mode 100644 index 000000000..8bc8da9d2 --- /dev/null +++ b/community-testing/chrony/service @@ -0,0 +1,10 @@ +[Unit] +Description=Chrony Network Time Daemon + +[Service] +Type=forking +ExecStart=/usr/sbin/chronyd +PIDFile=/var/run/chronyd.pid + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/dcron/PKGBUILD b/community-testing/dcron/PKGBUILD new file mode 100644 index 000000000..709124059 --- /dev/null +++ b/community-testing/dcron/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 72550 2012-06-16 17:08:55Z dreisner $ +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> +# Contributor: Paul Mattal <paul.archlinux.org> + +pkgname=dcron +pkgver=4.5 +pkgrel=3 +pkgdesc="dillon's lightweight cron daemon" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.jimpryor.net/linux/dcron.html" +backup=('var/spool/cron/root' 'etc/conf.d/crond') +depends=('bash') +provides=('cron') +conflicts=('cron') +optdepends=('smtp-server: sending cron job output via email') +install=$pkgname.install +source=(http://www.jimpryor.net/linux/releases/${pkgname}-${pkgver}.tar.gz + service) +md5sums=('078833f3281f96944fc30392b1888326' + '5a68a7aee883738e7f7f8549481bb297') + +build() { + cd "$srcdir/${pkgname}-${pkgver}" + + # by default, any member of group "users" can edit their own crontab + make \ + PREFIX=/usr \ + CRONTAB_GROUP=users \ + CRONTABS=/var/spool/cron \ + CRONSTAMPS=/var/spool/cronstamps +} + +package() { + cd "$srcdir/${pkgname}-${pkgver}" + make DESTDIR="$pkgdir" install + + # install standard configuration and scripts + install -d -m755 "$pkgdir/etc/cron."{hourly,daily,weekly,monthly} + + install -D -m755 extra/run-cron "$pkgdir/usr/sbin/run-cron" + install -D -m0600 extra/root.crontab "$pkgdir/var/spool/cron/root" + install -D -m755 extra/crond.rc "$pkgdir/etc/rc.d/crond" + install -D -m0644 extra/crond.conf "$pkgdir/etc/conf.d/crond" + install -D -m644 extra/crontab.vim "$pkgdir/usr/share/vim/vimfiles/ftplugin/crontab.vim" + sed -i -e 's=/var/spool/cron/cronstamps=/var/spool/cronstamps=' extra/prune-cronstamps + install -D -m755 extra/prune-cronstamps "$pkgdir/etc/cron.d/prune-cronstamps" + install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/dcron.service +} diff --git a/community-testing/dcron/dcron.install b/community-testing/dcron/dcron.install new file mode 100644 index 000000000..df23d0224 --- /dev/null +++ b/community-testing/dcron/dcron.install @@ -0,0 +1,6 @@ +post_upgrade() { + if [ $(vercmp $2 4.0) -lt 0 ] + then + echo "Restart crond, since you're upgrading to the dcron 4.x series." + fi +} diff --git a/community-testing/dcron/service b/community-testing/dcron/service new file mode 100644 index 000000000..59fc64b80 --- /dev/null +++ b/community-testing/dcron/service @@ -0,0 +1,10 @@ +[Unit] +Description=Periodic Command Scheduler + +[Service] +Type=forking +EnvironmentFile=/etc/conf.d/crond +ExecStart=/usr/sbin/crond $CROND_ARGS + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/exim/PKGBUILD b/community-testing/exim/PKGBUILD new file mode 100644 index 000000000..3016b5224 --- /dev/null +++ b/community-testing/exim/PKGBUILD @@ -0,0 +1,88 @@ +# $Id: PKGBUILD 72552 2012-06-16 17:09:24Z dreisner $ +# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> +# Contributor: Angel Velasquez <angvp@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +pkgname=exim +pkgver=4.80 +pkgrel=2 +pkgdesc="Message Transfer Agent" +arch=('x86_64' 'i686') +url='http://www.exim.org/' +license=('GPL') +backup=(etc/mail/aliases etc/mail/exim.conf etc/logrotate.d/exim etc/conf.d/exim) +install=exim.install +depends=('db' 'pcre' 'pam' 'openssl' 'libldap') +provides=('smtp-server') +conflicts=('smtp-server') +options=('!makeflags') +source=("http://mirror.switch.ch/ftp/mirror/exim/exim/exim4/exim-$pkgver.tar.bz2" + aliases + exim + exim.logrotate + exim.conf.d + exim.Makefile + exim-submission@.service + exim.service + exim@.service + exim.socket + exim-submission.socket) +sha256sums=('787b6defd37fa75311737bcfc42e9e2b2cc62c5d027eed35bb7d800b2d9a0984' + '932c9149b6809c70e94c1256e28325d197bbf80d27322793e217d4b692d49c5a' + '48457622b22de9721efe9f143a88e5f5ce833b792d2e757237b6cdb74a1708e6' + '7f1408f9c5d905968e665941f5c5efcf9da53e7a0bbef6c66220343bc2ae994b' + '0209c701f8696a9628d43c1684105eadd35d1caba199b94e3a54a4d26cecff01' + '7d1e062c907a06293eee40a3139f70c74a055374b234fb8c431ea68362bdda55' + '32def7387aaa040b994c0d399c6053dc42d9da4c8c8f0a34d33da653be27e324' + '99aaf3c960396fc08ec918fdca1cf73850960f6c519982d1a653f2e673754445' + '0436411932d6b6268db54a84e4ffc209bde0fa7567442d8e3d138557eeccbad4' + '3e3d8b6be2741d2587a496196c08b3f2ffa05b5803b2bf9fb49359cef3a98d26' + 'd3bb58f0fbeaaa33c812a823708664bbcd828da7d24e2a098f84a15aee443fee') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + cp "$srcdir/$pkgname.Makefile" Local/Makefile + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + install -Dm0644 $srcdir/exim.logrotate "${pkgdir}/etc/logrotate.d/exim" + install -Dm0644 $srcdir/exim.conf.d "${pkgdir}/etc/conf.d/exim" + install -Dm0644 doc/exim.8 "${pkgdir}/usr/share/man/man8/exim.8" + install -Dm0755 $srcdir/exim "${pkgdir}/etc/rc.d/exim" + + mkdir -p "${pkgdir}/var/spool/exim/db" "${pkgdir}/etc/mail" \ + "${pkgdir}/var/log/exim" "${pkgdir}/usr"/{lib,sbin} + + chmod 770 "${pkgdir}/var/spool/exim" "${pkgdir}/var/spool/exim/db" "${pkgdir}/var/log/exim" + + cd build-Linux-* + for i in exicyclog exim_checkaccess exim_dumpdb exim_lock exim_tidydb exipick exiqsumm exigrep \ + exim_dbmbuild exim exim_fixdb eximstats exinext exiqgrep exiwhat; do + install -m0755 "$i" "$pkgdir/usr/sbin" + done + + cd "$srcdir/exim-$pkgver/src" + sed -e "s|/etc/aliases|/etc/mail/aliases|g" -e "s|SYSTEM_ALIASES_FILE|/etc/mail/aliases|g" \ + configure.default > "$pkgdir/etc/mail/exim.conf" + + cp "$srcdir/aliases" "$pkgdir/etc/mail" + + cd "$pkgdir/usr/sbin" + for i in mailq rmail rsmtp runq sendmail; do + ln -s exim "$i" + done + # fhs compliancy + ln -s ../sbin/exim ../lib/sendmail + + install -Dm0644 "$srcdir/exim-submission@.service" \ + "${pkgdir}/usr/lib/systemd/system/exim-submission@.service" + install -Dm0644 "$srcdir/exim.service" "${pkgdir}/usr/lib/systemd/system/exim.service" + install -Dm0644 "$srcdir/exim@.service" "${pkgdir}/usr/lib/systemd/system/exim@.service" + install -Dm0644 "$srcdir/exim.socket" "${pkgdir}/usr/lib/systemd/system/exim.socket" + install -Dm0644 "$srcdir/exim-submission.socket" \ + "${pkgdir}/usr/lib/systemd/system/exim-submission.socket" +} diff --git a/community-testing/exim/aliases b/community-testing/exim/aliases new file mode 100644 index 000000000..5a76ff7d5 --- /dev/null +++ b/community-testing/exim/aliases @@ -0,0 +1,35 @@ +# +# /etc/mail/aliases +# +# NOTE: Make sure you run 'newaliases' after modifying this file +# + +# Basic system aliases -- these MUST be present. +MAILER-DAEMON: postmaster +postmaster: root +hostmaster: root +webmaster: hostmaster +ftpmaster: hostmaster +admin: hostmaster +administrator: hostmaster + +# General redirections for pseudo accounts. +bin: root +daemon: root +games: root +ingres: root +nobody: root +system: root +toor: root +uucp: root + +# Well-known aliases. +manager: root +dumper: root +operator: root + +# trap decode to catch security attacks +decode: root + +# Person who should get root's mail +#root: diff --git a/community-testing/exim/exim b/community-testing/exim/exim new file mode 100644 index 000000000..8e9640b32 --- /dev/null +++ b/community-testing/exim/exim @@ -0,0 +1,42 @@ +#!/bin/bash + +# source application-specific settings +[ -f /etc/conf.d/exim ] && . /etc/conf.d/exim + +# general config +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/exim` + +case "$1" in + start) + stat_busy "Starting Exim" + [ -z "$PID" ] && /usr/sbin/exim $EXIM_ARGS + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon exim + stat_done + fi + ;; + stop) + stat_busy "Stopping Exim" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm /var/run/exim.pid + rm_daemon exim + stat_done + fi + ;; + restart) + $0 stop + sleep 2 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/community-testing/exim/exim-submission.socket b/community-testing/exim/exim-submission.socket new file mode 100644 index 000000000..b9593e2ef --- /dev/null +++ b/community-testing/exim/exim-submission.socket @@ -0,0 +1,10 @@ +[Unit] +Description=Exim Mail Transfer Agent (message submission) +Conflicts=exim.service + +[Socket] +ListenStream=587 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/community-testing/exim/exim-submission@.service b/community-testing/exim/exim-submission@.service new file mode 100644 index 000000000..8b1d056a8 --- /dev/null +++ b/community-testing/exim/exim-submission@.service @@ -0,0 +1,11 @@ +# It doesn't make sense for this to be separate from exim@.service +# However, I couldn't think of a way to have two .socket files point +# to it ([Socket] Service= is rejected if Accept=yes is set). + +[Unit] +Description=Exim Mail Daemon per-connection server (message submission) + +[Service] +ExecStart=-/usr/sbin/exim -bs +StandardInput=socket +StandardError=syslog diff --git a/community-testing/exim/exim.Makefile b/community-testing/exim/exim.Makefile new file mode 100644 index 000000000..a304ce829 --- /dev/null +++ b/community-testing/exim/exim.Makefile @@ -0,0 +1,1227 @@ +# $Cambridge: exim/src/src/EDITME,v 1.27 2010/06/12 15:21:25 jetmore Exp $ + +################################################## +# The Exim mail transport agent # +################################################## + +# This is the template for Exim's main build-time configuration file. It +# contains settings that are independent of any operating system. These are +# things that are mostly sysadmin choices. The items below are divided into +# those you must specify, those you probably want to specify, those you might +# often want to specify, and those that you almost never need to mention. + +# Edit this file and save the result to a file called Local/Makefile within the +# Exim distribution directory before running the "make" command. + +# Things that depend on the operating system have default settings in +# OS/Makefile-Default, but these are overridden for some OS by files called +# called OS/Makefile-<osname>. You can further override these by creating files +# called Local/Makefile-<osname>, where "<osname>" stands for the name of your +# operating system - look at the names in the OS directory to see which names +# are recognized. + +# However, if you are building Exim for a single OS only, you don't need to +# worry about setting up Local/Makefile-<osname>. Any build-time configuration +# settings you require can in fact be placed in the one file called +# Local/Makefile. It is only if you are building for several OS from the same +# source files that you need to worry about splitting off your own OS-dependent +# settings into separate files. (There's more explanation about how this all +# works in the toplevel README file, under "Modifying the building process", as +# well as in the Exim specification.) + +# One OS-specific thing that may need to be changed is the command for running +# the C compiler; the overall default is gcc, but some OS Makefiles specify cc. +# You can override anything that is set by putting CC=whatever in your +# Local/Makefile. + +# NOTE: You should never need to edit any of the distributed Makefiles; all +# overriding can be done in your Local/Makefile(s). This will make it easier +# for you when the next release comes along. + +# The location of the X11 libraries is something else that is quite variable +# even between different versions of the same operating system (and indeed +# there are different versions of X11 as well, of course). The four settings +# concerned here are X11, XINCLUDE, XLFLAGS (linking flags) and X11_LD_LIB +# (dynamic run-time library). You need not worry about X11 unless you want to +# compile the Exim monitor utility. Exim itself does not use X11. + +# Another area of variability between systems is the type and location of the +# DBM library package. Exim has support for ndbm, gdbm, tdb, and Berkeley DB. +# By default the code assumes ndbm; this often works with gdbm or DB, provided +# they are correctly installed, via their compatibility interfaces. However, +# Exim can also be configured to use the native calls for Berkeley DB (obsolete +# versions 1.85, 2.x, 3.x, or the current 4.x version) and also for gdbm. + +# For some operating systems, a default DBM library (other than ndbm) is +# selected by a setting in the OS-specific Makefile. Most modern OS now have +# a DBM library installed as standard, and in many cases this will be selected +# for you by the OS-specific configuration. If Exim compiles without any +# problems, you probably do not have to worry about the DBM library. If you +# do want or need to change it, you should first read the discussion in the +# file doc/dbm.discuss.txt, which also contains instructions for testing Exim's +# interface to the DBM library. + +# In Local/Makefiles blank lines and lines starting with # are ignored. It is +# also permitted to use the # character to add a comment to a setting, for +# example +# +# EXIM_GID=42 # the "mail" group +# +# However, with some versions of "make" this works only if there is no white +# space between the end of the setting and the #, so perhaps it is best +# avoided. A consequence of this facility is that it is not possible to have +# the # character present in any setting, but I can't think of any cases where +# this would be wanted. +############################################################################### + + + +############################################################################### +# THESE ARE THINGS YOU MUST SPECIFY # +############################################################################### + +# Exim will not build unless you specify BIN_DIRECTORY, CONFIGURE_FILE, and +# EXIM_USER. You also need EXIM_GROUP if EXIM_USER specifies a uid by number. + +# If you don't specify SPOOL_DIRECTORY, Exim won't fail to build. However, it +# really is a very good idea to specify it here rather than at run time. This +# is particularly true if you let the logs go to their default location in the +# spool directory, because it means that the location of the logs is known +# before Exim has read the run time configuration file. + +#------------------------------------------------------------------------------ +# BIN_DIRECTORY defines where the exim binary will be installed by "make +# install". The path is also used internally by Exim when it needs to re-invoke +# itself, either to send an error message, or to recover root privilege. Exim's +# utility binaries and scripts are also installed in this directory. There is +# no "standard" place for the binary directory. Some people like to keep all +# the Exim files under one directory such as /usr/exim; others just let the +# Exim binaries go into an existing directory such as /usr/sbin or +# /usr/local/sbin. The installation script will try to create this directory, +# and any superior directories, if they do not exist. + +BIN_DIRECTORY=/usr/sbin + + +#------------------------------------------------------------------------------ +# CONFIGURE_FILE defines where Exim's run time configuration file is to be +# found. It is the complete pathname for the file, not just a directory. The +# location of all other run time files and directories can be changed in the +# run time configuration file. There is a lot of variety in the choice of +# location in different OS, and in the preferences of different sysadmins. Some +# common locations are in /etc or /etc/mail or /usr/local/etc or +# /usr/local/etc/mail. Another possibility is to keep all the Exim files under +# a single directory such as /usr/exim. Whatever you choose, the installation +# script will try to make the directory and any superior directories if they +# don't exist. It will also install a default runtime configuration if this +# file does not exist. + +CONFIGURE_FILE=/etc/mail/exim.conf + +# It is possible to specify a colon-separated list of files for CONFIGURE_FILE. +# In this case, Exim will use the first of them that exists when it is run. +# However, if a list is specified, the installation script no longer tries to +# make superior directories or to install a default runtime configuration. + + +#------------------------------------------------------------------------------ +# The Exim binary must normally be setuid root, so that it starts executing as +# root, but (depending on the options with which it is called) it does not +# always need to retain the root privilege. These settings define the user and +# group that is used for Exim processes when they no longer need to be root. In +# particular, this applies when receiving messages and when doing remote +# deliveries. (Local deliveries run as various non-root users, typically as the +# owner of a local mailbox.) Specifying these values as root is not supported. + +EXIM_USER=ref:exim + +# If you specify EXIM_USER as a name, this is looked up at build time, and the +# uid number is built into the binary. However, you can specify that this +# lookup is deferred until runtime. In this case, it is the name that is built +# into the binary. You can do this by a setting of the form: + +# EXIM_USER=ref:exim + +# In other words, put "ref:" in front of the user name. If you set EXIM_USER +# like this, any value specified for EXIM_GROUP is also passed "by reference". +# Although this costs a bit of resource at runtime, it is convenient to use +# this feature when building binaries that are to be run on multiple systems +# where the name may refer to different uids. It also allows you to build Exim +# on a system where there is no Exim user defined. + +# If the setting of EXIM_USER is numeric (e.g. EXIM_USER=42), there must +# also be a setting of EXIM_GROUP. If, on the other hand, you use a name +# for EXIM_USER (e.g. EXIM_USER=exim), you don't need to set EXIM_GROUP unless +# you want to use a group other than the default group for the given user. + +# EXIM_GROUP= + +# Many sites define a user called "exim", with an appropriate default group, +# and use +# +# EXIM_USER=exim +# +# while leaving EXIM_GROUP unspecified (commented out). + + +#------------------------------------------------------------------------------ +# SPOOL_DIRECTORY defines the directory where all the data for messages in +# transit is kept. It is strongly recommended that you define it here, though +# it is possible to leave this till the run time configuration. + +# Exim creates the spool directory if it does not exist. The owner and group +# will be those defined by EXIM_USER and EXIM_GROUP, and this also applies to +# all the files and directories that are created in the spool directory. + +# Almost all installations choose this: + +SPOOL_DIRECTORY=/var/spool/exim + + + +############################################################################### +# THESE ARE THINGS YOU PROBABLY WANT TO SPECIFY # +############################################################################### + +# If you need extra header file search paths on all compiles, put the -I +# options in INCLUDE. If you want the extra searches only for certain +# parts of the build, see more specific xxx_INCLUDE variables below. + +# INCLUDE=-I/example/include + +# You need to specify some routers and transports if you want the Exim that you +# are building to be capable of delivering mail. You almost certainly need at +# least one type of lookup. You should consider whether you want to build +# the Exim monitor or not. + + +#------------------------------------------------------------------------------ +# These settings determine which individual router drivers are included in the +# Exim binary. There are no defaults in the code; those routers that are wanted +# must be defined here by setting the appropriate variables to the value "yes". +# Including a router in the binary does not cause it to be used automatically. +# It has also to be configured in the run time configuration file. By +# commenting out those you know you don't want to use, you can make the binary +# a bit smaller. If you are unsure, leave all of these included for now. + +ROUTER_ACCEPT=yes +ROUTER_DNSLOOKUP=yes +ROUTER_IPLITERAL=yes +ROUTER_MANUALROUTE=yes +ROUTER_QUERYPROGRAM=yes +ROUTER_REDIRECT=yes + +# This one is very special-purpose, so is not included by default. + +# ROUTER_IPLOOKUP=yes + + +#------------------------------------------------------------------------------ +# These settings determine which individual transport drivers are included in +# the Exim binary. There are no defaults; those transports that are wanted must +# be defined here by setting the appropriate variables to the value "yes". +# Including a transport in the binary does not cause it to be used +# automatically. It has also to be configured in the run time configuration +# file. By commenting out those you know you don't want to use, you can make +# the binary a bit smaller. If you are unsure, leave all of these included for +# now. + +TRANSPORT_APPENDFILE=yes +TRANSPORT_AUTOREPLY=yes +TRANSPORT_PIPE=yes +TRANSPORT_SMTP=yes + +# This one is special-purpose, and commonly not required, so it is not +# included by default. + +TRANSPORT_LMTP=yes + + +#------------------------------------------------------------------------------ +# The appendfile transport can write messages to local mailboxes in a number +# of formats. The code for three specialist formats, maildir, mailstore, and +# MBX, is included only when requested. If you do not know what this is about, +# leave these settings commented out. + +SUPPORT_MAILDIR=yes +# SUPPORT_MAILSTORE=yes +# SUPPORT_MBX=yes + + +#------------------------------------------------------------------------------ +# See below for dynamic lookup modules. +# LOOKUP_MODULE_DIR=/usr/lib/exim/lookups/ +# If not using package management but using this anyway, then think about how +# you perform upgrades and revert them. You should consider the benefit of +# embedding the Exim version number into LOOKUP_MODULE_DIR, so that you can +# maintain two concurrent sets of modules. + +# To build a module dynamically, you'll need to define CFLAGS_DYNAMIC for +# your platform. Eg: +# CFLAGS_DYNAMIC=-shared -rdynamic +# CFLAGS_DYNAMIC=-shared -rdynamic -fPIC + +#------------------------------------------------------------------------------ +# These settings determine which file and database lookup methods are included +# in the binary. See the manual chapter entitled "File and database lookups" +# for discussion. DBM and lsearch (linear search) are included by default. If +# you are unsure about the others, leave them commented out for now. +# LOOKUP_DNSDB does *not* refer to general mail routing using the DNS. It is +# for the specialist case of using the DNS as a general database facility (not +# common). +# If set to "2" instead of "yes" then the corresponding lookup will be +# built as a module and must be installed into LOOKUP_MODULE_DIR. You need to +# add -export-dynamic -rdynamic to EXTRALIBS. You may also need to add -ldl to +# EXTRALIBS so that dlopen() is available to Exim. You need to define +# LOOKUP_MODULE_DIR above so the exim binary actually loads dynamic lookup +# modules. +# Also, instead of adding all the libraries/includes to LOOKUP_INCLUDE and +# LOOKUP_LIBS, add them to the respective LOOKUP_*_INCLUDE and LOOKUP_*_LIBS +# (where * is the name as given here in this list). That ensures that only +# the dynamic library and not the exim binary will be linked against the +# library. +# NOTE: LDAP cannot be built as a module! + +LOOKUP_DBM=yes +LOOKUP_LSEARCH=yes +LOOKUP_DNSDB=yes + +# LOOKUP_CDB=yes +LOOKUP_DSEARCH=yes +# LOOKUP_IBASE=yes +LOOKUP_LDAP=yes +# LOOKUP_MYSQL=yes +# LOOKUP_NIS=yes +# LOOKUP_NISPLUS=yes +# LOOKUP_ORACLE=yes +# LOOKUP_PASSWD=yes +# LOOKUP_PGSQL=yes +# LOOKUP_SQLITE=yes +# LOOKUP_WHOSON=yes + +# These two settings are obsolete; all three lookups are compiled when +# LOOKUP_LSEARCH is enabled. However, we retain these for backward +# compatibility. Setting one forces LOOKUP_LSEARCH if it is not set. + +# LOOKUP_WILDLSEARCH=yes +# LOOKUP_NWILDLSEARCH=yes + + +#------------------------------------------------------------------------------ +# If you have set LOOKUP_LDAP=yes, you should set LDAP_LIB_TYPE to indicate +# which LDAP library you have. Unfortunately, though most of their functions +# are the same, there are minor differences. Currently Exim knows about four +# LDAP libraries: the one from the University of Michigan (also known as +# OpenLDAP 1), OpenLDAP 2, the Netscape SDK library, and the library that comes +# with Solaris 7 onwards. Uncomment whichever of these you are using. + +# LDAP_LIB_TYPE=OPENLDAP1 +LDAP_LIB_TYPE=OPENLDAP2 +# LDAP_LIB_TYPE=NETSCAPE +# LDAP_LIB_TYPE=SOLARIS + +# If you don't set any of these, Exim assumes the original University of +# Michigan (OpenLDAP 1) library. + + +#------------------------------------------------------------------------------ +# The PCRE library is required for exim. There is no longer an embedded +# version of the PCRE library included with the source code, instead you +# must use a system library or build your own copy of PCRE. +# In either case you must specify the library link info here. If the +# PCRE header files are not in the standard search path you must also +# modify the INCLUDE path (above) +# The default setting of PCRE_LIBS should work on the vast majority of +# systems + +PCRE_LIBS=-lpcre + + +#------------------------------------------------------------------------------ +# Additional libraries and include directories may be required for some +# lookup styles (e.g. LDAP, MYSQL or PGSQL). LOOKUP_LIBS is included only on +# the command for linking Exim itself, not on any auxiliary programs. You +# don't need to set LOOKUP_INCLUDE if the relevant directories are already +# specified in INCLUDE. The settings below are just examples; -lpq is for +# PostgreSQL, -lgds is for Interbase, -lsqlite3 is for SQLite. + +# LOOKUP_INCLUDE=-I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include +# LOOKUP_LIBS=-L/usr/local/lib -lldap -llber -lmysqlclient -lpq -lgds -lsqlite3 + + +#------------------------------------------------------------------------------ +# Compiling the Exim monitor: If you want to compile the Exim monitor, a +# program that requires an X11 display, then EXIM_MONITOR should be set to the +# value "eximon.bin". Comment out this setting to disable compilation of the +# monitor. The locations of various X11 directories for libraries and include +# files are defaulted in the OS/Makefile-Default file, but can be overridden in +# local OS-specific make files. + + + + +#------------------------------------------------------------------------------ +# Compiling Exim with content scanning support: If you want to compile Exim +# with support for message body content scanning, set WITH_CONTENT_SCAN to +# the value "yes". This will give you malware and spam scanning in the DATA ACL, +# and the MIME ACL. Please read the documentation to learn more about these +# features. + +WITH_CONTENT_SCAN=yes + +# If you want to use the deprecated "demime" condition in the DATA ACL, +# uncomment the line below. Doing so will also explicitly turn on the +# WITH_CONTENT_SCAN option. If possible, use the MIME ACL instead of +# the "demime" condition. + +WITH_OLD_DEMIME=yes + +# If you're using ClamAV and are backporting fixes to an old version, instead +# of staying current (which is the more usual approach) then you may need to +# use an older API which uses a STREAM command, now deprecated, instead of +# zINSTREAM. If you need to set this, please let the Exim developers know, as +# if nobody reports a need for it, we'll remove this option and clean up the +# code. zINSTREAM was introduced with ClamAV 0.95. +# +# WITH_OLD_CLAMAV_STREAM=yes + +#------------------------------------------------------------------------------ +# By default Exim includes code to support DKIM (DomainKeys Identified +# Mail, RFC4871) signing and verification. Verification of signatures is +# turned on by default. See the spec for information on conditionally +# disabling it. To disable the inclusion of the entire feature, set +# DISABLE_DKIM to "yes" + +# DISABLE_DKIM=yes + + +#------------------------------------------------------------------------------ +# Compiling Exim with experimental features. These are documented in +# experimental-spec.txt. "Experimental" means that the way these features are +# implemented may still change. Backward compatibility is not guaranteed. + +# Uncomment the following lines to add SPF support. You need to have libspf2 +# installed on your system (www.libspf2.org). Depending on where it is installed +# you may have to edit the CFLAGS and LDFLAGS lines. + +# EXPERIMENTAL_SPF=yes +# CFLAGS += -I/usr/local/include +# LDFLAGS += -lspf2 + +# Uncomment the following lines to add SRS (Sender rewriting scheme) support. +# You need to have libsrs_alt installed on your system (srs.mirtol.com). +# Depending on where it is installed you may have to edit the CFLAGS and +# LDFLAGS lines. + +# EXPERIMENTAL_SRS=yes +# CFLAGS += -I/usr/local/include +# LDFLAGS += -lsrs_alt + +# Uncomment the following lines to add Brightmail AntiSpam support. You need +# to have the Brightmail client SDK installed. Please check the experimental +# documentation for implementation details. You need to edit the CFLAGS and +# LDFLAGS lines. + +# EXPERIMENTAL_BRIGHTMAIL=yes +# CFLAGS += -I/opt/brightmail/bsdk-6.0/include +# LDFLAGS += -lxml2_single -lbmiclient_single -L/opt/brightmail/bsdk-6.0/lib + + + +############################################################################### +# THESE ARE THINGS YOU MIGHT WANT TO SPECIFY # +############################################################################### + +# The items in this section are those that are commonly changed according to +# the sysadmin's preferences, but whose defaults are often acceptable. The +# first five are concerned with security issues, where differing levels of +# paranoia are appropriate in different environments. Sysadmins also vary in +# their views on appropriate levels of defence in these areas. If you do not +# understand these issues, go with the defaults, which are used by many sites. + + +#------------------------------------------------------------------------------ +# Although Exim is normally a setuid program, owned by root, it refuses to run +# local deliveries as root by default. There is a runtime option called +# "never_users" which lists the users that must never be used for local +# deliveries. There is also the setting below, which provides a list that +# cannot be overridden at runtime. This guards against problems caused by +# unauthorized changes to the runtime configuration. You are advised not to +# remove "root" from this option, but you can add other users if you want. The +# list is colon-separated. It must NOT contain any spaces. + +# FIXED_NEVER_USERS=root:bin:daemon +FIXED_NEVER_USERS=root + + +#------------------------------------------------------------------------------ +# By default, Exim insists that its configuration file be owned by root. You +# can specify one additional permitted owner here. + +# CONFIGURE_OWNER= + +# If the configuration file is group-writeable, Exim insists by default that it +# is owned by root. You can specify one additional permitted group owner here. + +# CONFIGURE_GROUP= + +# If you specify CONFIGURE_OWNER or CONFIGURE_GROUP as a name, this is looked +# up at build time, and the uid or gid number is built into the binary. +# However, you can specify that the lookup is deferred until runtime. In this +# case, it is the name that is built into the binary. You can do this by a +# setting of the form: + +# CONFIGURE_OWNER=ref:mail +# CONFIGURE_GROUP=ref:sysadmin + +# In other words, put "ref:" in front of the user or group name. Although this +# costs a bit of resource at runtime, it is convenient to use this feature when +# building binaries that are to be run on multiple systems where the names may +# refer to different uids or gids. It also allows you to build Exim on a system +# where the relevant user or group is not defined. + + +#------------------------------------------------------------------------------ +# The -C option allows Exim to be run with an alternate runtime configuration +# file. When this is used by root, root privilege is retained by the binary +# (for any other caller including the Exim user, it is dropped). You can +# restrict the location of alternate configurations by defining a prefix below. +# Any file used with -C must then start with this prefix (except that /dev/null +# is also permitted if the caller is root, because that is used in the install +# script). If the prefix specifies a directory that is owned by root, a +# compromise of the Exim account does not permit arbitrary alternate +# configurations to be used. The prefix can be more restrictive than just a +# directory (the second example). + +# ALT_CONFIG_PREFIX=/some/directory/ +# ALT_CONFIG_PREFIX=/some/directory/exim.conf- + + +#------------------------------------------------------------------------------ +# When a user other than root uses the -C option to override the configuration +# file (including the Exim user when re-executing Exim to regain root +# privileges for local message delivery), this will normally cause Exim to +# drop root privileges. The TRUSTED_CONFIG_LIST option, specifies a file which +# contains a list of trusted configuration filenames, one per line. If the -C +# option is used by the Exim user or by the user specified in the +# CONFIGURE_OWNER setting, to specify a configuration file which is listed in +# the TRUSTED_CONFIG_LIST file, then root privileges are not dropped by Exim. + +# TRUSTED_CONFIG_LIST=/usr/exim/trusted_configs + + +#------------------------------------------------------------------------------ +# Uncommenting this option disables the use of the -D command line option, +# which changes the values of macros in the runtime configuration file. +# This is another protection against somebody breaking into the Exim account. + +# DISABLE_D_OPTION=yes + + +#------------------------------------------------------------------------------ +# By contrast, you might be maintaining a system which relies upon the ability +# to override values with -D and assumes that these will be passed through to +# the delivery processes. As of Exim 4.73, this is no longer the case by +# default. Going forward, we strongly recommend that you use a shim Exim +# configuration file owned by root stored under TRUSTED_CONFIG_LIST. +# That shim can set macros before .include'ing your main configuration file. +# +# As a strictly transient measure to ease migration to 4.73, the +# WHITELIST_D_MACROS value definies a colon-separated list of macro-names +# which are permitted to be overridden from the command-line which will be +# honoured by the Exim user. So these are macros that can persist to delivery +# time. +# Examples might be -DTLS or -DSPOOL=/some/dir. The values on the +# command-line are filtered to only permit: [A-Za-z0-9_/.-]* +# +# This option is highly likely to be removed in a future release. It exists +# only to make 4.73 as easy as possible to migrate to. If you use it, we +# encourage you to schedule time to rework your configuration to not depend +# upon it. Most people should not need to use this. +# +# By default, no macros are whitelisted for -D usage. + +# WHITELIST_D_MACROS=TLS:SPOOL + +#------------------------------------------------------------------------------ +# Exim has support for the AUTH (authentication) extension of the SMTP +# protocol, as defined by RFC 2554. If you don't know what SMTP authentication +# is, you probably won't want to include this code, so you should leave these +# settings commented out. If you do want to make use of SMTP authentication, +# you must uncomment at least one of the following, so that appropriate code is +# included in the Exim binary. You will then need to set up the run time +# configuration to make use of the mechanism(s) selected. + +AUTH_CRAM_MD5=yes +# AUTH_CYRUS_SASL=yes +AUTH_DOVECOT=yes +AUTH_PLAINTEXT=yes +AUTH_SPA=yes + + +#------------------------------------------------------------------------------ +# If you specified AUTH_CYRUS_SASL above, you should ensure that you have the +# Cyrus SASL library installed before trying to build Exim, and you probably +# want to uncomment the following line: + +# AUTH_LIBS=-lsasl2 + + +#------------------------------------------------------------------------------ +# When Exim is decoding MIME "words" in header lines, most commonly for use +# in the $header_xxx expansion, it converts any foreign character sets to the +# one that is set in the headers_charset option. The default setting is +# defined by this setting: + +HEADERS_CHARSET="ISO-8859-1" + +# If you are going to make use of $header_xxx expansions in your configuration +# file, or if your users are going to use them in filter files, and the normal +# character set on your host is something other than ISO-8859-1, you might +# like to specify a different default here. This value can be overridden in +# the runtime configuration, and it can also be overridden in individual filter +# files. +# +# IMPORTANT NOTE: The iconv() function is needed for character code +# conversions. Please see the next item... + + +#------------------------------------------------------------------------------ +# Character code conversions are possible only if the iconv() function is +# installed on your operating system. There are two places in Exim where this +# is relevant: (a) The $header_xxx expansion (see the previous item), and (b) +# the Sieve filter support. For those OS where iconv() is known to be installed +# as standard, the file in OS/Makefile-xxxx contains +# +# HAVE_ICONV=yes +# +# If you are not using one of those systems, but have installed iconv(), you +# need to uncomment that line above. In some cases, you may find that iconv() +# and its header file are not in the default places. You might need to use +# something like this: +# +# HAVE_ICONV=yes +# CFLAGS=-O -I/usr/local/include +# EXTRALIBS_EXIM=-L/usr/local/lib -liconv +# +# but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM +# as well. + + +#------------------------------------------------------------------------------ +# The passwords for user accounts are normally encrypted with the crypt() +# function. Comparisons with encrypted passwords can be done using Exim's +# "crypteq" expansion operator. (This is commonly used as part of the +# configuration of an authenticator for use with SMTP AUTH.) At least one +# operating system has an extended function called crypt16(), which uses up to +# 16 characters of a password (the normal crypt() uses only the first 8). Exim +# supports the use of crypt16() as well as crypt() but note the warning below. + +# You can always indicate a crypt16-encrypted password by preceding it with +# "{crypt16}". If you want the default handling (without any preceding +# indicator) to use crypt16(), uncomment the following line: + +# DEFAULT_CRYPT=crypt16 + +# If you do that, you can still access the basic crypt() function by preceding +# an encrypted password with "{crypt}". For more details, see the description +# of the "crypteq" condition in the manual chapter on string expansions. + +# Some operating systems do not include a crypt16() function, so Exim has one +# of its own, which it uses unless HAVE_CRYPT16 is defined. Normally, that will +# be set in an OS-specific Makefile for the OS that have such a function, so +# you should not need to bother with it. + +# *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** +# It turns out that the above is not entirely accurate. As well as crypt16() +# there is a function called bigcrypt() that some operating systems have. This +# may or may not use the same algorithm, and both of them may be different to +# Exim's built-in crypt16() that is used unless HAVE_CRYPT16 is defined. +# +# However, since there is now a move away from the traditional crypt() +# functions towards using SHA1 and other algorithms, tidying up this area of +# Exim is seen as very low priority. In practice, if you need to, you can +# define DEFAULT_CRYPT to the name of any function that has the same interface +# as the traditional crypt() function. +# *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** + + +#------------------------------------------------------------------------------ +# Exim can be built to support the SMTP STARTTLS command, which implements +# Transport Layer Security using SSL (Secure Sockets Layer). To do this, you +# must install the OpenSSL library package or the GnuTLS library. Exim contains +# no cryptographic code of its own. Uncomment the following lines if you want +# to build Exim with TLS support. If you don't know what this is all about, +# leave these settings commented out. + +# This setting is required for any TLS support (either OpenSSL or GnuTLS) +SUPPORT_TLS=yes + +# Uncomment this setting if you are using OpenSSL +TLS_LIBS=-lssl -lcrypto + +# Uncomment these settings if you are using GnuTLS +# USE_GNUTLS=yes +# TLS_LIBS=-lgnutls -ltasn1 -lgcrypt + +# If you are running Exim as a server, note that just building it with TLS +# support is not all you need to do. You also need to set up a suitable +# certificate, and tell Exim about it by means of the tls_certificate +# and tls_privatekey run time options. You also need to set tls_advertise_hosts +# to specify the hosts to which Exim advertises TLS support. On the other hand, +# if you are running Exim only as a client, building it with TLS support +# is all you need to do. + +# Additional libraries and include files are required for both OpenSSL and +# GnuTLS. The TLS_LIBS settings above assume that the libraries are installed +# with all your other libraries. If they are in a special directory, you may +# need something like + +# TLS_LIBS=-L/usr/local/openssl/lib -lssl -lcrypto +# or +# TLS_LIBS=-L/opt/gnu/lib -lgnutls -ltasn1 -lgcrypt + +# TLS_LIBS is included only on the command for linking Exim itself, not on any +# auxiliary programs. If the include files are not in a standard place, you can +# set TLS_INCLUDE to specify where they are, for example: + +# TLS_INCLUDE=-I/usr/local/openssl/include/ +# or +# TLS_INCLUDE=-I/opt/gnu/include + +# You don't need to set TLS_INCLUDE if the relevant directories are already +# specified in INCLUDE. + + +#------------------------------------------------------------------------------ +# The default distribution of Exim contains only the plain text form of the +# documentation. Other forms are available separately. If you want to install +# the documentation in "info" format, first fetch the Texinfo documentation +# sources from the ftp directory and unpack them, which should create files +# with the extension "texinfo" in the doc directory. You may find that the +# version number of the texinfo files is different to your Exim version number, +# because the main documentation isn't updated as often as the code. For +# example, if you have Exim version 4.43, the source tarball upacks into a +# directory called exim-4.43, but the texinfo tarball unpacks into exim-4.40. +# In this case, move the contents of exim-4.40/doc into exim-4.43/doc after you +# have unpacked them. Then set INFO_DIRECTORY to the location of your info +# directory. This varies from system to system, but is often /usr/share/info. +# Once you have done this, "make install" will build the info files and +# install them in the directory you have defined. + +# INFO_DIRECTORY=/usr/share/info + + +#------------------------------------------------------------------------------ +# Exim log directory and files: Exim creates several log files inside a +# single log directory. You can define the directory and the form of the +# log file name here. If you do not set anything, Exim creates a directory +# called "log" inside its spool directory (see SPOOL_DIRECTORY above) and uses +# the filenames "mainlog", "paniclog", and "rejectlog". If you want to change +# this, you can set LOG_FILE_PATH to a path name containing one occurrence of +# %s. This will be replaced by one of the strings "main", "panic", or "reject" +# to form the final file names. Some installations may want something like this: + +LOG_FILE_PATH=/var/log/exim/%slog + +# which results in files with names /var/log/exim_mainlog, etc. The directory +# in which the log files are placed must exist; Exim does not try to create +# it for itself. It is also your responsibility to ensure that Exim is capable +# of writing files using this path name. The Exim user (see EXIM_USER above) +# must be able to create and update files in the directory you have specified. + +# You can also configure Exim to use syslog, instead of or as well as log +# files, by settings such as these + +# LOG_FILE_PATH=syslog +# LOG_FILE_PATH=syslog:/var/log/exim_%slog + +# The first of these uses only syslog; the second uses syslog and also writes +# to log files. Do not include white space in such a setting as it messes up +# the building process. + + +#------------------------------------------------------------------------------ +# When logging to syslog, the following option caters for syslog replacements +# that are able to accept log entries longer than the 1024 characters allowed +# by RFC 3164. It is up to you to make sure your syslog daemon can handle this. +# Non-printable characters are usually unacceptable regardless, so log entries +# are still split on newline characters. + +# SYSLOG_LONG_LINES=yes + +# If you are not interested in the process identifier (pid) of the Exim that is +# making the call to syslog, then comment out the following line. + +SYSLOG_LOG_PID=yes + + +#------------------------------------------------------------------------------ +# Cycling log files: this variable specifies the maximum number of old +# log files that are kept by the exicyclog log-cycling script. You don't have +# to use exicyclog. If your operating system has other ways of cycling log +# files, you can use them instead. The exicyclog script isn't run by default; +# you have to set up a cron job for it if you want it. + +EXICYCLOG_MAX=10 + + +#------------------------------------------------------------------------------ +# The compress command is used by the exicyclog script to compress old log +# files. Both the name of the command and the suffix that it adds to files +# need to be defined here. See also the EXICYCLOG_MAX configuration. + +COMPRESS_COMMAND=/bin/gzip +COMPRESS_SUFFIX=gz + + +#------------------------------------------------------------------------------ +# If the exigrep utility is fed compressed log files, it tries to uncompress +# them using this command. + +ZCAT_COMMAND=/bin/zcat + + +#------------------------------------------------------------------------------ +# Compiling in support for embedded Perl: If you want to be able to +# use Perl code in Exim's string manipulation language and you have Perl +# (version 5.004 or later) installed, set EXIM_PERL to perl.o. Using embedded +# Perl costs quite a lot of resources. Only do this if you really need it. + +# EXIM_PERL=perl.o + + +#------------------------------------------------------------------------------ +# Support for dynamically-loaded string expansion functions via ${dlfunc. If +# you are using gcc the dynamically-loaded object must be compiled with the +# -shared option, and you will need to add -export-dynamic to EXTRALIBS so +# that the local_scan API is made available by the linker. You may also need +# to add -ldl to EXTRALIBS so that dlopen() is available to Exim. + +# EXPAND_DLFUNC=yes + + +#------------------------------------------------------------------------------ +# Exim has support for PAM (Pluggable Authentication Modules), a facility +# which is available in the latest releases of Solaris and in some GNU/Linux +# distributions (see http://ftp.kernel.org/pub/linux/libs/pam/). The Exim +# support, which is intended for use in conjunction with the SMTP AUTH +# facilities, is included only when requested by the following setting: + +SUPPORT_PAM=yes + +# You probably need to add -lpam to EXTRALIBS, and in some releases of +# GNU/Linux -ldl is also needed. + + +#------------------------------------------------------------------------------ +# Support for authentication via Radius is also available. The Exim support, +# which is intended for use in conjunction with the SMTP AUTH facilities, +# is included only when requested by setting the following parameter to the +# location of your Radius configuration file: + +# RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf +# RADIUS_CONFIG_FILE=/etc/radius.conf + +# If you have set RADIUS_CONFIG_FILE, you should also set one of these to +# indicate which RADIUS library is used: + +# RADIUS_LIB_TYPE=RADIUSCLIENT +# RADIUS_LIB_TYPE=RADIUSCLIENTNEW +# RADIUS_LIB_TYPE=RADLIB + +# RADIUSCLIENT is the radiusclient library; you probably need to add +# -lradiusclient to EXTRALIBS. +# +# The API for the radiusclient library was changed at release 0.4.0. +# Unfortunately, the header file does not define a version number that clients +# can use to support both the old and new APIs. If you are using version 0.4.0 +# or later of the radiusclient library, you should use RADIUSCLIENTNEW. +# +# RADLIB is the Radius library that comes with FreeBSD (the header file is +# called radlib.h); you probably need to add -lradius to EXTRALIBS. +# +# If you do not set RADIUS_LIB_TYPE, Exim assumes the radiusclient library, +# using the original API. + + +#------------------------------------------------------------------------------ +# Support for authentication via the Cyrus SASL pwcheck daemon is available. +# Note, however, that pwcheck is now deprecated in favour of saslauthd (see +# next item). The Exim support for pwcheck, which is intented for use in +# conjunction with the SMTP AUTH facilities, is included only when requested by +# setting the following parameter to the location of the pwcheck daemon's +# socket. +# +# There is no need to install all of SASL on your system. You just need to run +# ./configure --with-pwcheck, cd to the pwcheck directory within the sources, +# make and make install. You must create the socket directory (default +# /var/pwcheck) and chown it to exim's user and group. Once you have installed +# pwcheck, you should arrange for it to be started by root at boot time. + +# CYRUS_PWCHECK_SOCKET=/var/pwcheck/pwcheck + + +#------------------------------------------------------------------------------ +# Support for authentication via the Cyrus SASL saslauthd daemon is available. +# The Exim support, which is intented for use in conjunction with the SMTP AUTH +# facilities, is included only when requested by setting the following +# parameter to the location of the saslauthd daemon's socket. +# +# There is no need to install all of SASL on your system. You just need to run +# ./configure --with-saslauthd (and any other options you need, for example, to +# select or deselect authentication mechanisms), cd to the saslauthd directory +# within the sources, make and make install. You must create the socket +# directory (default /var/state/saslauthd) and chown it to exim's user and +# group. Once you have installed saslauthd, you should arrange for it to be +# started by root at boot time. + +# CYRUS_SASLAUTHD_SOCKET=/var/state/saslauthd/mux + + +#------------------------------------------------------------------------------ +# TCP wrappers: If you want to use tcpwrappers from within Exim, uncomment +# this setting. See the manual section entitled "Use of tcpwrappers" in the +# chapter on building and installing Exim. +# +# USE_TCP_WRAPPERS=yes +# +# You may well also have to specify a local "include" file and an additional +# library for TCP wrappers, so you probably need something like this: +# +# USE_TCP_WRAPPERS=yes +# CFLAGS=-O -I/usr/local/include +# EXTRALIBS_EXIM=-L/usr/local/lib -lwrap +# +# but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM +# as well. +# +# To use a name other than exim in the tcpwrappers config file, +# e.g. if you're running multiple daemons with different access lists, +# or multiple MTAs with the same access list, define +# TCP_WRAPPERS_DAEMON_NAME accordingly +# +# TCP_WRAPPERS_DAEMON_NAME="exim" + + +#------------------------------------------------------------------------------ +# The default action of the exim_install script (which is run by "make +# install") is to install the Exim binary with a unique name such as +# exim-4.43-1, and then set up a symbolic link called "exim" to reference it, +# moving the symbolic link from any previous version. If you define NO_SYMLINK +# (the value doesn't matter), the symbolic link is not created or moved. You +# will then have to "turn Exim on" by setting up the link manually. + +# NO_SYMLINK=yes + + +#------------------------------------------------------------------------------ +# Another default action of the install script is to install a default runtime +# configuration file if one does not exist. This configuration has a router for +# expanding system aliases. The default assumes that these aliases are kept +# in the traditional file called /etc/aliases. If such a file does not exist, +# the installation script creates one that contains just comments (no actual +# aliases). The following setting can be changed to specify a different +# location for the system alias file. + +SYSTEM_ALIASES_FILE=/etc/mail/aliases + + +#------------------------------------------------------------------------------ +# There are some testing options (-be, -bt, -bv) that read data from the +# standard input when no arguments are supplied. By default, the input lines +# are read using the standard fgets() function. This does not support line +# editing during interactive input (though the terminal's "erase" character +# works as normal). If your operating system has the readline() function, and +# in addition supports dynamic loading of library functions, you can cause +# Exim to use readline() for the -be testing option (only) by uncommenting the +# following setting. Dynamic loading is used so that the library is loaded only +# when the -be testing option is given; by the time the loading occurs, +# Exim has given up its root privilege and is running as the calling user. This +# is the reason why readline() is NOT supported for -bt and -bv, because Exim +# runs as root or as exim, respectively, for those options. When USE_READLINE +# is "yes", as well as supporting line editing, a history of input lines in the +# current run is maintained. + +# USE_READLINE=yes + +# You may need to add -ldl to EXTRALIBS when you set USE_READLINE=yes. +# Note that this option adds to the size of the Exim binary, because the +# dynamic loading library is not otherwise included. + + + +############################################################################### +# THINGS YOU ALMOST NEVER NEED TO MENTION # +############################################################################### + +# The settings in this section are available for use in special circumstances. +# In the vast majority of installations you need not change anything below. + + +#------------------------------------------------------------------------------ +# The following commands live in different places in some OS. Either the +# ultimate default settings, or the OS-specific files should already point to +# the right place, but they can be overridden here if necessary. These settings +# are used when building various scripts to ensure that the correct paths are +# used when the scripts are run. They are not used in the Makefile itself. Perl +# is not necessary for running Exim unless you set EXIM_PERL (see above) to get +# it embedded, but there are some utilities that are Perl scripts. If you +# haven't got Perl, Exim will still build and run; you just won't be able to +# use those utilities. + +# CHOWN_COMMAND=/usr/bin/chown +# CHGRP_COMMAND=/usr/bin/chgrp +# CHMOD_COMMAND=/usr/bin/chmod +# MV_COMMAND=/bin/mv +# RM_COMMAND=/bin/rm +# TOUCH_COMMAND=/usr/bin/touch +# PERL_COMMAND=/usr/bin/perl + + +#------------------------------------------------------------------------------ +# The following macro can be used to change the command for building a library +# of functions. By default the "ar" command is used, with options "cq". +# Only in rare circumstances should you need to change this. + +# AR=ar cq + + +#------------------------------------------------------------------------------ +# In some operating systems, the value of the TMPDIR environment variable +# controls where temporary files are created. Exim does not make use of +# temporary files, except when delivering to MBX mailboxes. However, if Exim +# calls any external libraries (e.g. DBM libraries), they may use temporary +# files, and thus be influenced by the value of TMPDIR. For this reason, when +# Exim starts, it checks the environment for TMPDIR, and if it finds it is set, +# it replaces the value with what is defined here. Commenting this setting +# suppresses the check altogether. + +TMPDIR="/tmp" + + +#------------------------------------------------------------------------------ +# The following macros can be used to change the default modes that are used +# by the appendfile transport. In most installations the defaults are just +# fine, and in any case, you can change particular instances of the transport +# at run time if you want. + +# APPENDFILE_MODE=0600 +# APPENDFILE_DIRECTORY_MODE=0700 +# APPENDFILE_LOCKFILE_MODE=0600 + + +#------------------------------------------------------------------------------ +# In some installations there may be multiple machines sharing file systems, +# where a different configuration file is required for Exim on the different +# machines. If CONFIGURE_FILE_USE_NODE is defined, then Exim will first look +# for a configuration file whose name is that defined by CONFIGURE_FILE, +# with the node name obtained by uname() tacked on the end, separated by a +# period (for example, /usr/exim/configure.host.in.some.domain). If this file +# does not exist, then the bare configuration file name is tried. + +# CONFIGURE_FILE_USE_NODE=yes + + +#------------------------------------------------------------------------------ +# In some esoteric configurations two different versions of Exim are run, +# with different setuid values, and different configuration files are required +# to handle the different cases. If CONFIGURE_FILE_USE_EUID is defined, then +# Exim will first look for a configuration file whose name is that defined +# by CONFIGURE_FILE, with the effective uid tacked on the end, separated by +# a period (for eximple, /usr/exim/configure.0). If this file does not exist, +# then the bare configuration file name is tried. In the case when both +# CONFIGURE_FILE_USE_EUID and CONFIGURE_FILE_USE_NODE are set, four files +# are tried: <name>.<euid>.<node>, <name>.<node>, <name>.<euid>, and <name>. + +# CONFIGURE_FILE_USE_EUID=yes + + +#------------------------------------------------------------------------------ +# The size of the delivery buffers: These specify the sizes (in bytes) of +# the buffers that are used when copying a message from the spool to a +# destination. There is rarely any need to change these values. + +# DELIVER_IN_BUFFER_SIZE=8192 +# DELIVER_OUT_BUFFER_SIZE=8192 + + +#------------------------------------------------------------------------------ +# The mode of the database directory: Exim creates a directory called "db" +# in its spool directory, to hold its databases of hints. This variable +# determines the mode of the created directory. The default value in the +# source is 0750. + +# EXIMDB_DIRECTORY_MODE=0750 + + +#------------------------------------------------------------------------------ +# Database file mode: The mode of files created in the "db" directory defaults +# to 0640 in the source, and can be changed here. + +# EXIMDB_MODE=0640 + + +#------------------------------------------------------------------------------ +# Database lock file mode: The mode of zero-length files created in the "db" +# directory to use for locking purposes defaults to 0640 in the source, and +# can be changed here. + +# EXIMDB_LOCKFILE_MODE=0640 + + +#------------------------------------------------------------------------------ +# This parameter sets the maximum length of the header portion of a message +# that Exim is prepared to process. The default setting is one megabyte. The +# limit exists in order to catch rogue mailers that might connect to your SMTP +# port, start off a header line, and then just pump junk at it for ever. The +# message_size_limit option would also catch this, but it may not be set. +# The value set here is the default; it can be changed at runtime. + +# HEADER_MAXSIZE="(1024*1024)" + + +#------------------------------------------------------------------------------ +# The mode of the input directory: The input directory is where messages are +# kept while awaiting delivery. Exim creates it if necessary, using a mode +# which can be defined here (default 0750). + +# INPUT_DIRECTORY_MODE=0750 + + +#------------------------------------------------------------------------------ +# The mode of Exim's log directory, when it is created by Exim inside the spool +# directory, defaults to 0750 but can be changed here. + +# LOG_DIRECTORY_MODE=0750 + + +#------------------------------------------------------------------------------ +# The log files themselves are created as required, with a mode that defaults +# to 0640, but which can be changed here. + +# LOG_MODE=0640 + + +#------------------------------------------------------------------------------ +# The TESTDB lookup is for performing tests on the handling of lookup results, +# and is not useful for general running. It should be included only when +# debugging the code of Exim. + +# LOOKUP_TESTDB=yes + + +#------------------------------------------------------------------------------ +# /bin/sh is used by default as the shell in which to run commands that are +# defined in the makefiles. This can be changed if necessary, by uncommenting +# this line and specifying another shell, but note that a Bourne-compatible +# shell is expected. + +# MAKE_SHELL=/bin/sh + + +#------------------------------------------------------------------------------ +# The maximum number of named lists of each type (address, domain, host, and +# local part) can be increased by changing this value. It should be set to +# a multiple of 16. + +MAX_NAMED_LIST=16 + + +#------------------------------------------------------------------------------ +# Network interfaces: Unless you set the local_interfaces option in the runtime +# configuration file to restrict Exim to certain interfaces only, it will run +# code to find all the interfaces there are on your host. Unfortunately, +# the call to the OS that does this requires a buffer large enough to hold +# data for all the interfaces - it was designed in the days when a host rarely +# had more than three or four interfaces. Nowadays hosts can have very many +# virtual interfaces running on the same hardware. If you have more than 250 +# virtual interfaces, you will need to uncomment this setting and increase the +# value. + +# MAXINTERFACES=250 + + +#------------------------------------------------------------------------------ +# Per-message logs: While a message is in the process of being delivered, +# comments on its progress are written to a message log, for the benefit of +# human administrators. These logs are held in a directory called "msglog" +# in the spool directory. Its mode defaults to 0750, but can be changed here. +# The message log directory is also used for storing files that are used by +# transports for returning data to a message's sender (see the "return_output" +# option for transports). + +# MSGLOG_DIRECTORY_MODE=0750 + + +#------------------------------------------------------------------------------ +# There are three options which are used when compiling the Perl interface and +# when linking with Perl. The default values for these are placed automatically +# at the head of the Makefile by the script which builds it. However, if you +# want to override them, you can do so here. + +# PERL_CC= +# PERL_CCOPTS= +# PERL_LIBS= + + +#------------------------------------------------------------------------------ +# Identifying the daemon: When an Exim daemon starts up, it writes its pid +# (process id) to a file so that it can easily be identified. The path of the +# file can be specified here. Some installations may want something like this: + +PID_FILE_PATH=/var/run/exim.pid + +# If PID_FILE_PATH is not defined, Exim writes a file in its spool directory +# using the name "exim-daemon.pid". + +# If you start up a daemon without the -bd option (for example, with just +# the -q15m option), a pid file is not written. Also, if you override the +# configuration file with the -oX option, no pid file is written. In other +# words, the pid file is written only for a "standard" daemon. + + +#------------------------------------------------------------------------------ +# If Exim creates the spool directory, it is given this mode, defaulting in the +# source to 0750. + +# SPOOL_DIRECTORY_MODE=0750 + + +#------------------------------------------------------------------------------ +# The mode of files on the input spool which hold the contents of messages can +# be changed here. The default is 0640 so that information from the spool is +# available to anyone who is a member of the Exim group. + +# SPOOL_MODE=0640 + + +#------------------------------------------------------------------------------ +# Moving frozen messages: If the following is uncommented, Exim is compiled +# with support for automatically moving frozen messages out of the main spool +# directory, a facility that is found useful by some large installations. A +# run time option is required to cause the moving actually to occur. Such +# messages become "invisible" to the normal management tools. + +# SUPPORT_MOVE_FROZEN_MESSAGES=yes + + +#------------------------------------------------------------------------------ +# Disabling the use of fsync(): DO NOT UNCOMMENT THE FOLLOWING LINE unless you +# really, really, really know what you are doing. And even then, think again. +# You should never uncomment this when compiling a binary for distribution. +# Use it only when compiling Exim for your own use. +# +# Uncommenting this line enables the use of a runtime option called +# disable_fsync, which can be used to stop Exim using fsync() to ensure that +# files are written to disc before proceeding. When this is disabled, crashes +# and hardware problems such as power outages can cause data to be lost. This +# feature should only be used in very exceptional circumstances. YOU HAVE BEEN +# WARNED. + +# ENABLE_DISABLE_FSYNC=yes + +HAVE_IPV6=YES +LOOKUP_LIBS=-lldap -llber +EXTRALIBS_EXIM=-lpam +# End of EDITME for Exim 4. diff --git a/community-testing/exim/exim.conf.d b/community-testing/exim/exim.conf.d new file mode 100644 index 000000000..b9bec4335 --- /dev/null +++ b/community-testing/exim/exim.conf.d @@ -0,0 +1 @@ +EXIM_ARGS="-bd -q15m" diff --git a/community-testing/exim/exim.install b/community-testing/exim/exim.install new file mode 100644 index 000000000..8ed329559 --- /dev/null +++ b/community-testing/exim/exim.install @@ -0,0 +1,25 @@ +# arg 1: the new package version +post_install() { + getent group exim >/dev/null 2>&1 || groupadd -g 79 exim + if getent passwd exim > /dev/null 2>&1; then + usr/sbin/usermod -d /var/spool/exim -c 'Exim MTA' -s /sbin/nologin exim > /dev/null 2>&1 + else + usr/sbin/useradd -c 'Exim MTA' -u 79 -g exim -d /var/spool/exim -s /sbin/nologin exim + fi + passwd -l exim > /dev/null + chown root.exim /var/spool/exim /var/log/exim + chown exim.exim /var/spool/exim/db + chmod u+s /usr/sbin/exim +} + +# 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() { + getent passwd exim >/dev/null 2>&1 && userdel exim +} + diff --git a/community-testing/exim/exim.logrotate b/community-testing/exim/exim.logrotate new file mode 100644 index 000000000..070ba4747 --- /dev/null +++ b/community-testing/exim/exim.logrotate @@ -0,0 +1,6 @@ +/var/log/exim/*log { + su exim exim + missingok + notifempty + delaycompress +} diff --git a/community-testing/exim/exim.service b/community-testing/exim/exim.service new file mode 100644 index 000000000..de52fd14f --- /dev/null +++ b/community-testing/exim/exim.service @@ -0,0 +1,10 @@ +[Unit] +Description=Exim Mail Daemon + +[Service] +PIDFile=/var/run/exim.pid +ExecStart=/usr/sbin/exim -bdf -q30m +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/exim/exim.socket b/community-testing/exim/exim.socket new file mode 100644 index 000000000..36d28684f --- /dev/null +++ b/community-testing/exim/exim.socket @@ -0,0 +1,10 @@ +[Unit] +Description=Exim Mail Transfer Agent +Conflicts=exim.service + +[Socket] +ListenStream=25 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/community-testing/exim/exim@.service b/community-testing/exim/exim@.service new file mode 100644 index 000000000..120485b8b --- /dev/null +++ b/community-testing/exim/exim@.service @@ -0,0 +1,7 @@ +[Unit] +Description=Exim Mail Daemon per-connection server + +[Service] +ExecStart=-/usr/sbin/exim -bs +StandardInput=socket +StandardError=syslog diff --git a/community-testing/fcron/PKGBUILD b/community-testing/fcron/PKGBUILD new file mode 100644 index 000000000..a8a579cb5 --- /dev/null +++ b/community-testing/fcron/PKGBUILD @@ -0,0 +1,80 @@ +# $Id: PKGBUILD 72553 2012-06-16 17:09:37Z dreisner $ +# Contributor: Giorgio Lando <lando at imap dot cc> +# Contributor: Sergej Pupykin +# Contributor: Thomas Bächler +# Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de> + +pkgname=fcron +pkgver=3.0.6 +pkgrel=7 +pkgdesc="feature-rich cron implementation" +arch=(i686 x86_64) +url="http://fcron.free.fr" +license=('GPL') +depends=('pam') +makedepends=('smtp-server') +optdepends=('smtp-server: to receive mails from cron jobs') +provides=('cron') +conflicts=('dcron') +backup=(etc/fcron/fcron.conf etc/fcron/fcron.allow etc/fcron/fcron.deny \ + var/spool/fcron/systab var/spool/fcron/systab.orig) +options=('emptydirs' '!makeflags') +source=(http://fcron.free.fr/archives/$pkgname-$pkgver.src.tar.gz fcron.rc \ + systab systab.orig run-cron fcron.service) +md5sums=('69ebcb41921e2a282f41ebecb3a27053' + 'e0c3f0bdc3c98fbbe46eff19001c18f2' + '938722c6654ef7b07f4aa10001905ba1' + 'bfb7daa22ebe22b9917e455c1ca4a382' + '5ff0cdcb9ec99778938ac6ef26800327' + 'ab589cc6813ec32b5e96bf05c2b51c4c') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr \ + --sysconfdir=/etc/fcron \ + --with-answer-all=no \ + --with-boot-install=no \ + --with-username=root \ + --with-groupname=root \ + --datarootdir=/usr/share \ + --datadir=/usr/share \ + --with-docdir=/usr/share/doc \ + --localstatedir=/var \ + --with-editor=/usr/bin/vi \ + --with-sendmail=/usr/sbin/sendmail + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir/" install + install -D -m755 "$srcdir/fcron.rc" "$pkgdir/etc/rc.d/fcron" + install -D -m644 "$srcdir/$pkgname-$pkgver/files/fcron.pam" "$pkgdir/etc/pam.d/fcron" + + install -D -m644 "$srcdir/$pkgname-$pkgver/files/fcrontab.pam" "$pkgdir/etc/pam.d/fcrontab" + # Install default fcrontab so that fcron can completely replace dcron + + install -D -m600 "$srcdir/systab" "$pkgdir/var/spool/fcron/systab" + # In order to preserve the systab crontab in any case it is better to have + # it in non-binary form too + install -D -m600 "$srcdir/systab.orig" "$pkgdir/var/spool/fcron/systab.orig" + + # Add cron.* directories + install -d -m755 "$pkgdir/etc/cron.daily" + install -d -m755 "$pkgdir/etc/cron.hourly" + install -d -m755 "$pkgdir/etc/cron.monthly" + install -d -m755 "$pkgdir/etc/cron.weekly" + + # Install run-cron script to make fcron run without dcron + install -D -m755 "$srcdir/run-cron" "$pkgdir/usr/sbin/run-cron" + + # Install systemd service + install -D -m644 "$srcdir/fcron.service" \ + "$pkgdir/usr/lib/systemd/system/fcron.service" + + # avoid conflict with filesystem>=2012.06 + rmdir "$pkgdir/var/run" +} + +# vim:set ts=2 sw=2 et: diff --git a/community-testing/fcron/fcron.rc b/community-testing/fcron/fcron.rc new file mode 100644 index 000000000..880439a1d --- /dev/null +++ b/community-testing/fcron/fcron.rc @@ -0,0 +1,36 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/fcron` +case "$1" in + start) + stat_busy "Starting Fcron Daemon" + [ -z "$PID" ] && /usr/sbin/fcron -b + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon fcron + stat_done + fi + ;; + stop) + stat_busy "Stopping Fcron Daemon" + [ -n "$PID" ] && kill $PID >/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon fcron + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/community-testing/fcron/fcron.service b/community-testing/fcron/fcron.service new file mode 100644 index 000000000..a47b4f19b --- /dev/null +++ b/community-testing/fcron/fcron.service @@ -0,0 +1,10 @@ +[Unit] +Description=Cron Daemon + +[Service] +Type=forking +PIDFile=/run/fcron.pid +ExecStart=/usr/sbin/fcron + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/fcron/run-cron b/community-testing/fcron/run-cron new file mode 100644 index 000000000..51007a15a --- /dev/null +++ b/community-testing/fcron/run-cron @@ -0,0 +1,14 @@ +#!/bin/sh + + +if [ -z $1 ]; then + echo "Usage: $0 crondir" + exit 1 +fi + +for cron in $1/* ; do + if [ -x $cron ]; then + $cron + fi +done +unset cron diff --git a/community-testing/fcron/systab b/community-testing/fcron/systab Binary files differnew file mode 100644 index 000000000..11c7e2fd0 --- /dev/null +++ b/community-testing/fcron/systab diff --git a/community-testing/fcron/systab.orig b/community-testing/fcron/systab.orig new file mode 100644 index 000000000..5b0045626 --- /dev/null +++ b/community-testing/fcron/systab.orig @@ -0,0 +1,4 @@ +&bootrun 01 * * * * /usr/sbin/run-cron /etc/cron.hourly +&bootrun 02 00 * * * /usr/sbin/run-cron /etc/cron.daily +&bootrun 22 00 * * 0 /usr/sbin/run-cron /etc/cron.weekly +&bootrun 42 00 1 * * /usr/sbin/run-cron /etc/cron.monthly diff --git a/community-testing/miredo/PKGBUILD b/community-testing/miredo/PKGBUILD new file mode 100644 index 000000000..4825572df --- /dev/null +++ b/community-testing/miredo/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 72555 2012-06-16 17:09:54Z dreisner $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> + +pkgname=miredo +pkgver=1.2.5 +pkgrel=2 +pkgdesc="Teredo client and server." +arch=('i686' 'x86_64') +url="http://www.remlab.net/miredo/" +license=('GPL') +depends=('judy' 'iproute2' 'libcap') +backup=('etc/miredo/miredo.conf' + 'etc/miredo/client-hook') +options=('!libtool') +source=(http://www.remlab.net/files/${pkgname}/${pkgname}-${pkgver}.tar.xz + isatapd.rc.d + miredo.install + miredo.rc.d + miredo-server.rc.d + miredo.service) +md5sums=('5114debbf9fcab5d292176e4548f8cd1' + '51ab6d091192605ee9206944869cb2ab' + 'd1b655d7a851cdb46c91c3418ed1962f' + 'c5a9be5c3175fecec387f1710bfd2788' + '319aba1ae06349b76cb25fda0dba60a9' + '3216d47d5aa979706b17b72d8b6e19b0') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib \ + --with-Judy + make + make DESTDIR="$pkgdir" install + + install -D -m755 $srcdir/miredo.rc.d $pkgdir/etc/rc.d/miredo + install -D -m755 $srcdir/miredo-server.rc.d $pkgdir/etc/rc.d/miredo-server + install -D -m755 $srcdir/isatapd.rc.d $pkgdir/etc/rc.d/isatapd + sed -i 's#/sbin/ip#/usr/sbin/ip#' $pkgdir/etc/miredo/client-hook + + # avoid conflict with filesystem>=2012.06 + rmdir "$pkgdir/var/run" "$pkgdir/var" + + install -Dm644 "$srcdir/miredo.service" "$pkgdir/usr/lib/systemd/system/miredo.service" +} diff --git a/community-testing/miredo/isatapd.rc.d b/community-testing/miredo/isatapd.rc.d new file mode 100644 index 000000000..fa7bbd708 --- /dev/null +++ b/community-testing/miredo/isatapd.rc.d @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/isatapd` +case "$1" in + start) + stat_busy "Starting userspace ISATAP client" + if [ -z "$PID" ]; then + /usr/sbin/isatapd + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon isatapd + stat_done + fi + ;; + stop) + stat_busy "Stopping userspace ISATAP client" + [ ! -z "$PID" ] && kill $PID &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon isatapd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/community-testing/miredo/miredo-server.rc.d b/community-testing/miredo/miredo-server.rc.d new file mode 100644 index 000000000..d05513b23 --- /dev/null +++ b/community-testing/miredo/miredo-server.rc.d @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/miredo-server` +case "$1" in + start) + stat_busy "Starting teredo protocol server" + if [ -z "$PID" ]; then + /usr/sbin/miredo-server + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon miredo-server + stat_done + fi + ;; + stop) + stat_busy "Stopping teredo protocol server" + [ ! -z "$PID" ] && kill $PID &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon miredo-server + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/community-testing/miredo/miredo.install b/community-testing/miredo/miredo.install new file mode 100644 index 000000000..338459fb3 --- /dev/null +++ b/community-testing/miredo/miredo.install @@ -0,0 +1,8 @@ +post_remove() { + + # clean up just in case + rm -f /var/run/miredo.pid + rm -f /var/run/miredo-server.pid + rm -f /var/run/isatapd.pid +} + diff --git a/community-testing/miredo/miredo.rc.d b/community-testing/miredo/miredo.rc.d new file mode 100644 index 000000000..500374b12 --- /dev/null +++ b/community-testing/miredo/miredo.rc.d @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/miredo` +case "$1" in + start) + stat_busy "Starting teredo protocol client" + if [ -z "$PID" ]; then + /usr/sbin/miredo + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon miredo + stat_done + fi + ;; + stop) + stat_busy "Stopping teredo protocol client" + [ ! -z "$PID" ] && kill $PID &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon miredo + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/community-testing/miredo/miredo.service b/community-testing/miredo/miredo.service new file mode 100644 index 000000000..299a887de --- /dev/null +++ b/community-testing/miredo/miredo.service @@ -0,0 +1,11 @@ +[Unit] +Description=Teredo IPv6 Tunneling Daemon +After=network.target + +[Service] +ExecStartPre=/usr/sbin/miredo-checkconf /etc/miredo/miredo.conf +ExecStart=/usr/sbin/miredo -f +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target
\ No newline at end of file diff --git a/community-testing/oidentd/PKGBUILD b/community-testing/oidentd/PKGBUILD new file mode 100644 index 000000000..0de9d33c6 --- /dev/null +++ b/community-testing/oidentd/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 72556 2012-06-16 17:10:05Z dreisner $ +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> +# Contributor: simo <simo@archlinux.org> +# Contributor: Mateusz Herych <heniekk@gmail.com> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> + +pkgname=oidentd +pkgver=2.0.8 +pkgrel=6 +pkgdesc='An RFC1413 compliant ident daemon' +arch=('i686' 'x86_64') +url="http://dev.ojnk.net/" +license=('GPL') +depends=('glibc' 'bash') +source=(http://downloads.sourceforge.net/sourceforge/ojnk/$pkgname-$pkgver.tar.gz + rc.d conf.d service socket) +md5sums=('c3d9a56255819ef8904b867284386911' + '93cbf742cdd0b053f67482273d715f25' + '603307525771724b0f55a2c34fbc3f3e' + 'b215bee5764cdecb0939f44d5d2dccbe' + '651c2ef45d1d345d95056ef0787e29e6') + +build() { + cd $srcdir/$pkgname-$pkgver + ./configure --prefix=/usr + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make prefix=$pkgdir/usr mandir=$pkgdir/usr/share/man install + + install -D -m644 $srcdir/conf.d $pkgdir/etc/conf.d/oidentd + install -D -m755 $srcdir/rc.d $pkgdir/etc/rc.d/oidentd + install -D -m644 $srcdir/service $pkgdir/usr/lib/systemd/system/oidentd@.service + install -D -m644 $srcdir/socket $pkgdir/usr/lib/systemd/system/oidentd.socket +} + diff --git a/community-testing/oidentd/conf.d b/community-testing/oidentd/conf.d new file mode 100644 index 000000000..5eefa80e2 --- /dev/null +++ b/community-testing/oidentd/conf.d @@ -0,0 +1,5 @@ +USER=nobody +GROUP=nobody +OPTS="" +# You will need this, when you want oidentd listen both on IPv4 and IPv6 +# OPTS="-a ::" diff --git a/community-testing/oidentd/rc.d b/community-testing/oidentd/rc.d new file mode 100644 index 000000000..8b3c04c45 --- /dev/null +++ b/community-testing/oidentd/rc.d @@ -0,0 +1,41 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/oidentd + +# no daemon check needed for oidentd, and no pid nesecary. +case "$1" in + start) + stat_busy "Starting oidentd Daemon..." + # oidentd is smart enough to only run one copy of + # itsself, no check nesecary, and no pidfile + /usr/sbin/oidentd -u ${USER} -g ${GROUP} ${OPTS} + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon oidentd + stat_done + fi + ;; + stop) + stat_busy "Stopping oidentd Daemon..." + # kill the process by it's full name, or the init script + # will terminate as well, wreaking havok. + killall /usr/sbin/oidentd + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon oidentd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/community-testing/oidentd/service b/community-testing/oidentd/service new file mode 100644 index 000000000..3688298c1 --- /dev/null +++ b/community-testing/oidentd/service @@ -0,0 +1,8 @@ +[Unit] +Description=Ident (RFC 1413) per-connection server + +[Service] +ExecStart=/usr/sbin/oidentd -I -u nobody -g nobody +ExecReload=/bin/kill -HUP $MAINPID +StandardInput=socket +StandardError=syslog diff --git a/community-testing/oidentd/socket b/community-testing/oidentd/socket new file mode 100644 index 000000000..63df7036e --- /dev/null +++ b/community-testing/oidentd/socket @@ -0,0 +1,10 @@ +[Unit] +Description=Ident (RFC 1413) socket +Conflicts=oidentd.service + +[Socket] +ListenStream=113 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/community-testing/oss/PKGBUILD b/community-testing/oss/PKGBUILD new file mode 100644 index 000000000..82dec44a5 --- /dev/null +++ b/community-testing/oss/PKGBUILD @@ -0,0 +1,98 @@ +# $Id: PKGBUILD 72557 2012-06-16 17:10:20Z dreisner $ +# Maintainer: Florian Pritz <bluewind@xinu.at> +# Contributor: Paulo Matias <matiasΘarchlinux-br·org> +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> + +pkgbase=oss +pkgname=(oss libflashsupport-oss) +pkgver=4.2_2006 +pkgrel=2 +arch=('i686' 'x86_64') +url="http://developer.opensound.com/" +license=('GPL2') +makedepends=('gtk2') +source=("http://www.4front-tech.com/developer/sources/stable/gpl/oss-v${pkgver/_*}-build${pkgver/*_}-src-gpl.tar.bz2" + "rm-init-scripts.patch" + "rc-script" + "soundon.patch" + "remove-hal.patch" + "oss.service" + ) +md5sums=('ca25c06bb7d0c6495e1b6f55d1bad96c' + 'b9a380a0ac8896390d71ac13676f27e1' + 'cbcbce5c03b127df5eafa8faa091492c' + '65f07fe241bfbf912f76d8b6d8f276b5' + 'cd7f1dc6166bba8c94d96f3a28e948a5' + '8db0255b380dc6672993e627d1cd8ca6') +_dir=oss-v${pkgver/_*}-build${pkgver/*_}-src-gpl + +build() { + cd "${srcdir}/${_dir}" + + # Avoid these flags conflicting with OSS build system. + unset CFLAGS + unset LDFLAGS + unset OSFLAGS + unset LIBRARIES + export NO_WARNING_CHECKS=yes + + # Compile libflashsupport.so only in packaging time, so we avoid + # conflicts with other packages and ease package management. + msg "Building libflashsupport.so." + cd oss/lib + gcc -shared -fPIC -O2 -Wall -Werror flashsupport.c -o libflashsupport.so + + msg "Preparing the build environment." + cd "${srcdir}" + + # Create build directory and configure + rm -rf build + mkdir build && cd build + "${srcdir}/${_dir}/configure" --enable-libsalsa=NO --regparm + + msg "Building OSS." + make build + + msg "Patching init scripts." + cd "${srcdir}/build/prototype" + rm usr/lib/oss/etc/S89oss + patch -p0 -i "${srcdir}/rm-init-scripts.patch" + patch -p0 -i "${srcdir}/soundon.patch" + # remove hal dependency + patch -p0 -i "${srcdir}/remove-hal.patch" + rm -rf usr/lib/oss/scripts/oss_usb-create-devices usr/lib/oss/scripts/90-oss_usb-create-device.fdi + + sed -i 's#/lib/modules/$KERNEL_VERSION/kernel/#/lib/modules/$KERNEL_VERSION/extramodules/kernel/#g' usr/sbin/soundon + sed -i 's#/lib/modules/$UNAME/kernel/#/lib/modules/$UNAME/extramodules/kernel/#g' usr/lib/oss/build/install.sh + sed -i 's#mkdir /lib/modules#mkdir -p /lib/modules#' usr/lib/oss/build/install.sh +} + +package_oss() { + pkgdesc="Open Sound System UNIX audio architecture" + depends=('gcc' 'make' 'linux-headers' 'libtool' 'sed') + optdepends=('gtk2: for graphical mixer (ossxmix)' + 'libflashsupport-oss: Adobe flash plugin support') + conflicts=('oss-linux' 'oss-linux-free' 'oss-testing') + backup=('usr/lib/oss/soundon.user') + install=oss.install + + cd "${srcdir}/build/prototype" + cp -a * "${pkgdir}" + + chmod -R a+r "${pkgdir}" # All files can have read permission (FS#13815) + find "${pkgdir}" -type d -exec chmod a+x '{}' \; # Make namcap happy + install -Dm755 "${srcdir}/rc-script" "${pkgdir}/etc/rc.d/oss" + install -Dm644 "$srcdir/oss.service" "$pkgdir/usr/lib/systemd/system" +} + +package_libflashsupport-oss() { + pkgdesc="Adobe flash plugin support lib (OSSv4)" + conflicts=('libflashsupport' 'libflashsupport-pulse' 'libflashsupport-oss') + depends=('oss') + + cd "${srcdir}/${_dir}" + + install -dm755 "$pkgdir/usr/lib" + ln -s oss/lib/libflashsupport.so "$pkgdir/usr/lib/libflashsupport.so" +} + diff --git a/community-testing/oss/oss.install b/community-testing/oss/oss.install new file mode 100644 index 000000000..672d63644 --- /dev/null +++ b/community-testing/oss/oss.install @@ -0,0 +1,30 @@ +post_install() { + echo "Running OSS install script..." + sh /usr/lib/oss/build/install.sh &>/dev/null + echo + echo " Note that OSS can't currently work together with kernel" + echo " ALSA modules, so they were moved out by the OSS install" + echo " scripts. If you want the ALSA kernel modules back, you can" + echo " just remove this package using pacman." +} + +post_upgrade() { + echo "Running OSS update script..." + sh /usr/lib/oss/build/install.sh &>/dev/null + + if [[ $(vercmp $2 4.2_2006) == "-1" ]]; then + echo "libflashsupport.so has been split into a seperate package." + echo "If you want flash to use oss, please install libflashsupport-oss" + fi +} + +pre_remove() { + # Restore any replaced ALSA drivers. + sh /usr/lib/oss/scripts/restore_drv.sh +} + +post_remove() { + echo " Open Sound System was now removed, and the ALSA kernel" + echo " modules were restored." +} + diff --git a/community-testing/oss/oss.service b/community-testing/oss/oss.service new file mode 100644 index 000000000..107c9bf3f --- /dev/null +++ b/community-testing/oss/oss.service @@ -0,0 +1,12 @@ +[Unit] +Description=Open Sound System v4 +Before=sound.target + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/usr/sbin/soundon +ExecStop=/usr/sbin/soundoff + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/oss/rc-script b/community-testing/oss/rc-script new file mode 100644 index 000000000..5c930107c --- /dev/null +++ b/community-testing/oss/rc-script @@ -0,0 +1,30 @@ +#!/bin/bash +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy 'Starting Open Sound System' + if /usr/sbin/soundon; then + add_daemon oss + stat_done + else + stat_fail + fi + ;; + stop) + stat_busy 'Stopping Open Sound System' + if /usr/sbin/soundoff; then + rm_daemon oss + stat_done + else + stat_fail + fi + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "Usage: $0 {start|stop|restart}" +esac diff --git a/community-testing/oss/remove-hal.patch b/community-testing/oss/remove-hal.patch new file mode 100644 index 000000000..27e2ef2de --- /dev/null +++ b/community-testing/oss/remove-hal.patch @@ -0,0 +1,20 @@ +Date: Tue Aug 2 16:37:31 CEST 2011 +Author: Florian Pritz <bluewind@xinu.at> +This removes all hal dependencies + +References: +http://www.archlinux.org/todo/92/ + +--- usr/lib/oss/build/install_2011-08-02_162647.sh 2011-08-02 16:26:47.000000000 +0200 ++++ usr/lib/oss/build/install.sh 2011-08-02 16:27:13.000000000 +0200 +@@ -336,10 +336,4 @@ + echo "autosave_mixer yes" > $OSSLIBDIR/etc/userdefs + fi + +-# Hal 0.5.0+ hotplug +-mkdir -p /usr/lib/hal/scripts +-ln -sf $OSSLIBDIR/scripts/oss_usb-create-devices /usr/lib/hal/scripts/ +-mkdir -p /usr/share/hal/fdi/policy/20thirdparty/ +-ln -sf $OSSLIBDIR/scripts/90-oss_usb-create-device.fdi /usr/share/hal/fdi/policy/20thirdparty/ +- + exit 0 diff --git a/community-testing/oss/rm-init-scripts.patch b/community-testing/oss/rm-init-scripts.patch new file mode 100644 index 000000000..981ff605f --- /dev/null +++ b/community-testing/oss/rm-init-scripts.patch @@ -0,0 +1,52 @@ +--- usr/lib/oss/build/install.sh.orig 2008-09-25 11:41:47.180167692 -0300 ++++ usr/lib/oss/build/install.sh 2008-09-25 11:41:47.180167692 -0300 +@@ -290,38 +290,6 @@ + echo + fi + +-if ! test -d /etc/init.d +-then +- mkdir /etc/init.d +-fi +- +-rm -f /etc/init.d/oss /etc/rc.d/rc3.d/S89oss /etc/rc3.d/S89oss +-cp -f $OSSLIBDIR/etc/S89oss /etc/init.d/oss +- +-chmod 744 /etc/init.d/oss +- +-if test -x /sbin/chkconfig +-then +- /sbin/chkconfig oss on > /dev/null 2>&1 +-else +- if test -x /usr/sbin/update-rc.d +- then +- /usr/sbin/update-rc.d oss defaults > /dev/null 2>&1 +- else +- if test -d etc/rc.d/rc3.d +- then +- rm -f /etc/rc.d/rc3.d/S89oss +- ln -s /etc/init.d/oss /etc/rc.d/rc3.d/S89oss +- else +- if test -d /etc/rc3.d +- then +- rm -f /etc/rc3.d/S89oss +- ln -s /etc/init.d/oss /etc/rc3.d/S89oss +- fi +- fi +- fi +-fi +- + # Install ALSA interface module (Cuckoo) + #(cd $OSSLIBDIR/cuckoo && make clean) > /dev/null 2>&1 + #if (cd $OSSLIBDIR/cuckoo && make install) > /var/log/cuckoo.log 2>&1 +--- usr/lib/oss/scripts/restore_drv.sh.orig 2008-09-25 11:41:47.210168487 -0300 ++++ usr/lib/oss/scripts/restore_drv.sh 2008-09-25 11:41:47.210168487 -0300 +@@ -18,8 +18,6 @@ + fi + fi + +-rm -f /etc/init.d/oss +- + if ! test -d /lib/modules/`uname -r`/kernel/sound + then + if test -f /lib/modules/`uname -r`/sound-preoss.tar.bz2 diff --git a/community-testing/oss/soundon.patch b/community-testing/oss/soundon.patch new file mode 100644 index 000000000..4702b8680 --- /dev/null +++ b/community-testing/oss/soundon.patch @@ -0,0 +1,28 @@ +--- usr/sbin/soundon.old 2009-09-04 06:35:26.000000000 +0100 ++++ usr/sbin/soundon 2009-11-15 13:59:53.000000000 +0000 +@@ -255,7 +255,10 @@ + then + if test "`uname -m` " = "x86_64 " + then +- ln -sf $OSSLIBDIR/lib/libsalsa.so.2.0.0 /usr/lib64/libasound.so.2 ++ # Fix for compatibility with Arch's directory structure ++ # Not that we use it, there is no $OSSLIBDIR/.libsalsa_installed ++ ln -sf $OSSLIBDIR/lib/libsalsa.so.2.0.0 /usr/lib/libasound.so.2 ++ #ln -sf $OSSLIBDIR/lib/libsalsa.so.2.0.0 /usr/lib64/libasound.so.2 + #ln -sf $OSSLIBDIR/lib/libOSSlib.so /usr/lib64 + else + if test -s /lib/libasound.so.2 +@@ -278,8 +281,11 @@ + then + if test "`uname -m` " = "x86_64 " + then +- ln -sf $OSSLIBDIR/lib/libOSSlib.so /usr/lib64 +- ln -sf $OSSLIBDIR/lib/libossmix.so /usr/lib64 ++ # Fix for compatibility with Arch's directory structure ++ ln -sf $OSSLIBDIR/lib/libOSSlib.so /usr/lib ++ ln -sf $OSSLIBDIR/lib/libossmix.so /usr/lib ++ #ln -sf $OSSLIBDIR/lib/libOSSlib.so /usr/lib64 ++ #ln -sf $OSSLIBDIR/lib/libossmix.so /usr/lib64 + else + if test -s /lib/libasound.so.2 + then diff --git a/community-testing/pdnsd/PKGBUILD b/community-testing/pdnsd/PKGBUILD new file mode 100644 index 000000000..77ae37700 --- /dev/null +++ b/community-testing/pdnsd/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 72558 2012-06-16 17:10:27Z dreisner $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Henrik Nymann Jensen <h@henriknj.dk> + +pkgname=pdnsd +pkgver=1.2.9 +pkgrel=2 +pkgdesc="Is a proxy DNS server with permanent caching" +arch=(i686 x86_64) +url="http://members.home.nl/p.a.rombouts/pdnsd/" +license=('GPL') +depends=('glibc') +#backup=('etc/pdnsd.conf') +source=(http://members.home.nl/p.a.rombouts/pdnsd/releases/pdnsd-$pkgver-par.tar.gz + pdnsd + pdnsd.service) +md5sums=('037f79d191b98974ffc2c9649727bf66' + '3670bd47c9303fbb655d9216715512de' + 'fad5e518d126b29fc947941d57a0a494') + +build() { + cd $srcdir/$pkgname-$pkgver + ./configure --prefix=/usr --sysconfdir=/etc + make + make DESTDIR=$pkgdir install + install -Dm0755 $srcdir/pdnsd $pkgdir/etc/rc.d/pdnsd + install -Dm0644 $srcdir/pdnsd.service $pkgdir/usr/lib/systemd/system/pdnsd.service +} diff --git a/community-testing/pdnsd/pdnsd b/community-testing/pdnsd/pdnsd new file mode 100644 index 000000000..34a541d18 --- /dev/null +++ b/community-testing/pdnsd/pdnsd @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/pdnsd` +case "$1" in + start) + stat_busy "Starting pdnsd Daemon" + if [ -z "$PID" ]; then + /usr/sbin/pdnsd -d + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon pdnsd + stat_done + fi + ;; + stop) + stat_busy "Stopping pdnsd Daemon" + [ ! -z "$PID" ] && kill -TERM $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon pdnsd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/community-testing/pdnsd/pdnsd.service b/community-testing/pdnsd/pdnsd.service new file mode 100644 index 000000000..5821dbcb2 --- /dev/null +++ b/community-testing/pdnsd/pdnsd.service @@ -0,0 +1,9 @@ +[Unit] +Description=proxy name server +After=network.target + +[Service] +ExecStart=/usr/sbin/pdnsd + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/polipo/PKGBUILD b/community-testing/polipo/PKGBUILD new file mode 100644 index 000000000..c6ccd1300 --- /dev/null +++ b/community-testing/polipo/PKGBUILD @@ -0,0 +1,55 @@ +# $Id: PKGBUILD 72559 2012-06-16 17:10:40Z dreisner $ +# Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de> +# Contributor: Jelle van der Waa <jelle vdwaa nl> +# Contributor: Thomas Holmquist <thomas@vorget.com> +# Contributor: Jan Boehringer <ja(a)bm-boehringer.de> +# Contributor: Alex Griffin <griffin.aj(a)gmail.com> + +pkgname=polipo +pkgver=1.0.4.1 +pkgrel=3 +pkgdesc="A small and fast caching web proxy." +arch=('i686' 'x86_64') +url="http://www.pps.jussieu.fr/~jch/software/polipo/" +license=('GPL') +depends=('bash') +makedepends=('texinfo') +install=polipo.install +source=("http://freehaven.net/~chrisd/polipo/polipo-$pkgver.tar.gz" + "polipo.cron" "polipo.rc.d" "polipo.conf.d" "polipo.service") +md5sums=('bfc5c85289519658280e093a270d6703' + 'bac0e1a871964c931eb5f7a369b3243c' + '8f096b7d77a71e0772ce71a8c8b1b3e3' + '685aa0c6070dee11c701932d23afcc6a' + '109d0e8c15d669281ff14f8991ad0ed8') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make PREFIX="$pkgdir/usr" \ + MANDIR="$pkgdir/usr/share/man" \ + INFODIR="$pkgdir/usr/share/info" \ + LOCAL_ROOT="$pkgdir/usr/share/polipo/www" \ + DISK_CACHE_ROOT="$pkgdir/var/cache/polipo" \ + install + + + # install config files + install -Dm 644 config.sample $pkgdir/etc/polipo/config.sample + install -Dm 644 forbidden.sample $pkgdir/etc/polipo/forbidden.sample + + # install license + install -Dm644 COPYING $pkgdir/usr/share/licenses/polipo/LICENSE + + # install daemon scripts / cron + install -Dm 755 $srcdir/polipo.rc.d $pkgdir/etc/rc.d/polipo + install -Dm 755 $srcdir/polipo.cron $pkgdir/usr/share/polipo/polipo.cron + install -Dm 644 $srcdir/polipo.service $pkgdir/usr/lib/systemd/system/polipo.service +} + +# vim:set ts=2 sw=2 et: diff --git a/community-testing/polipo/polipo.conf.d b/community-testing/polipo/polipo.conf.d new file mode 100644 index 000000000..dc879d32b --- /dev/null +++ b/community-testing/polipo/polipo.conf.d @@ -0,0 +1,4 @@ +# +# Parameters to be passed to polipo +# +POLIPO_ARGS="daemonise=true logFile=\"/var/log/polipo.log\"" diff --git a/community-testing/polipo/polipo.cron b/community-testing/polipo/polipo.cron new file mode 100644 index 000000000..8270d0a05 --- /dev/null +++ b/community-testing/polipo/polipo.cron @@ -0,0 +1,2 @@ +#!/bin/bash +/etc/rc.d/polipo purge >/dev/null 2>&1 diff --git a/community-testing/polipo/polipo.install b/community-testing/polipo/polipo.install new file mode 100644 index 000000000..bacc46377 --- /dev/null +++ b/community-testing/polipo/polipo.install @@ -0,0 +1,25 @@ +infodir=/usr/share/info +filelist=(polipo.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file $infodir/dir 2> /dev/null + done + install -d /var/cache/polipo 2> /dev/null + touch /var/log/polipo.log 2> /dev/null + chown -R nobody:nobody /var/cache/polipo /var/log/polipo.log 2> /dev/null +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file $infodir/dir 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/community-testing/polipo/polipo.rc.d b/community-testing/polipo/polipo.rc.d new file mode 100644 index 000000000..260fab050 --- /dev/null +++ b/community-testing/polipo/polipo.rc.d @@ -0,0 +1,71 @@ +#!/bin/bash + +daemon_name=polipo + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/$daemon_name.conf + +get_pid() { + pidof -o %PPID $daemon_name +} + +case "$1" in + start) + stat_busy "Starting $daemon_name daemon" + + PID=$(get_pid) + if [[ -z $PID ]]; then + [[ -f /run/$daemon_name.pid ]] && + rm -f /run/$daemon_name.pid + # RUN + sudo -u nobody /usr/bin/$daemon_name ${POLIPO_ARGS} + # + if [[ $? -gt 0 ]]; then + stat_fail + exit 1 + else + echo $(get_pid) > /run/$daemon_name.pid + add_daemon $daemon_name + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping $daemon_name daemon" + PID=$(get_pid) + # KILL + [[ -n $PID ]] && kill $PID &> /dev/null + # + if [[ $? -gt 0 ]]; then + stat_fail + exit 1 + else + rm -f /run/$daemon_name.pid &> /dev/null + rm_daemon $daemon_name + stat_done + fi + ;; + + restart) + $0 stop + sleep 3 + $0 start + ;; + + status) + stat_busy "Checking $daemon_name status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|restart|status}" +esac + +exit 0 + +# vim:set ts=2 sw=2 et: diff --git a/community-testing/polipo/polipo.service b/community-testing/polipo/polipo.service new file mode 100644 index 000000000..a1bdd9aa2 --- /dev/null +++ b/community-testing/polipo/polipo.service @@ -0,0 +1,10 @@ +[Unit] +Description=Polipo Proxy Server + +[Service] +ExecStart=/usr/bin/polipo +User=nobody +ExecReload=/bin/kill -USR1 $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/prosody/ChangeLog b/community-testing/prosody/ChangeLog new file mode 100644 index 000000000..45f3a05fd --- /dev/null +++ b/community-testing/prosody/ChangeLog @@ -0,0 +1,398 @@ +2009-11-23 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Added tag v0.6.0-1 for changeset 6c5b7e66bee4 + [d573d1d7a403] [tip] + + * .hgtags: + Removed tag v0.6.0-1 + [6c5b7e66bee4] [v0.6.0-1] + + * PKGBUILD: + Use correct package name and version + [1e65e6a877d3] + + * .hgtags: + Added tag v0.6.0-1 for changeset ad52fee15148 + [8196689dd4c4] + + * PKGBUILD, prosody.cfg.lua: + Included mod_compression in example configuration file + [ad52fee15148] + + * ChangeLog: + Updated ChangeLog + [34b6046aca14] + + * PKGBUILD: + Updated checksums + [3b4c28f28321] + + * PKGBUILD, prosody.cfg.lua: + New upstream version + [9d201755b63d] + +2009-10-22 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Added tag v0.6.0rc1-1 for changeset c0a99ab935a8 + [a0e2015435b6] + + * ChangeLog, PKGBUILD: + New upstream version + [c0a99ab935a8] [v0.6.0rc1-1] + + * PKGBUILD: + Removed conflicts + [0f0560190a81] + + * PKGBUILD: + Removed makedepends for gcc, the base-devel group is assumed to + exist + [4160ed469fa4] + + * PKGBUILD: + Fix typo in PKGBUILD + [85d988c7e4a5] + +2009-09-28 Dwayne Bent <dbb.0@liqd.org> + + * ChangeLog, PKGBUILD: + New upstream version + [3e4ffcdc887a] + +2009-07-29 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Added tag v0.5.1-1 for changeset 1be51884e580 + [74f32914279c] + + * ChangeLog, PKGBUILD: + New upstream version + [1be51884e580] [v0.5.1-1] + +2009-07-20 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Corrected tag name + [d9662df69ab4] + + * .hgtags: + Added tag v0.5.0 for changeset d228983b5873 + [a350368643eb] + + * PKGBUILD: + New upstream version + [d228983b5873] [v0.5.0-1] + + * ChangeLog: + Updated ChangeLog + [111cf16bfc8b] + +2009-07-14 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Added tag v0.5.0rc2-1 for changeset 701e6c5ed639 + [828bb0fc4e5e] + + * PKGBUILD: + New upstream version + [701e6c5ed639] [v0.5.0rc2-1] + + * ChangeLog: + Updated ChangeLog + [7616eaf8b835] + + * prosody.cfg.lua: + Enabled PEP in default configuration + [c8a7c4d15e38] + +2009-07-11 Dwayne Bent <dbb.0@liqd.org> + + * prosody.cfg.lua: + Cleaned up and added new modules to default configuration file + [07fdc8fd8ff9] + + * PKGBUILD: + Added luasec back as hard dependency + [9506bff48c77] + + * .hgtags: + Added tag v0.5.0rc1-2 for changeset a252809a03a3 + [803ace20879a] + + * ChangeLog, PKGBUILD: + New release version + [a252809a03a3] [v0.5.0rc1-2] + + * PKGBUILD: + Added make before make install + + This should fix Prosody not correctly reporting version. + [881eca5b8e0e] + + * .hgtags: + Added tag v0.5.0rc1-1 for changeset f1d918d4779e + [1fc8dbc498d5] + + * ChangeLog: + New upstream version + [f1d918d4779e] [v0.5.0rc1-1] + + * PKGBUILD, prosody.rcd: + Redid indent alignment and silenced successful output of prosodyctl + [de9bdd756bd8] + + * PKGBUILD, prosody-datadir.diff: + Converted to prosody-devel package + [92e5e98529dd] + +2009-06-30 Dwayne Bent <dbb.0@liqd.org> + + * PKGBUILD, prosody.cfg.lua: + Moved luasec from depends to optdepends + + Since luasec is not strictly required for Prosody to operate it is + now an optional dependency. + [7079ec87eef5] + +2009-06-27 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Added tag v0.4.2-4 for changeset 0345a59e8495 + [1e488e1c03eb] + + * PKGBUILD: + New release version + [0345a59e8495] [v0.4.2-4] + + * prosody.install: + Added note about ChangeLog to install script + [c683ef309b6a] + + * PKGBUILD, prosody.rcd: + Use prosodyctl to start/stop daemon + [eaf4c26bb29f] + + * PKGBUILD, prosody.rcd: + Refactored start, stop, reload in rc.d script + + Start, stop, reload will not display a friendly error message if + Prosody is not running when you attempt to stop or reload, or if + Prosody is already running when you attempt to start. Reload also + now utilizes the get_pid function. + [9873d5256a42] + + * PKGBUILD, prosody.logrotated: + Use explicit log filenames in logrotate script + + This fixes an issue where if you do not have olddir enabled, rotated + logs will be rotated again. + [38ea11efacb9] + +2009-06-22 Dwayne Bent <dbb.0@liqd.org> + + * PKGBUILD, prosody.rcd: + Added status command to rc.d usage + [1b31e88d992d] + + * PKGBUILD, prosody.rcd: + Added reload command + [62e3cbdff1d5] + + * prosody.install: + Updated leftover olddir path + [e91b3fc2a9ee] + + * PKGBUILD, prosody.rcd: + Use explicit source command + [b790c098d519] + + * prosody.install: + Removed tab characters + [870316274137] + +2009-06-20 Dwayne Bent <dbb.0@liqd.org> + + * PKGBUILD: + Updated md5 sums + [74ce2ab8a96b] + + * prosody.logrotated: + Changed default olddir path + [cef8226473c2] + + * prosody.rcd: + Removed sleep delay in restart + [a94167e59091] + +2009-06-10 Dwayne Bent <dbb.0@liqd.org> + + * prosody.cfg.lua: + Removed per-host certificate entry in example configuration + + Until Issue #30 + [http://code.google.com/p/lxmppd/issues/detail?id=30] is fixed per- + host certificates have no effect. + [d00e35979450] + +2009-06-05 Dwayne Bent <dbb.0@liqd.org> + + * ChangeLog: + Added ChangeLog + [7298c4da135a] + +2009-06-03 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Added tag v0.4.2-3 for changeset 028183ffeba8 + [7dbfd040e908] + + * PKGBUILD: + New release version + [028183ffeba8] [v0.4.2-3] + + * PKGBUILD: + Removed superfluous make command + [3d96c98bac26] + + * PKGBUILD: + More consistent use of quote marks + [f6bd5b595b2d] + + * PKGBUILD, prosody.logrotated: + Correct PID file location in logrotate script + [cec60904c739] + +2009-05-30 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Added tag v0.4.2-2 for changeset 37268dd0d4fd + [a8a197635bb6] + + * PKGBUILD: + New release version + [37268dd0d4fd] [v0.4.2-2] + + * PKGBUILD: + Use install instead of mkdir in PKGBUILD + [8e48108bbe9a] + + * PKGBUILD, prosody-datadir.diff: + Apply patch to fix world-readable data directory + [2c706dda941c] + +2009-05-23 Dwayne Bent <dbb.0@liqd.org> + + * .hgtags: + Added tag v0.4.2-1 for changeset 1d29ea2dc519 + [e2d2962de3f7] + + * PKGBUILD: + New upstream release + [1d29ea2dc519] [v0.4.2-1] + + * prosody.cfg.lua: + Aesthetic changes to the configuration file + [d5d848a58965] + +2009-05-22 Dwayne Bent <dbb.0@liqd.org> + + * prosody.cfg.lua: + Removed extraneous semicolon in configuration file + [9a002c74edc2] + + * PKGBUILD: + Cleaned up PKGBUILD license + [82cb66a84de8] + +2009-05-21 Dwayne Bent <dbb.0@liqd.org> + + * prosody.install: + Changed formatting of leftover path messages. + [ac6069de93c9] + + * prosody.install: + Moved prosody user removal to post_remove. + [2c60e27d0c13] + + * PKGBUILD, prosody.cfg.lua: + Added comment about pidfile in prosody configuration file. + [8b9fa4da48ca] + + * .hgtags: + Added tag v0.4.1-5 for changeset 69962178bcae + [01812099521b] + + * PKGBUILD: + New release version. + [69962178bcae] [v0.4.1-5] + + * PKGBUILD, prosody.cfg.lua, prosody.install, prosody.rcd: + Refactored rc.d daemon script. + + Prosody now writes its own PID file to /var/run/prosody/prosody.pid. + rc.d script now uses '/bin/kill -0' to check for running process + instead of awkward combination of 'ps' and 'awk'. + [4f0e937c5148] + + * prosody.install: + Added post_install message with link to Arch Wiki documentation. + [88d99267ad19] + +2009-05-19 Dwayne Bent <dbb.0@liqd.org> + + * PKGBUILD: + Add logrotate script to backup array. + [d4f5445707f7] + +2009-05-11 Dwayne Bent <dbb.0@liqd.org> + + * prosody.install: + Fixed install script attempting to add prosody group when it already + exists. + [7d7807aa5d30] + + * .hgtags: + Added tag v0.4.1-4 for changeset 442f62077f30 + [389c885a35c5] + + * PKGBUILD: + New release version. + [442f62077f30] [v0.4.1-4] + + * PKGBUILD: + Generated correct checksums for source files. + [162859c9e287] + + * .hgtags: + Added tag v0.4.1-3 for changeset b629392e4716 + [f3d11fbd0b45] + + * PKGBUILD: + New release version. + [b629392e4716] [v0.4.1-3] + + * prosody.logrotated: + Fixed wrong PID file path in logrotate script. + [0871a4a12392] + +2009-05-07 Dwayne Bent <dbb.0@liqd.org> + + * prosody.cfg.lua, prosody.rcd: + Removed trailing whitespace. + [7c86c073650e] + + * prosody.cfg.lua: + Added logging timestamps to default configuration. + [46f9111d47ce] + + * .hgtags: + Added tag v0.4.1-2 for changeset 24b9dee19e65 + [5240b39d76d7] + + * PKGBUILD, prosody.cfg.lua, prosody.install, prosody.logrotated, + prosody.rcd: + Initial commit. + [24b9dee19e65] [v0.4.1-2] + diff --git a/community-testing/prosody/PKGBUILD b/community-testing/prosody/PKGBUILD new file mode 100644 index 000000000..3e4947701 --- /dev/null +++ b/community-testing/prosody/PKGBUILD @@ -0,0 +1,60 @@ +# $Id: PKGBUILD 72560 2012-06-16 17:10:57Z dreisner $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Dwayne Bent <dbb.0@liqd.org> +# Contributor: Paul-Sebastian Manole <brokenthorn@gmail.com> + +pkgname=prosody +pkgver=0.8.2 +pkgrel=4 +pkgdesc="Lightweight and extensible Jabber/XMPP server written in Lua." +arch=('i686' 'x86_64') +url="http://prosody.im/" +license=('MIT') +depends=('lua>=5.1' 'luasocket' 'luaexpat' 'luafilesystem' 'libidn>=0.5.18' 'openssl') +optdepends=('luasec: TLS encryption support' + 'lua-zlib: compression support' + 'luadbi: SQL storage support') +install=prosody.install +backup=('etc/logrotate.d/prosody' + 'etc/prosody/prosody.cfg.lua') +source=("http://prosody.im/depot/${pkgver}/prosody-${pkgver}.tar.gz" + 'prosody.rcd' + 'prosody.logrotated' + 'fix-config.patch' + 'prosody.tmpfile.d' + 'prosody.service') +md5sums=('6e907bf0d0acf24f1011083020ba6ffb' + 'd2b5f9c8e42bb31819e715eb1756ee53' + '26466fdbea87963a3ca6f48f76fe4a29' + '59a1bf2dfd0bd386cef6fa646e2a3752' + 'e2f5a1df410b05696a30dcb058841084' + 'e74045f27cb60908d535969906781f75') + +build() { + cd "$srcdir/prosody-$pkgver" + patch -p1 <$srcdir/fix-config.patch + ./configure --prefix=/usr --sysconfdir=/etc/prosody \ + --datadir=/var/lib/prosody + make +} + +package() { + cd "$srcdir/prosody-$pkgver" + + make DESTDIR="$pkgdir" install + + rm $pkgdir/etc/prosody/certs/* + + install -d "$pkgdir/etc/rc.d" + install -d "$pkgdir/etc/logrotate.d" + install -d "$pkgdir/var/log/prosody" + + install -o root -g root -m 755 "$srcdir/prosody.rcd" \ + "$pkgdir/etc/rc.d/prosody" + install -o root -g root -m 644 "$srcdir/prosody.logrotated" \ + "$pkgdir/etc/logrotate.d/prosody" + + install -Dm0644 COPYING $pkgdir/usr/share/licenses/$pkgname/COPYING + install -Dm0644 $srcdir/prosody.tmpfile.d $pkgdir//usr/lib/tmpfiles.d/prosody.conf + install -Dm0644 $srcdir/prosody.service $pkgdir/usr/lib/systemd/system/prosody.service +} diff --git a/community-testing/prosody/fix-config.patch b/community-testing/prosody/fix-config.patch new file mode 100644 index 000000000..8856bfb92 --- /dev/null +++ b/community-testing/prosody/fix-config.patch @@ -0,0 +1,32 @@ +diff -wbBur prosody-0.8.0/prosody.cfg.lua.dist prosody-0.8.0.my/prosody.cfg.lua.dist +--- prosody-0.8.0/prosody.cfg.lua.dist 2011-04-05 13:47:06.000000000 +0000 ++++ prosody-0.8.0.my/prosody.cfg.lua.dist 2011-04-07 16:03:42.000000000 +0000 +@@ -21,6 +21,8 @@ + -- (see http://prosody.im/doc/creating_accounts for info) + -- Example: admins = { "user1@example.com", "user2@example.net" } + admins = { } ++daemonize = true ++pidfile = "/var/run/prosody/prosody.pid" + + -- Enable use of libevent for better performance under high load + -- For more information see: http://prosody.im/doc/libevent +@@ -59,7 +61,7 @@ + --"admin_telnet"; -- Opens telnet console interface on localhost port 5582 + + -- Other specific functionality +- --"posix"; -- POSIX functionality, sends server to background, enables syslog, etc. ++ "posix"; -- POSIX functionality, sends server to background, enables syslog, etc. + --"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP" + --"httpserver"; -- Serve static files from a directory over HTTP + --"groups"; -- Shared roster support +@@ -123,8 +125,8 @@ + -- Logging configuration + -- For advanced logging see http://prosody.im/doc/logging + log = { +- info = "prosody.log"; -- Change 'info' to 'debug' for verbose logging +- error = "prosody.err"; ++ info = "/var/log/prosody/prosody.log"; -- Change 'info' to 'debug' for verbose logging ++ error = "/var/log/prosody/prosody.err"; + -- "*syslog"; -- Uncomment this for logging to syslog + -- "*console"; -- Log to the console, useful for debugging with daemonize=false + } diff --git a/community-testing/prosody/prosody.install b/community-testing/prosody/prosody.install new file mode 100644 index 000000000..f935e3d63 --- /dev/null +++ b/community-testing/prosody/prosody.install @@ -0,0 +1,35 @@ +post_install() { + if [ -z "`grep '^prosody:' /etc/group`" ]; then + groupadd -g 412 prosody + fi + if [ -z "`grep '^prosody:' /etc/passwd`" ]; then + useradd -u 412 -d /var/lib/prosody -g prosody -s /bin/false prosody + fi + + chown prosody:prosody var/lib/prosody + chown prosody:prosody var/log/prosody + + echo ">> Documentation: http://wiki.archlinux.org/index.php/Prosody" +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + userdel prosody + + paths=(/etc/prosody /var/lib/prosody /var/log/prosody + /var/log/old/prosody) + + first=true + for path in ${paths[@]}; do + if [ -d $path ]; then + if $first; then + first=false + echo "==> Leftover Paths:" + fi + echo "==> $path" + fi + done +} diff --git a/community-testing/prosody/prosody.logrotated b/community-testing/prosody/prosody.logrotated new file mode 100644 index 000000000..5659ba01f --- /dev/null +++ b/community-testing/prosody/prosody.logrotated @@ -0,0 +1,9 @@ +/var/log/prosody/prosody.log /var/log/prosody/prosody.err { + # olddir /var/log/old/prosody + create 644 prosody prosody + sharedscripts + missingok + postrotate + /bin/kill -HUP `cat /var/run/prosody/prosody.pid 2> /dev/null` 2> /dev/null || true + endscript +} diff --git a/community-testing/prosody/prosody.rcd b/community-testing/prosody/prosody.rcd new file mode 100644 index 000000000..afaf77903 --- /dev/null +++ b/community-testing/prosody/prosody.rcd @@ -0,0 +1,93 @@ +#!/bin/bash + +daemon_name=prosody +pid_file=/var/run/$daemon_name/$daemon_name.pid + +source /etc/rc.conf +source /etc/rc.d/functions + +get_pid() { + if [ -f $pid_file ]; then + /bin/kill -0 $(cat $pid_file) + if [ $? == 0 ]; then + cat $pid_file + fi + fi +} + +case "$1" in + start) + stat_busy "Starting $daemon_name daemon" + + [ -d /var/run/$daemon_name ] || { mkdir -p /var/run/$daemon_name ; chown prosody:prosody /var/run/prosody; } + PID=$(get_pid) + if [ -z "$PID" ]; then + [ -f $pid_file ] && rm -f $pid_file + mkdir -p `dirname $pid_file` + prosodyctl start 1>/dev/null 2>/dev/null + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + add_daemon $daemon_name + stat_done + fi + else + stat_fail + printhl "$daemon_name is already running" + exit 1 + fi + ;; + + stop) + stat_busy "Stopping $daemon_name daemon" + PID=$(get_pid) + if [ ! -z "$PID" ]; then + prosodyctl stop 1>/dev/null 2>/dev/null + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm -f $pid_file &> /dev/null + rm_daemon $daemon_name + stat_done + fi + else + stat_fail + printhl "$daemon_name is not running" + exit 1 + fi + ;; + + restart) + $0 stop + $0 start + ;; + + reload) + stat_busy "Reloading $daemon_name" + PID=$(get_pid) + if [ ! -z "$PID" ]; then + /bin/kill -HUP $PID 2> /dev/null + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + stat_done + fi + else + stat_fail + printhl "$daemon_name is not running" + fi + ;; + + status) + stat_busy "Checking $daemon_name status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|restart|reload|status}" + esac + +exit 0 diff --git a/community-testing/prosody/prosody.service b/community-testing/prosody/prosody.service new file mode 100644 index 000000000..f54159f55 --- /dev/null +++ b/community-testing/prosody/prosody.service @@ -0,0 +1,13 @@ +[Unit] +Description=XMPP (Jabber) Server +After=network.target + +[Service] +Type=forking +PIDFile=/run/prosody/prosody.pid +ExecStart=/usr/bin/prosodyctl start +ExecStop=/usr/bin/prosodyctl stop + +[Install] +WantedBy=multi-user.target + diff --git a/community-testing/prosody/prosody.tmpfile.d b/community-testing/prosody/prosody.tmpfile.d new file mode 100644 index 000000000..5f6de657d --- /dev/null +++ b/community-testing/prosody/prosody.tmpfile.d @@ -0,0 +1 @@ +d /run/prosody 0755 412 412 diff --git a/community-testing/tor/PKGBUILD b/community-testing/tor/PKGBUILD new file mode 100644 index 000000000..b0ab616ac --- /dev/null +++ b/community-testing/tor/PKGBUILD @@ -0,0 +1,53 @@ +# $Id: PKGBUILD 72561 2012-06-16 17:11:10Z dreisner $ +# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> +# Contributor: simo <simo@archlinux.org> + +pkgname=tor +pkgver=0.2.2.36 +pkgrel=2 +pkgdesc='Anonymizing overlay network.' +arch=('i686' 'x86_64') +url='http://www.torproject.org/' +license=('BSD') +depends=('openssl' 'libevent' 'tsocks' 'bash') +makedepends=('ca-certificates') +backup=('etc/tor/torrc' + 'etc/tor/torrc-dist' + 'etc/tor/tor-tsocks.conf' + 'etc/conf.d/tor') +install='tor.install' +source=("http://www.torproject.org/dist/${pkgname}-${pkgver}.tar.gz"{,.asc} + 'torrc' + 'tor' + 'tor.conf.d' + 'tor.service') +md5sums=('620b2110086aba01236b57f1d5aba416' + '0401cf01ad0bcc9aba4f9c1bb5e8e810' + '56c75d4e8a66f34167d31e38c43793dd' + 'f8e6868a389877346e7eebaacd1078bb' + '5c7c6834064b3530c442def6079ac3aa' + 'cf23b97a1da09670214da6229a3ecb09') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + + install -dm0700 "${pkgdir}/var/lib/tor" + + mv "${pkgdir}/etc/tor/torrc.sample" "${pkgdir}/etc/tor/torrc-dist" + install -Dm0644 "${srcdir}/torrc" "${pkgdir}/etc/tor/torrc" + install -Dm0755 "${srcdir}/tor" "${pkgdir}/etc/rc.d/tor" + install -Dm0644 "${srcdir}/tor.conf.d" "${pkgdir}/etc/conf.d/tor" + + install -Dm0644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + install -Dm0644 "${srcdir}/tor.service" "${pkgdir}/usr/lib/systemd/system/tor.service" +} diff --git a/community-testing/tor/tor b/community-testing/tor/tor new file mode 100644 index 000000000..522c498ce --- /dev/null +++ b/community-testing/tor/tor @@ -0,0 +1,44 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +# source application-specific settings +[ -f /etc/conf.d/tor ] && . /etc/conf.d/tor + +PID=`pidof -o %PPID /usr/bin/tor` +case "$1" in + start) + stat_busy "Starting Tor Daemon" + if [ -z "${TOR_MAX_FD}" ] || ulimit -n "${TOR_MAX_FD}"; then + [ -z "$PID" ] && /usr/bin/tor -f ${TOR_CONF} ${TOR_ARGS} &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon tor + stat_done + fi + else + stat_fail + fi + ;; + stop) + stat_busy "Stopping Tor Daemon" + [ ! -z "$PID" ] && kill -INT $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon tor + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 +# vim: ft=sh ts=2 sw=2 diff --git a/community-testing/tor/tor.conf.d b/community-testing/tor/tor.conf.d new file mode 100644 index 000000000..e9fa098e0 --- /dev/null +++ b/community-testing/tor/tor.conf.d @@ -0,0 +1,9 @@ +# Location of the config file. +TOR_CONF='/etc/tor/torrc' + +# Custom ulimit for maximum number of open files. +TOR_MAX_FD= + +# Additional arguments. +TOR_ARGS="--quiet" + diff --git a/community-testing/tor/tor.install b/community-testing/tor/tor.install new file mode 100644 index 000000000..2c448d28e --- /dev/null +++ b/community-testing/tor/tor.install @@ -0,0 +1,24 @@ +post_install() { + echo "-> Tor has been preconfigured to run as a client only." + echo "-> Tor is experimental software. Do not rely on it for strong anonymity." + echo '-> ' + echo '-> You can set custom file descriptor ulimits for Tor in' + echo '-> "/etc/conf.d/tor" using the "TOR_MAX_FD" variable.' + groupadd -g 43 tor &>/dev/null + useradd -u 43 -g tor -d /var/lib/tor -s /bin/false tor &> /dev/null + chown tor:tor var/lib/tor &> /dev/null + chmod 700 var/lib/tor &> /dev/null +} + +post_upgrade() { + echo '-> You can now set custom file descriptor ulimits for Tor in' + echo '-> "/etc/conf.d/tor" using the "TOR_MAX_FD" variable.' + getent group tor &>/dev/null || groupadd -g 43 tor &>/dev/null + getent passwd tor &>/dev/null || useradd -u 43 -g tor -d /var/lib/tor -s /bin/false tor &> /dev/null + chown tor:tor var/lib/tor &> /dev/null +} + +pre_remove() { + getent passwd tor &>/dev/null && userdel tor &> /dev/null + getent group tor &>/dev/null && groupdel tor &> /dev/null +} diff --git a/community-testing/tor/tor.service b/community-testing/tor/tor.service new file mode 100644 index 000000000..eb9b556b5 --- /dev/null +++ b/community-testing/tor/tor.service @@ -0,0 +1,13 @@ +[Unit] +Description=Anonymizing Overlay Network + +[Service] +Type=forking +GuessMainPID=yes +EnvironmentFile=/etc/conf.d/tor +ExecStart=/usr/bin/tor -f $TOR_CONF $TOR_ARGS +ExecReload=/bin/kill -HUP $MAINPID +KillSignal=SIGINT + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/tor/torrc b/community-testing/tor/torrc new file mode 100644 index 000000000..3505653ab --- /dev/null +++ b/community-testing/tor/torrc @@ -0,0 +1,143 @@ +## CONFIGURED FOR ARCHLINUX + +## Last updated 22 July 2005 for Tor 0.1.0.13. +## (May or may not work for older or newer versions of Tor.) +# +## See the man page, or http://tor.eff.org/tor-manual.html, for more +## options you can use in this file. +# +# On Unix, Tor will look for this file in someplace like "~/.tor/torrc" or +# "/etc/torrc" +# +# On Windows, Tor will look for the configuration file in someplace like +# "Application Data\tor\torrc" or "Application Data\<username>\tor\torrc" +# +# With the default Mac OS X installer, Tor will look in ~/.tor/torrc or +# /Library/Tor/torrc + + +## Replace this with "SocksPort 0" if you plan to run Tor only as a +## server, and not make any local application connections yourself. +SocksPort 9050 # what port to open for local application connections +SocksBindAddress 127.0.0.1 # accept connections only from localhost +#SocksBindAddress 192.168.0.1:9100 # listen on a chosen IP/port too + +## Entry policies to allow/deny SOCKS requests based on IP address. +## First entry that matches wins. If no SocksPolicy is set, we accept +## all (and only) requests from SocksBindAddress. +#SocksPolicy accept 192.168.0.1/16 +#SocksPolicy reject * + +## Allow no-name routers (ones that the dirserver operators don't +## know anything about) in only these positions in your circuits. +## Other choices (not advised) are entry,exit,introduction. +AllowUnverifiedNodes middle,rendezvous + +## Logs go to stdout at level "notice" unless redirected by something +## else, like one of the below lines. You can have as many log lines as +## you want. +## +## Send all messages of level 'notice' or higher to /var/log/tor/notices.log +#Log notice file /var/log/tor/notices.log +## Send only debug and info messages to /var/log/tor/debug.log +#Log debug-info file /var/log/tor/debug.log +## Send ONLY debug messages to /var/log/tor/debug.log +#Log debug-debug file /var/log/tor/debug.log +## To use the system log instead of Tor's logfiles, uncomment these lines: +Log notice syslog +## To send all messages to stderr: +#Log debug stderr + +## Uncomment this to start the process in the background... or use +## --runasdaemon 1 on the command line. +RunAsDaemon 1 +User tor +Group tor + +## Tor only trusts directories signed with one of these keys, and +## uses the given addresses to connect to the trusted directory +## servers. If no DirServer lines are specified, Tor uses the built-in +## defaults (moria1, moria2, tor26), so you can leave this alone unless +## you need to change it. +#DirServer 18.244.0.188:9031 FFCB 46DB 1339 DA84 674C 70D7 CB58 6434 C437 0441 +#DirServer 18.244.0.114:80 719B E45D E224 B607 C537 07D0 E214 3E2D 423E 74CF +#DirServer 86.59.21.38:80 847B 1F85 0344 D787 6491 A548 92F9 0493 4E4E B85D + +## The directory for keeping all the keys/etc. By default, we store +## things in $HOME/.tor on Unix, and in Application Data\tor on Windows. +DataDirectory /var/lib/tor + +## The port on which Tor will listen for local connections from Tor controller +## applications, as documented in control-spec.txt. NB: this feature is +## currently experimental. +#ControlPort 9051 + +############### This section is just for location-hidden services ### + +## Look in .../hidden_service/hostname for the address to tell people. +## HiddenServicePort x y:z says to redirect a port x request from the +## client to y:z. + +#HiddenServiceDir /var/lib/tor/hidden_service/ +#HiddenServicePort 80 127.0.0.1:80 + +#HiddenServiceDir /var/lib/tor/other_hidden_service/ +#HiddenServicePort 80 127.0.0.1:80 +#HiddenServicePort 22 127.0.0.1:22 +#HiddenServiceNodes moria1,moria2 +#HiddenServiceExcludeNodes bad,otherbad + +################ This section is just for servers ##################### + +## NOTE: If you enable these, you should consider mailing your identity +## key fingerprint to the tor-ops, so we can add you to the list of +## servers that clients will trust. See +## http://tor.eff.org/doc/tor-doc.html#server for details. + +## Required: A unique handle for this server +#Nickname ididnteditheconfig + +## The IP or fqdn for this server. Leave commented out and Tor will guess. +#Address noname.example.com + +## Contact info that will be published in the directory, so we can +## contact you if you need to upgrade or if something goes wrong. +## This is optional but recommended. +#ContactInfo Random Person <nobody AT example dot com> +## You might also include your PGP or GPG fingerprint if you have one: +#ContactInfo 1234D/FFFFFFFF Random Person <nobody AT example dot com> + +## Required: what port to advertise for tor connections +#ORPort 9001 +## If you want to listen on a port other than the one advertised +## in ORPort (e.g. to advertise 443 but bind to 9090), uncomment +## the line below. You'll need to do ipchains or other port forwarding +## yourself to make this work. +#ORBindAddress 0.0.0.0:9090 + +## Uncomment this to mirror the directory for others (please do) +#DirPort 9030 # what port to advertise for directory connections +## If you want to listen on a port other than the one advertised +## in DirPort (e.g. to advertise 80 but bind 9091), uncomment the line +## below. You'll need to do ipchains or other port forwarding yourself +## to make this work. +#DirBindAddress 0.0.0.0:9091 + +## A comma-separated list of exit policies. They're considered first +## to last, and the first match wins. If you want to *replace* +## the default exit policy, end this with either a reject *:* or an +## accept *:*. Otherwise, you're *augmenting* (prepending to) the +## default exit policy. Leave commented to just use the default, which is +## available in the man page or at http://tor.eff.org/documentation.html +## +## Look at http://tor.eff.org/faq-abuse.html#TypicalAbuses +## for issues you might encounter if you use the default exit policy. +## +## If certain IPs and ports are blocked externally, e.g. by your firewall, +## you should update your exit policy to reflect this -- otherwise Tor +## users will be told that those destinations are down. +## +#ExitPolicy accept *:6660-6667,reject *:* # allow irc ports but no more +#ExitPolicy accept *:119 # accept nntp as well as default exit policy +#ExitPolicy reject *:* # middleman only -- no exits allowed + diff --git a/community-testing/uptimed/PKGBUILD b/community-testing/uptimed/PKGBUILD new file mode 100644 index 000000000..a1b63299e --- /dev/null +++ b/community-testing/uptimed/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 72563 2012-06-16 17:11:23Z dreisner $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> +# Contributor: Tom Killian <tomk@runbox.com> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> + +pkgname=uptimed +pkgver=0.3.17 +pkgrel=2 +pkgdesc="A system uptime record daemon" +arch=(i686 x86_64) +url="http://podgorny.cz/uptimed/" +license=('GPL') +depends=('glibc' 'bash') +backup=(etc/uptimed.conf) +options=('!libtool') +install=$pkgname.install +source=(http://podgorny.cz/$pkgname/releases/$pkgname-$pkgver.tar.bz2 + rc.d + service) +md5sums=('528b62c33454b33537c3bf2366977bdb' + '4ae90bee9fc78014a889a5072effb735' + '657102b06613ddb9811427bee1973c6b') + +build() { + cd $srcdir/$pkgname-$pkgver + + # Change log path to Arch standard + for M in `ls M*`; do + sed -i "s|/var/spool/uptimed|$pkgdir/var/log/uptimed|" $M + done + sed -i 's|spool|log|' libuptimed/urec.h + + autoreconf + libtoolize --force + + ./configure --prefix=/usr --sysconfdir=/etc + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make prefix=$pkgdir/usr sysconfdir=$pkgdir/etc install + + mv $pkgdir/etc/uptimed.conf-dist $pkgdir/etc/uptimed.conf + install -Dm755 $srcdir/rc.d $pkgdir/etc/rc.d/uptimed + install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/uptimed.service +} diff --git a/community-testing/uptimed/rc.d b/community-testing/uptimed/rc.d new file mode 100644 index 000000000..6fe9ec3e3 --- /dev/null +++ b/community-testing/uptimed/rc.d @@ -0,0 +1,39 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/uptimed` +case "$1" in + start) + stat_busy "Starting Uptimed Daemon" + [ -z "$PID" ] && /usr/sbin/uptimed -b # create the boot record + if [ $? -gt 0 ] ; then + stat_fail + else + add_daemon uptimed # create the 'state' dir + /usr/sbin/uptimed # fire up the daemon + if [ $? -gt 0 ]; then + stat_fail + fi + stat_done + fi + ;; + stop) + stat_busy "Stopping Uptimed Daemon" + [ "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon uptimed # remove the 'state' dir + stat_done + fi + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/community-testing/uptimed/service b/community-testing/uptimed/service new file mode 100644 index 000000000..2fd785318 --- /dev/null +++ b/community-testing/uptimed/service @@ -0,0 +1,11 @@ +[Unit] +Description=System uptime record daemon + +[Service] +Type=forking +PIDFile=/var/run/uptimed +ExecStartPre=/usr/sbin/uptimed -b +ExecStart=/usr/sbin/uptimed + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/uptimed/uptimed.install b/community-testing/uptimed/uptimed.install new file mode 100644 index 000000000..178061706 --- /dev/null +++ b/community-testing/uptimed/uptimed.install @@ -0,0 +1,7 @@ +# arg 1: the old package version +pre_remove() { + # clean up after ourselves + # + /bin/rm -rf /var/log/uptimed +} + diff --git a/community-testing/vnstat/PKGBUILD b/community-testing/vnstat/PKGBUILD new file mode 100644 index 000000000..773763a24 --- /dev/null +++ b/community-testing/vnstat/PKGBUILD @@ -0,0 +1,39 @@ +# $Id: PKGBUILD 72564 2012-06-16 17:11:28Z dreisner $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> +# Contributor: Thorsten Töpper <atsutane-tu@freethoughts.de> + +pkgname=vnstat +pkgver=1.11 +pkgrel=3 +pkgdesc="A console-based network traffic monitor" +arch=('i686' 'x86_64') +url="http://humdi.net/vnstat/" +license=('GPL') +depends=('bash') +makedepends=('gd') +optdepends=('gd: image output') +backup=(etc/vnstat.conf) +source=(http://humdi.net/vnstat/$pkgname-$pkgver.tar.gz + http://humdi.net/vnstat/init.d/arch/vnstat + service) +md5sums=('a5a113f9176cd61fb954f2ba297f5fdb' + 'e89a566dd7514ff0d2d3fc77b2d4ca7e' + 'fcc189e3dee616ff414dac72637c1a19') + +build() { + cd $srcdir/$pkgname-$pkgver + make all +} + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install + + install -D -m0755 $srcdir/vnstat $pkgdir/etc/rc.d/vnstat + install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/vnstat.service + + install -D -m0644 examples/vnstat.cron $pkgdir/usr/share/doc/vnstat/examples/vnstat.cron + install -D -m0755 examples/vnstat.cgi $pkgdir/usr/share/doc/vnstat/examples/vnstat.cgi + sed -i 's#root##' $pkgdir/usr/share/doc/vnstat/examples/vnstat.cron +} diff --git a/community-testing/vnstat/service b/community-testing/vnstat/service new file mode 100644 index 000000000..f312351ea --- /dev/null +++ b/community-testing/vnstat/service @@ -0,0 +1,9 @@ +[Unit] +Description=Network traffic monitor + +[Service] +ExecStart=/usr/sbin/vnstatd -n +ExecReload=/bin/kill -HUP $MAINPID + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/vsftpd/PKGBUILD b/community-testing/vsftpd/PKGBUILD new file mode 100644 index 000000000..c4208743b --- /dev/null +++ b/community-testing/vsftpd/PKGBUILD @@ -0,0 +1,59 @@ +# $Id: PKGBUILD 72565 2012-06-16 17:11:45Z dreisner $ +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> +# Contributor: Andreas Radke <andyrtr@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +pkgname=vsftpd +pkgver=3.0.0 +pkgrel=3 +pkgdesc="Very Secure FTP daemon" +arch=('i686' 'x86_64') +url="https://security.appspot.com/vsftpd.html" +license=('GPL2') +depends=('openssl') +backup=('etc/vsftpd.conf' 'etc/xinetd.d/vsftpd') +install=vsftpd.install +source=(https://security.appspot.com/downloads/${pkgname}-${pkgver}.tar.gz{,.asc} + vsftpd.xinetd vsftpd.d vsftpd-ssl.socket vsftpd.socket + vsftpd.service vsftpd@.service vsftpd-ssl.service vsftpd-ssl@.service) +sha1sums=('436da30cefa33e22a0266077ab95397e9432e297' + '2142ac8a84f18ecc1ebac21b9ac07858c35ae6af' + 'c87b4ce56dac15223694a6e86c01ea813b877596' + '24f268956c24e78be0c234c6d31f41487922eafe' + 'f81dab50243f7e82dc9722ca79b2b24de0882eb2' + '5b7a7a1e0c04acfcc2dba1346557f1193b9905ba' + 'f1fa8cfaab1541c1ce3bb4dab4f4b302e5c44b03' + '3a040a18893a5103a1d4a22e631ee247bde8c8d3' + '08b2938dc81ee200b6d733a32f5565b9dbe170a3' + 'e5bd183664008bb0cc0353d4efb2e8e92a365798') + +build() { + cd $srcdir/$pkgname-$pkgver + + # build-time config + sed \ + -e 's|^#undef VSF_BUILD_SSL$|#define VSF_BUILD_SSL|' \ + -i builddefs.h + + CFLAGS+=' -fPIE' LINK='' LDFLAGS="-fPIE -pie ${LDFLAGS} -Wl,-z,now" make +} + +package() { + cd $srcdir/$pkgname-$pkgver + + install -D -m755 vsftpd $pkgdir/usr/sbin/vsftpd + install -D -m644 vsftpd.conf $pkgdir/etc/vsftpd.conf + install -D -m644 vsftpd.8 $pkgdir/usr/share/man/man8/vsftpd.8 + install -D -m644 vsftpd.conf.5 $pkgdir/usr/share/man/man5/vsftpd.conf.5 + install -D -m644 $srcdir/vsftpd.xinetd $pkgdir/etc/xinetd.d/vsftpd + install -D -m755 $srcdir/vsftpd.d $pkgdir/etc/rc.d/vsftpd + + install -D -m644 $srcdir/vsftpd.service $pkgdir/usr/lib/systemd/system/vsftpd.service + install -D -m644 $srcdir/vsftpd@.service $pkgdir/usr/lib/systemd/system/vsftpd@.service + install -D -m644 $srcdir/vsftpd-ssl.service $pkgdir/usr/lib/systemd/system/vsftpd-ssl.service + install -D -m644 $srcdir/vsftpd-ssl@.service $pkgdir/usr/lib/systemd/system/vsftpd-ssl@.service + install -D -m644 $srcdir/vsftpd.socket $pkgdir/usr/lib/systemd/system/vsftpd.socket + install -D -m644 $srcdir/vsftpd-ssl.socket $pkgdir/usr/lib/systemd/system/vsftpd-ssl.socket + + install -d -m755 $pkgdir/usr/share/empty +} diff --git a/community-testing/vsftpd/vsftpd-ssl.service b/community-testing/vsftpd/vsftpd-ssl.service new file mode 100644 index 000000000..f46b05fcd --- /dev/null +++ b/community-testing/vsftpd/vsftpd-ssl.service @@ -0,0 +1,10 @@ +[Unit] +Description=vsftpd daemon (legacy implicit SSL) + +[Service] +ExecStart=/usr/sbin/vsftpd -olisten_ipv6=yes -oimplicit_ssl=yes +ExecReload=/bin/kill -HUP $MAINPID +KillMode=process + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/vsftpd/vsftpd-ssl.socket b/community-testing/vsftpd/vsftpd-ssl.socket new file mode 100644 index 000000000..b18b639c1 --- /dev/null +++ b/community-testing/vsftpd/vsftpd-ssl.socket @@ -0,0 +1,9 @@ +[Unit] +Conflicts=vsftpd.service + +[Socket] +ListenStream=990 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/community-testing/vsftpd/vsftpd-ssl@.service b/community-testing/vsftpd/vsftpd-ssl@.service new file mode 100644 index 000000000..e53fad324 --- /dev/null +++ b/community-testing/vsftpd/vsftpd-ssl@.service @@ -0,0 +1,9 @@ +[Unit] +Description=vsftpd per-connection server (legacy implicit SSL) + +[Service] +ExecStart=-/usr/sbin/vsftpd -oimplicit_ssl=yes +ExecReload=/bin/kill -HUP $MAINPID +StandardInput=socket +StandardOutput=socket +StandardError=syslog diff --git a/community-testing/vsftpd/vsftpd.d b/community-testing/vsftpd/vsftpd.d new file mode 100644 index 000000000..27310855c --- /dev/null +++ b/community-testing/vsftpd/vsftpd.d @@ -0,0 +1,67 @@ +#!/bin/bash + +daemon_name=vsftpd + +. /etc/rc.conf +. /etc/rc.d/functions + +get_pid() { + pidof -o %PPID $daemon_name +} + +case "$1" in + start) + stat_busy "Starting $daemon_name daemon" + + PID=$(get_pid) + if [ -z "$PID" ]; then + [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid + # RUN + $daemon_name & + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + echo $(get_pid) > /var/run/$daemon_name.pid + add_daemon $daemon_name + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping $daemon_name daemon" + PID=$(get_pid) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm -f /var/run/$daemon_name.pid &> /dev/null + rm_daemon $daemon_name + stat_done + fi + ;; + + restart) + $0 stop + sleep 3 + $0 start + ;; + + status) + stat_busy "Checking $daemon_name status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|restart|status}" +esac + +exit 0 diff --git a/community-testing/vsftpd/vsftpd.install b/community-testing/vsftpd/vsftpd.install new file mode 100644 index 000000000..48f134e24 --- /dev/null +++ b/community-testing/vsftpd/vsftpd.install @@ -0,0 +1,17 @@ +# arg 1: the new package version +post_install() { + if [ -f lib/modules/`uname -r`/kernel/security/capability.ko ]; then + echo ">>> It appears that your current kernel has linux security" + echo ">>> capabilities built as a module. vsftpd requires this" + echo ">>> functionality to operate." + echo ">>>" + echo ">>> To activate the module, please load it now (modprobe capability)." + echo ">>> Also, you should add it to your MODULES array in rc.conf, so" + echo ">>> it will be activated automatically at boot-up." + fi +} + +post_upgrade() { + post_install $1 +} + diff --git a/community-testing/vsftpd/vsftpd.service b/community-testing/vsftpd/vsftpd.service new file mode 100644 index 000000000..d4f7251ba --- /dev/null +++ b/community-testing/vsftpd/vsftpd.service @@ -0,0 +1,10 @@ +[Unit] +Description=vsftpd daemon + +[Service] +ExecStart=/usr/sbin/vsftpd -olisten_ipv6=yes +ExecReload=/bin/kill -HUP $MAINPID +KillMode=process + +[Install] +WantedBy=multi-user.target diff --git a/community-testing/vsftpd/vsftpd.socket b/community-testing/vsftpd/vsftpd.socket new file mode 100644 index 000000000..cdc0d337e --- /dev/null +++ b/community-testing/vsftpd/vsftpd.socket @@ -0,0 +1,9 @@ +[Unit] +Conflicts=vsftpd.service + +[Socket] +ListenStream=21 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/community-testing/vsftpd/vsftpd.xinetd b/community-testing/vsftpd/vsftpd.xinetd new file mode 100644 index 000000000..eff2eb3db --- /dev/null +++ b/community-testing/vsftpd/vsftpd.xinetd @@ -0,0 +1,10 @@ +service ftp +{ + socket_type = stream + wait = no + user = root + server = /usr/sbin/vsftpd + log_on_success += HOST DURATION + log_on_failure += HOST + disable = yes +} diff --git a/community-testing/vsftpd/vsftpd@.service b/community-testing/vsftpd/vsftpd@.service new file mode 100644 index 000000000..353f95f82 --- /dev/null +++ b/community-testing/vsftpd/vsftpd@.service @@ -0,0 +1,8 @@ +[Unit] +Description=vsftpd per-connection server + +[Service] +ExecStart=-/usr/sbin/vsftpd +ExecReload=/bin/kill -HUP $MAINPID +StandardInput=socket +StandardError=syslog diff --git a/community/cdrtools/PKGBUILD b/community/cdrtools/PKGBUILD index 66e433311..dbe53d8f6 100644 --- a/community/cdrtools/PKGBUILD +++ b/community/cdrtools/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 68938 2012-04-06 10:10:47Z stativ $ +# $Id: PKGBUILD 72573 2012-06-16 18:43:00Z stativ $ # Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com> pkgname=cdrtools pkgver=3.01a07 -pkgrel=3 +pkgrel=4 pkgdesc="Original cdrtools supporting CD, DVD and BluRay burning" arch=('i686' 'x86_64') url="http://cdrecord.berlios.de/private/cdrecord.html" @@ -32,6 +32,10 @@ package() { make INS_BASE=/usr INS_RBASE=/ DESTDIR="$pkgdir" install rm -rf "$pkgdir"/usr/include rm -rf "$pkgdir"/usr/lib/{*.a,profiled} + + # autoload 'sg' module needed by cdrecord + install -d -m755 "$pkgdir"/usr/lib/modules-load.d/ + echo sg > "$pkgdir"/usr/lib/modules-load.d/cdrecord.conf } # vim:set ts=2 sw=2 et: diff --git a/community/cdrtools/cdrtools.install b/community/cdrtools/cdrtools.install index af3800716..3f49eb1bb 100644 --- a/community/cdrtools/cdrtools.install +++ b/community/cdrtools/cdrtools.install @@ -3,8 +3,12 @@ post_install() { echo "To allow other users than root execute rscsi add an entry" echo "to /etc/default/rscsi or use an \"rscsi\" user" echo "" - echo "If you get folowing error while executing \"cdrecord --scanbus\":" - echo " No such file or directory. Cannot open '/dev/pg*'. Cannot open or use SCSI driver." - echo "you may need to load the sg module manually using \"modprobe sg\"." + post_upgrade +} + +post_upgrade() { + echo "The manual loading (or loading using rc.conf)" + echo "of the 'sg' module is no longer necessary." + echo "It is automatically loaded during boot by systemd-tools (udev 185)." } diff --git a/community/conntrack-tools/01-config-file-path.patch b/community/conntrack-tools/01-config-file-path.patch new file mode 100644 index 000000000..8512cc9ab --- /dev/null +++ b/community/conntrack-tools/01-config-file-path.patch @@ -0,0 +1,11 @@ +--- a/include/conntrackd.h 2012-05-26 15:29:15.630027223 +0200 ++++ b/include/conntrackd.h 2012-05-27 02:26:59.426811589 +0200 +@@ -50,7 +50,7 @@ + #define EXP_DUMP_INT_XML 47 /* dump internal cache in XML */ + #define EXP_DUMP_EXT_XML 48 /* dump external cache in XML */ + +-#define DEFAULT_CONFIGFILE "/etc/conntrackd/conntrackd.conf" ++#define DEFAULT_CONFIGFILE "/etc/conntrackd.conf" + #define DEFAULT_LOCKFILE "/var/lock/conntrackd.lock" + #define DEFAULT_LOGFILE "/var/log/conntrackd.log" + #define DEFAULT_STATS_LOGFILE "/var/log/conntrackd-stats.log" diff --git a/community/conntrack-tools/02-fix-compilation-of-timeout-extension.patch b/community/conntrack-tools/02-fix-compilation-of-timeout-extension.patch new file mode 100644 index 000000000..746934994 --- /dev/null +++ b/community/conntrack-tools/02-fix-compilation-of-timeout-extension.patch @@ -0,0 +1,33 @@ +From 18efbc802479ce042378dc0cccc7577e1c6afa41 Mon Sep 17 00:00:00 2001 +From: Pablo Neira Ayuso <pablo@netfilter.org> +Date: Sat, 26 May 2012 20:58:16 +0200 +Subject: [PATCH] nfct: fix compilation of timeout extension +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf8 +Content-Transfer-Encoding: 8bit + +nfct-extensions/timeout.c: In function ‘nfct_timeout_cb’: +nfct-extensions/timeout.c:99:2: warning: passing argument 4 of ‘nfct_timeout_snprintf’ makes integer from pointer without a cast [enabled by default] +/usr/include/libnetfilter_cttimeout/libnetfilter_cttimeout.h:114:5: note: expected ‘unsigned int’ but argument is of type ‘struct nfct_timeout *’ + +Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> +--- + src/nfct-extensions/timeout.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/nfct-extensions/timeout.c b/src/nfct-extensions/timeout.c +index a1a5c52..5b32023 100644 +--- a/src/nfct-extensions/timeout.c ++++ b/src/nfct-extensions/timeout.c +@@ -96,7 +96,7 @@ static int nfct_timeout_cb(const struct nlmsghdr *nlh, void *data) + goto err_free; + } + +- nfct_timeout_snprintf(buf, sizeof(buf), t, 0); ++ nfct_timeout_snprintf(buf, sizeof(buf), t, NFCT_TIMEOUT_O_DEFAULT, 0); + printf("%s\n", buf); + + err_free: +-- +1.7.2.5 + diff --git a/community/conntrack-tools/PKGBUILD b/community/conntrack-tools/PKGBUILD index 006e17429..541456cd8 100644 --- a/community/conntrack-tools/PKGBUILD +++ b/community/conntrack-tools/PKGBUILD @@ -1,29 +1,37 @@ -# $Id: PKGBUILD 71212 2012-05-25 00:16:39Z seblu $ +# $Id: PKGBUILD 72534 2012-06-16 14:02:03Z seblu $ # Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org> # Contributor: Valere Monseur <valere_monseur@hotmail.com> # Contributor: Alessandro Sagratini <ale_sagra@hotmail.com> # Contributor: Kevin Edmonds <edmondskevin@hotmail.com> pkgname=conntrack-tools -pkgver=1.0.1 -pkgrel=2 +pkgver=1.2.0 +pkgrel=1 pkgdesc='Userspace tools to interact with the Netfilter connection tracking system' arch=('i686' 'x86_64') url='http://www.netfilter.org/projects/conntrack-tools' license=('GPL2') -depends=('libnetfilter_conntrack') -backup=('etc/conntrackd/conntrackd.conf') +depends=('libnetfilter_conntrack' 'libnetfilter_cttimeout') +backup=('etc/conntrackd.conf' 'etc/conf.d/conntrackd') +install=$pkgname.install source=("http://www.netfilter.org/projects/$pkgname/files/$pkgname-$pkgver.tar.bz2" 'conntrackd.rc' 'conntrackd.conf' - 'conntrackd.service') -md5sums=('8a60f02a177fc31fe40cc992c4de90e2' - '977dfb8fc58df0c74120c8ac92026a6a' - '92a7fc6ab5cba5e48cde4cac0ac403b1' - 'bd135eaefb47923bb8e8d26f084d3e9d') + 'conntrackd.service' + '01-config-file-path.patch' + '02-fix-compilation-of-timeout-extension.patch') +md5sums=('8e20330d6ca3a3f23552aa900b1d467c' + '478fe76da0202fcb5249bf65968d1c26' + 'd3e73e81b54e3e8166d357d434680684' + 'bd135eaefb47923bb8e8d26f084d3e9d' + '411fc0eb97c02595aab69b14c26c1d00' + '0144021bbec4d5b496ddd86a7ff7a257') build() { cd $pkgname-$pkgver + for i in "$srcdir"/*.patch; do + patch -p1 -i "$i" + done ./configure --prefix=/usr --sysconfdir=/etc make } @@ -39,7 +47,7 @@ package() { install -D -m 644 conntrackd.service \ "$pkgdir/usr/lib/systemd/system/conntrackd.service" # install empty configuration files - install -D -m 644 /dev/null "$pkgdir/etc/conntrackd/conntrackd.conf" + install -D -m 644 /dev/null "$pkgdir/etc/conntrackd.conf" } # vim:set ts=2 sw=2 ft=sh et: diff --git a/community/conntrack-tools/conntrack-tools.install b/community/conntrack-tools/conntrack-tools.install new file mode 100644 index 000000000..d21a5f92c --- /dev/null +++ b/community/conntrack-tools/conntrack-tools.install @@ -0,0 +1,9 @@ +## arg 1: the new package version +## arg 2: the old package version +post_upgrade() { + [ $(vercmp "$2" '1.0.1-2') -gt 0 ] || cat <<EOF +Config file have been moved from /etc/conntrackd/conntrackd.conf to /etc/conntrackd.conf. +EOF +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/community/conntrack-tools/conntrackd.conf b/community/conntrack-tools/conntrackd.conf index b90427a49..285f566d2 100644 --- a/community/conntrack-tools/conntrackd.conf +++ b/community/conntrack-tools/conntrackd.conf @@ -1,3 +1,3 @@ # vim:set ts=2 sw=2 ft=sh noet: -DAEMON_OPTIONS='-d' +#DAEMON_OPTIONS='' diff --git a/community/conntrack-tools/conntrackd.rc b/community/conntrack-tools/conntrackd.rc index a7040c633..4300a7041 100644 --- a/community/conntrack-tools/conntrackd.rc +++ b/community/conntrack-tools/conntrackd.rc @@ -6,6 +6,7 @@ DAEMON=/usr/sbin/conntrackd PID=$(pidof -o %PPID $DAEMON) +DAEMON_OPTIONS="-d $DAEMON_OPTIONS" case "$1" in start) diff --git a/community/libnetfilter_cttimeout/PKGBUILD b/community/libnetfilter_cttimeout/PKGBUILD new file mode 100644 index 000000000..1c3211c32 --- /dev/null +++ b/community/libnetfilter_cttimeout/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 72544 2012-06-16 15:53:38Z seblu $ +# Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org> + +pkgname=libnetfilter_cttimeout +pkgver=1.0.0 +pkgrel=3 +pkgdesc='Library for the connection tracking timeout infrastructure' +arch=('i686' 'x86_64') +url='http://www.netfilter.org/projects/libnetfilter_cttimeout/' +license=('GPL2') +depends=('libmnl') +options=('!libtool') +source=("http://www.netfilter.org/projects/$pkgname/files/$pkgname-$pkgver.tar.bz2") +md5sums=('7697437fc9ebb6f6b83df56a633db7f9') + +build() { + cd $pkgname-$pkgver + ./configure --prefix=/usr +} + +package() { + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/community/nautilus-actions/PKGBUILD b/community/nautilus-actions/PKGBUILD index 429204815..28b0d8f71 100644 --- a/community/nautilus-actions/PKGBUILD +++ b/community/nautilus-actions/PKGBUILD @@ -1,34 +1,34 @@ -# $Id: PKGBUILD 60313 2011-12-10 09:56:53Z ibiru $ +# $Id: PKGBUILD 72506 2012-06-16 07:11:54Z ebelanger $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Roman Kyrylych <roman@archlinux.org> # Contributor: Tor Krill <tor@krill.nu> pkgname=nautilus-actions -pkgver=3.1.5 +pkgver=3.2.2 pkgrel=1 pkgdesc="Configures programs to be launched when files are selected in Nautilus" arch=('i686' 'x86_64') -url="http://gnome.org" +url="http://www.nautilus-actions.org/" license=('GPL') depends=('nautilus' 'libunique3' 'libgtop' 'gconf' 'libsm') makedepends=('intltool' 'gnome-doc-utils') install=nautilus-actions.install options=('!libtool') -source=(http://ftp.gnome.org/pub/GNOME/sources/nautilus-actions/3.1/$pkgname-$pkgver.tar.xz) -sha256sums=('dc6b7522d04e1ed1505d6cb2e3be7888ffbac3f094ba6204da81a19c92cb230a') +source=(http://ftp.gnome.org/pub/GNOME/sources/nautilus-actions/${pkgver%.*}/$pkgname-$pkgver.tar.xz) +sha256sums=('214af9fd2a7f561366bf88446f9b79182e696a303da8e15c7a8a1ffaeaca11c4') build() { - cd $srcdir/$pkgname-$pkgver + cd "$srcdir/$pkgname-$pkgver" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --libexecdir=/usr/lib/nautilus-actions make } package(){ - cd $srcdir/$pkgname-$pkgver - make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR=$pkgdir install - mkdir -p $pkgdir/usr/share/gconf/schemas - gconf-merge-schema $pkgdir/usr/share/gconf/schemas/$pkgname.schemas --domain nautilus-actions \ - $pkgdir/etc/gconf/schemas/*.schemas - rm -rf $pkgdir/etc/gconf/schemas/ + cd "$srcdir/$pkgname-$pkgver" + make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="$pkgdir" install + mkdir -p "$pkgdir/usr/share/gconf/schemas" + gconf-merge-schema "$pkgdir/usr/share/gconf/schemas/$pkgname.schemas" --domain nautilus-actions \ + "$pkgdir"/etc/gconf/schemas/*.schemas + rm -rf "$pkgdir/etc/gconf/schemas/" } diff --git a/community/uptimed/PKGBUILD b/community/uptimed/PKGBUILD index e8ae9f9c0..3ec4f440a 100644 --- a/community/uptimed/PKGBUILD +++ b/community/uptimed/PKGBUILD @@ -1,11 +1,12 @@ -# $Id: PKGBUILD 65353 2012-02-21 02:18:04Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# $Id: PKGBUILD 72514 2012-06-16 08:04:35Z bpiotrowski $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> # Contributor: Tom Killian <tomk@runbox.com> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=uptimed -pkgver=0.3.16 -pkgrel=4 +pkgver=0.3.17 +pkgrel=1 pkgdesc="A system uptime record daemon" arch=(i686 x86_64) url="http://podgorny.cz/uptimed/" @@ -15,8 +16,8 @@ backup=(etc/uptimed.conf) options=('!libtool') install=$pkgname.install source=(http://podgorny.cz/$pkgname/releases/$pkgname-$pkgver.tar.bz2 - uptimed) -md5sums=('f87ec2cc39039239004afa542cf99c59' + rc.d) +md5sums=('528b62c33454b33537c3bf2366977bdb' '4ae90bee9fc78014a889a5072effb735') build() { @@ -40,5 +41,5 @@ package() { make prefix=$pkgdir/usr sysconfdir=$pkgdir/etc install mv $pkgdir/etc/uptimed.conf-dist $pkgdir/etc/uptimed.conf - install -D $srcdir/uptimed $pkgdir/etc/rc.d/uptimed + install -D $srcdir/rc.d $pkgdir/etc/rc.d/uptimed } diff --git a/community/uptimed/rc.d b/community/uptimed/rc.d new file mode 100644 index 000000000..6fe9ec3e3 --- /dev/null +++ b/community/uptimed/rc.d @@ -0,0 +1,39 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/uptimed` +case "$1" in + start) + stat_busy "Starting Uptimed Daemon" + [ -z "$PID" ] && /usr/sbin/uptimed -b # create the boot record + if [ $? -gt 0 ] ; then + stat_fail + else + add_daemon uptimed # create the 'state' dir + /usr/sbin/uptimed # fire up the daemon + if [ $? -gt 0 ]; then + stat_fail + fi + stat_done + fi + ;; + stop) + stat_busy "Stopping Uptimed Daemon" + [ "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon uptimed # remove the 'state' dir + stat_done + fi + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/extra/jade/PKGBUILD b/extra/jade/PKGBUILD index 61c446a3e..1fa51e196 100644 --- a/extra/jade/PKGBUILD +++ b/extra/jade/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 150527 2012-02-18 12:08:07Z pierre $ +# $Id: PKGBUILD 161891 2012-06-16 05:10:30Z eric $ # Maintainer: # Contributor: dorphell <dorphell@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=jade pkgver=1.2.1 -pkgrel=7 -_debpatch=47 +pkgrel=8 +_debpatch=47.1 pkgdesc="James Clark's DSSSL Engine" url='http://www.jclark.com/jade/' arch=('i686' 'x86_64') @@ -17,7 +17,7 @@ options=('!libtool' '!makeflags') source=("ftp://ftp.jclark.com/pub/${pkgname}/${pkgname}-${pkgver}.tar.gz" "http://ftp.debian.org/debian/pool/main/j/jade/jade_${pkgver}-${_debpatch}.diff.gz") md5sums=('4239670ca6b578bff68b8c2e7cd1225f' - 'feb3889e2a5fa86ac6bdb742a25d0001') + '6c9c0109e3b6d283cb7a18ec8a672575') build() { cd "${srcdir}"/${pkgname}-${pkgver} diff --git a/extra/libdrm-old/COPYING b/extra/libdrm-old/COPYING new file mode 100644 index 000000000..6e74c337c --- /dev/null +++ b/extra/libdrm-old/COPYING @@ -0,0 +1,48 @@ + Copyright 2005 Adam Jackson. + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation on the rights to use, copy, modify, merge, + publish, distribute, sub license, and/or sell copies of the Software, + and to permit persons to whom the Software is furnished to do so, + subject to the following conditions: + + The above copyright notice and this permission notice (including the + next paragraph) shall be included in all copies or substantial + portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NON-INFRINGEMENT. IN NO EVENT SHALL ADAM JACKSON BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +------------------------------------------------------------------------ + + Copyright 1999 Precision Insight, Inc., Cedar Park, Texas. + Copyright 2000 VA Linux Systems, Inc., Sunnyvale, California. + All Rights Reserved. + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice (including the + next paragraph) shall be included in all copies or substantial + portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS + SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. diff --git a/extra/libdrm-old/PKGBUILD b/extra/libdrm-old/PKGBUILD new file mode 100644 index 000000000..f72b03e5c --- /dev/null +++ b/extra/libdrm-old/PKGBUILD @@ -0,0 +1,54 @@ +#Id$ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgbase=libdrm-old +pkgname=(libdrm-old libdrm-nouveau1) +pkgver=2.4.33 +pkgrel=1 +pkgdesc="Userspace interface to kernel DRM services" +arch=(i686 x86_64) +license=('custom') +depends=('glibc' 'libpciaccess') +makedepends=('cairo' 'valgrind') +options=('!libtool' '!emptydirs') +url="http://dri.freedesktop.org/" +source=(http://dri.freedesktop.org/libdrm/libdrm-$pkgver.tar.bz2 + no-pthread-stubs.patch + COPYING +) +sha1sums=('4da2c635491724e44326871e6a49ccfec0b6b5a6' + '825ff5e0c4238b31bdea52f104bfec8949270e25' + 'ba3dcd636997ee0d30df14b03dae05c24ae5d094') + +build() { + cd "libdrm-$pkgver" + patch -Np1 -i "$srcdir/no-pthread-stubs.patch" + + #libtoolize --force + autoreconf --force --install + ./configure --prefix=/usr \ + --disable-libkms \ + --disable-intel \ + --disable-radeon \ + --enable-nouveau-experimental-api + make +} + +package_libdrm-old() { + pkgdesc="Userspace interface to kernel DRM services - used as makedepends for nouveau-dri" + conflicts=('libdrm') + provides=("libdrm=$pkgver") + cd "libdrm-$pkgver" + make DESTDIR="$pkgdir" install + rm "$pkgdir"/usr/lib/libdrm_nouveau.so.1* +} + +package_libdrm-nouveau1() { + pkgdesc="Userspace interface to kernel DRM services for nouveau - used as depends for nouveau-dri" + depends=(libdrm) + cd "libdrm-$pkgver" + make DESTDIR="$pkgdir" install-libdrm_laLTLIBRARIES + make -C nouveau DESTDIR="$pkgdir" install + make DESTDIR="$pkgdir" uninstall-libdrm_laLTLIBRARIES + rm -rf "$pkgdir"/usr/include/ "$pkgdir"/usr/lib/pkgconfig/libdrm_nouveau.pc "$pkgdir"/usr/lib/libdrm_nouveau.so +} diff --git a/extra/libdrm-old/no-pthread-stubs.patch b/extra/libdrm-old/no-pthread-stubs.patch new file mode 100644 index 000000000..5430244f9 --- /dev/null +++ b/extra/libdrm-old/no-pthread-stubs.patch @@ -0,0 +1,66 @@ +diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac +--- libdrm-2.4.0/configure.ac 2008-10-09 21:57:09.000000000 +0200 ++++ libdrm-2.4.0-nostubs/configure.ac 2008-10-21 10:48:24.000000000 +0200 +@@ -47,10 +47,6 @@ + LT_INIT([disable-static]) + + +-PKG_CHECK_MODULES(PTHREADSTUBS, pthread-stubs) +-AC_SUBST(PTHREADSTUBS_CFLAGS) +-AC_SUBST(PTHREADSTUBS_LIBS) +- + pkgconfigdir=${libdir}/pkgconfig + AC_SUBST(pkgconfigdir) + AC_ARG_ENABLE([udev], +--- libdrm-2.4.16/intel/Makefile.am 2009-11-20 23:54:36.000000000 +0000 ++++ libdrm-2.4.16/intel/Makefile.am.new 2009-12-07 08:11:32.235748069 +0000 +@@ -26,7 +26,6 @@ + $(WARN_CFLAGS) \ + -I$(top_srcdir) \ + -I$(top_srcdir)/intel \ +- $(PTHREADSTUBS_CFLAGS) \ + $(PCIACCESS_CFLAGS) \ + -I$(top_srcdir)/include/drm + +@@ -34,7 +33,6 @@ + libdrm_intel_ladir = $(libdir) + libdrm_intel_la_LDFLAGS = -version-number 1:0:0 -no-undefined + libdrm_intel_la_LIBADD = ../libdrm.la \ +- @PTHREADSTUBS_LIBS@ \ + @PCIACCESS_LIBS@ \ + @CLOCK_LIB@ + +--- libdrm-2.4.16/radeon/Makefile.am 2009-11-20 23:54:36.000000000 +0000 ++++ libdrm-2.4.16/radeon/Makefile.am.new 2009-12-07 08:12:31.889075388 +0000 +@@ -26,13 +26,12 @@ + $(WARN_CFLAGS) \ + -I$(top_srcdir) \ + -I$(top_srcdir)/radeon \ +- $(PTHREADSTUBS_CFLAGS) \ + -I$(top_srcdir)/include/drm + + libdrm_radeon_la_LTLIBRARIES = libdrm_radeon.la + libdrm_radeon_ladir = $(libdir) + libdrm_radeon_la_LDFLAGS = -version-number 1:0:0 -no-undefined +-libdrm_radeon_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ ++libdrm_radeon_la_LIBADD = ../libdrm.la + + libdrm_radeon_la_SOURCES = \ + radeon_bo_gem.c \ +--- libdrm-2.4.16/nouveau/Makefile.am 2009-11-20 23:54:36.000000000 +0000 ++++ libdrm-2.4.16/nouveau/Makefile.am.new 2009-12-07 08:13:01.489072320 +0000 +@@ -2,13 +2,12 @@ + $(WARN_CFLAGS) \ + -I$(top_srcdir) \ + -I$(top_srcdir)/nouveau \ +- $(PTHREADSTUBS_CFLAGS) \ + -I$(top_srcdir)/include/drm + + libdrm_nouveau_la_LTLIBRARIES = libdrm_nouveau.la + libdrm_nouveau_ladir = $(libdir) + libdrm_nouveau_la_LDFLAGS = -version-number 1:0:0 -no-undefined +-libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ ++libdrm_nouveau_la_LIBADD = ../libdrm.la + + libdrm_nouveau_la_SOURCES = \ + nouveau_device.c \ diff --git a/extra/libdrm/PKGBUILD b/extra/libdrm/PKGBUILD index 52be2e1bf..e34832a29 100644 --- a/extra/libdrm/PKGBUILD +++ b/extra/libdrm/PKGBUILD @@ -1,51 +1,45 @@ -# $Id: PKGBUILD 154508 2012-03-29 17:30:54Z andyrtr $ +# $Id: PKGBUILD 161901 2012-06-16 12:11:13Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libdrm -pkgver=2.4.33 +pkgver=2.4.35 pkgrel=1 pkgdesc="Userspace interface to kernel DRM services" arch=(i686 x86_64) license=('custom') depends=('glibc' 'libpciaccess') makedepends=('cairo' 'valgrind') +replaces=('libdrm-new' 'libdrm-nouveau') options=('!libtool') url="http://dri.freedesktop.org/" -source=(http://dri.freedesktop.org/${pkgname}/${pkgname}-${pkgver}.tar.bz2 +source=(http://dri.freedesktop.org/$pkgname/$pkgname-$pkgver.tar.bz2 no-pthread-stubs.patch COPYING -# git_fixes.diff ) -sha1sums=('4da2c635491724e44326871e6a49ccfec0b6b5a6' - '825ff5e0c4238b31bdea52f104bfec8949270e25' +sha1sums=('a1d8d4945f782371d7855dbd693db885bd7e3d83' + '2a5410baa3e6e078f9378ce486a88f41d22fd838' 'ba3dcd636997ee0d30df14b03dae05c24ae5d094') build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i "${srcdir}/no-pthread-stubs.patch" + cd $pkgname-$pkgver + patch -Np1 -i ../no-pthread-stubs.patch - # git fixes - currently none -# patch -Np1 -i ${srcdir}/git_fixes.diff - #libtoolize --force autoreconf --force --install ./configure --prefix=/usr \ --enable-udev \ - --enable-intel \ - --enable-radeon \ - --enable-vmwgfx-experimental-api \ - --enable-nouveau-experimental-api + --enable-vmwgfx-experimental-api make } check() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd $pkgname-$pkgver make -k check } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 "${srcdir}/COPYING" "${pkgdir}/usr/share/licenses/${pkgname}/" + cd $pkgname-$pkgver + make DESTDIR="$pkgdir" install + install -m755 -d "$pkgdir/usr/share/licenses/$pkgname" + install -m644 ../COPYING "$pkgdir/usr/share/licenses/$pkgname/" } diff --git a/extra/libdrm/no-pthread-stubs.patch b/extra/libdrm/no-pthread-stubs.patch index 5430244f9..6745f4bc4 100644 --- a/extra/libdrm/no-pthread-stubs.patch +++ b/extra/libdrm/no-pthread-stubs.patch @@ -1,6 +1,6 @@ -diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac ---- libdrm-2.4.0/configure.ac 2008-10-09 21:57:09.000000000 +0200 -+++ libdrm-2.4.0-nostubs/configure.ac 2008-10-21 10:48:24.000000000 +0200 +diff -Nur libdrm-2.4.34.orig/configure.ac libdrm-2.4.34/configure.ac +--- libdrm-2.4.34.orig/configure.ac 2012-05-12 14:54:06.375335490 +0000 ++++ libdrm-2.4.34/configure.ac 2012-05-12 14:54:32.075142065 +0000 @@ -47,10 +47,6 @@ LT_INIT([disable-static]) @@ -12,17 +12,18 @@ diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac pkgconfigdir=${libdir}/pkgconfig AC_SUBST(pkgconfigdir) AC_ARG_ENABLE([udev], ---- libdrm-2.4.16/intel/Makefile.am 2009-11-20 23:54:36.000000000 +0000 -+++ libdrm-2.4.16/intel/Makefile.am.new 2009-12-07 08:11:32.235748069 +0000 +diff -Nur libdrm-2.4.34.orig/intel/Makefile.am libdrm-2.4.34/intel/Makefile.am +--- libdrm-2.4.34.orig/intel/Makefile.am 2012-05-12 14:54:06.372001955 +0000 ++++ libdrm-2.4.34/intel/Makefile.am 2012-05-12 14:55:24.164745055 +0000 @@ -26,7 +26,6 @@ $(WARN_CFLAGS) \ -I$(top_srcdir) \ -I$(top_srcdir)/intel \ - $(PTHREADSTUBS_CFLAGS) \ $(PCIACCESS_CFLAGS) \ + $(VALGRIND_CFLAGS) \ -I$(top_srcdir)/include/drm - -@@ -34,7 +33,6 @@ +@@ -35,7 +34,6 @@ libdrm_intel_ladir = $(libdir) libdrm_intel_la_LDFLAGS = -version-number 1:0:0 -no-undefined libdrm_intel_la_LIBADD = ../libdrm.la \ @@ -30,8 +31,28 @@ diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac @PCIACCESS_LIBS@ \ @CLOCK_LIB@ ---- libdrm-2.4.16/radeon/Makefile.am 2009-11-20 23:54:36.000000000 +0000 -+++ libdrm-2.4.16/radeon/Makefile.am.new 2009-12-07 08:12:31.889075388 +0000 +diff -Nur libdrm-2.4.34.orig/nouveau/Makefile.am libdrm-2.4.34/nouveau/Makefile.am +--- libdrm-2.4.34.orig/nouveau/Makefile.am 2012-05-12 14:54:06.331998148 +0000 ++++ libdrm-2.4.34/nouveau/Makefile.am 2012-05-12 14:56:00.941132085 +0000 +@@ -2,14 +2,13 @@ + $(WARN_CFLAGS) \ + -I$(top_srcdir) \ + -I$(top_srcdir)/nouveau \ +- $(PTHREADSTUBS_CFLAGS) \ + -I$(top_srcdir)/include/drm \ + -DDEBUG + + libdrm_nouveau_la_LTLIBRARIES = libdrm_nouveau.la + libdrm_nouveau_ladir = $(libdir) + libdrm_nouveau_la_LDFLAGS = -version-number 2:0:0 -no-undefined +-libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ ++libdrm_nouveau_la_LIBADD = ../libdrm.la + + libdrm_nouveau_la_SOURCES = nouveau.c \ + pushbuf.c \ +diff -Nur libdrm-2.4.34.orig/radeon/Makefile.am libdrm-2.4.34/radeon/Makefile.am +--- libdrm-2.4.34.orig/radeon/Makefile.am 2012-05-12 14:54:06.365334765 +0000 ++++ libdrm-2.4.34/radeon/Makefile.am 2012-05-12 14:55:48.084557437 +0000 @@ -26,13 +26,12 @@ $(WARN_CFLAGS) \ -I$(top_srcdir) \ @@ -47,20 +68,3 @@ diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac libdrm_radeon_la_SOURCES = \ radeon_bo_gem.c \ ---- libdrm-2.4.16/nouveau/Makefile.am 2009-11-20 23:54:36.000000000 +0000 -+++ libdrm-2.4.16/nouveau/Makefile.am.new 2009-12-07 08:13:01.489072320 +0000 -@@ -2,13 +2,12 @@ - $(WARN_CFLAGS) \ - -I$(top_srcdir) \ - -I$(top_srcdir)/nouveau \ -- $(PTHREADSTUBS_CFLAGS) \ - -I$(top_srcdir)/include/drm - - libdrm_nouveau_la_LTLIBRARIES = libdrm_nouveau.la - libdrm_nouveau_ladir = $(libdir) - libdrm_nouveau_la_LDFLAGS = -version-number 1:0:0 -no-undefined --libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ -+libdrm_nouveau_la_LIBADD = ../libdrm.la - - libdrm_nouveau_la_SOURCES = \ - nouveau_device.c \ diff --git a/extra/libpng/PKGBUILD b/extra/libpng/PKGBUILD index 7563f5316..f37b138c5 100644 --- a/extra/libpng/PKGBUILD +++ b/extra/libpng/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 155695 2012-04-05 07:31:28Z ibiru $ +# $Id: PKGBUILD 161912 2012-06-16 14:11:51Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: dorphell <dorphell@archlinux.org> # Contributor: Travis Willard <travis@archlinux.org> # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> pkgname=libpng -pkgver=1.5.10 -_apngver=1.5.10 +pkgver=1.5.11 +_apngver=1.5.11 pkgrel=1 pkgdesc="A collection of routines used to create PNG format graphics files" arch=('i686' 'x86_64') @@ -16,22 +16,22 @@ depends=('zlib' 'sh') options=('!libtool') source=("http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.xz" "http://downloads.sourceforge.net/sourceforge/libpng-apng/libpng-$_apngver-apng.patch.gz") -md5sums=('9c2ac3c3a31de2ab867875718f8de18e' - '88517ab0e9c0be2590800116e2b50c8d') +md5sums=('57f838299e701b6db9e8389c5602dc18' + 'e9ddf7670e78ad93f4cc189c884d4f26') build() { - cd "$pkgname-$pkgver" + cd $pkgname-$pkgver # Add animated PNG (apng) support # see http://sourceforge.net/projects/libpng-apng/ - patch -p1 -i "$srcdir/libpng-$_apngver-apng.patch" + patch -p1 -i ../libpng-$_apngver-apng.patch ./configure --prefix=/usr make } package() { - cd "$pkgname-$pkgver" + cd $pkgname-$pkgver make DESTDIR="$pkgdir" install cd contrib/pngminus diff --git a/extra/mesa/PKGBUILD b/extra/mesa/PKGBUILD index ada897178..9dad0740b 100644 --- a/extra/mesa/PKGBUILD +++ b/extra/mesa/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 160367 2012-06-01 12:58:38Z dreisner $ +# $Id: PKGBUILD 161903 2012-06-16 12:11:28Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgbase=mesa -pkgname=('mesa' 'libgl' 'osmesa' 'libglapi' 'libgbm' 'libgles' 'libegl' 'khrplatform-devel' 'ati-dri' 'intel-dri' 'nouveau-dri' 'svga-dri') +pkgname=('mesa' 'libgl' 'osmesa' 'libglapi' 'libgbm' 'libgles' 'libegl' 'khrplatform-devel' 'ati-dri' 'intel-dri' 'svga-dri') #'nouveau-dri') #_git=true _gitdate=20111031 @@ -15,7 +15,7 @@ if [ "${_git}" = "true" ]; then else pkgver=8.0.3 fi -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64') makedepends=('glproto>=1.4.15' 'libdrm>=2.4.30' 'libxxf86vm>=1.1.1' 'libxdamage>=1.1.3' 'expat>=2.0.1' 'libx11>=1.4.99.1' 'libxt>=1.1.1' 'gcc-libs>=4.6.1' 'dri2proto>=2.6' 'python2' 'libxml2' 'imake' 'llvm' 'udev>=183') @@ -68,7 +68,8 @@ if [ "${_git}" = "true" ]; then autoreconf -vfi ./configure --prefix=/usr \ --with-dri-driverdir=/usr/lib/xorg/modules/dri \ - --with-gallium-drivers=r300,r600,nouveau,svga,swrast \ + --with-gallium-drivers=r300,r600,svga,swrast \ + --with-dri-drivers=i915,i965,r200,radeon,swrast \ --enable-gallium-llvm \ --enable-gallium-egl \ --enable-shared-glapi \ diff --git a/extra/nouveau-dri/LICENSE b/extra/nouveau-dri/LICENSE new file mode 100644 index 000000000..ae33d2709 --- /dev/null +++ b/extra/nouveau-dri/LICENSE @@ -0,0 +1,82 @@ +Disclaimer + +Mesa is a 3-D graphics library with an API which is very similar to +that of OpenGL* +To the extent that Mesa utilizes the OpenGL command syntax or state +machine, it is being used with authorization from Silicon Graphics, +Inc.(SGI). However, the author does not possess an OpenGL license +from SGI, and makes no claim that Mesa is in any way a compatible +replacement for OpenGL or associated with SGI. Those who want a +licensed implementation of OpenGL should contact a licensed +vendor. + +Please do not refer to the library as MesaGL (for legal +reasons). It's just Mesa or The Mesa 3-D graphics +library + +* OpenGL is a trademark of Silicon Graphics Incorporated. + +License / Copyright Information + +The Mesa distribution consists of several components. Different copyrights +and licenses apply to different components. For example, GLUT is copyrighted +by Mark Kilgard, some demo programs are copyrighted by SGI, some of the Mesa +device drivers are copyrighted by their authors. See below for a list of +Mesa's main components and the license for each. + +The core Mesa library is licensed according to the terms of the MIT license. +This allows integration with the XFree86, Xorg and DRI projects. + +The default Mesa license is as follows: + +Copyright (C) 1999-2007 Brian Paul All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Attention, Contributors + +When contributing to the Mesa project you must agree to the licensing terms +of the component to which you're contributing. +The following section lists the primary components of the Mesa distribution +and their respective licenses. + + +Mesa Component Licenses + +Component Location Primary Author License +---------------------------------------------------------------------------- +Main Mesa code src/mesa/ Brian Paul Mesa (MIT) + +Device drivers src/mesa/drivers/* See drivers See drivers + +Ext headers include/GL/glext.h SGI SGI Free B + include/GL/glxext.h + +GLUT src/glut/ Mark Kilgard Mark's copyright + +Mesa GLU library src/glu/mesa/ Brian Paul GNU-LGPL + +SGI GLU library src/glu/sgi/ SGI SGI Free B + +demo programs progs/demos/ various see source files + +X demos progs/xdemos/ Brian Paul see source files + +SGI demos progs/samples/ SGI SGI copyright + +RedBook demos progs/redbook/ SGI SGI copyright diff --git a/extra/nouveau-dri/PKGBUILD b/extra/nouveau-dri/PKGBUILD new file mode 100644 index 000000000..e4066e945 --- /dev/null +++ b/extra/nouveau-dri/PKGBUILD @@ -0,0 +1,56 @@ +# $Id: PKGBUILD 161906 2012-06-16 12:11:45Z ibiru $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Maintainer: Andreas Radke <andyrtr@archlinux.org> + +pkgname=nouveau-dri +pkgver=8.0.3 +pkgrel=3 +arch=('i686' 'x86_64') +makedepends=('glproto>=1.4.15' 'libdrm-old' 'libdrm-nouveau1' 'libxxf86vm>=1.1.1' 'libxdamage>=1.1.3' 'expat>=2.0.1' 'libx11>=1.4.99.1' 'libxt>=1.1.1' + 'gcc-libs>=4.6.1' 'dri2proto>=2.6' 'python2' 'libxml2' 'imake' 'llvm' 'udev>=183') +url="http://mesa3d.sourceforge.net" +license=('custom') +source=(LICENSE + mesa-8.0.3-llvm-3.1-fixes.patch + ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2 +) +md5sums=('5c65a0fe315dd347e09b1f2826a1df5a' + 'c452ed3392468170726c004c2f4e02ca' + 'cc5ee15e306b8c15da6a478923797171') + +build() { + cd ${srcdir}/?esa-* + + patch -Np1 -i "${srcdir}/mesa-8.0.3-llvm-3.1-fixes.patch" + + autoreconf -vfi + ./configure --prefix=/usr \ + --with-dri-driverdir=/usr/lib/xorg/modules/dri \ + --with-gallium-drivers=nouveau \ + --with-dri-drivers=nouveau \ + --enable-gallium-llvm \ + --enable-gallium-egl \ + --enable-shared-glapi \ + --enable-gbm \ + --enable-glx-tls \ + --enable-dri \ + --enable-glx \ + --enable-osmesa \ + --enable-gles1 \ + --enable-gles2 \ + --enable-egl \ + --enable-texture-float \ + --enable-xa \ + --enable-shared-dricore + make +} + +package() { + depends=("libgl=${pkgver}" 'libdrm-nouveau1') + pkgdesc="Mesa classic DRI + Gallium3D drivers for Nouveau" + + # classic mesa driver for nv10 , nv20 nouveau_vieux_dri.so + make -C ${srcdir}/?esa-*/src/mesa/drivers/dri/nouveau DESTDIR="${pkgdir}" install + # gallium3D driver for nv30 - nv40 - nv50 nouveau_dri.so + make -C ${srcdir}/?esa-*/src/gallium/targets/dri-nouveau DESTDIR="${pkgdir}" install +} diff --git a/extra/nouveau-dri/mesa-8.0.3-llvm-3.1-fixes.patch b/extra/nouveau-dri/mesa-8.0.3-llvm-3.1-fixes.patch new file mode 100644 index 000000000..a567b5926 --- /dev/null +++ b/extra/nouveau-dri/mesa-8.0.3-llvm-3.1-fixes.patch @@ -0,0 +1,46 @@ +diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +index a50a51d..f1bb4d9 100644 +--- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp ++++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +@@ -235,7 +235,24 @@ lp_disassemble(const void* func) + int AsmPrinterVariant = AsmInfo->getAssemblerDialect(); + #endif + +-#if HAVE_LLVM >= 0x0300 ++#if HAVE_LLVM >= 0x0301 ++ OwningPtr<const MCRegisterInfo> MRI(T->createMCRegInfo(Triple)); ++ if (!MRI) { ++ debug_printf("error: no register info for target %s\n", Triple.c_str()); ++ return; ++ } ++ ++ OwningPtr<const MCInstrInfo> MII(T->createMCInstrInfo()); ++ if (!MII) { ++ debug_printf("error: no instruction info for target %s\n", Triple.c_str()); ++ return; ++ } ++#endif ++ ++#if HAVE_LLVM >= 0x0301 ++ OwningPtr<MCInstPrinter> Printer( ++ T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *MII, *MRI, *STI)); ++#elif HAVE_LLVM == 0x0300 + OwningPtr<MCInstPrinter> Printer( + T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *STI)); + #elif HAVE_LLVM >= 0x0208 +diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp +index fe7616b..68f8808 100644 +--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp ++++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp +@@ -62,7 +62,11 @@ + extern "C" void + lp_register_oprofile_jit_event_listener(LLVMExecutionEngineRef EE) + { ++#if HAVE_LLVM >= 0x0301 ++ llvm::unwrap(EE)->RegisterJITEventListener(llvm::JITEventListener::createOProfileJITEventListener()); ++#else + llvm::unwrap(EE)->RegisterJITEventListener(llvm::createOProfileJITEventListener()); ++#endif + } + + diff --git a/extra/perl-dbd-mysql/PKGBUILD b/extra/perl-dbd-mysql/PKGBUILD index 33f9e418a..889f627e0 100644 --- a/extra/perl-dbd-mysql/PKGBUILD +++ b/extra/perl-dbd-mysql/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 160517 2012-06-02 10:27:16Z bluewind $ +# $Id: PKGBUILD 161944 2012-06-16 19:18:00Z eric $ # Maintainer: kevin <kevin@archlinux.org> # Contributor: Eric Johnson <eric@coding-zone.com> pkgname=perl-dbd-mysql _realname=DBD-mysql -pkgver=4.020 -pkgrel=3 +pkgver=4.021 +pkgrel=1 pkgdesc="Perl/CPAN DBD::mysql module for interacting with MySQL via DBD" -arch=(i686 x86_64) +arch=('i686' 'x86_64') license=('GPL' 'PerlArtistic') url="http://search.cpan.org/dist/${_realname}/" -depends=('libmysqlclient' 'perl-dbi' 'perl>=5.14.0') +depends=('libmysqlclient' 'perl-dbi') makedepends=('mysql') -options=(!emptydirs) +options=('!emptydirs') source=(http://search.cpan.org/CPAN/authors/id/C/CA/CAPTTOFU/${_realname}-${pkgver}.tar.gz) -md5sums=('a2bf8808bbd45298e84dde06afbd58e9') +md5sums=('35653efca4bbe6e49ef31d237b4a50b7') build() { cd "${srcdir}/${_realname}-${pkgver}" diff --git a/extra/racket/PKGBUILD b/extra/racket/PKGBUILD index a5e0d0116..1a74a6ab4 100644 --- a/extra/racket/PKGBUILD +++ b/extra/racket/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 157415 2012-04-28 09:27:18Z allan $ +# $Id: PKGBUILD 161957 2012-06-17 01:21:57Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=racket pkgver=5.2.1 -pkgrel=2 +pkgrel=3 pkgdesc="A programming language environment (formerly known as PLT Scheme) suitable for tasks ranging from scripting to application development" arch=('i686' 'x86_64') url="http://racket-lang.org/" @@ -13,9 +13,10 @@ makedepends=('gsfonts') options=('!libtool' '!strip') install=racket.install source=(http://download.racket-lang.org/installers/${pkgver}/racket/${pkgname}-${pkgver}-src-unix.tgz \ - drracket.desktop) + drracket.desktop drracket-normal.rkt) sha1sums=('b51cdd8b9825edb60e5c2c80472cec8220918cd1' - 'a20808f6b250225704856f82a544681a962a299d') + 'a20808f6b250225704856f82a544681a962a299d' + '6699e80e424479d45f427ba341003235e0d475cf') build() { cd "${srcdir}/${pkgname}-${pkgver}/src" @@ -27,6 +28,10 @@ build() { package() { cd "${srcdir}/${pkgname}-${pkgver}/src" make DESTDIR="${pkgdir}" install + + # FS#30245 + install -D -m644 "${srcdir}/drracket-normal.rkt" "${pkgdir}/usr/lib/racket/collects/drracket/private/drracket-normal.rkt" + install -D -m644 ../collects/icons/plt.xpm "${pkgdir}/usr/share/pixmaps/drracket.xpm" install -D -m644 "${srcdir}/drracket.desktop" "${pkgdir}/usr/share/applications/drracket.desktop" } diff --git a/extra/racket/drracket-normal.rkt b/extra/racket/drracket-normal.rkt new file mode 100644 index 000000000..5ed11c21c --- /dev/null +++ b/extra/racket/drracket-normal.rkt @@ -0,0 +1,199 @@ +#lang racket/base + +(require mred + racket/class + racket/cmdline + racket/list + framework/private/bday + framework/splash + racket/runtime-path + racket/file + "frame-icon.rkt" + "eb.rkt") + +(define-runtime-path doc-icon.rkt "dock-icon.rkt") + +(define files-to-open (command-line #:args filenames filenames)) + +;; updates the command-line-arguments with only the files +;; to open. See also main.rkt. +(current-command-line-arguments (apply vector files-to-open)) + +(define (currently-the-weekend?) + (define date (seconds->date (current-seconds))) + (define dow (date-week-day date)) + (or (= dow 6) (= dow 0))) + +(define (valentines-day?) + (define date (seconds->date (current-seconds))) + (and (= 2 (date-month date)) + (= 14 (date-day date)))) + +(define (current-icon-state) + (cond + [(valentines-day?) 'valentines] + [(currently-the-weekend?) 'weekend] + [else 'normal])) + +(define-values (texas-independence-day? prince-kuhio-day? kamehameha-day? halloween?) + (let* ([date (seconds->date (current-seconds))] + [month (date-month date)] + [day (date-day date)] + [dow (date-week-day date)]) + (values (and (= 3 month) (= 2 day)) + #f + (and (= 6 month) (= 11 day)) + (and (= 10 month) (= 31 day))))) + + +(define special-state #f) + +(define (icons-bitmap name) + (make-object bitmap% (collection-file-path name "icons"))) + +(define-struct magic-image (chars filename [bitmap #:mutable])) + +(define (magic-img str img) + (make-magic-image (reverse (string->list str)) img #f)) + +;; magic strings and their associated images. There should not be a string +;; in this list that is a prefix of another. +(define magic-images + (list #;(magic-img "larval" "PLT-206-larval.png") + (magic-img "mars" "PLT-206-mars.jpg"))) + +(define (load-magic-images) + (set! load-magic-images void) ; run only once + (for-each (λ (magic-image) + (unless (magic-image-bitmap magic-image) + (set-magic-image-bitmap! + magic-image + (icons-bitmap (magic-image-filename magic-image))))) + magic-images)) + +(define longest-magic-string + (apply max (map (λ (s) (length (magic-image-chars s))) magic-images))) + +(define key-codes null) + +(define (find-magic-image) + (define (prefix? l1 l2) + (or (null? l1) + (and (pair? l2) + (eq? (car l1) (car l2)) + (prefix? (cdr l1) (cdr l2))))) + (ormap (λ (i) (and (prefix? (magic-image-chars i) key-codes) i)) + magic-images)) + +(define (add-key-code new-code) + (set! key-codes (cons new-code key-codes)) + (when ((length key-codes) . > . longest-magic-string) + (set! key-codes (take key-codes longest-magic-string)))) + +(define (drracket-splash-char-observer evt) + (let ([ch (send evt get-key-code)]) + (when (and (eq? ch #\q) + (send evt get-control-down)) + (exit)) + (when (char? ch) + ;; as soon as something is typed, load the bitmaps + (load-magic-images) + (add-key-code ch) + (let ([match (find-magic-image)]) + (when match + (set! key-codes null) + (set-splash-bitmap + (if (eq? special-state match) + (begin (set! special-state #f) the-splash-bitmap) + (begin (set! special-state match) + (magic-image-bitmap match)))) + (refresh-splash)))))) + +(when (eb-bday?) (install-eb)) + +(define weekend-bitmap-spec (collection-file-path "plt-logo-red-shiny.png" "icons")) +(define normal-bitmap-spec (collection-file-path "plt-logo-red-diffuse.png" "icons")) +(define valentines-days-spec (collection-file-path "heart.png" "icons")) + +(define the-bitmap-spec + (cond + [(valentines-day?) + valentines-days-spec] + [(or prince-kuhio-day? kamehameha-day?) + (set-splash-progress-bar?! #f) + (let ([size ((dynamic-require 'drracket/private/palaka 'palaka-pattern-size) 4)]) + (vector (dynamic-require 'drracket/private/honu-logo 'draw-honu) + size + size))] + [texas-independence-day? + (collection-file-path "texas-plt-bw.gif" "icons")] + [halloween? + (collection-file-path "PLT-pumpkin.png" "icons")] + [(currently-the-weekend?) + weekend-bitmap-spec] + [else normal-bitmap-spec])) +(define the-splash-bitmap (read-bitmap the-bitmap-spec)) +(set-splash-char-observer drracket-splash-char-observer) + +(when (eq? (system-type) 'macosx) + (define initial-state (current-icon-state)) + (define weekend-bitmap (if (equal? the-bitmap-spec weekend-bitmap-spec) + the-splash-bitmap + #f)) + (define weekday-bitmap (if (equal? the-bitmap-spec normal-bitmap-spec) + the-splash-bitmap + #f)) + (define valentines-bitmap (if (equal? the-bitmap-spec valentines-days-spec) + the-splash-bitmap + #f)) + (define set-doc-tile-bitmap (dynamic-require doc-icon.rkt 'set-dock-tile-bitmap)) + (define (set-icon state) + (case state + [(valentines) + (unless valentines-bitmap (set! valentines-bitmap (read-bitmap valentines-days-spec))) + (set-doc-tile-bitmap valentines-bitmap)] + [(weekend) + (unless weekend-bitmap (set! weekend-bitmap (read-bitmap weekend-bitmap-spec))) + (set-doc-tile-bitmap weekend-bitmap)] + [(normal) + (unless weekday-bitmap (set! weekday-bitmap (read-bitmap normal-bitmap-spec))) + (set-doc-tile-bitmap weekday-bitmap)])) + (set-icon initial-state) + (void + (thread + (λ () + (let loop ([last-state initial-state]) + (sleep 10) + (define next-state (current-icon-state)) + (unless (equal? last-state next-state) + (set-icon next-state)) + (loop next-state)))))) + +(start-splash the-splash-bitmap + "DrRacket" + 700 + #:allow-funny? #t + #:frame-icon todays-icon) + +(when (getenv "PLTDRBREAK") + (printf "PLTDRBREAK: creating break frame\n") (flush-output) + (let ([to-break (eventspace-handler-thread (current-eventspace))]) + (parameterize ([current-eventspace (make-eventspace)]) + (let* ([f (new frame% (label "Break DrRacket"))] + [b (new button% + (label "Break Main Thread") + (callback + (λ (x y) + (break-thread to-break))) + (parent f))] + [b (new button% + (label "Break All Threads") + (callback + (λ (x y) + ((dynamic-require 'drracket/private/key 'break-threads)))) + (parent f))]) + (send f show #t))))) + +(dynamic-require 'drracket/tool-lib #f) +(shutdown-splash) +(close-splash) diff --git a/extra/xf86-video-ati/PKGBUILD b/extra/xf86-video-ati/PKGBUILD index 5735fc350..5ba47825e 100644 --- a/extra/xf86-video-ati/PKGBUILD +++ b/extra/xf86-video-ati/PKGBUILD @@ -1,60 +1,31 @@ -# $Id: PKGBUILD 160377 2012-06-01 12:58:56Z dreisner $ +# $Id: PKGBUILD 161905 2012-06-16 12:11:37Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Alexander Baldeck <alexander@archlinux.org> pkgname=xf86-video-ati -pkgver=6.14.99 -_gitdate=20120517 -pkgrel=1.${_gitdate} # UMS/EXA: Add reminder for potential solid picture performance issue. +pkgver=6.14.5 +epoch=1 +pkgrel=1 pkgdesc="X.org ati video driver" arch=('i686' 'x86_64') url="http://xorg.freedesktop.org/" license=('custom') -depends=('libpciaccess' 'libdrm>=2.4.33' 'udev>=183' 'pixman' 'ati-dri') -makedepends=('xorg-server-devel>=1.11.99.902' 'xf86driproto' 'mesa' 'glproto') +depends=('libdrm>=2.4.35' 'systemd-tools' 'ati-dri') +makedepends=('xorg-server-devel>=1.11.99.902' 'xf86driproto' 'mesa') conflicts=('xorg-server<1.11.99.902') groups=('xorg-drivers' 'xorg') options=('!libtool') -source=(#${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 - ${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2::http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/snapshot/xf86-video-ati-3fb694b308ebadd1b849836059b6b56bb19385f7.tar.gz - git_fixes.diff - 0000-poor-man-s-solid-picture-support-for-r300-r600.patch - 0001-poor-man-s-solid-picture-support-for-evergreen.patch - 0002-poor-man-s-solid-picture-support-for-r100.patch - 0003-poor-man-s-solid-picture-support-for-r200.patch) -sha1sums=('75ad000bc00599e1797134f2d20d3094cba6af92' - '8b774e2f0310075cff2b7d874b0bed38d6245769' - '787f88c428f56ca6e96ba5eaf043a30bddfd0e23' - '69359a6623fe0f2214790c8ad40cac1a680a3825' - 'c0709ab82728e34838a8aeead7d1b79b7faf09bd' - '77a519e250c27a9fb94eeb52da655eed7c5f2eca') -sha1sums=('80c12b88e193354af204b13689b2fae922922c6c' - '8b774e2f0310075cff2b7d874b0bed38d6245769' - '787f88c428f56ca6e96ba5eaf043a30bddfd0e23' - '69359a6623fe0f2214790c8ad40cac1a680a3825' - 'c0709ab82728e34838a8aeead7d1b79b7faf09bd' - '77a519e250c27a9fb94eeb52da655eed7c5f2eca') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2) +sha256sums=('ef879d2845de50cec1aa98e37185271e1d535c0009efd6713ec88206b7197d53') build() { - #cd ${srcdir}/${pkgname}-${pkgver} - cd ${srcdir}/${pkgname}* - #patch -Np1 -i ${srcdir}/git_fixes.diff - - # fix rendering issues with recent cairo - testing attemp taken from https://bugs.freedesktop.org/show_bug.cgi?id=47266 - # and http://lists.x.org/archives/xorg-driver-ati/2012-April/022724.html -# patch -Np1 -i ${srcdir}/0000-poor-man-s-solid-picture-support-for-r300-r600.patch -# patch -Np1 -i ${srcdir}/0001-poor-man-s-solid-picture-support-for-evergreen.patch -# patch -Np1 -i ${srcdir}/0002-poor-man-s-solid-picture-support-for-r100.patch -# patch -Np1 -i ${srcdir}/0003-poor-man-s-solid-picture-support-for-r200.patch - - ./autogen.sh --prefix=/usr --enable-dri -# ./configure --prefix=/usr --enable-dri + cd ${srcdir}/${pkgname}-${pkgver} + ./configure --prefix=/usr #--enable-dri --help make } package() { - #cd "${srcdir}/${pkgname}-${pkgver}" - cd ${srcdir}/${pkgname}* + cd "${srcdir}/${pkgname}-${pkgver}" make "DESTDIR=${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" diff --git a/extra/xf86-video-nouveau/PKGBUILD b/extra/xf86-video-nouveau/PKGBUILD index a9fc10cbd..9c58482b4 100644 --- a/extra/xf86-video-nouveau/PKGBUILD +++ b/extra/xf86-video-nouveau/PKGBUILD @@ -1,23 +1,23 @@ -# $Id: PKGBUILD 160381 2012-06-01 12:59:04Z dreisner $ +# $Id: PKGBUILD 161904 2012-06-16 12:11:34Z ibiru $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> # Contributor: buddabrod <buddabrod@gmail.com> pkgname=xf86-video-nouveau -_gitdate=20120512 +_gitdate=20120615 pkgver=0.0.16_git${_gitdate} # see configure.ac -pkgrel=2 +pkgrel=1 pkgdesc="Open Source 2D acceleration driver for nVidia cards (experimental)" arch=('i686' 'x86_64') url="http://nouveau.freedesktop.org/wiki/" license=('GPL') #and MIT, not yet a license file, see http://nouveau.freedesktop.org/wiki/FAQ#head-09f75d03eb30011c754038a3893119a70745de4e -depends=('libdrm-nouveau' 'udev') +depends=('libdrm' 'udev') optdepends=('nouveau-dri: experimental gallium3d features') -makedepends=('xorg-server-devel' 'libdrm-new' 'xf86driproto') +makedepends=('xorg-server-devel' 'xf86driproto') conflicts=('xorg-server<1.11.99.902') options=('!libtool') install=$pkgname.install source=(ftp://ftp.archlinux.org/other/$pkgname/xf86-video-nouveau-${_gitdate}.tar.bz2) -md5sums=('3e27e283219936d64c194eca24cd81cd') +md5sums=('9ceb49ff436c9a00536490fb1c8bf6d1') # source PKGBUILD && mksource mksource() { @@ -30,12 +30,12 @@ mksource() { } build() { - cd $srcdir/xf86-video-nouveau-${_gitdate} + cd xf86-video-nouveau-${_gitdate} ./autogen.sh --prefix=/usr make } package() { - cd $srcdir/xf86-video-nouveau-${_gitdate} - make DESTDIR=$pkgdir install + cd xf86-video-nouveau-${_gitdate} + make DESTDIR="$pkgdir" install } diff --git a/libre/grub2/PKGBUILD b/libre/grub2/PKGBUILD index a5051900f..1ef7c3934 100644 --- a/libre/grub2/PKGBUILD +++ b/libre/grub2/PKGBUILD @@ -1,9 +1,9 @@ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: Keshav P R <(the.ridikulus.rat) (aatt) (gemmaeiil) (ddoott) (ccoomm)> -# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy> +# Maintainer (Parabola): André Silva <emulatorman@lavabit.com> _grub_bzr_rev="4232" -_pkgver="2.00~beta4" +_pkgver="2.00~beta6" _grub_lua_ver=24 _grub_gpxe_ver=12 @@ -12,7 +12,7 @@ _grub_915_ver=9 pkgname=('grub2-common' 'grub2-bios' 'grub2-efi-i386') pkgbase=grub2 -pkgver=2.00beta4 +pkgver=2.00beta6 pkgrel=1 url="http://www.gnu.org/software/grub/" arch=('i686' 'x86_64') @@ -30,15 +30,14 @@ source=("http://alpha.gnu.org/gnu/grub/grub-${_pkgver}".tar.xz 'parabola_grub_mkconfig_fixes.patch' 'grub.default' 'grub.cfg' - '20_memtest86+' - 'grub-install.fix') + '20_memtest86+') noextract=("grub2_extras_lua_r${_grub_lua_ver}.tar.xz" "grub2_extras_gpxe_r${_grub_gpxe_ver}.tar.xz" "grub2_extras_ntldr-img_r${_grub_ntldr_ver}.tar.xz" "grub2_extras_915resolution_r${_grub_915_ver}.tar.xz") -sha1sums=('72d7f46a67dd7e958105e7faac72e646ef6e9f11' +sha1sums=('0ba5ccf6e6761911f9bf236e21f8f77a2d29ebdb' '89290031b974780c6df76893836d2477d4add895' 'b04994c005910b4bf123f034b30109d5c8d6fd86' 'eb4b35b4c36b64f9405cbcbc538cb205171c1c0a' @@ -46,8 +45,8 @@ sha1sums=('72d7f46a67dd7e958105e7faac72e646ef6e9f11' '31aa740fc225b3f3ed4917843038f9e8658a71be' '348b148d5183825f31a3d24a7ebf2d6a709f4e6a' '9735043d518e16f147f64ef283eceb2549fed860' - 'ce35d7ae75cd1b5b677e894e528f96add40e77b9' - '4ff0e12e65fb1d4d3f2a16e82eaaa43940b7dde7') + 'ce35d7ae75cd1b5b677e894e528f96add40e77b9') + _build_grub2-common_and_bios() { ## copy the source for building the common/bios package @@ -58,10 +57,6 @@ _build_grub2-common_and_bios() { patch -Np1 -i "${srcdir}/parabola_grub_mkconfig_fixes.patch" echo - ## upstream grub-install fix - ## http://lists.gnu.org/archive/html/help-grub/2012-04/msg00096.html - patch -Np0 -i "${srcdir}/grub-install.fix" - ## add the grub-extra sources export GRUB_CONTRIB="${srcdir}/grub_bios-${_pkgver}/grub-extras/" install -d "${srcdir}/grub_bios-${_pkgver}/grub-extras" @@ -204,7 +199,7 @@ package_grub2-common() { options=('strip' 'purge' 'docs' 'zipman' '!emptydirs') cd "${srcdir}/grub_bios-${_pkgver}" - make DESTDIR="${pkgdir}/" install + make bashcompletiondir=/usr/share/bash-completion/completions DESTDIR="${pkgdir}/" install ## install extra /etc/grub.d/ files install -D -m0755 "${srcdir}/20_memtest86+" "${pkgdir}/etc/grub.d/20_memtest86+" diff --git a/libre/icecat-i18n/PKGBUILD b/libre/icecat-i18n/PKGBUILD index f995939da..e6f2e82b8 100644 --- a/libre/icecat-i18n/PKGBUILD +++ b/libre/icecat-i18n/PKGBUILD @@ -2,6 +2,7 @@ # Contributor: fauno <fauno@kiwwwi.com.ar> # Contributor: Figue <ffigue@gmail.com> # Contributor: emulatorman <andre.paulista@adinet.com.uy> + # Based on firefox-i18n package # When updating to a newer upstream release: @@ -9,22 +10,22 @@ # - (optionally) edit PKGBUILD.in # - Run 'make'. It will take care of everything else for you. -_langpacks=(af ak ar ast be bg bn-BD bn-IN br bs ca cs cy da de el en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa fi fr fy-NL ga-IE gd gl gu-IN he hi-IN hr hu hy-AM id is it ja kk kn ko ku lg lt lv mai mk ml mr nb-NO nl nn-NO nso or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta-LK ta te th tr uk vi zh-CN zh-TW zu) +_langpacks=(af ak ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en-GB en-US en-ZA eo es-AR es-CL es-ES es-MX et eu fa fi fr fy-NL ga-IE gd gl gu-IN he hi-IN hr hu hy-AM id is it ja kk kn ko ku lg lij lt lv mai mk ml mr nb-NO nl nn-NO nso or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta-LK ta te th tr uk vi zh-CN zh-TW zu) pkgbase='icecat-i18n' pkgname=($(for lang in ${_langpacks[@]} do echo icecat-i18n-$lang | tr A-Z a-z done)) -_pkgver=10.0 -pkgver=10.0 -pkgrel=1 +_pkgver=12.0 +pkgver=12.0 +pkgrel=2 pkgdesc="Language packs for GNUzilla IceCat." arch=('any') license=('MPL') url="http://www.gnu.org/software/gnuzilla/" depends=("icecat=${pkgver}") source=($(for lang in ${_langpacks[@]} - do echo http://gnuzilla.gnu.org/download/langpacks/$pkgver/$lang.xpi + do echo http://ftp.gnu.org/gnu/gnuzilla/lang/$pkgver/$lang.xpi done)) noextract=($(for lang in ${_langpacks[@]} do echo $lang.xpi @@ -34,7 +35,7 @@ build() { cd "${srcdir}" } -_path="/usr/lib/icecat-$_pkgver/extensions/" +_path="/usr/lib/icecat/extensions/" for lang in ${_langpacks[@]} do @@ -45,86 +46,89 @@ package_icecat-i18n-$(echo $lang | tr A-Z a-z) () { " done -md5sums=('6d4c69921bbdfe92c0fd31873983d426' - '4e994c70c93e4d266d273d2358f7acf3' - 'd783c592edfa96d6abecd1efa1aa1b5e' - '70b8badcddb6d5cf6b226c0f0141b463' - 'bcfe52114b1c0f5346594452117bec5d' - '7d8900839fcf5972a91c4ce1a1bdd7c6' - 'd9720bf726a8f6fde0dc94e6e73863a9' - 'ce61734ab226dc041b55e95c9b6f9d92' - '965c2ec576ac41e7351e159f516ec65f' - '4feb78e0dd79606f416b8ab46432ad41' - '61989146fe89320c847e4de6261a06ff' - '260f3abb8612248493060e2dec6f0a22' - '6b49d830c47717001250236c9cc933a5' - '338137d425c8e6ae98796f3cc9a0550f' - '4ddf33cc1af9d3ad483d8fc47609aee3' - 'e04918865a21260b8eaf27b3dc84ade5' - '59961e347c4fe3816f809f456bc9a2b8' - '262ad46f6c6e8a89eb29b590cc092eb9' - 'e9452d83d914605f06c055c00325bf6b' - 'ae652d7db9b3cd3cba85306d16a7a599' - '04fec5cd927a57ac6c9780a9f42444e1' - '70ba3ec972f01e75b144e106afacd8ac' - 'f1ee7deccf3c73083b51c5741722b120' - 'ca5566a24ee4fd38a3a907bfb5d72975' - 'd4717e5c3e44fbaebe4eaf99f0195120' - '907c42bdaa3af02c39bef5d83198f8a9' - '7afa1ac8645657722cdf3415244e4686' - 'd3d780b6c8d179c68065d9bec19dce48' - '09fae6ea53f5435ccfdbf41f660378ee' - '043306182ec497280b3ea78dcbd7b7d3' - '8a481d0d41f22d5bc65ed7844a0d7c27' - '2a8648998f2aafd307511e043cd8564d' - 'e7fbc4b7364d151edac9840b90949f56' - 'e2ea49277375825f612bcfb225dcb0a0' - '9fb2a20a2222a0d814a3f48d7208d820' - '88976bac6b9e647f4d17ab1638f12601' - 'a6a39406914459deaefb3403e94dfa39' - 'd3acecff63909d946fb549520785ef99' - 'a8327a1a525330ca9ef8e3f9d50ca5f8' - 'ba3ad9e8843b0de408a72896183985d6' - '3dfb48ecea5eda9f0e3e05295eb3c82b' - '95a1e7e2ec604409b54f1ded4ee7accf' - '69ebeb59c7ff4e0452c9f0998db65ef0' - '7bdf97288cef0d14ff1521db063cd20c' - '8f50cfa1e8c788b7b839273848dc2834' - '3aa0631dc6a53581cf53d559b27a0ee3' - '45e7238e0d0e427df04d3ba91ca045cd' - 'b992cfa2b0440486cd70fd6ab9e32deb' - '3a9fac821e039556f7d009080daec643' - '6872abed4f4d4b81cf5f0b7b656846c7' - 'eb44e902c6a6186c85dca8aff1d5b95f' - '21f5aeacbb233167218ab7f1b34efdce' - 'b97e29d866ae1ed422d0a1c4327cfd49' - '5cce41015e73c36944224f827ac5a8d1' - 'a13ac7293acc75015f0034d77ddb0f30' - '38c84e214af65ed6f059ad524c923dc9' - '66c8d82875f55f67167048e3d6888d8f' - '4ec423b8e34a4de058b115fd5918e0b2' - '0026e20db1bad1eaf692bd0b2043c038' - '31f029a6665ccae9b4c8cac9eda06c6f' - 'e72ffe020543ca0ad4f8be2aad9e90a9' - '7b75e8fb1cd8ae34023b312d2214029a' - '88b1a96268e08f65579b2fe6d7677b73' - '4418d687e4dcb313fd59247844eab93c' - 'b200a045163b7c09cde85b82013fec98' - '263f6ff19491b68865bcab4309dff0a8' - '80d0fb352eb1f252c355d3b8388d3513' - 'dd79b0c4d959f46852e1e23b0cc984af' - 'db51a6767331bb3a8c0a1e0f5f35d968' - '3155d4cafe5f90ec83336ddd07183629' - 'b9246693498e1ec3c5b4dffa8145d04e' - '770bf78f2a0c6522e641e61e44617b40' - 'aadf3a6f9517c76e2b37867cb1a654c6' - '3530c75b3c2311d8127f20df7bd724da' - 'ef3bfc5db8197edb095da10390d8e058' - '46b701b2db7415b30b82023bb707e1dc' - '24da3bee4042e31da5781b02dc089499' - 'b3faadcabfd6d738a41ee4c12696adcd' - '9938f231ce13202d040c24783c95c35b' - '04894f460b81525d29367f1ed1504f5e' - 'c6049613b48eaaa71c45df2e44db1087' - '7e7e81ca9c6d44913d37159b4627967c' - '1a80a20da9cc26e2edd942d77a35c824') +md5sums=('334d06cd9e32b2c3df5129dba4f0f474' + '99954e582ddb9bbd8965e6468e7d9799' + 'a2b777edb9a595b4c427716458ffdeb6' + '2d1796a37f2e927b5939de257dddab4e' + '17589c7d8994d4f62fd95fddc2c0c796' + '27f9d4029dbab73d9f5c6a7c169c1811' + '5d13f0aeb780e4d3693bf62be21e6e11' + 'c47f6aaa0b33261e7277f6d807e88396' + '0d87bb53f0b71634c189eeb3f3d64bc5' + '2ada422bef681cee2bd7e667a9090d6a' + 'fc8bc018c6d41c2fcb883734e37b518a' + '5e9b488cd52a42e235169de3a4b4cea2' + '0b781ce69f571797d3dc1fd5b70d882c' + '5ae943ee2293fd427a0072f1c95dd2e9' + '15d2a2076008efefdb7d031f4d0b1663' + '71a45cefe3b5f45de4ff784ca1a4fe1e' + '98e6f6de8c0184f339cc1b88e31e285b' + '43f9c2a3e9580b6a2adcc36dba4c0755' + 'a12665f7c8e6121e82c6c0be91da3f2a' + '7268181e8190cb62685c365fb99d9102' + '6f60912c53bd21acd99ee11abd5862d9' + '25f2c8a6665f6aef75204b1bcd0c0ff1' + '6e3516383f6eaad4bc1abe5fdd212d26' + 'c76f8a91086735c8252eab0d90e163e6' + '85cf430e36e70713b715fca4e1ac3410' + '60f3573882bbd1dc0ed0f16518660bf9' + '6c51beefb2da7add8c8c635efc2fc565' + 'e2d4d8182716b329249619d227d449f1' + '28facbc470554488b0a722cb0c3d53d3' + '3b167b50c188ef190fbad18077aacc0d' + 'f8edd8921fb8fa24099d1725fc478a2b' + '5b90202d9288d073e5f401b498355c13' + 'ec8478b6e0420484de8d7332bafafac2' + '9d932bc91062a58b0509b5395403c708' + 'bba6d905218c4a2b3d6e289e3ef35186' + 'b32d1ad6e5c8ed52cde0ea351290fd17' + 'd0d1d307c87ec8c8102527944f05887e' + '2605d5226c23205f3c7cd5466059b802' + '2b800c1c729d3b65ae38050bd4c06af1' + '8744ce05e573acefa9f802e53da2aea4' + 'edd3e216b37ee32fd517c2b49e85439a' + 'd9786706c058b1e4acac62f07deac285' + '6377004ddaa6731734696509be6dda53' + 'c73bd01ab8c5a25e234e51082978f7f5' + 'b44a3df07e663803234c72f359d06422' + '81c646a84b4f56d4721bec4013c123bf' + '9b678f5dbb7243b9e5751d04b988b640' + 'c237afb9ed6819a6219383590a8ee448' + 'b27c9236866dd55ee01a6e3929752767' + '8d527119a84f22840a919bc35ed612c0' + '1b51158c8c218544654245c418943c3a' + '1314bbc8cde2babcf6e807f7f958152c' + '59eb9146f16189932d9d5eea536cd8af' + 'a427b45282c6f8f4f1646050e9a93f71' + '618771f03f807603b2efed2760f6004c' + '56ca63d8c797d47fd3b6c094390990d7' + '24bde56465d7ab923fed3e23eca59d42' + 'ff9858a371df54c25f77ea4a5d1091f9' + '6135b885b12ccc64d5c93f385d5c62ad' + 'f98347a6ae9db6faef247373fd5092df' + 'e58f094448b085636c9e9435ef22fb53' + 'ed073cd4a1f3bbdcec1ee56334d8b9d3' + '988a1c279f94941bd4ab3b90cfad0bbe' + 'd8bc3ee80be944051f975a2534651ce1' + 'bd94ef18efe11eeee93a0ff1dc602301' + '20a8381c88b1735c558316936469c1a9' + '064d6f05f7b4c1ce8c5e0f083eccef15' + 'c22c4fb9da7cdee2cb29119e7c4f3696' + '50071d48b92f373713f6f8ee483b6f7d' + '518fbbf3838332da2e561565d29281bf' + '2a5a42ad2110e7e24c967233fdc0dc2c' + 'd21424a551ff625034b6e015f0eddcc4' + '829a1e6fe575e761f97564f68a1859ec' + 'd1047468370b7cbb766ed688107ca879' + '27f3609a99c3be8e59cfc700e251a5d7' + 'c7eb3ef0bedc610065713da9a55e2bf9' + '9125fcb792da1e58f00c43ec5b7bce97' + '5b9dd2a8ac84aace97a6095042ea537b' + '13be748a3331f2a9fac691dec7173aa8' + '0b694233f5385e0e5898d4b64a683bbc' + 'ad037272aabcc3b58fd2141447113905' + '347f53738950c9927b19ec3462840696' + '4fc25f81dd0b744aaaea5705dd36d943' + '5c96e79fc7463907b1c635586c910a71' + '50b1dcbd0eaf9d62b3f9050598298933' + 'c40de39f9502a8789f8301581cad25b4') diff --git a/libre/lirc-libre/PKGBUILD b/libre/lirc-libre/PKGBUILD new file mode 100644 index 000000000..d6a294fe6 --- /dev/null +++ b/libre/lirc-libre/PKGBUILD @@ -0,0 +1,112 @@ +# $Id$ +# Maintainer: Paul Mattal <paul@archlinux.org> +# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy> + +_pkgbase=lirc +pkgbase=lirc-libre +pkgname=('lirc-libre' 'lirc-utils-libre') +pkgver=0.9.0 +pkgrel=18 +epoch=1 +_extramodules=extramodules-3.4-LIBRE +arch=('i686' 'x86_64' 'mips64el') +url="http://www.lirc.org/" +license=('GPL') +### NOTICE don't forget to bump version in depends in package_lirc +makedepends=('help2man' 'linux-libre-headers>=3.4' 'linux-libre-headers<3.5' 'alsa-lib' 'libx11' 'libftdi' 'libirman' 'python2') +options=('!makeflags' '!strip') +source=(http://prdownloads.sourceforge.net/${_pkgbase}/${_pkgbase}-${pkgver}.tar.bz2 + lirc_wpc8769l.patch + lircd-handle-large-config.patch + lirc_atiusb-kfifo.patch + kernel-2.6.39.patch + lircd lircmd lirc.logrotate lircd.conf irexec.conf irexecd) +md5sums=('b232aef26f23fe33ea8305d276637086' + '1cce37e18e3f6f46044abab29016d18f' + 'b70cc9640505205446ec47b7d4779f38' + '1f8b104a2365d9f93404b143f499059b' + '087a7d102e1c96bf1179f38db2b0b237' + '8d0e238dc0eda95e340fe570605da492' + '85f7fdac55e5256967241864049bf5e9' + '3deb02604b37811d41816e9b4385fcc3' + '5b1f8c9cd788a39a6283f93302ce5c6e' + 'f0c0ac930326168035f0c8e24357ae55' + '69d099e6deedfa3c1ee2b6e82d9b8bfb') + +build() { + _kernver="$(cat /lib/modules/${_extramodules}/version)" + cd "${srcdir}/lirc-${pkgver}" + patch -Np1 -i "${srcdir}/lirc_wpc8769l.patch" + patch -Np1 -i "${srcdir}/lircd-handle-large-config.patch" + patch -Np1 -i "${srcdir}/lirc_atiusb-kfifo.patch" + patch -Np1 -i "${srcdir}/kernel-2.6.39.patch" + + sed -i '/AC_PATH_XTRA/d' configure.ac + sed -e 's/@X_CFLAGS@//g' \ + -e 's/@X_LIBS@//g' \ + -e 's/@X_PRE_LIBS@//g' \ + -e 's/@X_EXTRA_LIBS@//g' -i Makefile.am tools/Makefile.am + libtoolize + autoreconf + + PYTHON=python2 ./configure --enable-sandboxed --prefix=/usr \ + --with-driver=all --with-kerneldir=/usr/src/linux-${_kernver}/ \ + --with-moduledir=/lib/modules/${_kernver}/kernel/drivers/misc \ + --with-transmitter + + # Remove drivers already in kernel + sed -e "s:lirc_dev::" -e "s:lirc_bt829::" -e "s:lirc_igorplugusb::" \ + -e "s:lirc_imon::" -e "s:lirc_parallel::" -e "s:lirc_sasem::" \ + -e "s:lirc_serial::" -e "s:lirc_sir::" -e "s:lirc_ttusbir::" \ + -i Makefile drivers/Makefile drivers/*/Makefile tools/Makefile + make +} + +package_lirc-libre() { + pkgdesc="Linux-libre Infrared Remote Control kernel modules for stock libre kernel" + depends=('lirc-utils-libre' 'linux-libre>=3.4' 'linux-libre<3.5') + replaces=('lirc' 'lirc+pctv') + conflicts=('lirc') + provides=("lirc=$pkgver") + install=lirc.install + + cd "${srcdir}/lirc-${pkgver}/drivers" + make DESTDIR="${pkgdir}" moduledir="/lib/modules/${_extramodules}" install + + # set the kernel we've built for inside the install script + sed -i -e "s/EXTRAMODULES=.*/EXTRAMODULES=${_extramodules}/g" "${startdir}/lirc.install" + # gzip -9 modules + find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; +} + +package_lirc-utils-libre() { + pkgdesc="Linux-libre Infrared Remote Control utils" + depends=('alsa-lib' 'libx11' 'libftdi' 'libirman') + optdepends=('python2: pronto2lirc utility') + options=('strip' '!libtool') + replaces=('lirc-utils') + conflicts=('lirc-utils') + provides=("lirc-utils=$pkgver") + backup=('etc/conf.d/lircd.conf' 'etc/conf.d/irexec.conf') + + cd "${srcdir}/lirc-${pkgver}" + make DESTDIR="${pkgdir}" install + install -d "${pkgdir}/usr/share/lirc" "${pkgdir}/etc/rc.d" + cp "${srcdir}"/{lircd,lircmd,irexecd} "${pkgdir}/etc/rc.d" + cp -rp remotes "${pkgdir}/usr/share/lirc" + chmod -R go-w "${pkgdir}/usr/share/lirc/" + + # install the logrotate config + install -Dm644 "${srcdir}/lirc.logrotate" "${pkgdir}/etc/logrotate.d/lirc" + + # install conf.d file + install -Dm644 "${srcdir}/lircd.conf" "${pkgdir}/etc/conf.d/lircd.conf" + + # install conf.d file + install -Dm644 "${srcdir}/irexec.conf" "${pkgdir}/etc/conf.d/irexec.conf" + + install -d "${pkgdir}/etc/lirc" + + # remove built modules + rm -r "${pkgdir}/lib/" +} diff --git a/libre/lirc-libre/irexec.conf b/libre/lirc-libre/irexec.conf new file mode 100644 index 000000000..f911c7515 --- /dev/null +++ b/libre/lirc-libre/irexec.conf @@ -0,0 +1,5 @@ +# +# Parameters for irexec daemon (path to lircrc) +# + +IREXEC_OPTS=""
\ No newline at end of file diff --git a/libre/lirc-libre/irexecd b/libre/lirc-libre/irexecd new file mode 100644 index 000000000..a64b033a5 --- /dev/null +++ b/libre/lirc-libre/irexecd @@ -0,0 +1,38 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/irexec.conf + +PID=`pidof -o %PPID /usr/bin/irexec` +case "$1" in + start) + stat_busy "Starting IREXEC Daemon" + [ -z "$PID" ] && /usr/bin/irexec --daemon $IREXEC_OPTS + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon irexecd + stat_done + fi + ;; + stop) + stat_busy "Stopping IREXEC Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon irexecd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 + diff --git a/libre/lirc-libre/kernel-2.6.39.patch b/libre/lirc-libre/kernel-2.6.39.patch new file mode 100644 index 000000000..7353d61ca --- /dev/null +++ b/libre/lirc-libre/kernel-2.6.39.patch @@ -0,0 +1,54 @@ +diff -ru lirc-0.9.0/drivers//lirc_atiusb/lirc_atiusb.c lirc-0.9.0.new/drivers//lirc_atiusb/lirc_atiusb.c +--- lirc-0.9.0/drivers//lirc_atiusb/lirc_atiusb.c 2011-03-25 23:28:18.000000000 +0100 ++++ lirc-0.9.0.new/drivers//lirc_atiusb/lirc_atiusb.c 2011-06-07 17:02:20.356580306 +0200 +@@ -48,7 +48,6 @@ + #include <linux/slab.h> + #include <linux/module.h> + #include <linux/kmod.h> +-#include <linux/smp_lock.h> + #include <linux/completion.h> + #include <linux/uaccess.h> + #include <linux/usb.h> +diff -ru lirc-0.9.0/drivers//lirc_i2c/lirc_i2c.c lirc-0.9.0.new/drivers//lirc_i2c/lirc_i2c.c +--- lirc-0.9.0/drivers//lirc_i2c/lirc_i2c.c 2011-03-25 23:28:18.000000000 +0100 ++++ lirc-0.9.0.new/drivers//lirc_i2c/lirc_i2c.c 2011-06-07 17:04:19.725933627 +0200 +@@ -555,8 +555,8 @@ + kfree(ir); + return -EINVAL; + } +- printk(KERN_INFO "lirc_i2c: chip 0x%x found @ 0x%02x (%s)\n", +- adap->id, addr, ir->c.name); ++ printk(KERN_INFO "lirc_i2c: chip found @ 0x%02x (%s)\n", ++ addr, ir->c.name); + + #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31) + /* register device */ +diff -ru lirc-0.9.0/drivers//lirc_wpc8769l/lirc_wpc8769l.c lirc-0.9.0.new/drivers//lirc_wpc8769l/lirc_wpc8769l.c +--- lirc-0.9.0/drivers//lirc_wpc8769l/lirc_wpc8769l.c 2011-03-25 23:28:18.000000000 +0100 ++++ lirc-0.9.0.new/drivers//lirc_wpc8769l/lirc_wpc8769l.c 2011-06-07 17:07:23.984935411 +0200 +@@ -361,14 +361,14 @@ + size = count << 3; + + ldata = (unsigned long *) data_buf; +- next_one = generic_find_next_le_bit(ldata, size, 0); ++ next_one = find_next_zero_bit_le(ldata, size, 0); + + if (next_one > 0) + put_pulse_bit(next_one + * WPC8769L_USECS_PER_BIT); + + while (next_one < size) { +- next_zero = generic_find_next_zero_le_bit(ldata, ++ next_zero = find_next_zero_bit_le(ldata, + size, next_one + 1); + + put_space_bit( +@@ -376,7 +376,7 @@ + * WPC8769L_USECS_PER_BIT); + + if (next_zero < size) { +- next_one = generic_find_next_le_bit(ldata, ++ next_one = find_next_bit_le(ldata, + size, next_zero + 1); + + put_pulse_bit( diff --git a/libre/lirc-libre/lirc.install b/libre/lirc-libre/lirc.install new file mode 100644 index 000000000..d6b9e5ff2 --- /dev/null +++ b/libre/lirc-libre/lirc.install @@ -0,0 +1,16 @@ +EXTRAMODULES=extramodules-3.4-LIBRE + +post_install() { + # updating module dependencies + echo ">>> Updating module dependencies. Please wait ..." + depmod $(cat /lib/modules/$EXTRAMODULES/version) > /dev/null 2>&1 +} + +post_upgrade() { + post_install +} + +# arg 1: the old package version +post_remove() { + post_install +} diff --git a/libre/lirc-libre/lirc.logrotate b/libre/lirc-libre/lirc.logrotate new file mode 100644 index 000000000..623c4f328 --- /dev/null +++ b/libre/lirc-libre/lirc.logrotate @@ -0,0 +1,5 @@ +/var/log/lircd { + missingok + notifempty + delaycompress +} diff --git a/libre/lirc-libre/lirc_atiusb-kfifo.patch b/libre/lirc-libre/lirc_atiusb-kfifo.patch new file mode 100644 index 000000000..a64984dce --- /dev/null +++ b/libre/lirc-libre/lirc_atiusb-kfifo.patch @@ -0,0 +1,31 @@ +From ec3c5660e67c122e2d5eb9cfa838c9709fccf8e0 Mon Sep 17 00:00:00 2001 +From: Jason Martin <publicmsu@gmail.com> +Date: Fri, 3 Jun 2011 00:12:51 -0400 +Subject: [PATCH] lirc_atiusb: fix buffer alloc to work with new kfifo + +I came across posts with regards to lirc_atiusb and its compatibility +with newer kernels, and their use of kfifo.I spent a little bit of time +this evening, and was able to correct the issues with the driver, and +now have a functioning lirc_atiusb device under the 2.6.38 kernel. + +Signed-off-by: Jarod Wilson <jarod@redhat.com> +--- + drivers/lirc_atiusb/lirc_atiusb.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/drivers/lirc_atiusb/lirc_atiusb.c b/drivers/lirc_atiusb/lirc_atiusb.c +index 52080de..bf2b631 100644 +--- a/drivers/lirc_atiusb/lirc_atiusb.c ++++ b/drivers/lirc_atiusb/lirc_atiusb.c +@@ -1048,7 +1048,7 @@ static struct atirf_dev *new_irctl(struct usb_interface *intf) + goto new_irctl_failure_check; + } + +- if (lirc_buffer_init(driver->rbuf, dclen, 1)) { ++ if (lirc_buffer_init(driver->rbuf, dclen, 2)) { + mem_failure = 4; + goto new_irctl_failure_check; + } +-- +1.7.0.1 + diff --git a/libre/lirc-libre/lirc_wpc8769l.patch b/libre/lirc-libre/lirc_wpc8769l.patch new file mode 100644 index 000000000..e4e2a049b --- /dev/null +++ b/libre/lirc-libre/lirc_wpc8769l.patch @@ -0,0 +1,88 @@ +From 413e83bf504fe9a9a177f27742220cfcb184b034 Mon Sep 17 00:00:00 2001 +From: =?utf8?q?Juan=20Jes=C3=BAs=20Garc=C3=ADa=20de=20Soria=20Lucena?= <skandalfo@gmail.com> +Date: Wed, 30 Mar 2011 16:46:35 -0400 +Subject: [PATCH] Make lirc_wpc8769l functional again + +Signed-off-by: Jarod Wilson <jarod@redhat.com> +--- + drivers/lirc_wpc8769l/lirc_wpc8769l.c | 28 +++++++++++++++++----------- + 1 files changed, 17 insertions(+), 11 deletions(-) + +diff --git a/drivers/lirc_wpc8769l/lirc_wpc8769l.c b/drivers/lirc_wpc8769l/lirc_wpc8769l.c +index f820d11..4d04063 100644 +--- a/drivers/lirc_wpc8769l/lirc_wpc8769l.c ++++ b/drivers/lirc_wpc8769l/lirc_wpc8769l.c +@@ -816,10 +816,6 @@ static int set_use_inc(void *data) + /* Reset last timeout value. */ + lastus = 0; + +- /* Init the read buffer. */ +- if (lirc_buffer_init(&rbuf, sizeof(lirc_t), RBUF_LEN) < 0) +- return -ENOMEM; +- + /* Acquire the IRQ. */ + result = request_irq(irq, irq_handler, + IRQF_DISABLED | IRQF_SHARED, +@@ -863,9 +859,6 @@ static void set_use_dec(void *data) + /* Free the IRQ. */ + free_irq(irq, THIS_MODULE); + dprintk("Freed IRQ %d\n", irq); +- +- /* Free the RX buffer. */ +- lirc_buffer_free(&rbuf); + } + + static struct lirc_driver driver = { +@@ -1065,19 +1058,29 @@ static int __init lirc_wpc8769l_module_init(void) + /* Do load-time checks. */ + wpc8769l_power_up_and_check_if_we_woke_us_up(); + ++ /* Init the read buffer. */ ++ if (lirc_buffer_init(&rbuf, sizeof(lirc_t), RBUF_LEN) < 0) { ++ rc = -ENOMEM; ++ goto exit_platform_exit; ++ } ++ + /* Configure the driver hooks. */ + driver.features = LIRC_CAN_REC_MODE2; ++ driver.dev = &lirc_wpc8769l_platform_dev->dev; + driver.minor = lirc_register_driver(&driver); + if (driver.minor < 0) { + eprintk("lirc_register_driver failed!\n"); + rc = -EIO; +- goto exit_platform_exit; ++ goto exit_release_buffer; + } + + iprintk("Driver loaded.\n"); + + return 0; /* Everything OK. */ + ++exit_release_buffer: ++ lirc_buffer_free(&rbuf); ++ + exit_platform_exit: + lirc_wpc8769l_platform_exit(); + +@@ -1095,12 +1098,15 @@ module_init(lirc_wpc8769l_module_init); + + static void __exit lirc_wpc8769l_module_exit(void) + { +- /* Unregister the platform driver and device. */ +- lirc_wpc8769l_platform_exit(); +- + /* Unregister the LIRC driver. */ + lirc_unregister_driver(driver.minor); + ++ /* Free the buffer. */ ++ lirc_buffer_free(&rbuf); ++ ++ /* Unregister the platform driver and device. */ ++ lirc_wpc8769l_platform_exit(); ++ + /* Release the second range. */ + if (baseport2) + release_region(baseport2, WPC8769L_IO_REGION_2_SIZE); +-- +1.7.0.1 + diff --git a/libre/lirc-libre/lircd b/libre/lirc-libre/lircd new file mode 100644 index 000000000..e9739b36e --- /dev/null +++ b/libre/lirc-libre/lircd @@ -0,0 +1,52 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/lircd.conf + +PID=$(pidof -o %PPID /usr/sbin/lircd) +LIRCD_SYMLINKFILE=/dev/lircd +LIRCD_SOCKET=/var/run/lirc/lircd +case "$1" in + start) + stat_busy "Starting LIRC Daemon" + [ ! -d /var/run/lirc ] && install -d /var/run/lirc &>/dev/null + rm -f $LIRCD_SOCKET && ln -s $LIRCD_SOCKET $LIRCD_SYMLINKFILE + if [ $? -ne 0 ]; then + stat_fail + exit 0 + fi + [ -n "$LIRC_DRIVER" ] && LIRC_EXTRAOPTS="-H $LIRC_DRIVER $LIRC_EXTRAOPTS" + [ -z "$PID" ] && + if [ -n "$LIRC_DEVICE" ] ; then + eval /usr/sbin/lircd -d "$LIRC_DEVICE" $LIRC_EXTRAOPTS $LIRC_CONFIGFILE + else + /usr/sbin/lircd $LIRC_EXTRAOPTS $LIRC_CONFIGFILE + fi + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon lircd + stat_done + fi + ;; + stop) + stat_busy "Stopping LIRC Daemon" + rm -f $LIRCD_SYMLINKFILE + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon lircd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 start|stop|restart" +esac +exit 0 diff --git a/libre/lirc-libre/lircd-handle-large-config.patch b/libre/lirc-libre/lircd-handle-large-config.patch new file mode 100644 index 000000000..85bc20518 --- /dev/null +++ b/libre/lirc-libre/lircd-handle-large-config.patch @@ -0,0 +1,39 @@ +From 5efb56bf22a5077db564c766ba7cc37bc269231d Mon Sep 17 00:00:00 2001 +From: Jarod Wilson <jarod@redhat.com> +Date: Wed, 6 Apr 2011 11:04:12 -0400 +Subject: [PATCH] lircd: handle larger config files in write_socket better + +Pointed out by Michael Zanetti on list, irsend LIST has issues with long +config files, which didn't exist in maintainer mode, as we were using a +do while loop to make sure we spit out everything. Just use that loop +all the time. + +Signed-off-by: Jarod Wilson <jarod@redhat.com> +--- + daemons/lircd.c | 8 ++------ + 1 files changed, 2 insertions(+), 6 deletions(-) + +diff --git a/daemons/lircd.c b/daemons/lircd.c +index 6c21a3a..ddcca05 100644 +--- a/daemons/lircd.c ++++ b/daemons/lircd.c +@@ -231,14 +231,10 @@ inline int write_socket(int fd, const char *buf, int len) + int done, todo = len; + + while (todo) { +-#ifdef SIM_REC + do { + done = write(fd, buf, todo); +- } +- while (done < 0 && errno == EAGAIN); +-#else +- done = write(fd, buf, todo); +-#endif ++ } while (done < 0 && errno == EAGAIN); ++ + if (done <= 0) + return (done); + buf += done; +-- +1.7.0.1 + diff --git a/libre/lirc-libre/lircd.conf b/libre/lirc-libre/lircd.conf new file mode 100644 index 000000000..760dab065 --- /dev/null +++ b/libre/lirc-libre/lircd.conf @@ -0,0 +1,8 @@ +# +# Parameters for lirc daemon +# + +LIRC_DEVICE="/dev/lirc0" +LIRC_DRIVER="" +LIRC_EXTRAOPTS="" +LIRC_CONFIGFILE="" diff --git a/libre/lirc-libre/lircmd b/libre/lirc-libre/lircmd new file mode 100644 index 000000000..220c47c9c --- /dev/null +++ b/libre/lirc-libre/lircmd @@ -0,0 +1,36 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/lircmd` +case "$1" in + start) + stat_busy "Starting lircmd Daemon" + [ -z "$PID" ] && /usr/sbin/lircmd + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon lircmd + stat_done + fi + ;; + stop) + stat_busy "Stopping lircmd Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon lircmd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/libre/mozilla-searchplugins/PKGBUILD b/libre/mozilla-searchplugins/PKGBUILD index 50b4d65d2..288ce698d 100644 --- a/libre/mozilla-searchplugins/PKGBUILD +++ b/libre/mozilla-searchplugins/PKGBUILD @@ -10,7 +10,7 @@ pkgname=mozilla-searchplugins pkgver=1.2 -pkgrel=2 +pkgrel=3 pkgdesc="System-wide OpenSearch plugins common for Mozilla based browsers." arch=('any') license=('MPL' 'GPL' 'LGPL') diff --git a/multilib-testing/gcc-multilib/PKGBUILD b/multilib-testing/gcc-multilib/PKGBUILD new file mode 100644 index 000000000..9553b5df6 --- /dev/null +++ b/multilib-testing/gcc-multilib/PKGBUILD @@ -0,0 +1,325 @@ +# $Id: PKGBUILD 72541 2012-06-16 14:54:45Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc +# NOTE: libtool requires rebuilt with each new gcc version + +pkgbase='gcc-multilib' +pkgname=('gcc-multilib' 'gcc-libs-multilib' 'lib32-gcc-libs' 'gcc-fortran-multilib' 'gcc-objc-multilib' 'gcc-ada-multilib' 'gcc-go-multilib') +pkgver=4.7.1 +pkgrel=1 +#_snapshot=4.7-20120505 +_libstdcppmanver=20120605 # Note: check source directory name when updating this +pkgdesc="The GNU Compiler Collection for multilib" +arch=('x86_64') +license=('GPL' 'LGPL' 'FDL' 'custom') +url="http://gcc.gnu.org" +makedepends=('binutils-multilib>=2.22' 'libmpc' 'cloog' 'ppl' 'gcc-ada-multilib' + 'lib32-glibc>=2.14') +checkdepends=('dejagnu') +options=('!libtool' '!emptydirs') +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 + #ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2 + ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api.${_libstdcppmanver}.man.tar.bz2 + gcc_pure64-multilib.patch + gcc-4.7.0-cloog-0.17.patch + gcc-4.7.1-libada-pic.patch + gcc-4.7.1-libgo-write.patch) +md5sums=('933e6f15f51c031060af64a9e14149ff' + '767c62f9a047c4434f2345decf1d0819' + 'ec24c32d3d1030c2bc8cb2ad2d1dc629' + '575f7d17b022e609447a590e481b18b5' + '2acbc9d35cc9d72329dc71d6b1f162ef' + 'df82dd175ac566c8a6d46b11ac21f14c') + + +if [ -n "${_snapshot}" ]; then + _basedir="${srcdir}/gcc-${_snapshot}" +else + _basedir="${srcdir}/gcc-${pkgver}" +fi + +build() { + cd ${_basedir} + + # Do not install libiberty + sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + patch -p1 -i ${srcdir}/gcc_pure64-multilib.patch + + # compatibility with latest cloog + patch -p1 -i ${srcdir}/gcc-4.7.0-cloog-0.17.patch + + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53679 + patch -p1 -i ${srcdir}/gcc-4.7.1-libgo-write.patch + + # bug to file... + patch -p1 -i ${srcdir}/gcc-4.7.1-libada-pic.patch + + echo ${pkgver} > gcc/BASE-VER + + cd ${srcdir} + mkdir gcc-build && cd gcc-build + + ${_basedir}/configure --prefix=/usr \ + --libdir=/usr/lib --libexecdir=/usr/lib \ + --mandir=/usr/share/man --infodir=/usr/share/info \ + --with-bugurl=https://bugs.archlinux.org/ \ + --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ \ + --enable-shared --enable-threads=posix \ + --with-system-zlib --enable-__cxa_atexit \ + --disable-libunwind-exceptions --enable-clocale=gnu \ + --disable-libstdcxx-pch --enable-libstdcxx-time \ + --enable-gnu-unique-object --enable-linker-build-id \ + --with-ppl --enable-cloog-backend=isl \ + --enable-lto --enable-gold --enable-ld=default \ + --enable-plugin --with-plugin-ld=ld.gold \ + --with-linker-hash-style=gnu \ + --enable-multilib --disable-libssp \ + --disable-build-with-cxx --disable-build-poststage1-with-cxx \ + --enable-checking=release --with-fpmath=sse + make +} + +check() { + cd gcc-build + + # increase stack size to prevent test failures + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827 + ulimit -s 32768 + + # do not abort on error as some are "expected" + make -k check || true + ${_basedir}/contrib/test_summary +} + +package_gcc-libs-multilib() +{ + pkgdesc="Runtime libraries shipped by GCC for multilib" + depends=('glibc>=2.15' "lib32-gcc-libs=$pkgver-$pkgrel") + provides=("gcc-libs=$pkgver-$pkgrel") + conflicts=('gcc-libs') + install=gcc-libs.install + + cd gcc-build + make -j1 -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared + for lib in libmudflap libgomp libstdc++-v3/src libitm; do + make -j1 -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES + done + make -j1 -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install + make -j1 -C $CHOST/libgomp DESTDIR=${pkgdir} install-info + make -j1 -C $CHOST/libitm DESTDIR=${pkgdir} install-info + + make -j1 DESTDIR=${pkgdir} install-target-libquadmath + make -j1 DESTDIR=${pkgdir} install-target-libgfortran + make -j1 DESTDIR=${pkgdir} install-target-libobjc + + # remove unnecessary files installed by install-target-{libquadmath,libgfortran,libobjc} + rm -r ${pkgdir}/usr/lib/{gcc/,libgfortran.spec} + + # remove stuff in lib32-gcc-libs + rm -r ${pkgdir}/usr/lib32 + + # remove static libraries + find ${pkgdir} -name *.a -delete + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-libs-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_lib32-gcc-libs() +{ + pkgdesc="Runtime libraries shipped by GCC (32-bit)" + depends=('lib32-glibc>=2.15' "gcc-libs>=$pkgver") + + cd gcc-build + make -j1 -C $CHOST/32/libgcc DESTDIR=${pkgdir} install-shared + for lib in libmudflap libgomp libstdc++-v3/src libitm; do + make -j1 -C $CHOST/32/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES + done + + make -j1 DESTDIR=${pkgdir} install-target-libquadmath + make -j1 DESTDIR=${pkgdir} install-target-libgfortran + make -j1 DESTDIR=${pkgdir} install-target-libobjc + + # remove unnecessary files installed by install-target-{libquadmath,libgfortran,libobjc} + rm ${pkgdir}/usr/lib32/libgfortran.spec + + # remove stuff in gcc-libs-multilib + rm -r ${pkgdir}/usr/lib + rm -r ${pkgdir}/usr/share/info + + # remove static libraries + find ${pkgdir} -name *.a -delete + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/lib32-gcc-libs/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-multilib() +{ + pkgdesc="The GNU Compiler Collection - C and C++ frontends for multilib" + depends=("gcc-libs-multilib=$pkgver-$pkgrel" 'binutils-multilib>=2.22' 'libmpc' 'cloog' 'ppl') + groups=('multilib-devel') + provides=("gcc=$pkgver-$pkgrel") + conflicts=('gcc') + install=gcc.install + + cd gcc-build + + make -j1 DESTDIR=${pkgdir} install + + install -d $pkgdir/usr/share/gdb/auto-load/usr/lib + mv $pkgdir{,/usr/share/gdb/auto-load}/usr/lib/libstdc++.so.6.0.17-gdb.py + + # unfortunately it is much, much easier to install the lot and clean-up the mess... + rm $pkgdir/usr/bin/{{$CHOST-,}gfortran,{$CHOST-,}gccgo,gnat*} + rm $pkgdir/usr/lib{,32}/*.so* + rm $pkgdir/usr/lib{,32}/lib{ffi,gfortran,go{,begin},objc,quadmath}.a + rm $pkgdir/usr/lib{,32}/libgfortran.spec + rm -r $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{{,32/}ada{include,lib},finclude,include/objc} + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/include/{ffi{,target}.h,quadmath{,_weak}.h} + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{cc1obj{,plus},f951,gnat1,go1} + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{,32/}{libcaf_single,libgfortranbegin}.a + rm -r $pkgdir/usr/lib{,32}/go + rm $pkgdir/usr/share/info/{gccgo,gfortran,gnat*,libgomp,libquadmath,libitm}.info + rm $pkgdir/usr/share/locale/{de,fr}/LC_MESSAGES/libstdc++.mo + rm $pkgdir/usr/share/man/man1/{gccgo,gfortran}.1 + rm $pkgdir/usr/share/man/man3/ffi* + + # many packages require these symlinks + install -dm755 ${pkgdir}/lib + ln -s /usr/bin/cpp ${pkgdir}/lib/cpp + ln -s gcc ${pkgdir}/usr/bin/cc + + # POSIX conformance launcher scripts for c89 and c99 + cat > $pkgdir/usr/bin/c89 <<"EOF" +#!/bin/sh +fl="-std=c89" +for opt; do + case "$opt" in + -ansi|-std=c89|-std=iso9899:1990) fl="";; + -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} +EOF + + cat > $pkgdir/usr/bin/c99 <<"EOF" +#!/bin/sh +fl="-std=c99" +for opt; do + case "$opt" in + -std=c99|-std=iso9899:1999) fl="";; + -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} +EOF + + chmod 755 $pkgdir/usr/bin/c{8,9}9 + + # install the libstdc++ man pages + install -dm755 ${pkgdir}/usr/share/man/man3 + install -m644 ${srcdir}/libstdc++-api.${_libstdcppmanver}.man/man3/* \ + ${pkgdir}/usr/share/man/man3/ + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-fortran-multilib() +{ + pkgdesc="Fortran front-end for GCC for multilib" + depends=("gcc-multilib=$pkgver-$pkgrel") + provides=("gcc-fortran=$pkgver-$pkgrel") + conflicts=('gcc-fortran') + install=gcc-fortran.install + + cd gcc-build + make -j1 DESTDIR=${pkgdir} install-target-libquadmath + make -j1 DESTDIR=$pkgdir install-target-libgfortran + make -j1 -C $CHOST/libgomp DESTDIR=$pkgdir install-nodist_fincludeHEADERS + make -j1 -C gcc DESTDIR=$pkgdir fortran.install-{common,man,info} + install -Dm755 gcc/f951 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/f951 + + # remove libraries included in gcc-libs + rm ${pkgdir}/usr/lib{,32}/lib{gfortran,quadmath}.so* + rm ${pkgdir}/usr/share/info/libquadmath.info + + ln -s gfortran ${pkgdir}/usr/bin/f95 + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-fortran-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-objc-multilib() +{ + pkgdesc="Objective-C front-end for GCC for multilib" + depends=("gcc-multilib=$pkgver-$pkgrel") + provides=("gcc-objc=$pkgver-$pkgrel") + conflicts=('gcc-objc') + + cd gcc-build + make -j1 DESTDIR=$pkgdir install-target-libobjc + install -dm755 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/ + install -m755 gcc/cc1obj{,plus} $pkgdir/usr/lib/gcc/$CHOST/$pkgver/ + + # remove libraries included in gcc-libs + rm ${pkgdir}/usr/lib{,32}/libobjc.so* + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-objc-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-ada-multilib() +{ + pkgdesc="Ada front-end for GCC (GNAT) for multilib" + depends=("gcc-multilib=$pkgver-$pkgrel") + provides=("gcc-ada=$pkgver-$pkgrel") + conflicts=('gcc-ada') + install=gcc-ada.install + + cd gcc-build/gcc + make -j1 DESTDIR=$pkgdir ada.install-{common,info} + install -m755 gnat1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver + + cd ../$CHOST/32/libada + make -j1 DESTDIR=${pkgdir} INSTALL="install" \ + INSTALL_DATA="install -m644" install-gnatlib + + ln -s gcc ${pkgdir}/usr/bin/gnatgcc + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-ada-multilib/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-go-multilib() +{ + pkgdesc="Go front-end for GCC for multilib" + depends=("gcc-multilib=$pkgver-$pkgrel") + provides=("gcc-go=$pkgver-$pkgrel") + conflicts=('gcc-go') + install=gcc-go.install + + cd gcc-build + make -j1 DESTDIR=$pkgdir install-target-libgo + make -j1 -C gcc DESTDIR=$pkgdir go.install-{common,man,info} + install -Dm755 gcc/go1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/go1 + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-go/RUNTIME.LIBRARY.EXCEPTION +} diff --git a/multilib-testing/gcc-multilib/gcc-4.7.0-cloog-0.17.patch b/multilib-testing/gcc-multilib/gcc-4.7.0-cloog-0.17.patch new file mode 100644 index 000000000..c7146fa04 --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc-4.7.0-cloog-0.17.patch @@ -0,0 +1,24 @@ +diff -Naur gcc-4.6-20120120-orig/configure gcc-4.6-20120120/configure +--- gcc-4.6-20120120-orig/configure 2011-12-18 20:03:44.000000000 +1000 ++++ gcc-4.6-20120120/configure 2012-02-03 17:55:14.885990135 +1000 +@@ -6049,8 +6049,8 @@ + LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${ppllibs}" + + if test "${cloog_org}" = yes ; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.16.1 of CLooG" >&5 +-$as_echo_n "checking for version 0.16.1 of CLooG... " >&6; } ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.17 of CLooG" >&5 ++$as_echo_n "checking for version 0.17 of CLooG... " >&6; } + if test "${gcc_cv_cloog_ct_0_14_0+set}" = set; then : + $as_echo_n "(cached) " >&6 + else +@@ -6061,8 +6061,7 @@ + main () + { + #if CLOOG_VERSION_MAJOR != 0 \ +- || CLOOG_VERSION_MINOR != 16 \ +- || CLOOG_VERSION_REVISION < 1 ++ || CLOOG_VERSION_MINOR != 17 + choke me + #endif + ; diff --git a/multilib-testing/gcc-multilib/gcc-4.7.1-libada-pic.patch b/multilib-testing/gcc-multilib/gcc-4.7.1-libada-pic.patch new file mode 100644 index 000000000..591da1e4a --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc-4.7.1-libada-pic.patch @@ -0,0 +1,12 @@ +diff -Naur gcc-4.7.1-orig/libada/Makefile.in gcc-4.7.1/libada/Makefile.in +--- gcc-4.7.1-orig/libada/Makefile.in 2012-06-13 01:12:37.000000000 +1000 ++++ gcc-4.7.1/libada/Makefile.in 2012-06-16 15:04:32.179911023 +1000 +@@ -54,7 +54,7 @@ + PICFLAG = @PICFLAG@ + GNATLIBFLAGS= -W -Wall -gnatpg -nostdinc + GNATLIBCFLAGS= -g -O2 +-GNATLIBCFLAGS_FOR_C = -W -Wall $(GNATLIBCFLAGS) \ ++GNATLIBCFLAGS_FOR_C = -W -Wall $(GNATLIBCFLAGS) $(PICFLAG) \ + -fexceptions -DIN_RTS @have_getipinfo@ + + host_subdir = @host_subdir@ diff --git a/multilib-testing/gcc-multilib/gcc-4.7.1-libgo-write.patch b/multilib-testing/gcc-multilib/gcc-4.7.1-libgo-write.patch new file mode 100644 index 000000000..a7be83fda --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc-4.7.1-libgo-write.patch @@ -0,0 +1,13 @@ +diff -Naur gcc-4.7.1-orig/libgo/runtime/print.c gcc-4.7.1/libgo/runtime/print.c +--- gcc-4.7.1-orig/libgo/runtime/print.c 2012-05-26 04:22:14.000000000 +1000 ++++ gcc-4.7.1/libgo/runtime/print.c 2012-06-16 15:06:28.553138502 +1000 +@@ -17,7 +17,8 @@ + G* g = runtime_g(); + + if(g == nil || g->writebuf == nil) { +- runtime_write(2, v, n); ++ ssize_t bytesWritten = runtime_write(2, v, n); ++ (void)bytesWritten; + return; + } + diff --git a/multilib-testing/gcc-multilib/gcc-ada.install b/multilib-testing/gcc-multilib/gcc-ada.install new file mode 100644 index 000000000..df0553a4f --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc-ada.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(gnat-style.info gnat_rm.info gnat_ugn.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/multilib-testing/gcc-multilib/gcc-fortran.install b/multilib-testing/gcc-multilib/gcc-fortran.install new file mode 100644 index 000000000..b15d89a97 --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc-fortran.install @@ -0,0 +1,16 @@ +infodir=usr/share/info +file="gfortran.info" + +post_install() { + [ -x usr/bin/install-info ] || return 0 + install-info $infodir/$file.gz $infodir/dir 2> /dev/null +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null +} diff --git a/multilib-testing/gcc-multilib/gcc-go.install b/multilib-testing/gcc-multilib/gcc-go.install new file mode 100644 index 000000000..7dc50dee5 --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc-go.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(gccgo.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/multilib-testing/gcc-multilib/gcc-libs.install b/multilib-testing/gcc-multilib/gcc-libs.install new file mode 100644 index 000000000..23553b8f0 --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc-libs.install @@ -0,0 +1,16 @@ +infodir=usr/share/info +filelist=(libgomp.info libquadmath.info) + +post_upgrade() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/multilib-testing/gcc-multilib/gcc.install b/multilib-testing/gcc-multilib/gcc.install new file mode 100644 index 000000000..3407a5e1f --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(cpp.info cppinternals.info gcc.info gccinstall.info gccint.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/multilib-testing/gcc-multilib/gcc_pure64-multilib.patch b/multilib-testing/gcc-multilib/gcc_pure64-multilib.patch new file mode 100644 index 000000000..b5576ae0e --- /dev/null +++ b/multilib-testing/gcc-multilib/gcc_pure64-multilib.patch @@ -0,0 +1,22 @@ +diff -u -r gcc-4.7.0/gcc/config/i386/linux64.h gcc-4.7.0-pure64/gcc/config/i386/linux64.h +--- gcc-4.7.0/gcc/config/i386/linux64.h 2011-07-07 17:38:34.000000000 +0200 ++++ gcc-4.7.0-pure64/gcc/config/i386/linux64.h 2012-03-24 11:52:58.926204014 +0100 +@@ -29,5 +29,5 @@ + #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" + + #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" ++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2" + #define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" +diff -u -r gcc-4.7.0/gcc/config/i386/t-linux64 gcc-4.7.0-pure64/gcc/config/i386/t-linux64 +--- gcc-4.7.0/gcc/config/i386/t-linux64 2011-11-02 16:23:48.000000000 +0100 ++++ gcc-4.7.0-pure64/gcc/config/i386/t-linux64 2012-03-24 11:52:44.119651885 +0100 +@@ -34,6 +34,6 @@ + comma=, + MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) + MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) +-MULTILIB_OSDIRNAMES = m64=../lib64 +-MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) ++MULTILIB_OSDIRNAMES = m64=../lib ++MULTILIB_OSDIRNAMES+= m32=../lib32 + MULTILIB_OSDIRNAMES+= mx32=../libx32 diff --git a/multilib-testing/libtool-multilib/PKGBUILD b/multilib-testing/libtool-multilib/PKGBUILD new file mode 100644 index 000000000..152e29f53 --- /dev/null +++ b/multilib-testing/libtool-multilib/PKGBUILD @@ -0,0 +1,74 @@ +# $Id: PKGBUILD 72542 2012-06-16 14:54:48Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +# NOTE: requires rebuild with each new gcc version + +pkgbase=libtool-multilib +pkgname=(libtool-multilib lib32-libltdl) +pkgver=2.4.2 +pkgrel=6 +pkgdesc="A generic library support script for multilib" +arch=('x86_64') +url="http://www.gnu.org/software/libtool" +license=('GPL') +_gccver=4.7.1 +makedepends=("gcc-multilib=$_gccver") +options=('!libtool') +source=(ftp://ftp.gnu.org/pub/gnu/libtool/libtool-${pkgver}.tar.xz{,.sig}) +md5sums=('2ec8997e0c07249eb4cbd072417d70fe' + '1e6ba57420c82c663c85e745d11c7eed') + +build() { + cd "$srcdir" + + rm -rf libtool-64 libtool-32 + mv libtool-$pkgver libtool-64 + cp -a libtool-64 libtool-32 + + msg2 "Building libtool-64..." + cd "$srcdir/libtool-64" + ./configure --prefix=/usr + make + + msg2 "Building libtool-32..." + export CC="gcc -m32" + export CXX="g++ -m32" + + cd "$srcdir/libtool-32" + ./configure --prefix=/usr --libdir=/usr/lib32 + make +} + +check() { + cd "$srcdir/libtool-64" + make check + cd "$srcdir/libtool-32" + make check +} + +package_libtool-multilib() { + depends=('sh' "libltdl=$pkgver" 'tar' "gcc-multilib=$_gccver" "lib32-libltdl=$pkgver") + groups=('multilib-devel') + install=libtool.install + provides=("libtool=$pkgver-$pkgrel") + conflicts=(libtool) + + cd "$srcdir/libtool-64" + + make DESTDIR=${pkgdir} install-binSCRIPTS install-man install-info \ + install-data-local + rm -rf ${pkgdir}/usr/share/libtool/libltdl/ +} + +package_lib32-libltdl() { + pkgdesc="A system independent dlopen wrapper for GNU libtool (32-bit)" + depends=(lib32-glibc libltdl) + replaces=(lib32-libtool) + provides=("lib32-libtool=$pkgver-$pkgrel") + conflicts=(lib32-libtool) + + cd "$srcdir/libtool-32" + make DESTDIR="$pkgdir" install-libLTLIBRARIES +} diff --git a/multilib-testing/libtool-multilib/libtool.install b/multilib-testing/libtool-multilib/libtool.install new file mode 100644 index 000000000..f4f700705 --- /dev/null +++ b/multilib-testing/libtool-multilib/libtool.install @@ -0,0 +1,22 @@ +infodir=usr/share/info +filelist=(libtool.info libtool.info-1 libtool.info-2) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/multilib/lib32-freetype2/PKGBUILD b/multilib/lib32-freetype2/PKGBUILD index 224ecea80..05b152d39 100644 --- a/multilib/lib32-freetype2/PKGBUILD +++ b/multilib/lib32-freetype2/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 68499 2012-03-26 09:32:41Z pschmitz $ +# $Id: PKGBUILD 72526 2012-06-16 10:07:26Z bluewind $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Contributor: Jan de Groot <jgc@archlinux.org> _pkgbasename=freetype2 pkgname=lib32-$_pkgbasename -pkgver=2.4.9 +pkgver=2.4.10 pkgrel=1 pkgdesc="TrueType font rendering library (32-bit)" arch=(x86_64) @@ -16,7 +16,7 @@ options=('!libtool') source=(http://downloads.sourceforge.net/sourceforge/freetype/freetype-${pkgver}.tar.bz2 freetype-2.3.0-enable-spr.patch freetype-2.2.1-enable-valid.patch) -md5sums=('77a893dae81fd5b896632715ca041179' +md5sums=('13286702e9390a91661f980608adaff1' '816dc8619a6904a7385769433c0a8653' '214119610444c9b02766ccee5e220680') diff --git a/multilib/lib32-krb5/PKGBUILD b/multilib/lib32-krb5/PKGBUILD index 234758af2..e186c35ba 100644 --- a/multilib/lib32-krb5/PKGBUILD +++ b/multilib/lib32-krb5/PKGBUILD @@ -1,23 +1,20 @@ -# $Id: PKGBUILD 68503 2012-03-26 09:52:05Z pschmitz $ +# $Id: PKGBUILD 72528 2012-06-16 10:15:32Z bluewind $ # Maintainer: Florian Pritz <flo@xinu.at> # Contributor: Stéphane Gaudreault <stephane@archlinux.org> _pkgbasename=krb5 pkgname=lib32-$_pkgbasename -pkgver=1.10.1 -pkgrel=2 +pkgver=1.10.2 +pkgrel=1 pkgdesc="The Kerberos network authentication system (32-bit)" arch=('x86_64') url="http://web.mit.edu/kerberos/" license=('custom') depends=('lib32-e2fsprogs' 'lib32-libldap' 'lib32-keyutils' "$_pkgbasename") makedepends=('perl' 'gcc-multilib') -provides=('lib32-heimdal') -replaces=('lib32-heimdal') -conflicts=('lib32-heimdal') source=("http://web.mit.edu/kerberos/dist/${_pkgbasename}/1.10/${_pkgbasename}-${pkgver}-signed.tar" 'krb5-1.10.1-gcc47.patch') -sha1sums=('f9f3b77173f68b268b43e4f9c29bf7c9f3fd1f0e' +sha1sums=('8b6e2c5bf0c65aacd368b3698add7888f2a7332d' '78b759d566b1fdefd9bbcd06df14f07f12effe96') options=('!emptydirs') diff --git a/multilib/lib32-libdrm-old/COPYING b/multilib/lib32-libdrm-old/COPYING new file mode 100644 index 000000000..6e74c337c --- /dev/null +++ b/multilib/lib32-libdrm-old/COPYING @@ -0,0 +1,48 @@ + Copyright 2005 Adam Jackson. + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation on the rights to use, copy, modify, merge, + publish, distribute, sub license, and/or sell copies of the Software, + and to permit persons to whom the Software is furnished to do so, + subject to the following conditions: + + The above copyright notice and this permission notice (including the + next paragraph) shall be included in all copies or substantial + portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NON-INFRINGEMENT. IN NO EVENT SHALL ADAM JACKSON BE LIABLE FOR ANY + CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +------------------------------------------------------------------------ + + Copyright 1999 Precision Insight, Inc., Cedar Park, Texas. + Copyright 2000 VA Linux Systems, Inc., Sunnyvale, California. + All Rights Reserved. + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice (including the + next paragraph) shall be included in all copies or substantial + portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS + SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. diff --git a/multilib/lib32-libdrm-old/PKGBUILD b/multilib/lib32-libdrm-old/PKGBUILD new file mode 100644 index 000000000..3524bf0c6 --- /dev/null +++ b/multilib/lib32-libdrm-old/PKGBUILD @@ -0,0 +1,63 @@ +# $Id: PKGBUILD 72575 2012-06-16 19:14:42Z lcarlier $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgbase=lib32-libdrm-old +pkgname=(lib32-libdrm-old lib32-libdrm-nouveau1) +pkgver=2.4.33 +pkgrel=1 +pkgdesc="Userspace interface to kernel DRM services (32 bits)" +arch=('x86_64') +license=('custom') +depends=('lib32-libpciaccess' 'lib32-glibc') +makedepends=('gcc-multilib') +options=('!libtool' '!emptydirs') +url="http://dri.freedesktop.org/" +source=(http://dri.freedesktop.org/libdrm/libdrm-$pkgver.tar.bz2 + no-pthread-stubs.patch + COPYING +) +sha1sums=('4da2c635491724e44326871e6a49ccfec0b6b5a6' + '825ff5e0c4238b31bdea52f104bfec8949270e25' + 'ba3dcd636997ee0d30df14b03dae05c24ae5d094') + +build() { + cd "libdrm-$pkgver" + + export CC="gcc -m32" + export CXX="g++ -m32" + export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" + + patch -Np1 -i "$srcdir/no-pthread-stubs.patch" + + #libtoolize --force + autoreconf --force --install + ./configure --prefix=/usr --libdir=/usr/lib32 \ + --disable-libkms \ + --disable-intel \ + --disable-radeon \ + --enable-nouveau-experimental-api + make +} + +package_lib32-libdrm-old() { + pkgdesc="Userspace interface to kernel DRM services - used as makedepends for nouveau-dri (32 bits)" + conflicts=('lib32-libdrm') + provides=("lib32-libdrm=$pkgver") + + cd "libdrm-$pkgver" + + make DESTDIR="$pkgdir" install + rm "$pkgdir"/usr/lib32/libdrm_nouveau.so.1* +} + +package_lib32-libdrm-nouveau1() { + pkgdesc="Userspace interface to kernel DRM services for nouveau - used as depends for nouveau-dri (32 bits)" + depends=('lib32-libdrm') + + cd "libdrm-$pkgver" + + make DESTDIR="$pkgdir" install-libdrm_laLTLIBRARIES + make -C nouveau DESTDIR="$pkgdir" install + make DESTDIR="$pkgdir" uninstall-libdrm_laLTLIBRARIES + rm -rf "$pkgdir"/usr/include/ "$pkgdir"/usr/lib32/pkgconfig/libdrm_nouveau.pc "$pkgdir"/usr/lib32/libdrm_nouveau.so +} diff --git a/multilib/lib32-libdrm-old/no-pthread-stubs.patch b/multilib/lib32-libdrm-old/no-pthread-stubs.patch new file mode 100644 index 000000000..5430244f9 --- /dev/null +++ b/multilib/lib32-libdrm-old/no-pthread-stubs.patch @@ -0,0 +1,66 @@ +diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac +--- libdrm-2.4.0/configure.ac 2008-10-09 21:57:09.000000000 +0200 ++++ libdrm-2.4.0-nostubs/configure.ac 2008-10-21 10:48:24.000000000 +0200 +@@ -47,10 +47,6 @@ + LT_INIT([disable-static]) + + +-PKG_CHECK_MODULES(PTHREADSTUBS, pthread-stubs) +-AC_SUBST(PTHREADSTUBS_CFLAGS) +-AC_SUBST(PTHREADSTUBS_LIBS) +- + pkgconfigdir=${libdir}/pkgconfig + AC_SUBST(pkgconfigdir) + AC_ARG_ENABLE([udev], +--- libdrm-2.4.16/intel/Makefile.am 2009-11-20 23:54:36.000000000 +0000 ++++ libdrm-2.4.16/intel/Makefile.am.new 2009-12-07 08:11:32.235748069 +0000 +@@ -26,7 +26,6 @@ + $(WARN_CFLAGS) \ + -I$(top_srcdir) \ + -I$(top_srcdir)/intel \ +- $(PTHREADSTUBS_CFLAGS) \ + $(PCIACCESS_CFLAGS) \ + -I$(top_srcdir)/include/drm + +@@ -34,7 +33,6 @@ + libdrm_intel_ladir = $(libdir) + libdrm_intel_la_LDFLAGS = -version-number 1:0:0 -no-undefined + libdrm_intel_la_LIBADD = ../libdrm.la \ +- @PTHREADSTUBS_LIBS@ \ + @PCIACCESS_LIBS@ \ + @CLOCK_LIB@ + +--- libdrm-2.4.16/radeon/Makefile.am 2009-11-20 23:54:36.000000000 +0000 ++++ libdrm-2.4.16/radeon/Makefile.am.new 2009-12-07 08:12:31.889075388 +0000 +@@ -26,13 +26,12 @@ + $(WARN_CFLAGS) \ + -I$(top_srcdir) \ + -I$(top_srcdir)/radeon \ +- $(PTHREADSTUBS_CFLAGS) \ + -I$(top_srcdir)/include/drm + + libdrm_radeon_la_LTLIBRARIES = libdrm_radeon.la + libdrm_radeon_ladir = $(libdir) + libdrm_radeon_la_LDFLAGS = -version-number 1:0:0 -no-undefined +-libdrm_radeon_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ ++libdrm_radeon_la_LIBADD = ../libdrm.la + + libdrm_radeon_la_SOURCES = \ + radeon_bo_gem.c \ +--- libdrm-2.4.16/nouveau/Makefile.am 2009-11-20 23:54:36.000000000 +0000 ++++ libdrm-2.4.16/nouveau/Makefile.am.new 2009-12-07 08:13:01.489072320 +0000 +@@ -2,13 +2,12 @@ + $(WARN_CFLAGS) \ + -I$(top_srcdir) \ + -I$(top_srcdir)/nouveau \ +- $(PTHREADSTUBS_CFLAGS) \ + -I$(top_srcdir)/include/drm + + libdrm_nouveau_la_LTLIBRARIES = libdrm_nouveau.la + libdrm_nouveau_ladir = $(libdir) + libdrm_nouveau_la_LDFLAGS = -version-number 1:0:0 -no-undefined +-libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ ++libdrm_nouveau_la_LIBADD = ../libdrm.la + + libdrm_nouveau_la_SOURCES = \ + nouveau_device.c \ diff --git a/multilib/lib32-libdrm/PKGBUILD b/multilib/lib32-libdrm/PKGBUILD index 3ce77c229..286be376b 100644 --- a/multilib/lib32-libdrm/PKGBUILD +++ b/multilib/lib32-libdrm/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 68628 2012-03-30 13:45:16Z lcarlier $ +# $Id: PKGBUILD 72579 2012-06-16 20:19:50Z lcarlier $ # Maintainer: Laurent Carlier <lordheavym@gmail.com> # Contributor: Jan de Groot <jgc@archlinux.org> _pkgbasename=libdrm pkgname=lib32-$_pkgbasename -pkgver=2.4.33 +pkgver=2.4.35 pkgrel=1 pkgdesc="Userspace interface to kernel DRM services (32-bit)" arch=(x86_64) @@ -16,8 +16,8 @@ url="http://dri.freedesktop.org/" source=(http://dri.freedesktop.org/${_pkgbasename}/${_pkgbasename}-${pkgver}.tar.bz2 no-pthread-stubs.patch) # git_fixes.diff) -sha1sums=('4da2c635491724e44326871e6a49ccfec0b6b5a6' - '1a9000f4c94d5bd13555e13e6e51716bf92a0eb8') +sha1sums=('a1d8d4945f782371d7855dbd693db885bd7e3d83' + '2a5410baa3e6e078f9378ce486a88f41d22fd838') build() { cd "${srcdir}/${_pkgbasename}-${pkgver}" @@ -35,10 +35,7 @@ build() { autoreconf --force --install ./configure --prefix=/usr --libdir=/usr/lib32 \ --enable-udev \ - --enable-intel \ - --enable-radeon \ - --enable-vmwgfx-experimental-api \ - --enable-nouveau-experimental-api + --enable-vmwgfx-experimental-api make } diff --git a/multilib/lib32-libdrm/no-pthread-stubs.patch b/multilib/lib32-libdrm/no-pthread-stubs.patch index 721626c0a..6745f4bc4 100644 --- a/multilib/lib32-libdrm/no-pthread-stubs.patch +++ b/multilib/lib32-libdrm/no-pthread-stubs.patch @@ -1,6 +1,6 @@ -diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac ---- libdrm-2.4.0/configure.ac 2008-10-09 21:57:09.000000000 +0200 -+++ libdrm-2.4.0-nostubs/configure.ac 2008-10-21 10:48:24.000000000 +0200 +diff -Nur libdrm-2.4.34.orig/configure.ac libdrm-2.4.34/configure.ac +--- libdrm-2.4.34.orig/configure.ac 2012-05-12 14:54:06.375335490 +0000 ++++ libdrm-2.4.34/configure.ac 2012-05-12 14:54:32.075142065 +0000 @@ -47,10 +47,6 @@ LT_INIT([disable-static]) @@ -12,26 +12,47 @@ diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac pkgconfigdir=${libdir}/pkgconfig AC_SUBST(pkgconfigdir) AC_ARG_ENABLE([udev], ---- libdrm-2.4.16/intel/Makefile.am 2009-11-20 23:54:36.000000000 +0000 -+++ libdrm-2.4.16/intel/Makefile.am.new 2009-12-07 08:11:32.235748069 +0000 +diff -Nur libdrm-2.4.34.orig/intel/Makefile.am libdrm-2.4.34/intel/Makefile.am +--- libdrm-2.4.34.orig/intel/Makefile.am 2012-05-12 14:54:06.372001955 +0000 ++++ libdrm-2.4.34/intel/Makefile.am 2012-05-12 14:55:24.164745055 +0000 @@ -26,7 +26,6 @@ $(WARN_CFLAGS) \ -I$(top_srcdir) \ -I$(top_srcdir)/intel \ - $(PTHREADSTUBS_CFLAGS) \ $(PCIACCESS_CFLAGS) \ + $(VALGRIND_CFLAGS) \ -I$(top_srcdir)/include/drm - -@@ -34,7 +33,6 @@ +@@ -35,7 +34,6 @@ libdrm_intel_ladir = $(libdir) libdrm_intel_la_LDFLAGS = -version-number 1:0:0 -no-undefined libdrm_intel_la_LIBADD = ../libdrm.la \ - @PTHREADSTUBS_LIBS@ \ - @PCIACCESS_LIBS@ \ - @CLOCK_LIB@ + @PCIACCESS_LIBS@ \ + @CLOCK_LIB@ + +diff -Nur libdrm-2.4.34.orig/nouveau/Makefile.am libdrm-2.4.34/nouveau/Makefile.am +--- libdrm-2.4.34.orig/nouveau/Makefile.am 2012-05-12 14:54:06.331998148 +0000 ++++ libdrm-2.4.34/nouveau/Makefile.am 2012-05-12 14:56:00.941132085 +0000 +@@ -2,14 +2,13 @@ + $(WARN_CFLAGS) \ + -I$(top_srcdir) \ + -I$(top_srcdir)/nouveau \ +- $(PTHREADSTUBS_CFLAGS) \ + -I$(top_srcdir)/include/drm \ + -DDEBUG + + libdrm_nouveau_la_LTLIBRARIES = libdrm_nouveau.la + libdrm_nouveau_ladir = $(libdir) + libdrm_nouveau_la_LDFLAGS = -version-number 2:0:0 -no-undefined +-libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ ++libdrm_nouveau_la_LIBADD = ../libdrm.la ---- libdrm-2.4.16/radeon/Makefile.am 2009-11-20 23:54:36.000000000 +0000 -+++ libdrm-2.4.16/radeon/Makefile.am.new 2009-12-07 08:12:31.889075388 +0000 + libdrm_nouveau_la_SOURCES = nouveau.c \ + pushbuf.c \ +diff -Nur libdrm-2.4.34.orig/radeon/Makefile.am libdrm-2.4.34/radeon/Makefile.am +--- libdrm-2.4.34.orig/radeon/Makefile.am 2012-05-12 14:54:06.365334765 +0000 ++++ libdrm-2.4.34/radeon/Makefile.am 2012-05-12 14:55:48.084557437 +0000 @@ -26,13 +26,12 @@ $(WARN_CFLAGS) \ -I$(top_srcdir) \ @@ -47,20 +68,3 @@ diff -ru libdrm-2.4.0/configure.ac libdrm-2.4.0-nostubs/configure.ac libdrm_radeon_la_SOURCES = \ radeon_bo_gem.c \ ---- libdrm-2.4.16/nouveau/Makefile.am 2009-11-20 23:54:36.000000000 +0000 -+++ libdrm-2.4.16/nouveau/Makefile.am.new 2009-12-07 08:13:01.489072320 +0000 -@@ -2,13 +2,12 @@ - $(WARN_CFLAGS) \ - -I$(top_srcdir) \ - -I$(top_srcdir)/nouveau \ -- $(PTHREADSTUBS_CFLAGS) \ - -I$(top_srcdir)/include/drm - - libdrm_nouveau_la_LTLIBRARIES = libdrm_nouveau.la - libdrm_nouveau_ladir = $(libdir) - libdrm_nouveau_la_LDFLAGS = -version-number 1:0:0 -no-undefined --libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ -+libdrm_nouveau_la_LIBADD = ../libdrm.la - - libdrm_nouveau_la_SOURCES = \ - nouveau_device.c \ diff --git a/multilib/lib32-libpng/PKGBUILD b/multilib/lib32-libpng/PKGBUILD index 49adf8805..8d3e73b77 100644 --- a/multilib/lib32-libpng/PKGBUILD +++ b/multilib/lib32-libpng/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 68898 2012-04-05 07:36:47Z ibiru $ +# $Id: PKGBUILD 72536 2012-06-16 14:12:42Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: dorphell <dorphell@archlinux.org> # Contributor: Travis Willard <travis@archlinux.org> @@ -6,10 +6,10 @@ _pkgbasename=libpng pkgname=lib32-$_pkgbasename -pkgver=1.5.10 -_apngver=1.5.10 +pkgver=1.5.11 +_apngver=1.5.11 _libversion=15 -pkgrel=2 +pkgrel=1 pkgdesc="A collection of routines used to create PNG format graphics files (32-bit)" arch=('x86_64') url="http://www.libpng.org/pub/png/libpng.html" @@ -19,8 +19,8 @@ makedepends=(gcc-multilib) options=('!libtool') source=("http://downloads.sourceforge.net/sourceforge/${_pkgbasename}/${_pkgbasename}-${pkgver}.tar.xz" "http://downloads.sourceforge.net/sourceforge/libpng-apng/libpng-${_apngver}-apng.patch.gz") -md5sums=('9c2ac3c3a31de2ab867875718f8de18e' - '88517ab0e9c0be2590800116e2b50c8d') +md5sums=('57f838299e701b6db9e8389c5602dc18' + 'e9ddf7670e78ad93f4cc189c884d4f26') build() { export CC="gcc -m32" diff --git a/multilib/lib32-mesa/PKGBUILD b/multilib/lib32-mesa/PKGBUILD index 3804b7ee1..3328274ca 100644 --- a/multilib/lib32-mesa/PKGBUILD +++ b/multilib/lib32-mesa/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 71697 2012-06-01 13:11:41Z lcarlier $ +# $Id: PKGBUILD 72580 2012-06-16 20:40:13Z lcarlier $ # Contributor: Jan de Groot <jgc@archlinux.org> # Contributor: Andreas Radke <andyrtr@archlinux.org> pkgbase=lib32-mesa -pkgname=('lib32-mesa' 'lib32-libgl' 'lib32-libglapi' 'lib32-libgles' 'lib32-ati-dri' 'lib32-intel-dri' 'lib32-nouveau-dri' 'lib32-libgbm') +pkgname=('lib32-mesa' 'lib32-libgl' 'lib32-libglapi' 'lib32-libgles' 'lib32-ati-dri' 'lib32-intel-dri' 'lib32-libgbm') # 'lib32-nouveau-dri' #_git=true _gitdate=20111031 @@ -16,7 +16,7 @@ if [ "${_git}" = "true" ]; then pkgver=8.0.3 fi -pkgrel=3.1 +pkgrel=3.2 arch=('x86_64') makedepends=('glproto>=1.4.15' 'lib32-libdrm>=2.4.33' 'lib32-libxxf86vm>=1.1.1' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.0.1' 'lib32-libx11>=1.4.99.1' 'lib32-libxt>=1.1.1' 'lib32-gcc-libs>=4.6.1' 'dri2proto>=2.6' 'python2' 'libxml2' 'gcc-multilib' 'imake' 'lib32-llvm' 'namcap') @@ -72,7 +72,8 @@ build() { else ./configure --prefix=/usr \ --with-dri-driverdir=/usr/lib32/xorg/modules/dri \ - --with-gallium-drivers=r300,r600,nouveau,swrast \ + --with-gallium-drivers=r300,r600,svga,swrast \ + --with-dri-drivers=i915,i965,r200,radeon,swrast \ --enable-gallium-llvm \ --disable-gallium-egl --enable-shared-glapi \ --enable-glx-tls \ @@ -85,6 +86,7 @@ build() { --enable-shared-dricore \ --enable-32-bit \ --libdir=/usr/lib32 +# --with-gallium-drivers=r300,r600,nouveau,swrast \ # also without --with-dri-driver fi make diff --git a/multilib/lib32-nouveau-dri/LICENSE b/multilib/lib32-nouveau-dri/LICENSE new file mode 100644 index 000000000..ae33d2709 --- /dev/null +++ b/multilib/lib32-nouveau-dri/LICENSE @@ -0,0 +1,82 @@ +Disclaimer + +Mesa is a 3-D graphics library with an API which is very similar to +that of OpenGL* +To the extent that Mesa utilizes the OpenGL command syntax or state +machine, it is being used with authorization from Silicon Graphics, +Inc.(SGI). However, the author does not possess an OpenGL license +from SGI, and makes no claim that Mesa is in any way a compatible +replacement for OpenGL or associated with SGI. Those who want a +licensed implementation of OpenGL should contact a licensed +vendor. + +Please do not refer to the library as MesaGL (for legal +reasons). It's just Mesa or The Mesa 3-D graphics +library + +* OpenGL is a trademark of Silicon Graphics Incorporated. + +License / Copyright Information + +The Mesa distribution consists of several components. Different copyrights +and licenses apply to different components. For example, GLUT is copyrighted +by Mark Kilgard, some demo programs are copyrighted by SGI, some of the Mesa +device drivers are copyrighted by their authors. See below for a list of +Mesa's main components and the license for each. + +The core Mesa library is licensed according to the terms of the MIT license. +This allows integration with the XFree86, Xorg and DRI projects. + +The default Mesa license is as follows: + +Copyright (C) 1999-2007 Brian Paul All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Attention, Contributors + +When contributing to the Mesa project you must agree to the licensing terms +of the component to which you're contributing. +The following section lists the primary components of the Mesa distribution +and their respective licenses. + + +Mesa Component Licenses + +Component Location Primary Author License +---------------------------------------------------------------------------- +Main Mesa code src/mesa/ Brian Paul Mesa (MIT) + +Device drivers src/mesa/drivers/* See drivers See drivers + +Ext headers include/GL/glext.h SGI SGI Free B + include/GL/glxext.h + +GLUT src/glut/ Mark Kilgard Mark's copyright + +Mesa GLU library src/glu/mesa/ Brian Paul GNU-LGPL + +SGI GLU library src/glu/sgi/ SGI SGI Free B + +demo programs progs/demos/ various see source files + +X demos progs/xdemos/ Brian Paul see source files + +SGI demos progs/samples/ SGI SGI copyright + +RedBook demos progs/redbook/ SGI SGI copyright diff --git a/multilib/lib32-nouveau-dri/PKGBUILD b/multilib/lib32-nouveau-dri/PKGBUILD new file mode 100644 index 000000000..b25a8cf65 --- /dev/null +++ b/multilib/lib32-nouveau-dri/PKGBUILD @@ -0,0 +1,66 @@ +# $Id: PKGBUILD 72577 2012-06-16 19:28:03Z lcarlier $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Maintainer: Andreas Radke <andyrtr@archlinux.org> + +pkgname=lib32-nouveau-dri +pkgver=8.0.3 +pkgrel=3.2 +arch=('x86_64') +makedepends=('glproto>=1.4.15' 'lib32-libdrm-old' 'lib32-libdrm-nouveau1' 'lib32-libxxf86vm>=1.1.1' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.0.1' 'lib32-libx11>=1.4.99.1' + 'lib32-libxt>=1.1.1' 'lib32-gcc-libs>=4.6.1' 'dri2proto>=2.6' 'python2' 'libxml2' 'gcc-multilib' 'imake' 'lib32-llvm' 'namcap') +url="http://mesa3d.sourceforge.net" +license=('custom') +source=(LICENSE + mesa-8.0.3-llvm-3.1-fixes.patch + ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2 +) +md5sums=('5c65a0fe315dd347e09b1f2826a1df5a' + 'c452ed3392468170726c004c2f4e02ca' + 'cc5ee15e306b8c15da6a478923797171') + +build() { + cd ${srcdir}/?esa-* + + export CC="gcc -m32" + export CXX="g++ -m32" + export PKG_CONFIG_PATH="/usr/lib32/pkgconfig" + # for our llvm-config for 32 bit + export LLVM_CONFIG=/usr/bin/llvm-config32 + + patch -Np1 -i "${srcdir}/mesa-8.0.3-llvm-3.1-fixes.patch" + + + autoreconf -vfi + ./configure --prefix=/usr \ + --with-dri-driverdir=/usr/lib32/xorg/modules/dri \ + --with-gallium-drivers=nouveau \ + --with-dri-drivers=nouveau \ + --enable-gallium-llvm \ + --disable-gallium-egl \ + --enable-shared-glapi \ + --enable-gbm \ + --enable-glx-tls \ + --enable-dri \ + --enable-glx \ + --enable-osmesa \ + --enable-gles1 \ + --enable-gles2 \ + --disable-egl \ + --enable-texture-float \ + --enable-xa \ + --enable-shared-dricore \ + --enable-32-bit \ + --libdir=/usr/lib32 + + make +} + +package() { + depends=("lib32-libgl=${pkgver}" 'lib32-libdrm-nouveau1') + pkgdesc="Mesa classic DRI + Gallium3D drivers for Nouveau (32-bit)" + + # classic mesa driver for nv10 , nv20 nouveau_vieux_dri.so + make -C ${srcdir}/?esa-*/src/mesa/drivers/dri/nouveau DESTDIR="${pkgdir}" install + # gallium3D driver for nv30 - nv40 - nv50 nouveau_dri.so + make -C ${srcdir}/?esa-*/src/gallium/targets/dri-nouveau DESTDIR="${pkgdir}" install +} diff --git a/multilib/lib32-nouveau-dri/mesa-8.0.3-llvm-3.1-fixes.patch b/multilib/lib32-nouveau-dri/mesa-8.0.3-llvm-3.1-fixes.patch new file mode 100644 index 000000000..a567b5926 --- /dev/null +++ b/multilib/lib32-nouveau-dri/mesa-8.0.3-llvm-3.1-fixes.patch @@ -0,0 +1,46 @@ +diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +index a50a51d..f1bb4d9 100644 +--- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp ++++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp +@@ -235,7 +235,24 @@ lp_disassemble(const void* func) + int AsmPrinterVariant = AsmInfo->getAssemblerDialect(); + #endif + +-#if HAVE_LLVM >= 0x0300 ++#if HAVE_LLVM >= 0x0301 ++ OwningPtr<const MCRegisterInfo> MRI(T->createMCRegInfo(Triple)); ++ if (!MRI) { ++ debug_printf("error: no register info for target %s\n", Triple.c_str()); ++ return; ++ } ++ ++ OwningPtr<const MCInstrInfo> MII(T->createMCInstrInfo()); ++ if (!MII) { ++ debug_printf("error: no instruction info for target %s\n", Triple.c_str()); ++ return; ++ } ++#endif ++ ++#if HAVE_LLVM >= 0x0301 ++ OwningPtr<MCInstPrinter> Printer( ++ T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *MII, *MRI, *STI)); ++#elif HAVE_LLVM == 0x0300 + OwningPtr<MCInstPrinter> Printer( + T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *STI)); + #elif HAVE_LLVM >= 0x0208 +diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp +index fe7616b..68f8808 100644 +--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp ++++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp +@@ -62,7 +62,11 @@ + extern "C" void + lp_register_oprofile_jit_event_listener(LLVMExecutionEngineRef EE) + { ++#if HAVE_LLVM >= 0x0301 ++ llvm::unwrap(EE)->RegisterJITEventListener(llvm::JITEventListener::createOProfileJITEventListener()); ++#else + llvm::unwrap(EE)->RegisterJITEventListener(llvm::createOProfileJITEventListener()); ++#endif + } + + diff --git a/multilib/lib32-pango/PKGBUILD b/multilib/lib32-pango/PKGBUILD index 752e80caf..e9636f9d3 100644 --- a/multilib/lib32-pango/PKGBUILD +++ b/multilib/lib32-pango/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 69850 2012-04-24 19:39:48Z bluewind $ +# $Id: PKGBUILD 72530 2012-06-16 10:19:20Z bluewind $ # Contributor: Pierre Schmitz <pierre@archlinux.de> # Contributor: Mikko Seppälä <t-r-a-y@mbnet.fi> # Maintainer: Biru Ionut <ionut@archlinux.ro> _pkgbasename=pango pkgname=lib32-$_pkgbasename -pkgver=1.30.0 +pkgver=1.30.1 pkgrel=1 pkgdesc="A library for layout and rendering of text (32-bit)" arch=('x86_64') @@ -17,7 +17,7 @@ install=pango.install source=(http://ftp.gnome.org/pub/gnome/sources/${_pkgbasename}/${pkgver:0:4}/${_pkgbasename}-${pkgver}.tar.xz pango-modules-conffile.patch) url="http://www.pango.org/" -sha256sums=('7c6d2ab024affaed0e942f9279b818235f9c6a36d9fc50688f48d387f4102dff' +sha256sums=('3a8c061e143c272ddcd5467b3567e970cfbb64d1d1600a8f8e62435556220cbe' '4a178b60dd420ae53baeabbecfaaeca4070a4b777b2b3f36d137cd70b5a270c3') build() { diff --git a/testing/bind/PKGBUILD b/testing/bind/PKGBUILD index f154121ed..ab08fa7f0 100644 --- a/testing/bind/PKGBUILD +++ b/testing/bind/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 160726 2012-06-04 16:39:43Z bisson $ +# $Id: PKGBUILD 161924 2012-06-16 17:12:45Z dreisner $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> # Contributor: Mario Vazquez <mario_vazq@hotmail.com> @@ -8,7 +8,7 @@ pkgname=bind # Use a period and not a hyphen before the patch level for proper versioning. pkgver=9.9.1.P1 _pkgver=9.9.1-P1 -pkgrel=1 +pkgrel=2 pkgdesc='Berkeley Internet Name Daemon is the reference implementation of the DNS protocols' url='http://www.isc.org/software/bind/' @@ -22,6 +22,7 @@ source=("http://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.gz" 'named' 'named.conf' 'named.conf.d' + 'named.service' 'named.logrotate' 'localhost.zone' '127.0.0.zone') @@ -31,6 +32,7 @@ sha1sums=('a2263b96ccd8a143ea54b39958142c542bf605a8' '46232e9db243c6c05e170a1781d7a7f413be5d03' '5ca7a5f2a132548a090a045a2df3acea6b35d9eb' '7848edbfb9a848843f57c11c02b0289eefd42d00' + '05fb2346a30dee2f99c40914dd23708729839b64' '9ffb5c3f72390a517aeae557e32349d5d278cb63' '76a0d4cd1b913db177a5a375bebc47e5956866ec' '53be0f1437ebe595240d8dbdd819939582b97fb9') @@ -69,15 +71,16 @@ package() { rmdir "${pkgdir}/var/run" install -d "${pkgdir}"/usr/share/doc/bind - install doc/arm/*.html "${pkgdir}"/usr/share/doc/bind/ + install doc/arm/*.html "${pkgdir}"/usr/share/doc/bind install -D -m755 ../named "${pkgdir}"/etc/rc.d/named install -D -m644 ../named.conf.d "${pkgdir}"/etc/conf.d/named + install -D -m644 ../named.service "${pkgdir}"/usr/lib/systemd/system/named.service install -D -m600 ../named.logrotate "${pkgdir}"/etc/logrotate.d/named install -D -m640 -o 0 -g 40 ../named.conf "${pkgdir}"/etc/named.conf install -d -m750 -o 0 -g 40 "${pkgdir}"/var/named - install -m640 -o 0 -g 40 ../root.hint "${pkgdir}"/var/named/ - install -m640 -o 0 -g 40 ../127.0.0.zone "${pkgdir}"/var/named/ - install -m640 -o 0 -g 40 ../localhost.zone "${pkgdir}"/var/named/ + install -m640 -o 0 -g 40 ../root.hint "${pkgdir}"/var/named + install -m640 -o 0 -g 40 ../127.0.0.zone "${pkgdir}"/var/named + install -m640 -o 0 -g 40 ../localhost.zone "${pkgdir}"/var/named } diff --git a/testing/bind/named.service b/testing/bind/named.service new file mode 100644 index 000000000..77196f785 --- /dev/null +++ b/testing/bind/named.service @@ -0,0 +1,10 @@ +[Unit] +Description=Internet domain name server + +[Service] +ExecStart=/usr/sbin/named -f -u named +ExecReload=/usr/sbin/rndc reload +ExecStop=/usr/sbin/rndc stop + +[Install] +WantedBy=multi-user.target diff --git a/testing/clamav/PKGBUILD b/testing/clamav/PKGBUILD new file mode 100644 index 000000000..78b068e9f --- /dev/null +++ b/testing/clamav/PKGBUILD @@ -0,0 +1,64 @@ +# $Id: PKGBUILD 161925 2012-06-16 17:13:04Z dreisner $ +# Contributor: Dale Blount <dale@archlinux.org> +# Contributor: Gregor Ibic <gregor.ibic@intelicom.si> +# Maintainer: Gaetan Bisson <bisson@archlinux.org> + +pkgname=clamav +pkgver=0.97.5 +pkgrel=1 +pkgdesc='Anti-virus toolkit for Unix' +url='http://www.clamav.net/' +license=('GPL') +options=('!libtool') +arch=('i686' 'x86_64') +depends=('bzip2' 'libltdl') +backup=('etc/clamav/clamd.conf' 'etc/clamav/freshclam.conf' 'etc/conf.d/clamav') +source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz" + 'rc.d' + 'conf.d' + 'service' + 'service.fresh' + 'logrotate' + 'tmpfiles.d' + 'config.patch') +sha1sums=('1bb317ead4a1a677a9a11a063fc35a63f22309e9' + 'c9d508c1e5972f0f849d8694c1872455fa9e74de' + 'cb116cdab49a810381a515cbcfb6a6c148547f07' + 'df522b0488f3901e491f148c9300f6bae348c605' + 'cda9a087e5593992150cb456e34c5f6f589aca82' + '7cace58743a36dae3e63e5e0c6cc73ea5ef9a6ee' + 'a224ea9b4d0f4f196827347d54bed51e11c197ea' + '1c8ef193919b041135115170acd6313f008de808') + +install=install + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + patch -p1 -i ../config.patch + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc/clamav \ + --with-dbdir=/var/lib/clamav \ + --disable-clamav \ + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + # Make sure conf files get installed, because make install + # doesn't do that if clamav is already installed upon building. + install -Dm644 etc/clamd.conf "${pkgdir}"/etc/clamav/clamd.conf + install -Dm644 etc/freshclam.conf "${pkgdir}"/etc/clamav/freshclam.conf + + install -Dm644 ../service.fresh "${pkgdir}"/usr/lib/systemd/system/freshclamd.service + install -Dm644 ../service "${pkgdir}"/usr/lib/systemd/system/clamd.service + install -Dm644 ../tmpfiles.d "${pkgdir}"/usr/lib/tmpfiles.d/clamav.conf + install -Dm644 ../logrotate "${pkgdir}"/etc/logrotate.d/clamav + install -Dm644 ../conf.d "${pkgdir}"/etc/conf.d/clamav + install -Dm755 ../rc.d "${pkgdir}"/etc/rc.d/clamav +} diff --git a/testing/clamav/conf.d b/testing/clamav/conf.d new file mode 100644 index 000000000..9cd44d9f8 --- /dev/null +++ b/testing/clamav/conf.d @@ -0,0 +1,8 @@ +# clamav startup script config options + +# change these to "yes" to start +START_FRESHCLAM="no" +START_CLAMD="no" + +# Options to pass to freshclam (man freshclam for more info). +FRESHCLAM_OPTS="-c 12" diff --git a/testing/clamav/config.patch b/testing/clamav/config.patch new file mode 100644 index 000000000..0640df2c3 --- /dev/null +++ b/testing/clamav/config.patch @@ -0,0 +1,30 @@ +diff -arU 0 old/etc/clamd.conf new/etc/clamd.conf +--- old/etc/clamd.conf 2010-12-02 19:31:21.773357389 +0100 ++++ new/etc/clamd.conf 2010-12-02 19:31:45.873357389 +0100 +@@ -14 +14 @@ +-#LogFile /tmp/clamd.log ++LogFile /var/log/clamav/clamd.log +@@ -34 +34 @@ +-#LogTime yes ++LogTime yes +@@ -61 +61 @@ +-#PidFile /var/run/clamd.pid ++PidFile /run/clamav/clamd.pid +@@ -65 +65 @@ +-#TemporaryDirectory /var/tmp ++TemporaryDirectory /tmp +@@ -80 +80 @@ +-#LocalSocket /tmp/clamd.socket ++LocalSocket /var/lib/clamav/clamd.sock +@@ -190 +190 @@ +-#User clamav ++User clamav +diff -arU 0 old/etc/freshclam.conf new/etc/freshclam.conf +--- old/etc/freshclam.conf 2010-12-02 19:31:21.773357389 +0100 ++++ new/etc/freshclam.conf 2010-12-02 19:31:51.190024057 +0100 +@@ -17 +17 @@ +-#UpdateLogFile /var/log/freshclam.log ++UpdateLogFile /var/log/clamav/freshclam.log +@@ -121 +121 @@ +-#NotifyClamd /path/to/clamd.conf ++NotifyClamd /etc/clamav/clamd.conf diff --git a/testing/clamav/install b/testing/clamav/install new file mode 100644 index 000000000..a2092e815 --- /dev/null +++ b/testing/clamav/install @@ -0,0 +1,14 @@ +post_install() { + getent group clamav &>/dev/null || groupadd -r -g 64 clamav >/dev/null + getent passwd clamav &>/dev/null || useradd -r -u 64 -g clamav -d /dev/null -s /bin/false -c "Clam AntiVirus" clamav >/dev/null + + chown -R clamav:clamav /var/lib/clamav + install -o clamav -g clamav -d /run/clamav + install -o clamav -g clamav -d /var/log/clamav +} + +post_remove() { + getent passwd clamav &>/dev/null && userdel clamav >/dev/null + getent group clamav &>/dev/null && groupdel clamav >/dev/null + return 0 +} diff --git a/testing/clamav/logrotate b/testing/clamav/logrotate new file mode 100644 index 000000000..6a9051bed --- /dev/null +++ b/testing/clamav/logrotate @@ -0,0 +1,8 @@ +/var/log/clamav/clamd.log /var/log/clamav/freshclam.log { + create 644 clamav clamav + sharedscripts + postrotate + /bin/kill -HUP `cat /run/clamav/clamd.pid 2>/dev/null` 2> /dev/null || true + /bin/kill -HUP `cat /run/clamav/freshclam.pid 2>/dev/null` 2> /dev/null || true + endscript +} diff --git a/testing/clamav/rc.d b/testing/clamav/rc.d new file mode 100644 index 000000000..127c86c0f --- /dev/null +++ b/testing/clamav/rc.d @@ -0,0 +1,66 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +[[ -f /etc/conf.d/clamav ]] && source /etc/conf.d/clamav + +PID_FC=$(pidof -o %PPID /usr/bin/freshclam) +PID_CD=$(pidof -o %PPID /usr/sbin/clamd) + +case "$1" in + start) + if [[ $START_CLAMD = yes ]]; then + stat_busy "Starting ClamD" + [[ -z $PID_CD ]] && /usr/sbin/clamd + if [[ $? -gt 0 ]]; then + stat_fail + else + add_daemon clamav + stat_done + fi + fi + sleep 1 + if [[ $START_FRESHCLAM = yes ]]; then + stat_busy "Starting FreshClam" + [[ -z $PID_FC ]] && /usr/bin/freshclam -p /run/clamav/freshclam.pid -d $FRESHCLAM_OPTS + if [[ $? -gt 0 ]]; then + stat_fail + else + add_daemon clamav + stat_done + fi + fi + ;; + stop) + if [[ $START_CLAMD = yes ]]; then + stat_busy "Stopping ClamD" + [[ -n $PID_CD ]] && kill $PID_CD &> /dev/null + if [[ $? -gt 0 ]]; then + stat_fail + else + rm_daemon clamav + stat_done + fi + fi + + if [[ $START_FRESHCLAM = yes ]]; then + stat_busy "Stopping FreshClam" + [[ -n $PID_FC ]] && kill $PID_FC &> /dev/null + if [[ $? -gt 0 ]]; then + stat_fail + else + rm_daemon clamav + stat_done + fi + fi + ;; + restart) + $0 stop + sleep 2 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/clamav/service b/testing/clamav/service new file mode 100644 index 000000000..5bf9eb14e --- /dev/null +++ b/testing/clamav/service @@ -0,0 +1,10 @@ +[Unit] +Description=clamav daemon + +[Service] +Type=forking +PIDFile=/run/clamav/clamd.pid +ExecStart=/usr/sbin/clamd + +[Install] +WantedBy=multi-user.target diff --git a/testing/clamav/service.fresh b/testing/clamav/service.fresh new file mode 100644 index 000000000..a0a72c2e6 --- /dev/null +++ b/testing/clamav/service.fresh @@ -0,0 +1,10 @@ +[Unit] +Description=clamav updater + +[Service] +Type=forking +PIDFile=/run/clamav/freshclam.pid +ExecStart=/usr/bin/freshclam -d -p /run/clamav/freshclam.pid + +[Install] +WantedBy=multi-user.target diff --git a/testing/clamav/tmpfiles.d b/testing/clamav/tmpfiles.d new file mode 100644 index 000000000..22d29941e --- /dev/null +++ b/testing/clamav/tmpfiles.d @@ -0,0 +1 @@ +d /run/clamav 0755 clamav clamav diff --git a/testing/cloog/PKGBUILD b/testing/cloog/PKGBUILD new file mode 100644 index 000000000..45b3180a6 --- /dev/null +++ b/testing/cloog/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 161918 2012-06-16 14:55:34Z heftig $ +# Maintainer: Allan McRae <allan@archlinux.org> + +pkgname=cloog +pkgver=0.17.0 +pkgrel=2 +pkgdesc="Library that generates loops for scanning polyhedra" +arch=('i686' 'x86_64') +url="http://www.bastoul.net/cloog/" +license=('GPL') +depends=('isl' 'gmp') +conflicts=('cloog-ppl<0.15.10-2') +options=('!libtool') +source=(http://www.bastoul.net/cloog/pages/download/$pkgname-$pkgver.tar.gz) +md5sums=('0aa3302c81f65ca62c114e5264f8a802') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr --with-isl=system --with-gmp=system + make +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + make check +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install +} diff --git a/testing/cronie/PKGBUILD b/testing/cronie/PKGBUILD new file mode 100644 index 000000000..65386def0 --- /dev/null +++ b/testing/cronie/PKGBUILD @@ -0,0 +1,68 @@ +# Contributor: Kaiting Chen <kaiting.chen@kiwilight.com> +# Maintainer: Gaetan Bisson <bisson@archlinux.org> + +pkgname='cronie' +pkgver=1.4.8 +pkgrel=2 +pkgdesc='Daemon that runs specified programs at scheduled times and related tools' +url='https://fedorahosted.org/cronie/' +license=('custom:BSD') +arch=('i686' 'x86_64') +depends=('pam' 'bash' 'run-parts') +optdepends=('smtp-server: sending cron job output via email') + +source=("https://fedorahosted.org/releases/c/r/${pkgname}/${pkgname}-${pkgver}.tar.gz" + 'cron.deny' + 'service' + 'pam.d' + 'rc.d') +sha1sums=('1d2ce3a6ca2a6f96ff31921e4060be3199dc10f3' + '0f279b8fb820340267d578dc85511c980715f91e' + '3038a05476829f72fc4918bee9176b273ce10340' + '5eff7fb31f6bc0a924243ff046704726cf20c221' + 'c08c040ed5cb12bc4fd15639a5242d31ec247ef5') + +backup=('etc/anacrontab' + 'etc/conf.d/crond' + 'etc/pam.d/crond' + 'etc/cron.deny') + +conflicts=('cron') +provides=('cron') +groups=('base') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --enable-anacron \ + --with-inotify \ + --with-pam \ + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + + chmod u+s "${pkgdir}"/usr/bin/crontab + install -d "${pkgdir}"/var/spool/{ana,}cron + install -d "${pkgdir}"/etc/cron.{d,hourly,daily,weekly,monthly} + + install -Dm755 ../rc.d "${pkgdir}"/etc/rc.d/crond + install -Dm644 ../pam.d "${pkgdir}"/etc/pam.d/crond + install -Dm644 ../cron.deny "${pkgdir}"/etc/cron.deny + install -Dm644 ../service "${pkgdir}"/usr/lib/systemd/system/cronie.service + + install -Dm644 crond.sysconfig "${pkgdir}"/etc/conf.d/crond + install -Dm644 contrib/anacrontab "${pkgdir}"/etc/anacrontab + install -Dm644 contrib/0hourly "${pkgdir}"/etc/cron.d/0hourly + install -Dm755 contrib/0anacron "${pkgdir}"/etc/cron.hourly/0anacron + + install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/cronie/COPYING +} diff --git a/testing/cronie/cron.deny b/testing/cronie/cron.deny new file mode 100644 index 000000000..06e685cc8 --- /dev/null +++ b/testing/cronie/cron.deny @@ -0,0 +1 @@ +# without this file, only users listed in /etc/cron.allow can use crontab diff --git a/testing/cronie/pam.d b/testing/cronie/pam.d new file mode 100644 index 000000000..9a254ebc0 --- /dev/null +++ b/testing/cronie/pam.d @@ -0,0 +1,10 @@ +auth required pam_unix.so +auth required pam_env.so + +account required pam_access.so +account required pam_unix.so +account required pam_time.so + +session required pam_loginuid.so +session required pam_limits.so +session required pam_unix.so diff --git a/testing/cronie/rc.d b/testing/cronie/rc.d new file mode 100755 index 000000000..d0659685c --- /dev/null +++ b/testing/cronie/rc.d @@ -0,0 +1,38 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +name=crond +. /etc/conf.d/crond +PID=$(pidof -o %PPID /usr/sbin/crond) + +case "$1" in +start) + stat_busy "Starting $name daemon" + [[ -z "$PID" ]] && /usr/sbin/crond $CRONDARGS &>/dev/null \ + && { add_daemon $name; stat_done; } \ + || { stat_fail; exit 1; } + ;; +stop) + stat_busy "Stopping $name daemon" + [[ -n "$PID" ]] && kill $PID &>/dev/null \ + && { rm_daemon $name; stat_done; } \ + || { stat_fail; exit 1; } + ;; +reload) + stat_busy "Reloading $name daemon" + [[ -n "$PID" ]] && kill -HUP $PID &>/dev/null \ + && { stat_done; } \ + || { stat_fail; exit 1; } + ;; +restart) + $0 stop + sleep 1 + $0 start + ;; +*) + echo "usage: $0 {start|stop|restart|reload}" + ;; +esac +exit 0 diff --git a/testing/cronie/service b/testing/cronie/service new file mode 100644 index 000000000..5ae193bfc --- /dev/null +++ b/testing/cronie/service @@ -0,0 +1,10 @@ +[Unit] +Description=Periodic Command Scheduler + +[Service] +ExecStart=/usr/sbin/crond -n +ExecReload=/bin/kill -HUP $MAINPID +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/testing/dmraid/PKGBUILD b/testing/dmraid/PKGBUILD index a790de92f..9915ca8cf 100644 --- a/testing/dmraid/PKGBUILD +++ b/testing/dmraid/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 161281 2012-06-08 22:28:01Z dreisner $ +# $Id: PKGBUILD 161941 2012-06-16 17:17:25Z dreisner $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> #Contributor: Urs Wolfer <uwolfer @ fwo.ch> pkgname=dmraid pkgver=1.0.0.rc16.3 -pkgrel=6 +pkgrel=7 pkgdesc="Device mapper RAID interface" url="http://people.redhat.com/~heinzm/sw/dmraid/" conflicts=('mkinitcpio<0.7') @@ -15,12 +15,14 @@ source=(#ftp://ftp.archlinux.org/other/dmraid/$pkgname-$pkgver.tar.bz2 http://people.redhat.com/~heinzm/sw/dmraid/src/$pkgname-1.0.0.rc16-3.tar.bz2 dmraid_install dmraid_hook - dmraid_tmpfiles) + dmraid_tmpfiles + dmraid.service) install=dmraid.install md5sums=('819338fcef98e8e25819f0516722beeb' '2297d23cee1aef23ec6ad8d6d1870356' 'faec669dc85f87187b45b5d3968efe2c' - '56a8bb0ece8d206cd8efb504ee072ddd') + '56a8bb0ece8d206cd8efb504ee072ddd' + 'de0af1fdb9ed4c109b8119160167d2e9') build() { cd "$pkgname/1.0.0.rc16-3/$pkgname" @@ -37,4 +39,6 @@ package() { # fix permissions chmod 644 "$pkgdir"/usr/include/dmraid/* "$pkgdir"/usr/lib/libdmraid.a + + install -Dm644 "$srcdir/dmraid.service" "$pkgdir/usr/lib/systemd/system/dmraid.service" } diff --git a/testing/dmraid/dmraid.service b/testing/dmraid/dmraid.service new file mode 100644 index 000000000..1fd142ff2 --- /dev/null +++ b/testing/dmraid/dmraid.service @@ -0,0 +1,16 @@ +[Unit] +Description=Assemble FakeRAID arrays +DefaultDependencies=no +Requires=systemd-udev-settle.service +After=systemd-udev-settle.service +Before=basic.target shutdown.target +Conflicts=shutdown.target + +[Service] +ExecStart=/sbin/dmraid --ignorelocking --activate y -Z +Type=oneshot +TimeoutSec=0 +RemainAfterExit=true + +[Install] +WantedBy=basic.target diff --git a/testing/gcc/PKGBUILD b/testing/gcc/PKGBUILD new file mode 100644 index 000000000..ed0b7fd2b --- /dev/null +++ b/testing/gcc/PKGBUILD @@ -0,0 +1,276 @@ +# $Id: PKGBUILD 161916 2012-06-16 14:55:26Z heftig $ +# Maintainer: Allan McRae <allan@archlinux.org> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc +# NOTE: libtool requires rebuilt with each new gcc version + +pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc' 'gcc-ada' 'gcc-go') +pkgver=4.7.1 +pkgrel=1 +#_snapshot=4.7-20120505 +_libstdcppmanver=20120605 # Note: check source directory name when updating this +pkgdesc="The GNU Compiler Collection" +arch=('i686' 'x86_64') +license=('GPL' 'LGPL' 'FDL' 'custom') +url="http://gcc.gnu.org" +makedepends=('binutils>=2.22' 'libmpc' 'cloog' 'ppl' 'gcc-ada') +checkdepends=('dejagnu') +options=('!libtool' '!emptydirs') +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 + #ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2 + ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api.${_libstdcppmanver}.man.tar.bz2 + gcc_pure64.patch + gcc-4.7.0-cloog-0.17.patch + gcc-4.7.1-libada-pic.patch + gcc-4.7.1-libgo-write.patch) +md5sums=('933e6f15f51c031060af64a9e14149ff' + '767c62f9a047c4434f2345decf1d0819' + 'ced48436c1b3c981d721a829f1094de1' + '575f7d17b022e609447a590e481b18b5' + '2acbc9d35cc9d72329dc71d6b1f162ef' + 'df82dd175ac566c8a6d46b11ac21f14c') + + +if [ -n "${_snapshot}" ]; then + _basedir="${srcdir}/gcc-${_snapshot}" +else + _basedir="${srcdir}/gcc-${pkgver}" +fi + +build() { + cd ${_basedir} + + # Do not install libiberty + sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + if [ "${CARCH}" = "x86_64" ]; then + patch -p1 -i ${srcdir}/gcc_pure64.patch + fi + + # compatibility with latest cloog + patch -p1 -i ${srcdir}/gcc-4.7.0-cloog-0.17.patch + + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53679 + patch -p1 -i ${srcdir}/gcc-4.7.1-libgo-write.patch + + # bug to file... + patch -p1 -i ${srcdir}/gcc-4.7.1-libada-pic.patch + + echo ${pkgver} > gcc/BASE-VER + + cd ${srcdir} + mkdir gcc-build && cd gcc-build + + ${_basedir}/configure --prefix=/usr \ + --libdir=/usr/lib --libexecdir=/usr/lib \ + --mandir=/usr/share/man --infodir=/usr/share/info \ + --with-bugurl=https://bugs.archlinux.org/ \ + --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ \ + --enable-shared --enable-threads=posix \ + --with-system-zlib --enable-__cxa_atexit \ + --disable-libunwind-exceptions --enable-clocale=gnu \ + --disable-libstdcxx-pch --enable-libstdcxx-time \ + --enable-gnu-unique-object --enable-linker-build-id \ + --with-ppl --enable-cloog-backend=isl \ + --enable-lto --enable-gold --enable-ld=default \ + --enable-plugin --with-plugin-ld=ld.gold \ + --with-linker-hash-style=gnu \ + --disable-multilib --disable-libssp \ + --disable-build-with-cxx --disable-build-poststage1-with-cxx \ + --enable-checking=release + make +} + +check() { + cd gcc-build + + # increase stack size to prevent test failures + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827 + ulimit -s 32768 + + # do not abort on error as some are "expected" + make -k check || true + ${_basedir}/contrib/test_summary +} + +package_gcc-libs() +{ + pkgdesc="Runtime libraries shipped by GCC" + groups=('base') + depends=('glibc>=2.15') + install=gcc-libs.install + + cd gcc-build + make -j1 -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared + for lib in libmudflap libgomp libstdc++-v3/src libitm; do + make -j1 -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES + done + make -j1 -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install + make -j1 -C $CHOST/libgomp DESTDIR=${pkgdir} install-info + make -j1 -C $CHOST/libitm DESTDIR=${pkgdir} install-info + + make -j1 DESTDIR=${pkgdir} install-target-libquadmath + make -j1 DESTDIR=${pkgdir} install-target-libgfortran + make -j1 DESTDIR=${pkgdir} install-target-libobjc + + # remove unnecessary files installed by install-target-{libquadmath,libgfortran,libobjc} + rm -r ${pkgdir}/usr/lib/{gcc/,libgfortran.spec} + + # remove static libraries + find ${pkgdir} -name *.a -delete + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc() +{ + pkgdesc="The GNU Compiler Collection - C and C++ frontends" + depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.22' 'libmpc' 'cloog' 'ppl') + groups=('base-devel') + install=gcc.install + + cd gcc-build + + make -j1 DESTDIR=${pkgdir} install + + install -d $pkgdir/usr/share/gdb/auto-load/usr/lib + mv $pkgdir{,/usr/share/gdb/auto-load}/usr/lib/libstdc++.so.6.0.17-gdb.py + + # unfortunately it is much, much easier to install the lot and clean-up the mess... + rm $pkgdir/usr/bin/{{$CHOST-,}gfortran,{$CHOST-,}gccgo,gnat*} + rm $pkgdir/usr/lib/*.so* + rm $pkgdir/usr/lib/lib{ffi,gfortran,go{,begin},objc,quadmath}.a + rm $pkgdir/usr/lib/libgfortran.spec + rm -r $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{ada{include,lib},finclude,include/objc} + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/include/{ffi{,target}.h,quadmath{,_weak}.h} + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{cc1obj{,plus},f951,gnat1,go1} + rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{libcaf_single,libgfortranbegin}.a + rm -r $pkgdir/usr/lib/go + rm $pkgdir/usr/share/info/{gccgo,gfortran,gnat*,libgomp,libquadmath,libitm}.info + rm $pkgdir/usr/share/locale/{de,fr}/LC_MESSAGES/libstdc++.mo + rm $pkgdir/usr/share/man/man1/{gccgo,gfortran}.1 + rm $pkgdir/usr/share/man/man3/ffi* + + # many packages require these symlinks + install -dm755 ${pkgdir}/lib + ln -s /usr/bin/cpp ${pkgdir}/lib/cpp + ln -s gcc ${pkgdir}/usr/bin/cc + + # POSIX conformance launcher scripts for c89 and c99 + cat > $pkgdir/usr/bin/c89 <<"EOF" +#!/bin/sh +fl="-std=c89" +for opt; do + case "$opt" in + -ansi|-std=c89|-std=iso9899:1990) fl="";; + -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} +EOF + + cat > $pkgdir/usr/bin/c99 <<"EOF" +#!/bin/sh +fl="-std=c99" +for opt; do + case "$opt" in + -std=c99|-std=iso9899:1999) fl="";; + -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} +EOF + + chmod 755 $pkgdir/usr/bin/c{8,9}9 + + # install the libstdc++ man pages + install -dm755 ${pkgdir}/usr/share/man/man3 + install -m644 ${srcdir}/libstdc++-api.${_libstdcppmanver}.man/man3/* \ + ${pkgdir}/usr/share/man/man3/ + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-fortran() +{ + pkgdesc="Fortran front-end for GCC" + depends=("gcc=$pkgver-$pkgrel") + install=gcc-fortran.install + + cd gcc-build + make -j1 DESTDIR=${pkgdir} install-target-libquadmath + make -j1 DESTDIR=$pkgdir install-target-libgfortran + make -j1 -C $CHOST/libgomp DESTDIR=$pkgdir install-nodist_fincludeHEADERS + make -j1 -C gcc DESTDIR=$pkgdir fortran.install-{common,man,info} + install -Dm755 gcc/f951 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/f951 + + # remove libraries included in gcc-libs + rm ${pkgdir}/usr/lib/lib{gfortran,quadmath}.so* + rm ${pkgdir}/usr/share/info/libquadmath.info + + ln -s gfortran ${pkgdir}/usr/bin/f95 + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-fortran/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-objc() +{ + pkgdesc="Objective-C front-end for GCC" + depends=("gcc=$pkgver-$pkgrel") + + cd gcc-build + make -j1 DESTDIR=$pkgdir install-target-libobjc + install -dm755 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/ + install -m755 gcc/cc1obj{,plus} $pkgdir/usr/lib/gcc/$CHOST/$pkgver/ + + # remove libraries included in gcc-libs + rm ${pkgdir}/usr/lib/libobjc.so* + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-objc/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-ada() +{ + pkgdesc="Ada front-end for GCC (GNAT)" + depends=("gcc=$pkgver-$pkgrel") + install=gcc-ada.install + + cd gcc-build/gcc + make -j1 DESTDIR=$pkgdir ada.install-{common,info} + install -m755 gnat1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver + + ln -s gcc ${pkgdir}/usr/bin/gnatgcc + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-ada/RUNTIME.LIBRARY.EXCEPTION +} + +package_gcc-go() +{ + pkgdesc="Go front-end for GCC" + depends=("gcc=$pkgver-$pkgrel") + install=gcc-go.install + + cd gcc-build + make -j1 DESTDIR=$pkgdir install-target-libgo + make -j1 -C gcc DESTDIR=$pkgdir go.install-{common,man,info} + install -Dm755 gcc/go1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/go1 + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/gcc-go/RUNTIME.LIBRARY.EXCEPTION +} diff --git a/testing/gcc/gcc-4.7.0-cloog-0.17.patch b/testing/gcc/gcc-4.7.0-cloog-0.17.patch new file mode 100644 index 000000000..c7146fa04 --- /dev/null +++ b/testing/gcc/gcc-4.7.0-cloog-0.17.patch @@ -0,0 +1,24 @@ +diff -Naur gcc-4.6-20120120-orig/configure gcc-4.6-20120120/configure +--- gcc-4.6-20120120-orig/configure 2011-12-18 20:03:44.000000000 +1000 ++++ gcc-4.6-20120120/configure 2012-02-03 17:55:14.885990135 +1000 +@@ -6049,8 +6049,8 @@ + LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${ppllibs}" + + if test "${cloog_org}" = yes ; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.16.1 of CLooG" >&5 +-$as_echo_n "checking for version 0.16.1 of CLooG... " >&6; } ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.17 of CLooG" >&5 ++$as_echo_n "checking for version 0.17 of CLooG... " >&6; } + if test "${gcc_cv_cloog_ct_0_14_0+set}" = set; then : + $as_echo_n "(cached) " >&6 + else +@@ -6061,8 +6061,7 @@ + main () + { + #if CLOOG_VERSION_MAJOR != 0 \ +- || CLOOG_VERSION_MINOR != 16 \ +- || CLOOG_VERSION_REVISION < 1 ++ || CLOOG_VERSION_MINOR != 17 + choke me + #endif + ; diff --git a/testing/gcc/gcc-4.7.1-libada-pic.patch b/testing/gcc/gcc-4.7.1-libada-pic.patch new file mode 100644 index 000000000..591da1e4a --- /dev/null +++ b/testing/gcc/gcc-4.7.1-libada-pic.patch @@ -0,0 +1,12 @@ +diff -Naur gcc-4.7.1-orig/libada/Makefile.in gcc-4.7.1/libada/Makefile.in +--- gcc-4.7.1-orig/libada/Makefile.in 2012-06-13 01:12:37.000000000 +1000 ++++ gcc-4.7.1/libada/Makefile.in 2012-06-16 15:04:32.179911023 +1000 +@@ -54,7 +54,7 @@ + PICFLAG = @PICFLAG@ + GNATLIBFLAGS= -W -Wall -gnatpg -nostdinc + GNATLIBCFLAGS= -g -O2 +-GNATLIBCFLAGS_FOR_C = -W -Wall $(GNATLIBCFLAGS) \ ++GNATLIBCFLAGS_FOR_C = -W -Wall $(GNATLIBCFLAGS) $(PICFLAG) \ + -fexceptions -DIN_RTS @have_getipinfo@ + + host_subdir = @host_subdir@ diff --git a/testing/gcc/gcc-4.7.1-libgo-write.patch b/testing/gcc/gcc-4.7.1-libgo-write.patch new file mode 100644 index 000000000..a7be83fda --- /dev/null +++ b/testing/gcc/gcc-4.7.1-libgo-write.patch @@ -0,0 +1,13 @@ +diff -Naur gcc-4.7.1-orig/libgo/runtime/print.c gcc-4.7.1/libgo/runtime/print.c +--- gcc-4.7.1-orig/libgo/runtime/print.c 2012-05-26 04:22:14.000000000 +1000 ++++ gcc-4.7.1/libgo/runtime/print.c 2012-06-16 15:06:28.553138502 +1000 +@@ -17,7 +17,8 @@ + G* g = runtime_g(); + + if(g == nil || g->writebuf == nil) { +- runtime_write(2, v, n); ++ ssize_t bytesWritten = runtime_write(2, v, n); ++ (void)bytesWritten; + return; + } + diff --git a/testing/gcc/gcc-ada.install b/testing/gcc/gcc-ada.install new file mode 100644 index 000000000..df0553a4f --- /dev/null +++ b/testing/gcc/gcc-ada.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(gnat-style.info gnat_rm.info gnat_ugn.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/testing/gcc/gcc-fortran.install b/testing/gcc/gcc-fortran.install new file mode 100644 index 000000000..b15d89a97 --- /dev/null +++ b/testing/gcc/gcc-fortran.install @@ -0,0 +1,16 @@ +infodir=usr/share/info +file="gfortran.info" + +post_install() { + [ -x usr/bin/install-info ] || return 0 + install-info $infodir/$file.gz $infodir/dir 2> /dev/null +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null +} diff --git a/testing/gcc/gcc-go.install b/testing/gcc/gcc-go.install new file mode 100644 index 000000000..7dc50dee5 --- /dev/null +++ b/testing/gcc/gcc-go.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(gccgo.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/testing/gcc/gcc-libs.install b/testing/gcc/gcc-libs.install new file mode 100644 index 000000000..23553b8f0 --- /dev/null +++ b/testing/gcc/gcc-libs.install @@ -0,0 +1,16 @@ +infodir=usr/share/info +filelist=(libgomp.info libquadmath.info) + +post_upgrade() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/testing/gcc/gcc.install b/testing/gcc/gcc.install new file mode 100644 index 000000000..3407a5e1f --- /dev/null +++ b/testing/gcc/gcc.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(cpp.info cppinternals.info gcc.info gccinstall.info gccint.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/testing/gcc/gcc_pure64.patch b/testing/gcc/gcc_pure64.patch new file mode 100644 index 000000000..a9b09bbcf --- /dev/null +++ b/testing/gcc/gcc_pure64.patch @@ -0,0 +1,26 @@ +diff -Naur gcc-orig/gcc/config/i386/linux64.h gcc/gcc/config/i386/linux64.h +--- gcc-orig/gcc/config/i386/linux64.h 2011-07-08 01:38:34.000000000 +1000 ++++ gcc/gcc/config/i386/linux64.h 2011-07-24 19:48:05.000000000 +1000 +@@ -28,6 +28,6 @@ + #define GNU_USER_LINK_EMULATION64 "elf_x86_64" + #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64" + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" ++#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2" + #define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" +diff -Naur gcc-orig/gcc/config/i386/t-linux64 gcc/gcc/config/i386/t-linux64 +--- gcc-orig/gcc/config/i386/t-linux64 2011-07-08 01:38:34.000000000 +1000 ++++ gcc/gcc/config/i386/t-linux64 2011-07-24 19:49:41.000000000 +1000 +@@ -34,8 +34,8 @@ + comma=, + MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG)) + MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS))) +-MULTILIB_OSDIRNAMES = m64=../lib64 +-MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) ++MULTILIB_OSDIRNAMES = m64=../lib ++MULTILIB_OSDIRNAMES+= m32=../lib32 + MULTILIB_OSDIRNAMES+= mx32=../libx32 + + LIBGCC = stmp-multilib diff --git a/testing/gcc4.6/PKGBUILD b/testing/gcc4.6/PKGBUILD new file mode 100644 index 000000000..9ff9eac31 --- /dev/null +++ b/testing/gcc4.6/PKGBUILD @@ -0,0 +1,95 @@ +# $Id: PKGBUILD 161915 2012-06-16 14:55:05Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> + +pkgname=gcc4.6 +pkgver=4.6.3 +_ver=${pkgver:0:3} +pkgrel=2 +pkgdesc="The GNU Compiler Collection ($_ver; C and C++)" +arch=('i686' 'x86_64') +license=('GPL' 'LGPL' 'FDL' 'custom') +url="http://gcc.gnu.org" +depends=('glibc' 'binutils' 'gmp' 'mpfr' 'libmpc' 'ppl' 'isl' 'cloog') +makedepends=('flex' 'bison') +checkdepends=('dejagnu') +options=('!libtool' '!emptydirs') +source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 + gcc_pure64.patch + gcc-hash-style-both.patch + gcc-4.6.2-cloog-0.17.patch) +md5sums=('773092fe5194353b02bb0110052a972e' + '4030ee1c08dd1e843c0225b772360e76' + '4df25b623799b148a0703eaeec8fdf3f' + '6d9939a2e667376031679ac9f9c49263') + +build() { + cd gcc-$pkgver + + # Do not install libiberty + sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in + + # Do not run fixincludes + sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in + + if [ "${CARCH}" = "x86_64" ]; then + patch -p1 -i ${srcdir}/gcc_pure64.patch + fi + patch -p0 -i ${srcdir}/gcc-hash-style-both.patch + + # compatibility with latest cloog + patch -p1 -i ${srcdir}/gcc-4.6.2-cloog-0.17.patch + + echo ${pkgver} > gcc/BASE-VER + + cd .. + mkdir gcc-build + cd gcc-build + + ../gcc-$pkgver/configure --prefix=/usr \ + --libdir=/usr/lib --libexecdir=/usr/lib \ + --mandir=/usr/share/man --infodir=/usr/share/info \ + --datadir=/usr/share/gcc-$_ver \ + --with-bugurl=https://bugs.archlinux.org/ \ + --enable-languages=c,c++,lto \ + --enable-shared --enable-threads=posix \ + --with-system-zlib --enable-__cxa_atexit \ + --disable-libunwind-exceptions --enable-clocale=gnu \ + --disable-libstdcxx-pch --enable-libstdcxx-time \ + --enable-gnu-unique-object --enable-linker-build-id \ + --with-ppl --enable-cloog-backend=isl \ + --enable-lto --enable-gold --enable-ld=default \ + --enable-plugin --with-plugin-ld=ld.gold \ + --disable-multilib --disable-libssp \ + --enable-checking=release \ + --program-suffix=-$_ver \ + --enable-version-specific-runtime-libs + + make +} + +check() { + # increase stack size to prevent test failures + # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827 + ulimit -s 32768 + + # do not abort on error as some are "expected" + make -C gcc-build -k check || true + gcc-$pkgver/contrib/test_summary +} + +package() +{ + make -j1 -C gcc-build DESTDIR=${pkgdir} install + + # Install Runtime Library Exception + install -Dm644 gcc-$pkgver/COPYING.RUNTIME \ + $pkgdir/usr/share/licenses/$pkgname/RUNTIME.LIBRARY.EXCEPTION + + # deal with conflicting man and info pages + cd $pkgdir + rm usr/share/man/man7/{fsf-funding,gfdl,gpl}.7 + for i in usr/share/info/*; do + mv $i ${i%.info}-$_ver.info + done +} diff --git a/testing/gcc4.6/gcc-4.6.2-cloog-0.17.patch b/testing/gcc4.6/gcc-4.6.2-cloog-0.17.patch new file mode 100644 index 000000000..0503a05ed --- /dev/null +++ b/testing/gcc4.6/gcc-4.6.2-cloog-0.17.patch @@ -0,0 +1,36 @@ +diff -Naur gcc-4.6-20120120-orig/configure gcc-4.6-20120120/configure +--- gcc-4.6-20120120-orig/configure 2011-12-18 20:03:44.000000000 +1000 ++++ gcc-4.6-20120120/configure 2012-02-03 17:55:14.885990135 +1000 +@@ -6049,8 +6049,8 @@ + LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${ppllibs}" + + if test "${cloog_org}" = yes ; then +- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.16.1 of CLooG" >&5 +-$as_echo_n "checking for version 0.16.1 of CLooG... " >&6; } ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.17 of CLooG" >&5 ++$as_echo_n "checking for version 0.17 of CLooG... " >&6; } + if test "${gcc_cv_cloog_ct_0_14_0+set}" = set; then : + $as_echo_n "(cached) " >&6 + else +@@ -6061,8 +6061,7 @@ + main () + { + #if CLOOG_VERSION_MAJOR != 0 \ +- || CLOOG_VERSION_MINOR != 16 \ +- || CLOOG_VERSION_REVISION < 1 ++ || CLOOG_VERSION_MINOR != 17 + choke me + #endif + ; +diff -Naur gcc-4.6-20120120-orig/gcc/graphite-clast-to-gimple.c gcc-4.6-20120120/gcc/graphite-clast-to-gimple.c +--- gcc-4.6-20120120-orig/gcc/graphite-clast-to-gimple.c 2011-03-13 08:05:38.000000000 +1000 ++++ gcc-4.6-20120120/gcc/graphite-clast-to-gimple.c 2012-02-03 17:51:47.943463879 +1000 +@@ -1367,7 +1367,7 @@ + /* Change cloog output language to C. If we do use FORTRAN instead, cloog + will stop e.g. with "ERROR: unbounded loops not allowed in FORTRAN.", if + we pass an incomplete program to cloog. */ +- options->language = LANGUAGE_C; ++ options->language = CLOOG_LANGUAGE_C; + + /* Enable complex equality spreading: removes dummy statements + (assignments) in the generated code which repeats the diff --git a/testing/gcc4.6/gcc-hash-style-both.patch b/testing/gcc4.6/gcc-hash-style-both.patch new file mode 100644 index 000000000..8b59f4535 --- /dev/null +++ b/testing/gcc4.6/gcc-hash-style-both.patch @@ -0,0 +1,122 @@ +--- gcc/config/alpha/linux-elf.h.orig 2010-12-09 23:27:07.000000000 +1000 ++++ gcc/config/alpha/linux-elf.h 2011-03-11 10:01:47.770000457 +1000 +@@ -41,7 +41,7 @@ + + #define ELF_DYNAMIC_LINKER LINUX_DYNAMIC_LINKER + +-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ ++#define LINK_SPEC "-m elf64alpha --hash-style=both %{G*} %{relax:-relax} \ + %{O*:-O3} %{!O*:-O1} \ + %{shared:-shared} \ + %{!shared: \ +--- gcc/config/i386/linux64.h.orig 2011-03-03 08:35:36.000000000 +1000 ++++ gcc/config/i386/linux64.h 2011-03-11 10:01:47.770000457 +1000 +@@ -78,7 +78,7 @@ + %{!mno-sse2avx:%{mavx:-msse2avx}} %{msse2avx:%{!mavx:-msse2avx}}" + + #undef LINK_SPEC +-#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} \ ++#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} --hash-style=both \ + %{shared:-shared} \ + %{!shared: \ + %{!static: \ +--- gcc/config/i386/linux.h.orig 2011-01-15 04:45:06.000000000 +1000 ++++ gcc/config/i386/linux.h 2011-03-11 10:01:47.770000457 +1000 +@@ -104,7 +104,7 @@ + { "dynamic_linker", LINUX_DYNAMIC_LINKER } + + #undef LINK_SPEC +-#define LINK_SPEC "-m %(link_emulation) %{shared:-shared} \ ++#define LINK_SPEC "-m %(link_emulation) --hash-style=both %{shared:-shared} \ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +--- gcc/config/ia64/linux.h.orig 2010-12-09 23:27:07.000000000 +1000 ++++ gcc/config/ia64/linux.h 2011-03-11 10:01:47.770000457 +1000 +@@ -64,7 +64,7 @@ + #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2" + + #undef LINK_SPEC +-#define LINK_SPEC "\ ++#define LINK_SPEC "--hash-style=both \ + %{shared:-shared} \ + %{!shared: \ + %{!static: \ +--- gcc/config/rs6000/linux64.h.orig 2011-02-11 03:30:10.000000000 +1000 ++++ gcc/config/rs6000/linux64.h 2011-03-11 10:03:34.280000457 +1000 +@@ -389,11 +389,11 @@ + CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64) + + +-#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \ ++#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ + -dynamic-linker " LINUX_DYNAMIC_LINKER32 "}}" + +-#define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \ ++#define LINK_OS_LINUX_SPEC64 "-m elf64ppc --hash-style=both %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ + -dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}" + +--- gcc/config/rs6000/sysv4.h.orig 2011-01-28 04:36:03.000000000 +1000 ++++ gcc/config/rs6000/sysv4.h 2011-03-11 10:01:47.773333792 +1000 +@@ -830,7 +830,7 @@ + #define LINUX_DYNAMIC_LINKER \ + CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) + +-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \ ++#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ + -dynamic-linker " LINUX_DYNAMIC_LINKER "}}" + +--- gcc/config/s390/linux.h.orig 2010-12-09 23:27:07.000000000 +1000 ++++ gcc/config/s390/linux.h 2011-03-11 10:01:47.770000457 +1000 +@@ -77,7 +77,7 @@ + + #undef LINK_SPEC + #define LINK_SPEC \ +- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \ ++ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --hash-style=both \ + %{shared:-shared} \ + %{!shared: \ + %{static:-static} \ +--- gcc/config/sparc/linux64.h.orig 2011-02-17 23:57:21.000000000 +1000 ++++ gcc/config/sparc/linux64.h 2011-03-11 10:01:47.770000457 +1000 +@@ -113,7 +113,7 @@ + { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ + { "link_arch", LINK_ARCH_SPEC }, + +-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,%R/usr/lib %{shared:-shared} \ ++#define LINK_ARCH32_SPEC "-m elf32_sparc --hash-style=both -Y P,%R/usr/lib %{shared:-shared} \ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +@@ -121,7 +121,7 @@ + %{static:-static}} \ + " + +-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \ ++#define LINK_ARCH64_SPEC "-m elf64_sparc --hash-style=both -Y P,%R/usr/lib64 %{shared:-shared} \ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +@@ -193,7 +193,7 @@ + #else /* !SPARC_BI_ARCH */ + + #undef LINK_SPEC +-#define LINK_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \ ++#define LINK_SPEC "-m elf64_sparc --hash-style=both -Y P,%R/usr/lib64 %{shared:-shared} \ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +--- gcc/config/sparc/linux.h.orig 2011-01-27 06:30:12.000000000 +1000 ++++ gcc/config/sparc/linux.h 2011-03-11 10:01:47.770000457 +1000 +@@ -74,7 +74,7 @@ + #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" + + #undef LINK_SPEC +-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ ++#define LINK_SPEC "-m elf32_sparc --hash-style=both -Y P,/usr/lib %{shared:-shared} \ + %{!mno-relax:%{!r:-relax}} \ + %{!shared: \ + %{!static: \ diff --git a/testing/gcc4.6/gcc_pure64.patch b/testing/gcc4.6/gcc_pure64.patch new file mode 100644 index 000000000..8c0baf8e2 --- /dev/null +++ b/testing/gcc4.6/gcc_pure64.patch @@ -0,0 +1,26 @@ +diff -Naur gcc-4.2.0.orig/gcc/config/i386/linux64.h gcc-4.2.0/gcc/config/i386/linux64.h +--- gcc-4.2.0.orig/gcc/config/i386/linux64.h 2007-05-16 19:21:19.000000000 -0400 ++++ gcc-4.2.0/gcc/config/i386/linux64.h 2007-05-18 17:04:05.000000000 -0400 +@@ -49,8 +49,8 @@ + When the -shared link option is used a final link is not being + done. */ + +-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" +-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" ++#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld-linux.so.2" ++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2" + + #undef LINK_SPEC + #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \ +diff -Naur gcc-4.2.0.orig/gcc/config/i386/t-linux64 gcc-4.2.0/gcc/config/i386/t-linux64 +--- gcc-4.2.0.orig/gcc/config/i386/t-linux64 2007-05-16 19:21:19.000000000 -0400 ++++ gcc-4.2.0/gcc/config/i386/t-linux64 2007-05-18 17:04:36.000000000 -0400 +@@ -6,7 +6,7 @@ + + MULTILIB_OPTIONS = m64/m32 + MULTILIB_DIRNAMES = 64 32 +-MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) ++MULTILIB_OSDIRNAMES = ../lib ../lib32 + + LIBGCC = stmp-multilib + INSTALL_LIBGCC = install-multilib diff --git a/testing/glibc/PKGBUILD b/testing/glibc/PKGBUILD index bbcbf2f19..1e82d8ce2 100644 --- a/testing/glibc/PKGBUILD +++ b/testing/glibc/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 161273 2012-06-08 12:53:50Z allan $ +# $Id: PKGBUILD 161927 2012-06-16 17:14:28Z dreisner $ # Maintainer: Allan McRae <allan@archlinux.org> # toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc @@ -6,7 +6,7 @@ pkgname=glibc pkgver=2.15 -pkgrel=11 +pkgrel=12 _glibcdate=20111227 pkgdesc="GNU C Library" arch=('i686' 'x86_64') @@ -50,7 +50,9 @@ source=(ftp://ftp.archlinux.org/other/glibc/${pkgname}-${pkgver}_${_glibcdate}.t glibc-2.15-nearbyintf-rounding.patch glibc-2.15-confstr-local-buffer-extent.patch glibc-2.15-testsuite.patch - nscd + nscd.rcd + nscd.service + nscd.tmpfiles locale.gen.txt locale-gen) md5sums=('6ffdf5832192b92f98bdd125317c0dfc' @@ -83,10 +85,13 @@ md5sums=('6ffdf5832192b92f98bdd125317c0dfc' '7ff501435078b1a2622124fbeaafc921' '8d1023a51e0932681b46440d5f8551ee' '6962c3fa29306bfbf6f0d22b19cb825d' - 'b587ee3a70c9b3713099295609afde49' + '589d79041aa767a5179eaa4e2737dd3f' + 'ad8a9af15ab7eeaa23dc7ee85024af9f' + 'bccbe5619e75cf1d97312ec3681c605c' '07ac979b6ab5eeb778d55f041529d623' '476e9113489f93b348b21e144b6a8fcf') + mksource() { git clone git://sourceware.org/git/glibc.git pushd glibc @@ -269,15 +274,17 @@ package() { rm -f ${pkgdir}/etc/ld.so.{cache,conf} - install -dm755 ${pkgdir}/etc/rc.d - install -dm755 ${pkgdir}/usr/sbin - install -dm755 ${pkgdir}/usr/lib/locale + install -dm755 ${pkgdir}/{etc/rc.d,usr/{sbin,lib/{,locale,systemd/system,tmpfiles.d}}} + install -m644 ${srcdir}/glibc/nscd/nscd.conf ${pkgdir}/etc/nscd.conf - install -m755 ${srcdir}/nscd ${pkgdir}/etc/rc.d/nscd - install -m755 ${srcdir}/locale-gen ${pkgdir}/usr/sbin + sed -i -e 's/^\tserver-user/#\tserver-user/' ${pkgdir}/etc/nscd.conf + install -m755 ${srcdir}/nscd.rcd ${pkgdir}/etc/rc.d/nscd + install -m644 ${srcdir}/nscd.service ${pkgdir}/usr/lib/systemd/system + install -m644 ${srcdir}/nscd.tmpfiles ${pkgdir}/usr/lib/tmpfiles.d/nscd.conf + install -m644 ${srcdir}/glibc/posix/gai.conf ${pkgdir}/etc/gai.conf - sed -i -e 's/^\tserver-user/#\tserver-user/' ${pkgdir}/etc/nscd.conf + install -m755 ${srcdir}/locale-gen ${pkgdir}/usr/sbin # create /etc/locale.gen install -m644 ${srcdir}/locale.gen.txt ${pkgdir}/etc/locale.gen diff --git a/testing/glibc/nscd.rcd b/testing/glibc/nscd.rcd new file mode 100755 index 000000000..4b48ab002 --- /dev/null +++ b/testing/glibc/nscd.rcd @@ -0,0 +1,65 @@ +#!/bin/bash + +daemon_name="nscd" + +. /etc/rc.conf +. /etc/rc.d/functions + + +get_pid() { + pidof -o %PPID $daemon_name +} + +case "$1" in + start) + stat_busy "Starting $daemon_name daemon" + PID=$(get_pid) + if [[ -z $PID ]]; then + rm -f /run/$daemon_name.pid + mkdir -p /run/nscd /var/db/nscd + rm -f /run/nscd/* /var/db/nscd/* + $daemon_name + if (( $? > 0 )); then + stat_fail + exit 1 + else + echo $(get_pid) > /var/run/$daemon_name.pid + add_daemon $daemon_name + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping $daemon_name daemon" + PID=$(get_pid) + [[ -n $PID ]] && nscd --shutdown &> /dev/null + if (( $? > 0 )); then + stat_fail + exit 1 + else + rm -f /run/$daemon_name.pid &> /dev/null + rm_daemon $daemon_name + stat_done + fi + ;; + + restart) + $0 stop + sleep 3 + $0 start + ;; + + status) + stat_busy "Checking $daemon_name status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|restart|status}" +esac + +exit 0 diff --git a/testing/glibc/nscd.service b/testing/glibc/nscd.service new file mode 100644 index 000000000..de5315e9b --- /dev/null +++ b/testing/glibc/nscd.service @@ -0,0 +1,17 @@ +[Unit] +Description=Name Service Cache Daemon +After=syslog.target + +[Service] +Type=forking +ExecStart=/usr/sbin/nscd +ExecStop=/usr/sbin/nscd --shutdown +ExecReload=/usr/sbin/nscd -i passwd +ExecReload=/usr/sbin/nscd -i group +ExecReload=/usr/sbin/nscd -i hosts +ExecReload=/usr/sbin/nscd -i service +Restart=always +PIDFile=/run/nscd/nscd.pid + +[Install] +WantedBy=multi-user.target diff --git a/testing/glibc/nscd.tmpfiles b/testing/glibc/nscd.tmpfiles new file mode 100644 index 000000000..8a24a785e --- /dev/null +++ b/testing/glibc/nscd.tmpfiles @@ -0,0 +1 @@ +d /run/nscd 0755 root root diff --git a/testing/gpsd/PKGBUILD b/testing/gpsd/PKGBUILD new file mode 100644 index 000000000..ba06a45e9 --- /dev/null +++ b/testing/gpsd/PKGBUILD @@ -0,0 +1,83 @@ +# $Id: PKGBUILD 161928 2012-06-16 17:14:39Z dreisner $ +# Maintainer: Tom Gundersen <teg@jklm.no> +# Contributor: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Giacomo Rizzo <alt@free-os.it> + +pkgname=gpsd +pkgver=3.6 +pkgrel=1 +pkgdesc="GPS daemon and library to support USB/serial GPS devices" +arch=('i686' 'x86_64') +url="http://catb.org/gpsd/" +license=('BSD') +depends=('python2' 'libusb' 'bluez' 'desktop-file-utils') +optdepends=('php: generate a PHP status page for your GPS' + 'php-gd: image support for the PHP status page' + 'pygtk: GUI frontends') +makedepends=('scons' 'docbook-xsl' 'chrpath') +backup=('etc/conf.d/gpsd') +options=('!libtool') +install="${pkgname}.install" +source=("http://download.savannah.gnu.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig} + 'gpsd' 'gpsd.conf.d') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # fix python 2.7 path + sed -i -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \ + -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \ + $(find . -name '*.py') + sed -i 's|/usr/bin/env python|/usr/bin/env python2|' gegps \ + gpscat gpsfake gpsprof xgps xgpsspeed + + scons prefix=/usr \ + systemd=yes \ + libQgpsmm=no \ + PYTHONPATH=/usr/bin/python2 + scons build +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # Fix man pages path (FS#21715) + sed -i 's|.so gps.1|.so man1/gps.1|' cgps.1 lcdgps.1 xgps.1 xgpsspeed.1 + + export DESTDIR="${pkgdir}" + scons install + + install -D -m644 "${srcdir}/gpsd.conf.d" "${pkgdir}/etc/conf.d/gpsd" + + sed -i 's|/lib/udev/gpsd|/usr/lib/udev/gpsd|' gpsd.rules + + install -D -m644 "gpsd.rules" "${pkgdir}/usr/lib/udev/rules.d/99-gpsd-usb.rules" + + sed -i 's|/etc/default/gpsd|/etc/conf.d/gpsd|' gpsd.hotplug + install -D -m755 gpsd.hotplug "${pkgdir}/usr/lib/udev/gpsd.hotplug" + + # GPSD needs RPATH + chrpath -r /usr/lib/ "${pkgdir}"/usr/lib/libgps{,d}.so.20.0.0 + chrpath -r /usr/lib/ "${pkgdir}"/usr/bin/{gpsdecode,gpsctl,gpspipe,gpxlogger,lcdgps} + chrpath -r /usr/lib/ "${pkgdir}"/usr/sbin/{gpsd,gpsdctl} + chrpath -r /usr/lib/ "${pkgdir}"/usr/lib/python2.7/site-packages/gps/{clienthelpers,packet}.so + + install -D -m644 packaging/X11/xgps.desktop \ + "${pkgdir}/usr/share/applications/xgps.desktop" + install -D -m644 packaging/X11/xgpsspeed.desktop \ + "${pkgdir}/usr/share/applications/xgpsspeed.desktop" + install -D -m644 packaging/X11/gpsd-logo.png \ + "${pkgdir}/usr/share/gpsd/gpsd-logo.png" + + install -D -m755 "${srcdir}/gpsd" "${pkgdir}/etc/rc.d/gpsd" + + install -D -m644 systemd/gpsd.service "${pkgdir}/usr/lib/systemd/system/gpsd.service" + install -D -m644 systemd/gpsd.socket "${pkgdir}/usr/lib/systemd/system/gpsd.socket" + + install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} +md5sums=('064a5ad75593f8c3ea3fe85010647832' + '6473da46f6bad52d38f88670f84cd92b' + '6602d04bb037bc500424f00f24f58837' + '3e963df3f9f7ef3572ecc648ae829315') diff --git a/testing/gpsd/gpsd b/testing/gpsd/gpsd new file mode 100755 index 000000000..2ca7efe26 --- /dev/null +++ b/testing/gpsd/gpsd @@ -0,0 +1,43 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +[ -f /etc/conf.d/gpsd ] && . /etc/conf.d/gpsd + +NAME=gpsd +DAEMON=/usr/sbin/gpsd +PIDFILE=/run/gpsd.pid +PID=$(cat $PIDFILE 2>/dev/null) + +case "$1" in + start) + stat_busy "Starting gpsd" + [ -z "$PID" ] && "$DAEMON" -P $PIDFILE -F /run/gpsd.sock ${GPSD_OPTIONS} ${DEVICES} + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon $NAME + stat_done + fi + ;; + stop) + stat_busy "Stopping $NAME" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm -f $PIDFILE &>/dev/null + rm_daemon $NAME + stat_done + fi + ;; + + restart) + $0 stop + sleep 2 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/gpsd/gpsd.conf.d b/testing/gpsd/gpsd.conf.d new file mode 100644 index 000000000..9fef72cb9 --- /dev/null +++ b/testing/gpsd/gpsd.conf.d @@ -0,0 +1,5 @@ +# Default settings for gpsd. +START_DAEMON="true" +GPSD_OPTIONS="" +DEVICES="" +USBAUTO="true" diff --git a/testing/gpsd/gpsd.install b/testing/gpsd/gpsd.install new file mode 100644 index 000000000..8f20cf484 --- /dev/null +++ b/testing/gpsd/gpsd.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + update-desktop-database -q +} + +post_remove() { + update-desktop-database -q +} diff --git a/testing/isl/PKGBUILD b/testing/isl/PKGBUILD new file mode 100644 index 000000000..5eeac9eec --- /dev/null +++ b/testing/isl/PKGBUILD @@ -0,0 +1,32 @@ +# $Id: PKGBUILD 161919 2012-06-16 14:55:37Z heftig $ +# Maintainer: Allan McRae <allan@archlinux.org> + +pkgname=isl +pkgver=0.10 +pkgrel=1 +pkgdesc="Library for manipulating sets and relations of integer points bounded by linear constraints" +arch=('i686' 'x86_64') +url="http://www.kotnet.org/~skimo/isl/" +license=('LGPL2.1') +options=('!libtool') +source=(http://www.kotnet.org/~skimo/isl/$pkgname-$pkgver.tar.bz2) +md5sums=('c1ece653891bb2a5f55ca25e3f4e8f35') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr + make +} + +check() { + cd "$srcdir/$pkgname-$pkgver" + make check +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make -j1 DESTDIR="$pkgdir/" install + + install -dm755 $pkgdir/usr/share/gdb/auto-load/usr/lib/ + mv $pkgdir/{,/usr/share/gdb/auto-load/}usr/lib/libisl.so.10.0.0-gdb.py +} diff --git a/testing/krb5/PKGBUILD b/testing/krb5/PKGBUILD new file mode 100644 index 000000000..c8c15c16f --- /dev/null +++ b/testing/krb5/PKGBUILD @@ -0,0 +1,92 @@ +# $Id: PKGBUILD 161930 2012-06-16 17:15:04Z dreisner $ +# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> + +pkgname=krb5 +pkgver=1.10.2 +pkgrel=2 +pkgdesc="The Kerberos network authentication system" +arch=('i686' 'x86_64') +url="http://web.mit.edu/kerberos/" +license=('custom') +depends=('e2fsprogs' 'libldap' 'keyutils') +makedepends=('perl') +backup=('etc/krb5.conf' 'var/lib/krb5kdc/kdc.conf') +source=(http://web.mit.edu/kerberos/dist/${pkgname}/1.10/${pkgname}-${pkgver}-signed.tar + krb5-1.10.1-gcc47.patch + krb5-kadmind + krb5-kadmind.service + krb5-kdc + krb5-kdc.service + krb5-kpropd + krb5-kpropd.service + krb5-kpropd@.service + krb5-kpropd.socket) +sha1sums=('8b6e2c5bf0c65aacd368b3698add7888f2a7332d' + '78b759d566b1fdefd9bbcd06df14f07f12effe96' + '2aa229369079ed1bbb201a1ef72c47bf143f4dbe' + 'a2a01e7077d9e89cda3457ea0e216debb3dc353c' + '77d2312ecd8bf12a6e72cc8fd871a8ac93b23393' + 'f5e4fa073e11b0fcb4e3098a5d58a4f791ec841e' + '7f402078fa65bb9ff1beb6cbbbb017450df78560' + '614401dd4ac18e310153240bb26eb32ff1e8cf5b' + '023a8164f8ee7066ac814486a68bc605e79f6101' + 'f3677d30dbbd7106c581379c2c6ebb1bf7738912') +options=('!emptydirs') + +build() { + tar zxvf ${pkgname}-${pkgver}.tar.gz + cd "${srcdir}/${pkgname}-${pkgver}/src" + + # With gcc47 : deltat.c:1694:12: error: 'yylval' may be used uninitialized + # in this function [-Werror=maybe-uninitialized] + # As this is generated code, just ignore the complaint. + patch -Np2 -i ../../krb5-1.10.1-gcc47.patch + rm lib/krb5/krb/deltat.c + + # FS#25384 + sed -i "/KRB5ROOT=/s/\/local//" util/ac_check_krb5.m4 + + export CFLAGS+=" -fPIC -fno-strict-aliasing -fstack-protector-all" + export CPPFLAGS+=" -I/usr/include/et" + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --localstatedir=/var/lib \ + --enable-shared \ + --with-system-et \ + --with-system-ss \ + --disable-rpath \ + --without-tcl \ + --enable-dns-for-realm \ + --with-ldap \ + --without-system-verto + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}/src" + make DESTDIR="${pkgdir}" EXAMPLEDIR=/usr/share/doc/${pkgname}/examples install + + # Fix FS#29889 + install -m 644 plugins/kdb/ldap/libkdb_ldap/kerberos.{ldif,schema} "${pkgdir}"/usr/share/doc/${pkgname}/examples + + # Sample KDC config file + install -dm 755 "${pkgdir}"/var/lib/krb5kdc + install -pm 644 config-files/kdc.conf "${pkgdir}"/var/lib/krb5kdc/kdc.conf + + # Default configuration file + install -dm 755 "${pkgdir}"/etc + install -pm 644 config-files/krb5.conf "${pkgdir}"/etc/krb5.conf + + install -dm 755 "${pkgdir}"/etc/rc.d + install -m 755 ../../krb5-{kdc,kadmind,kpropd} "${pkgdir}"/etc/rc.d + + install -dm 755 "${pkgdir}"/usr/share/aclocal + install -m 644 util/ac_check_krb5.m4 "${pkgdir}"/usr/share/aclocal + + install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/NOTICE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE + + # systemd stuff + install -dm 755 "${pkgdir}"/usr/lib/systemd/system + install -m 644 ../../krb5-{kadmind.service,kdc.service,kpropd.service,kpropd@.service,kpropd.socket} \ + "${pkgdir}"/usr/lib/systemd/system +} diff --git a/testing/krb5/krb5-1.10.1-gcc47.patch b/testing/krb5/krb5-1.10.1-gcc47.patch new file mode 100644 index 000000000..ffd01c2a3 --- /dev/null +++ b/testing/krb5/krb5-1.10.1-gcc47.patch @@ -0,0 +1,11 @@ +diff -Naur krb5-1.10.1.ori/src/lib/krb5/krb/x-deltat.y krb5-1.10.1/src/lib/krb5/krb/x-deltat.y +--- krb5-1.10.1.ori/src/lib/krb5/krb/x-deltat.y 2011-09-06 07:34:32.000000000 -0400 ++++ krb5-1.10.1/src/lib/krb5/krb/x-deltat.y 2012-03-24 13:15:11.543551318 -0400 +@@ -44,6 +44,7 @@ + #ifdef __GNUC__ + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wuninitialized" ++#pragma GCC diagnostic ignored "-Wmaybe-uninitialized" + #endif + + #include <ctype.h> diff --git a/testing/krb5/krb5-kadmind b/testing/krb5/krb5-kadmind new file mode 100644 index 000000000..04df0dcff --- /dev/null +++ b/testing/krb5/krb5-kadmind @@ -0,0 +1,40 @@ +#!/bin/bash + +# general config +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/kadmind` +case "$1" in + start) + stat_busy "Starting Kerberos Admin Daemon" + if [ -z "$PID" ]; then + /usr/sbin/kadmind + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon krb5-kadmind + stat_done + fi + ;; + stop) + stat_busy "Stopping Kerberos Admin Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon krb5-kadmind + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" + ;; +esac +exit 0 diff --git a/testing/krb5/krb5-kadmind.service b/testing/krb5/krb5-kadmind.service new file mode 100644 index 000000000..f3836c898 --- /dev/null +++ b/testing/krb5/krb5-kadmind.service @@ -0,0 +1,8 @@ +[Unit] +Description=Kerberos 5 administration server + +[Service] +ExecStart=/usr/sbin/kadmind -nofork + +[Install] +WantedBy=multi-user.target diff --git a/testing/krb5/krb5-kdc b/testing/krb5/krb5-kdc new file mode 100644 index 000000000..05a03411e --- /dev/null +++ b/testing/krb5/krb5-kdc @@ -0,0 +1,40 @@ +#!/bin/bash + +# general config +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/krb5kdc` +case "$1" in + start) + stat_busy "Starting Kerberos Authentication" + if [ -z "$PID" ]; then + /usr/sbin/krb5kdc + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon krb5-kdc + stat_done + fi + ;; + stop) + stat_busy "Stopping Kerberos Authentication" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon krb5-kdc + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" + ;; +esac +exit 0 diff --git a/testing/krb5/krb5-kdc.service b/testing/krb5/krb5-kdc.service new file mode 100644 index 000000000..6ec93bb72 --- /dev/null +++ b/testing/krb5/krb5-kdc.service @@ -0,0 +1,9 @@ +[Unit] +Description=Kerberos 5 KDC + +[Service] +ExecStart=/usr/sbin/krb5kdc -n +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/testing/krb5/krb5-kpropd b/testing/krb5/krb5-kpropd new file mode 100644 index 000000000..a0077d68e --- /dev/null +++ b/testing/krb5/krb5-kpropd @@ -0,0 +1,40 @@ +#!/bin/bash + +# general config +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /usr/sbin/kpropd` +case "$1" in + start) + stat_busy "Starting Kerberos Database Propagation Daemon" + if [ -z "$PID" ]; then + /usr/sbin/kpropd -S + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon kpropd + stat_done + fi + ;; + stop) + stat_busy "Stopping Kerberos Database Propagation Daemon" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon kpropd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" + ;; +esac +exit 0 diff --git a/testing/krb5/krb5-kpropd.service b/testing/krb5/krb5-kpropd.service new file mode 100644 index 000000000..a7c5b579d --- /dev/null +++ b/testing/krb5/krb5-kpropd.service @@ -0,0 +1,8 @@ +[Unit] +Description=Kerberos 5 propagation server + +[Service] +ExecStart=/usr/sbin/kpropd -S + +[Install] +WantedBy=multi-user.target diff --git a/testing/krb5/krb5-kpropd.socket b/testing/krb5/krb5-kpropd.socket new file mode 100644 index 000000000..4389290c0 --- /dev/null +++ b/testing/krb5/krb5-kpropd.socket @@ -0,0 +1,9 @@ +[Unit] +Description=Kerberos 5 propagation server + +[Socket] +ListenStream=754 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/testing/libtool/PKGBUILD b/testing/libtool/PKGBUILD new file mode 100644 index 000000000..51384d997 --- /dev/null +++ b/testing/libtool/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 161917 2012-06-16 14:55:31Z heftig $ +# Maintainer: Allan McRae <allan@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +# NOTE: requires rebuilt with each new gcc version + +pkgname=('libtool' 'libltdl') +pkgver=2.4.2 +pkgrel=6 +pkgdesc="A generic library support script" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/libtool" +license=('GPL') +options=('!libtool') +source=(ftp://ftp.gnu.org/pub/gnu/libtool/${pkgname}-${pkgver}.tar.xz{,.sig}) +md5sums=('2ec8997e0c07249eb4cbd072417d70fe' + '1e6ba57420c82c663c85e745d11c7eed') + +build() { + cd ${srcdir}/${pkgbase}-${pkgver} + ./configure --prefix=/usr + make +} + +check() { + cd ${srcdir}/${pkgbase}-${pkgver} + make check +} + +package_libtool() { + depends=('sh' "libltdl=$pkgver" 'tar' 'gcc=4.7.1') + groups=('base-devel') + install=libtool.install + + cd ${srcdir}/${pkgbase}-${pkgver} + + make DESTDIR=${pkgdir} install-binSCRIPTS install-man install-info \ + install-data-local + rm -rf ${pkgdir}/usr/share/libtool/libltdl/ +} + +package_libltdl() { + pkgdesc="A system independent dlopen wrapper for GNU libtool" + + cd ${srcdir}/${pkgbase}-${pkgver} + make DESTDIR=${pkgdir} install-libLTLIBRARIES install-includeHEADERS \ + install-ltdlincludeHEADERS install-data-local + rm -rf ${pkgdir}/usr/share/{aclocal,libtool/config} +} diff --git a/testing/libtool/libtool.install b/testing/libtool/libtool.install new file mode 100644 index 000000000..73cf56422 --- /dev/null +++ b/testing/libtool/libtool.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(libtool.info libtool.info-1 libtool.info-2) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + done +} diff --git a/testing/lm_sensors/PKGBUILD b/testing/lm_sensors/PKGBUILD new file mode 100644 index 000000000..85f29edca --- /dev/null +++ b/testing/lm_sensors/PKGBUILD @@ -0,0 +1,55 @@ +# $Id: PKGBUILD 161931 2012-06-16 17:15:28Z dreisner $ +# Maintainer: Eric Bélanger <eric@archlinux.org> + +pkgname=lm_sensors +pkgver=3.3.2 +pkgrel=3 +pkgdesc="Collection of user space tools for general SMBus access and hardware monitoring" +arch=('i686' 'x86_64') +url="http://www.lm-sensors.org/" +license=('GPL' 'LGPL') +depends=('perl' 'sysfsutils') +makedepends=('rrdtool') +optdepends=('rrdtool: for logging with sensord') +backup=('etc/sensors3.conf' 'etc/conf.d/healthd' 'etc/conf.d/sensord') +options=('!emptydirs') +source=(http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${pkgver}.tar.bz2{,.sig} \ + sensors.rc fancontrol.rc healthd healthd.conf healthd.rc sensord.conf \ + sensord.rc fancontrol.service daemonarg.patch linux_3.0.patch) +sha1sums=('5d0f026ad763124e8c2ad733b6e1ad5e6473993d' + 'a486d9fb6c5b0aff4520f6312106c67f5163f1cf' + 'b2e664b9b87759991f02d0a1e8cac5e95098c0a5' + 'a068ac0a3115a6191a487e11422506baa922b40a' + '78b5cd36c3cb8e98b972cdd8c4a12687d79a79a8' + '6c4e8a2d89dd2fd3ca2f0f4f3b1230111e01b0fc' + 'e662881f5d3f3f35a1bc97ba45d2c471dd28c37f' + 'de8d4d65406815c389f8a04e2a8508a1ae6749c8' + '72a60251d1d55a67307dab4105d9f3f01a080af4' + '7a4a4d1442aeeba0ba8aefb742a3ef187b593f4c' + '34241388c4001bfb6e49b7e10da1217e29a258d6' + '5662828085cdd981f0dc7cf8f79d3d6e2b72f50c') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + sed -i -e 's|/etc/sysconfig|/etc/conf.d|' \ + -e 's|/etc/init.d/lm_sensors|/etc/rc.d/sensors|' prog/{detect/sensors-detect,init/lm_sensors.service} + sed -i 's@\(/bin/systemctl\|/lib/systemd/system\)@/usr\1@g' prog/detect/sensors-detect + patch -p1 < ../daemonarg.patch + patch -p0 < ../linux_3.0.patch + make PREFIX=/usr +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make PROG_EXTRA=sensord BUILD_STATIC_LIB=0 \ + PREFIX=/usr MANDIR=/usr/share/man DESTDIR="${pkgdir}" install + install -D -m644 prog/init/lm_sensors.service "${pkgdir}/usr/lib/systemd/system/lm_sensors.service" + install -D -m755 "${srcdir}/sensors.rc" "${pkgdir}/etc/rc.d/sensors" + install -D -m755 "${srcdir}/fancontrol.rc" "${pkgdir}/etc/rc.d/fancontrol" + install -D -m755 "${srcdir}/healthd" "${pkgdir}/usr/sbin/healthd" + install -D -m755 "${srcdir}/healthd.rc" "${pkgdir}/etc/rc.d/healthd" + install -D -m644 "${srcdir}/healthd.conf" "${pkgdir}/etc/conf.d/healthd" + install -D -m755 "${srcdir}/sensord.rc" "${pkgdir}/etc/rc.d/sensord" + install -D -m644 "${srcdir}/sensord.conf" "${pkgdir}/etc/conf.d/sensord" + install -D -m644 "${srcdir}/fancontrol.service" "${pkgdir}/usr/lib/systemd/system/fancontrol.service" +} diff --git a/testing/lm_sensors/daemonarg.patch b/testing/lm_sensors/daemonarg.patch new file mode 100644 index 000000000..4b80cef19 --- /dev/null +++ b/testing/lm_sensors/daemonarg.patch @@ -0,0 +1,50 @@ +diff -ru lm_sensors-3.1.2-1/prog/pwm/fancontrol lm_sensors-3.1.2-1_pyropeter/usr/sbin/fancontrol +--- lm_sensors-3.1.2-1/prog/pwm/fancontrol 2010-02-03 03:45:15.000000000 +0100 ++++ lm_sensors-3.1.2-1_pyropeter/prog/pwm/fancontrol 2010-03-07 01:37:09.000000000 +0100 +@@ -5,7 +5,9 @@ + # + # Version 0.70 + # +-# Usage: fancontrol [CONFIGFILE] ++# Usage: fancontrol [-D] [CONFIGFILE] ++# ++# (-D causes fancontrol to 'fork' to the background after some tests) + # + # Dependencies: + # bash, egrep, sed, cut, sleep, readlink, lm_sensors :) +@@ -43,6 +45,12 @@ + #DEBUG=1 + MAX=255 + ++DAEMON=0 ++if [ "$1" = "-D" ]; then ++ DAEMON=1 ++ shift ++fi ++ + declare -i pwmval + + function LoadConfig { +@@ -303,7 +311,6 @@ + echo "File $PIDFILE exists, is fancontrol already running?" + exit 1 + fi +-echo $$ > "$PIDFILE" + + # $1 = pwm file name + function pwmdisable() +@@ -475,6 +482,14 @@ + let fcvcount=$fcvcount+1 + done + ++if [ "$DAEMON" -gt 0 ]; then ++ echo "Forking..." ++ $0 $* &> /dev/null & ++ exit 0 ++fi ++ ++echo $$ > "$PIDFILE" ++ + echo 'Starting automatic fan control...' + + # main loop calling the main function at specified intervals diff --git a/testing/lm_sensors/fancontrol.rc b/testing/lm_sensors/fancontrol.rc new file mode 100644 index 000000000..8e98d06f2 --- /dev/null +++ b/testing/lm_sensors/fancontrol.rc @@ -0,0 +1,35 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=$(pidof -o %PPID -x /usr/sbin/fancontrol) +case "$1" in + start) + stat_busy "Starting fancontrol" + [ -z "$PID" ] && /usr/sbin/fancontrol -D &>/dev/null + if [ $? -gt 0 -o -n "$PID" ]; then + stat_fail + else + add_daemon fancontrol + stat_done + fi + ;; + stop) + stat_busy "Stopping fancontrol" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon fancontrol + stat_done + fi + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/lm_sensors/fancontrol.service b/testing/lm_sensors/fancontrol.service new file mode 100644 index 000000000..c86b498f8 --- /dev/null +++ b/testing/lm_sensors/fancontrol.service @@ -0,0 +1,9 @@ +[Unit] +Description=Fan control daemon + +[Service] +PIDFile=/var/run/fancontrol.pid +ExecStart=/usr/sbin/fancontrol + +[Install] +WantedBy=multi-user.target diff --git a/testing/lm_sensors/healthd b/testing/lm_sensors/healthd new file mode 100644 index 000000000..0315dd788 --- /dev/null +++ b/testing/lm_sensors/healthd @@ -0,0 +1,46 @@ +#!/bin/bash + +# +# /usr/sbin/healthd +# + +. /etc/conf.d/healthd + +cmd="${ALARM_CMD}" +addr="${ADMIN_EMAIL}" +slp="${ALARM_SLEEP}" +sensors="/usr/bin/sensors" + + +while [ $# -gt 0 ] ; do + case "${1}" in + -c ) cmd="${2}" ; shift 2 ;; + -m ) addr="${2}" ; shift 2 ;; + -s ) slp="${2}" ; shift 2 ;; + * ) shift 1 ;; + esac +done + +[ -n "${cmd}" ] && [ -n "$( which -- "${cmd%% *}" )" ] || \ + [ -n "${addr}" ] || exit 1 + +[ "${slp}" -ge 2 ] || slp=600 + +while true ; do + sleep 15 + message="$( $sensors )" + case "$message" in + '' ) message='Could not get any sensor values !' ;; + *ALARM* ) : ;; + * ) message='' ;; + esac + if [ -n "$message" ]; then + if [ -n "${addr}" ]; then + echo "$message" | mail -s \ + "Sensors ALARM detected at host: $( hostname )" \ + "${addr}" + fi + [ -z "${cmd}" ] || ${cmd} & + sleep ${slp} + fi +done & diff --git a/testing/lm_sensors/healthd.conf b/testing/lm_sensors/healthd.conf new file mode 100644 index 000000000..a8b2c3fa3 --- /dev/null +++ b/testing/lm_sensors/healthd.conf @@ -0,0 +1,17 @@ +# +# /etc/conf.d/healthd +# + +# reset any pending alarms on startup +ALARM_RESET="yes" + +# where to sent mails on alarm +ADMIN_EMAIL="root" + +# Seconds to sleep when alarm detected before checking again +# If you want to fill up your mail inbox set this to 2. ;-) +ALARM_SLEEP=600 + +# command to run in background on each alarm +# N.B.: If you choose to use the beep command, you'll need to install it: pacman -S beep +ALARM_CMD="beep -f 800 -l 500 -d 500 -r 600" diff --git a/testing/lm_sensors/healthd.rc b/testing/lm_sensors/healthd.rc new file mode 100644 index 000000000..7bb79519f --- /dev/null +++ b/testing/lm_sensors/healthd.rc @@ -0,0 +1,52 @@ +#!/bin/bash + +# +# /etc/rc.d/healthd +# + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/healthd + +maybe_alarm_reset() { + case "${ALARM_RESET}" in + yes) /usr/bin/sensors > /dev/null + ;; + no) true + ;; + *) false + esac + return $? +} + +PID=$(pidof -x -o %PPID /usr/sbin/healthd) +case "${1}" in + start) + stat_busy "Starting Health Daemon" + [ -z "${PID}" ] && maybe_alarm_reset && /usr/sbin/healthd &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + echo "${PID}" > /var/run/healthd.pid + add_daemon healthd + stat_done + fi + ;; + stop) + stat_busy "Stopping Health Daemon" + [ ! -z "${PID}" ] && kill ${PID} &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon healthd + stat_done + fi + ;; + restart) + $0 stop + sleep 2 + $0 start + ;; + *) echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/lm_sensors/linux_3.0.patch b/testing/lm_sensors/linux_3.0.patch new file mode 100644 index 000000000..da02a3d49 --- /dev/null +++ b/testing/lm_sensors/linux_3.0.patch @@ -0,0 +1,11 @@ +--- prog/detect/sensors-detect 2011-08-02 10:23:46.000000000 +0200 ++++ prog/detect/sensors-detect 2011-08-02 10:24:04.000000000 +0200 +@@ -2472,7 +2472,7 @@ + + sub initialize_kernel_version + { +- `uname -r` =~ /(\d+)\.(\d+)\.(\d+)(.*)/; ++ `uname -r` =~ /(\d+)\.(\d+)(.*)/; + @kernel_version = ($1, $2, $3, $4); + chomp($kernel_arch = `uname -m`); + diff --git a/testing/lm_sensors/sensord.conf b/testing/lm_sensors/sensord.conf new file mode 100644 index 000000000..a1cf091c1 --- /dev/null +++ b/testing/lm_sensors/sensord.conf @@ -0,0 +1,4 @@ +# +# Parameters to be passed to sensord +# +SENSORD_ARGS="" diff --git a/testing/lm_sensors/sensord.rc b/testing/lm_sensors/sensord.rc new file mode 100644 index 000000000..e3ef4d26d --- /dev/null +++ b/testing/lm_sensors/sensord.rc @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/sensord + +PID=$(pidof -o %PPID /usr/sbin/sensord) +case "$1" in + start) + stat_busy "Starting sensord" + [ -z "$PID" ] && /usr/sbin/sensord ${SENSORD_ARGS} + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon sensord + stat_done + fi + ;; + stop) + stat_busy "Stopping sensord" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon sensord + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/lm_sensors/sensors.rc b/testing/lm_sensors/sensors.rc new file mode 100644 index 000000000..4acde2202 --- /dev/null +++ b/testing/lm_sensors/sensors.rc @@ -0,0 +1,119 @@ +#!/bin/bash + +# description: sensors is used for monitoring motherboard sensor values. +# config: /etc/conf.d/lm_sensors + +# See also the lm_sensors homepage at: +# http://www2.lm-sensors.nu/~lm78/index.html + +# It uses a config file /etc/conf.d/lm_sensors that contains the modules to +# be loaded/unloaded. That file is sourced into this one. + +# The format of that file a shell script that simply defines the modules +# in order as normal shell variables with the special names: +# MODULE_1, MODULE_2, MODULE_3, etc. + +. /etc/rc.conf +. /etc/rc.d/functions + +PSENSORS=/usr/bin/sensors + +if $(grep -q sysfs /proc/mounts); then + WITHSYS=1 +else + WITHSYS=0 +fi + +if [ $WITHSYS == "0" ]; then + # If sensors isn't supported by the kernel, try loading the module... + [ -e /proc/sys/dev/sensors ] || /sbin/modprobe i2c-proc &>/dev/null + + # Don't bother if /proc/sensors still doesn't exist, kernel doesn't have support for sensors. + if ! [ -e /proc/sys/dev/sensors ]; then + echo "lm_sensors: kernel does not have sensors support" + stat_fail + fi + + # If sensors was not already running, unload the module... + [ -e /var/run/daemons/sensors ] || /sbin/modprobe -r i2c-proc &>/dev/null +fi + +if [ -e /etc/conf.d/lm_sensors ]; then + CONFIG=/etc/conf.d/lm_sensors +elif [ -e /etc/sysconfig/lm_sensors ]; then + # Moving config to new Arch-specific location + mv /etc/sysconfig/lm_sensors /etc/conf.d/lm_sensors + CONFIG=/etc/conf.d/lm_sensors +fi + +case "$1" in + start) + stat_busy "Starting Up Sensors" + + if [ -r "$CONFIG" ]; then + . "$CONFIG" + modules=$(grep \^MODULE_ $CONFIG | wc -l | tr -d ' ') + i=0 + while [ $i -lt $modules ] ; do + module=$(eval echo '$'MODULE_$i) + # echo starting module __${module}__ #debug + /sbin/modprobe $module &>/dev/null + i=$(expr $i + 1) + done + fi + + $PSENSORS -s + + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon sensors + stat_done + fi + ;; + + stop) + stat_busy "Shutting Down Sensors" + + if [ -r "$CONFIG" ]; then + . "$CONFIG" + modules=$(grep \^MODULE_ $CONFIG | wc -l | tr -d ' ') + i=$(expr $modules - 1) + while [ $i -ge 0 ] ; do + module=$(eval echo '$'MODULE_$i) + # echo stoping module __${module}__ #debug + /sbin/modprobe -r $module &>/dev/null + i=$(expr $i - 1) + done + fi + + if [ $WITHSYS == "0" ]; then + /sbin/modprobe -r i2c-proc &>/dev/null + fi + + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon sensors + stat_done + fi + ;; + + status) + $PSENSORS + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + condrestart) + [ -e /var/run/daemons/sensors ] && $0 restart || : + ;; + + *) + echo "Usage: $0 {start|stop|restart|status|condrestart}" +esac +exit 0 diff --git a/testing/lvm2/11-dm-initramfs.rules b/testing/lvm2/11-dm-initramfs.rules new file mode 100644 index 000000000..d2c167324 --- /dev/null +++ b/testing/lvm2/11-dm-initramfs.rules @@ -0,0 +1,3 @@ +# needed with new udev/mkinitcpio and as implemented in dracut: +# <http://git.kernel.org/?p=boot/dracut/dracut.git;a=commitdiff;h=12b9736228f2b34c15a9cb63be79cf7b6e865b54> +SUBSYSTEM=="block", KERNEL=="dm-[0-9]*", ACTION=="add|change", OPTIONS="db_persist" diff --git a/testing/lvm2/PKGBUILD b/testing/lvm2/PKGBUILD new file mode 100644 index 000000000..ec2a69fa0 --- /dev/null +++ b/testing/lvm2/PKGBUILD @@ -0,0 +1,68 @@ +# $Id: PKGBUILD 161932 2012-06-16 17:15:41Z dreisner $ +# Maintainer: Eric Bélanger <eric@archlinux.org> +# Maintainer: Thomas Bächler <thomas@archlinux.org> + +pkgbase=lvm2 +pkgname=('lvm2' 'device-mapper') +pkgver=2.02.96 +pkgrel=2 +arch=('i686' 'x86_64') +url="http://sourceware.org/lvm2/" +license=('GPL2' 'LGPL2.1') +groups=('base') +source=(ftp://sources.redhat.com/pub/lvm2/LVM2.${pkgver}.tgz{,.asc} + lvm2_install + lvm2_hook + 11-dm-initramfs.rules + lvm.service + lvm2.conf) +sha1sums=('29d5097f0ca92c7665f29f862eca78bcf981ff6f' + '12e9016485c415c344524e6e75e23dfa6ca097ac' + '3e1680f9b76ce9150d08865d99db90fd15532271' + 'cedc9948123c870f9c5aa3357d0075b41a9c8135' + 'f6a554eea9557c3c236df2943bb6e7e723945c41' + '17df8689630a77e46899a8bd56997d9db896d5af' + 'ccefad65fde3d50331a42b0e90a1539dc7c8b9e4') + +build() { + cd "${srcdir}/LVM2.${pkgver}" + unset LDFLAGS + + ./configure --prefix=/ --sbindir=/sbin --sysconfdir=/etc --localstatedir=/var --datarootdir=/usr/share \ + --includedir=/usr/include --with-usrlibdir=/usr/lib --libdir=/usr/lib --with-udev-prefix=/usr \ + --with-systemdsystemunitdir=/usr/lib/systemd/system --enable-pkgconfig --enable-readline \ + --enable-dmeventd --enable-cmdlib --enable-applib --enable-udev_sync --enable-udev_rules + make +} + +package_device-mapper() { + pkgdesc="Device mapper userspace library and tools" + url="http://sourceware.org/dm/" + depends=('glibc' 'udev') + + cd "${srcdir}/LVM2.${pkgver}" + make DESTDIR="${pkgdir}" install_device-mapper + # extra udev rule for device-mapper in initramfs + install -D -m644 "${srcdir}/11-dm-initramfs.rules" "${pkgdir}/usr/lib/initcpio/udev/11-dm-initramfs.rules" +} + +package_lvm2() { + pkgdesc="Logical Volume Manager 2 utilities" + depends=('bash' "device-mapper>=${pkgver}" 'udev' 'readline') + conflicts=('lvm' 'mkinitcpio<0.7') + backup=('etc/lvm/lvm.conf') + options=('!makeflags') + + cd "${srcdir}/LVM2.${pkgver}" + make DESTDIR="${pkgdir}" install_lvm2 + # install applib + make -C liblvm DESTDIR="${pkgdir}" install + # /etc directories + install -d "${pkgdir}"/etc/lvm/{archive,backup} + # mkinitcpio hook + install -D -m644 "${srcdir}/lvm2_hook" "${pkgdir}/usr/lib/initcpio/hooks/lvm2" + install -D -m644 "${srcdir}/lvm2_install" "${pkgdir}/usr/lib/initcpio/install/lvm2" + # systemd support + install -D -m644 "${srcdir}/lvm.service" "${pkgdir}/usr/lib/systemd/system/lvm.service" + install -D -m644 "${srcdir}/lvm2.conf" "${pkgdir}/usr/lib/tmpfiles.d/lvm2.conf" +} diff --git a/testing/lvm2/lvm.service b/testing/lvm2/lvm.service new file mode 100644 index 000000000..277d5a773 --- /dev/null +++ b/testing/lvm2/lvm.service @@ -0,0 +1,16 @@ +[Unit] +Description=LVM activation +DefaultDependencies=no +Requires=systemd-udev-settle.service +After=systemd-udev-settle.service +Before=basic.target shutdown.target +Conflicts=shutdown.target + +[Service] +ExecStart=/sbin/vgchange --sysinit --available y +Type=oneshot +TimeoutSec=0 +RemainAfterExit=yes + +[Install] +WantedBy=basic.target diff --git a/testing/lvm2/lvm2.conf b/testing/lvm2/lvm2.conf new file mode 100644 index 000000000..129824552 --- /dev/null +++ b/testing/lvm2/lvm2.conf @@ -0,0 +1,2 @@ +d /run/lock/lvm 0755 root root - +d /run/lvm 0755 root root - diff --git a/testing/lvm2/lvm2_hook b/testing/lvm2/lvm2_hook new file mode 100644 index 000000000..e69b3349a --- /dev/null +++ b/testing/lvm2/lvm2_hook @@ -0,0 +1,24 @@ +#!/usr/bin/ash + +run_hook() { + local pvdev + + modprobe -q dm-mod >/dev/null 2>&1 + + # If the lvmwait= parameter has been specified on the command line + # wait for the device(s) before trying to activate the volume group(s) + for pvdev in ${lvmwait//,/ }; do + poll_device ${pvdev} ${rootdelay} + done + + msg "Activating logical volumes..." + [ -d /etc/lvm ] && lvm vgscan + + if [ -n "$quiet" ]; then + lvm vgchange --sysinit -a y >/dev/null + else + lvm vgchange --sysinit -a y + fi +} + +# vim: set ft=sh ts=4 sw=4 et: diff --git a/testing/lvm2/lvm2_install b/testing/lvm2/lvm2_install new file mode 100644 index 000000000..145ce49b2 --- /dev/null +++ b/testing/lvm2/lvm2_install @@ -0,0 +1,31 @@ +#!/bin/bash + +build() { + local mod + for mod in dm-mod dm-snapshot dm-mirror; do + add_module "$mod" + done + + add_binary "/sbin/lvm" + add_binary "/sbin/dmsetup" + add_file "/usr/lib/udev/rules.d/10-dm.rules" + add_file "/usr/lib/udev/rules.d/13-dm-disk.rules" + add_file "/usr/lib/udev/rules.d/95-dm-notify.rules" + add_file "/usr/lib/udev/rules.d/11-dm-lvm.rules" + add_file "/usr/lib/initcpio/udev/11-dm-initramfs.rules" "/usr/lib/udev/rules.d/11-dm-initramfs.rules" + + add_runscript +} + +help() { + cat <<HELPEOF +This hook loads the necessary modules for an LVM2 root device. + +The optional lvmwait= parameter followed by a comma-separated +list of device names can be given on the command line. +It will cause the hook to wait until all given devices exist +before trying to scan and activate any volume groups. +HELPEOF +} + +# vim: set ft=sh ts=4 sw=4 et: diff --git a/testing/ntp/PKGBUILD b/testing/ntp/PKGBUILD new file mode 100644 index 000000000..1266d8304 --- /dev/null +++ b/testing/ntp/PKGBUILD @@ -0,0 +1,64 @@ +# $Id: PKGBUILD 161933 2012-06-16 17:15:59Z dreisner $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: kevin <kevin@archlinux.org> + +pkgname=ntp +pkgver=4.2.6.p5 +_realver=4.2.6p5 +pkgrel=7 +pkgdesc='Network Time Protocol reference implementation' +url='http://www.ntp.org/' +license=('custom') +arch=('i686' 'x86_64') +makedepends=('perl-html-parser') +depends=('openssl' 'readline' 'libcap') +backup=('etc/ntp.conf' 'etc/conf.d/ntpd.conf') +source=("http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-${_realver}.tar.gz" + 'ntpd' + 'ntpdate' + 'ntp.conf' + 'ntpd.conf' + 'logrotate.d' + 'ntpd.service') +sha1sums=('4a5353a4791b6f4315a66c28d504ec6c7926b192' + '4e324e625c1f080b5c028be5092aa71adbf9bd99' + '01394b8a952f5edc85d19df8335eeac3980320f4' + 'eb1f63814b9adbd3d518e880fa3b38c375f0fe91' + '4537d1f58b299d463db5048129cb264511474b0b' + '4f76f7f9ffc8315ff9924f793f272d4f6939b816' + '81df5c4d51cb69bc29363625ff49e2bd388d1fa9') + +install=install + +build() { + cd "${srcdir}/${pkgname}-${_realver}" + + ./configure \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --enable-linuxcaps \ + + make +} + +package() { + cd "${srcdir}/${pkgname}-$_realver" + + make DESTDIR="${pkgdir}" install + + rmdir "${pkgdir}"/usr/{lib,sbin} + install -d -o 87 "${pkgdir}"/var/lib/ntp + install -Dm755 ../ntpd "${pkgdir}"/etc/rc.d/ntpd + install -Dm755 ../ntpdate "${pkgdir}"/etc/rc.d/ntpdate + install -Dm644 ../ntp.conf "${pkgdir}"/etc/ntp.conf + install -Dm644 ../ntpd.conf "${pkgdir}"/etc/conf.d/ntpd.conf + install -Dm644 ../logrotate.d "${pkgdir}"/etc/logrotate.d/ntpd + install -Dm644 ../ntpd.service "${pkgdir}"/usr/lib/systemd/system/ntpd.service + install -Dm644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + cd html + ../scripts/html2man + install -d "${pkgdir}"/usr/share/man + mv man/man* "${pkgdir}"/usr/share/man + mv "${pkgdir}/usr/share/man/man8/ntpd.8" "${pkgdir}/usr/share/man/man8/ntp-ntpd.8" # we should ditch openntpd +} diff --git a/testing/ntp/install b/testing/ntp/install new file mode 100644 index 000000000..e6eddf8a4 --- /dev/null +++ b/testing/ntp/install @@ -0,0 +1,37 @@ +post_install() { + getent group ntp &>/dev/null || groupadd -g 87 ntp >/dev/null + getent passwd ntp &>/dev/null || useradd -u 87 -g ntp -d /var/lib/ntp -c 'Network Time Protocol' -s /bin/false ntp >/dev/null + true +} + +post_upgrade() { + if [[ $(vercmp $2 4.2.6.p3) -le 0 ]]; then + cat <<EOF + +==> The file /etc/conf.d/ntp-client.conf has been renamed /etc/conf.d/ntpd.conf +==> If you made changes to the former, please update the latter. + +EOF + fi + if [[ $(vercmp $2 4.2.6.p5-1) -le 0 ]]; then + cat <<EOF + +==> The PID file /var/run/ntpd.pid has been renamed /run/ntpd.pid +==> and the new rc.d script only takes the latter into account. +==> To stop your old ntpd process, please kill it manually. + +EOF + fi + if [[ $(vercmp $2 4.2.6.p5-3) -le 0 ]]; then + post_install + fi + if [[ $(vercmp $2 4.2.6.p5-5) -le 0 ]]; then + chown -R ntp /var/lib/ntp + fi +} + +post_remove() { + getent passwd ntp &>/dev/null && userdel ntp >/dev/null + getent group ntp &>/dev/null && groupdel ntp >/dev/null + true +} diff --git a/testing/ntp/logrotate.d b/testing/ntp/logrotate.d new file mode 100644 index 000000000..8a9f066c3 --- /dev/null +++ b/testing/ntp/logrotate.d @@ -0,0 +1,4 @@ +/var/log/ntp.log { + missingok + copytruncate +} diff --git a/testing/ntp/ntp.conf b/testing/ntp/ntp.conf new file mode 100644 index 000000000..a27b22820 --- /dev/null +++ b/testing/ntp/ntp.conf @@ -0,0 +1,23 @@ +# With the default settings below, ntpd will only synchronize your clock. +# +# For details, see: +# - the ntp.conf man page +# - http://support.ntp.org/bin/view/Support/GettingStarted +# - https://wiki.archlinux.org/index.php/Network_Time_Protocol_daemon + +# Associate to public NTP pool servers; see http://www.pool.ntp.org/ +server 0.pool.ntp.org +server 1.pool.ntp.org +server 2.pool.ntp.org + +# Only allow read-only access from localhost +restrict default noquery nopeer +restrict 127.0.0.1 +restrict ::1 + +# Location of drift and log files +driftfile /var/lib/ntp/ntp.drift +logfile /var/log/ntp.log + +# NOTE: If you run dhcpcd and have lines like 'restrict' and 'fudge' appearing +# here, be sure to add '-Y -N' to the dhcpcd_ethX variables in /etc/conf.d/net diff --git a/testing/ntp/ntpd b/testing/ntp/ntpd new file mode 100755 index 000000000..480fa1088 --- /dev/null +++ b/testing/ntp/ntpd @@ -0,0 +1,47 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/ntpd.conf + +unset PID +PIDFILE='/run/ntpd.pid' + +if [[ -r ${PIDFILE} ]]; then + read -r PID <"${PIDFILE}" + if [[ -n ${PID} && ! -d /proc/${PID} ]]; then + rm -f "${PIDFILE}" + unset PID + fi +fi + +case "$1" in + start) + stat_busy "Starting NTP Daemon" + if [[ -z ${PID} ]] && /usr/bin/ntpd ${NTPD_ARGS} -p "${PIDFILE}" &>/dev/null; then + add_daemon ntpd + stat_done + else + stat_fail + exit 1 + fi + ;; + stop) + stat_busy "Stopping NTP Daemon" + if [[ -n ${PID} ]] && kill "${PID}" &>/dev/null; then + rm ${PIDFILE} + rm_daemon ntpd + stat_done + else + stat_fail + exit 1 + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/testing/ntp/ntpd.conf b/testing/ntp/ntpd.conf new file mode 100644 index 000000000..047961fde --- /dev/null +++ b/testing/ntp/ntpd.conf @@ -0,0 +1,5 @@ +# client options for "ntpd -q" - ntpdate equivalent +NTP_CLIENT_OPTION="-g -u ntp" + +# arguments passed to ntpd when started +NTPD_ARGS="-g -u ntp" diff --git a/testing/ntp/ntpd.service b/testing/ntp/ntpd.service new file mode 100644 index 000000000..e0cbf879e --- /dev/null +++ b/testing/ntp/ntpd.service @@ -0,0 +1,12 @@ +[Unit] +Description=Network Time Service +After=network.target + +[Service] +Type=forking +PIDFile=/run/ntpd.pid +EnvironmentFile=/etc/conf.d/ntpd.conf +ExecStart=/usr/bin/ntpd $NTPD_ARGS -p /run/ntpd.pid + +[Install] +WantedBy=multi-user.target diff --git a/testing/ntp/ntpdate b/testing/ntp/ntpdate new file mode 100755 index 000000000..a8e746785 --- /dev/null +++ b/testing/ntp/ntpdate @@ -0,0 +1,29 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/ntpd.conf + +case "$1" in + start) + stat_busy "Starting NTP Client" + if /usr/bin/ntpd -q ${NTP_CLIENT_OPTION} &>/dev/null; then + add_daemon ntpdate + stat_done + else + stat_fail + exit 1 + fi + ;; + stop) + stat_busy "Stopping NTP Client" + rm_daemon ntpdate + stat_done + ;; + restart) + $0 stop + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/testing/openldap/PKGBUILD b/testing/openldap/PKGBUILD new file mode 100644 index 000000000..6856a2615 --- /dev/null +++ b/testing/openldap/PKGBUILD @@ -0,0 +1,104 @@ +# $Id: PKGBUILD 161934 2012-06-16 17:16:14Z dreisner $ +# Maintainer: + +pkgbase=openldap +pkgname=('libldap' 'openldap') +pkgver=2.4.31 +pkgrel=3 +arch=('i686' 'x86_64') +url="http://www.openldap.org/" +license=('custom') +makedepends=('libltdl' 'libsasl' 'e2fsprogs' 'util-linux') +source=(ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/${pkgbase}-${pkgver}.tgz + slapd slapd.default slapd.service + ntlm.patch + mutex-end-of-struct-sigsegv.patch) +sha1sums=('8315a283fb3724abe6062e38d93bb69298d05765' + 'bd1ea19256d3d467f1f803e0f4046ef50f17628f' + 'd89b8a533045123f1ab46c9c430cf132d58a20a4' + 'a2cdab7e800a9f0c8b1e319a68598a12f4af27a4' + 'e4afd9f1c810ef4c4cd8fe1101dfe5887f2b7eef' + '694269dad78c7a806649c2d7f57bb7e503df3af1') + +build() { + cd "${srcdir}"/${pkgbase}-${pkgver} + patch -Np1 -i "${srcdir}"/ntlm.patch + patch -Np1 -i "${srcdir}"/mutex-end-of-struct-sigsegv.patch + + sed -i 's|-m 644 $(LIBRARY)|-m 755 $(LIBRARY)|' libraries/{liblber,libldap,libldap_r}/Makefile.in + sed -i 's|#define LDAPI_SOCK LDAP_RUNDIR LDAP_DIRSEP "run" LDAP_DIRSEP "ldapi"|#define LDAPI_SOCK LDAP_DIRSEP "run" LDAP_DIRSEP "openldap" LDAP_DIRSEP "ldapi"|' include/ldap_defaults.h + sed -i 's|%LOCALSTATEDIR%/run|/run/openldap|' servers/slapd/slapd.conf + sed -i 's|-$(MKDIR) $(DESTDIR)$(localstatedir)/run|-$(MKDIR) $(DESTDIR)/run/openldap|' servers/slapd/Makefile.in + + LDFLAGS="$LDFLAGS -L\"${pkgdir}\"/libldap/usr/lib" + ./configure --prefix=/usr --mandir=/usr/share/man --libexecdir=/usr/lib \ + --sysconfdir=/etc --localstatedir=/var/lib/openldap \ + --enable-ipv6 --enable-syslog --enable-local \ + --enable-bdb --enable-hdb \ + --enable-crypt --enable-dynamic \ + --with-threads --disable-wrappers \ + --without-fetch \ + --enable-spasswd --with-cyrus-sasl \ + --enable-overlays=mod --enable-modules=yes + make +} + +check() { + cd "${srcdir}"/${pkgbase}-${pkgver} + make test +} + +package_libldap() { + pkgdesc="Lightweight Directory Access Protocol (LDAP) client libraries" + depends=('libsasl' 'e2fsprogs') + backup=('etc/openldap/ldap.conf') + options=('!libtool') + + cd "${srcdir}"/${pkgbase}-${pkgver} + for dir in include libraries doc/man/man3 ; do + pushd ${dir} + make DESTDIR="${pkgdir}" install + popd + done + install -Dm644 doc/man/man5/ldap.conf.5.tmp "${pkgdir}"/usr/share/man/man5/ldap.conf.5 + +# get rid of duplicate default conf files + rm "${pkgdir}"/etc/openldap/*.default + + ln -sf liblber.so "${pkgdir}"/usr/lib/liblber.so.2 + ln -sf libldap.so "${pkgdir}"/usr/lib/libldap.so.2 + + install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE +} + +package_openldap() { + pkgdesc="Lightweight Directory Access Protocol (LDAP) client and server" + depends=("libldap>=${pkgver}" 'libltdl' 'util-linux') + backup=('etc/openldap/slapd.conf' 'etc/conf.d/slapd') + options=('!libtool' 'emptydirs') + install=openldap.install + + cd "${srcdir}"/${pkgbase}-${pkgver} + for dir in clients servers doc/man/man{1,5,8} ; do + pushd ${dir} + make DESTDIR="${pkgdir}" install + popd + done + rm "${pkgdir}"/usr/share/man/man5/ldap.conf.5 + rm -r "${pkgdir}"/run + +# get rid of duplicate default conf files + rm "${pkgdir}"/etc/openldap/*.default + + ln -s ../lib/slapd "${pkgdir}"/usr/sbin/slapd + + chown root:439 "${pkgdir}"/etc/openldap/{slapd.conf,DB_CONFIG.example} + chmod 640 "${pkgdir}"/etc/openldap/{slapd.conf,DB_CONFIG.example} + + install -dm700 -o 439 -g 439 "${pkgdir}"/var/lib/openldap + install -dm700 -o 439 -g 439 "${pkgdir}"/etc/openldap/slapd.d + install -Dm755 "${srcdir}"/slapd "${pkgdir}"/etc/rc.d/slapd + install -Dm644 "${srcdir}"/slapd.default "${pkgdir}"/etc/conf.d/slapd + install -Dm644 "${srcdir}"/slapd.service "${pkgdir}"/usr/lib/systemd/system/slapd.service + install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE +} diff --git a/testing/openldap/mutex-end-of-struct-sigsegv.patch b/testing/openldap/mutex-end-of-struct-sigsegv.patch new file mode 100644 index 000000000..e8996386a --- /dev/null +++ b/testing/openldap/mutex-end-of-struct-sigsegv.patch @@ -0,0 +1,293 @@ + libraries/libldap/init.c | 8 ++- + libraries/libldap/ldap-int.h | 198 ++++++++++++++++++++++-------------------- + 2 files changed, 110 insertions(+), 96 deletions(-) + +diff --git a/libraries/libldap/init.c b/libraries/libldap/init.c +index 39292d2..9d37e64 100644 +--- a/libraries/libldap/init.c ++++ b/libraries/libldap/init.c +@@ -36,7 +36,13 @@ + #include "lutil.h" + + struct ldapoptions ldap_int_global_options = +- { LDAP_UNINITIALIZED, LDAP_DEBUG_NONE LDAP_LDO_MUTEX_NULLARG }; ++ { LDAP_UNINITIALIZED, LDAP_DEBUG_NONE ++ LDAP_LDO_NULLARG ++ LDAP_LDO_CONNECTIONLESS_NULLARG ++ LDAP_LDO_TLS_NULLARG ++ LDAP_LDO_SASL_NULLARG ++ LDAP_LDO_GSSAPI_NULLARG ++ LDAP_LDO_MUTEX_NULLARG }; + + #define ATTR_NONE 0 + #define ATTR_BOOL 1 +diff --git a/libraries/libldap/ldap-int.h b/libraries/libldap/ldap-int.h +index f8e6126..ac6c9e5 100644 +--- a/libraries/libldap/ldap-int.h ++++ b/libraries/libldap/ldap-int.h +@@ -185,29 +185,59 @@ struct ldapoptions { + #define LDAP_TRASHED_SESSION 0xFF + int ldo_debug; + +-#ifdef LDAP_R_COMPILE +- ldap_pvt_thread_mutex_t ldo_mutex; +-#define LDAP_LDO_MUTEX_NULLARG , LDAP_PVT_MUTEX_NULL +-#else +-#define LDAP_LDO_MUTEX_NULLARG +-#endif ++ ber_int_t ldo_version; ++ ber_int_t ldo_deref; ++ ber_int_t ldo_timelimit; ++ ber_int_t ldo_sizelimit; ++ ++ /* per API call timeout */ ++ struct timeval ldo_tm_api; ++ struct timeval ldo_tm_net; ++ ++ LDAPURLDesc *ldo_defludp; ++ int ldo_defport; ++ char* ldo_defbase; ++ char* ldo_defbinddn; /* bind dn */ ++ ++ /* ++ * Per connection tcp-keepalive settings (Linux only, ++ * ignored where unsupported) ++ */ ++ ber_int_t ldo_keepalive_idle; ++ ber_int_t ldo_keepalive_probes; ++ ber_int_t ldo_keepalive_interval; ++ ++ int ldo_refhoplimit; /* limit on referral nesting */ ++ ++ /* LDAPv3 server and client controls */ ++ LDAPControl **ldo_sctrls; ++ LDAPControl **ldo_cctrls; ++ ++ /* LDAP rebind callback function */ ++ LDAP_REBIND_PROC *ldo_rebind_proc; ++ void *ldo_rebind_params; ++ LDAP_NEXTREF_PROC *ldo_nextref_proc; ++ void *ldo_nextref_params; ++ LDAP_URLLIST_PROC *ldo_urllist_proc; ++ void *ldo_urllist_params; ++ ++ /* LDAP connection callback stack */ ++ ldaplist *ldo_conn_cbs; ++ ++ LDAP_BOOLEANS ldo_booleans; /* boolean options */ ++ ++#define LDAP_LDO_NULLARG ,0,0,0,0 ,{0},{0} ,0,0,0,0, 0,0,0,0, 0,0, 0,0,0,0,0,0, 0, 0 + + #ifdef LDAP_CONNECTIONLESS + #define LDAP_IS_UDP(ld) ((ld)->ld_options.ldo_is_udp) + void* ldo_peer; /* struct sockaddr* */ + char* ldo_cldapdn; + int ldo_is_udp; ++#define LDAP_LDO_CONNECTIONLESS_NULLARG ,0,0,0 ++#else ++#define LDAP_LDO_CONNECTIONLESS_NULLARG + #endif + +- /* per API call timeout */ +- struct timeval ldo_tm_api; +- struct timeval ldo_tm_net; +- +- ber_int_t ldo_version; +- ber_int_t ldo_deref; +- ber_int_t ldo_timelimit; +- ber_int_t ldo_sizelimit; +- + #ifdef HAVE_TLS + /* tls context */ + void *ldo_tls_ctx; +@@ -226,16 +256,12 @@ struct ldapoptions { + int ldo_tls_mode; + int ldo_tls_require_cert; + int ldo_tls_impl; +-#ifdef HAVE_OPENSSL_CRL + int ldo_tls_crlcheck; +-#endif ++#define LDAP_LDO_TLS_NULLARG ,0,0,0,{0,0,0,0,0,0,0,0,0},0,0,0,0 ++#else ++#define LDAP_LDO_TLS_NULLARG + #endif + +- LDAPURLDesc *ldo_defludp; +- int ldo_defport; +- char* ldo_defbase; +- char* ldo_defbinddn; /* bind dn */ +- + #ifdef HAVE_CYRUS_SASL + char* ldo_def_sasl_mech; /* SASL Mechanism(s) */ + char* ldo_def_sasl_realm; /* SASL realm */ +@@ -244,6 +270,9 @@ struct ldapoptions { + + /* SASL Security Properties */ + struct sasl_security_properties ldo_sasl_secprops; ++#define LDAP_LDO_SASL_NULLARG ,0,0,0,0,{0} ++#else ++#define LDAP_LDO_SASL_NULLARG + #endif + + #ifdef HAVE_GSSAPI +@@ -253,34 +282,17 @@ struct ldapoptions { + #define LDAP_GSSAPI_OPT_DO_NOT_FREE_GSS_CONTEXT 0x0001 + #define LDAP_GSSAPI_OPT_ALLOW_REMOTE_PRINCIPAL 0x0002 + unsigned ldo_gssapi_options; ++#define LDAP_LDO_GSSAPI_NULLARG ,0,0 ++#else ++#define LDAP_LDO_GSSAPI_NULLARG + #endif + +- /* +- * Per connection tcp-keepalive settings (Linux only, +- * ignored where unsupported) +- */ +- ber_int_t ldo_keepalive_idle; +- ber_int_t ldo_keepalive_probes; +- ber_int_t ldo_keepalive_interval; +- +- int ldo_refhoplimit; /* limit on referral nesting */ +- +- /* LDAPv3 server and client controls */ +- LDAPControl **ldo_sctrls; +- LDAPControl **ldo_cctrls; +- +- /* LDAP rebind callback function */ +- LDAP_REBIND_PROC *ldo_rebind_proc; +- void *ldo_rebind_params; +- LDAP_NEXTREF_PROC *ldo_nextref_proc; +- void *ldo_nextref_params; +- LDAP_URLLIST_PROC *ldo_urllist_proc; +- void *ldo_urllist_params; +- +- /* LDAP connection callback stack */ +- ldaplist *ldo_conn_cbs; +- +- LDAP_BOOLEANS ldo_booleans; /* boolean options */ ++#ifdef LDAP_R_COMPILE ++ ldap_pvt_thread_mutex_t ldo_mutex; ++#define LDAP_LDO_MUTEX_NULLARG , LDAP_PVT_MUTEX_NULL ++#else ++#define LDAP_LDO_MUTEX_NULLARG ++#endif + }; + + +@@ -375,6 +387,46 @@ struct ldap_common { + Sockbuf *ldc_sb; /* socket descriptor & buffer */ + #define ld_sb ldc->ldc_sb + ++ unsigned short ldc_lberoptions; ++#define ld_lberoptions ldc->ldc_lberoptions ++ ++ /* protected by msgid_mutex */ ++ ber_len_t ldc_msgid; ++#define ld_msgid ldc->ldc_msgid ++ ++ /* do not mess with these */ ++ /* protected by req_mutex */ ++ LDAPRequest *ldc_requests; /* list of outstanding requests */ ++ /* protected by res_mutex */ ++ LDAPMessage *ldc_responses; /* list of outstanding responses */ ++#define ld_requests ldc->ldc_requests ++#define ld_responses ldc->ldc_responses ++ ++ /* protected by abandon_mutex */ ++ ber_len_t ldc_nabandoned; ++ ber_int_t *ldc_abandoned; /* array of abandoned requests */ ++#define ld_nabandoned ldc->ldc_nabandoned ++#define ld_abandoned ldc->ldc_abandoned ++ ++ /* unused by libldap */ ++ LDAPCache *ldc_cache; /* non-null if cache is initialized */ ++#define ld_cache ldc->ldc_cache ++ ++ /* do not mess with the rest though */ ++ ++ /* protected by conn_mutex */ ++ LDAPConn *ldc_defconn; /* default connection */ ++#define ld_defconn ldc->ldc_defconn ++ LDAPConn *ldc_conns; /* list of server connections */ ++#define ld_conns ldc->ldc_conns ++ void *ldc_selectinfo;/* platform specifics for select */ ++#define ld_selectinfo ldc->ldc_selectinfo ++ ++ /* ldap_common refcnt - free only if 0 */ ++ /* protected by ldc_mutex */ ++ unsigned int ldc_refcnt; ++#define ld_ldcrefcnt ldc->ldc_refcnt ++ + /* protected by ldo_mutex */ + struct ldapoptions ldc_options; + #define ld_options ldc->ldc_options +@@ -403,66 +455,22 @@ struct ldap_common { + #define ld_urllist_params ld_options.ldo_urllist_params + + #define ld_version ld_options.ldo_version +-#ifdef LDAP_R_COMPILE +-#define ld_ldopts_mutex ld_options.ldo_mutex +-#endif +- +- unsigned short ldc_lberoptions; +-#define ld_lberoptions ldc->ldc_lberoptions +- +- /* protected by msgid_mutex */ +- ber_len_t ldc_msgid; +-#define ld_msgid ldc->ldc_msgid +- +- /* do not mess with these */ +- /* protected by req_mutex */ +- LDAPRequest *ldc_requests; /* list of outstanding requests */ +- /* protected by res_mutex */ +- LDAPMessage *ldc_responses; /* list of outstanding responses */ +-#define ld_requests ldc->ldc_requests +-#define ld_responses ldc->ldc_responses + + #ifdef LDAP_R_COMPILE ++ ldap_pvt_thread_mutex_t ldc_mutex; + ldap_pvt_thread_mutex_t ldc_msgid_mutex; + ldap_pvt_thread_mutex_t ldc_conn_mutex; + ldap_pvt_thread_mutex_t ldc_req_mutex; + ldap_pvt_thread_mutex_t ldc_res_mutex; + ldap_pvt_thread_mutex_t ldc_abandon_mutex; ++#define ld_ldopts_mutex ld_options.ldo_mutex ++#define ld_ldcmutex ldc->ldc_mutex + #define ld_msgid_mutex ldc->ldc_msgid_mutex + #define ld_conn_mutex ldc->ldc_conn_mutex + #define ld_req_mutex ldc->ldc_req_mutex + #define ld_res_mutex ldc->ldc_res_mutex + #define ld_abandon_mutex ldc->ldc_abandon_mutex + #endif +- +- /* protected by abandon_mutex */ +- ber_len_t ldc_nabandoned; +- ber_int_t *ldc_abandoned; /* array of abandoned requests */ +-#define ld_nabandoned ldc->ldc_nabandoned +-#define ld_abandoned ldc->ldc_abandoned +- +- /* unused by libldap */ +- LDAPCache *ldc_cache; /* non-null if cache is initialized */ +-#define ld_cache ldc->ldc_cache +- +- /* do not mess with the rest though */ +- +- /* protected by conn_mutex */ +- LDAPConn *ldc_defconn; /* default connection */ +-#define ld_defconn ldc->ldc_defconn +- LDAPConn *ldc_conns; /* list of server connections */ +-#define ld_conns ldc->ldc_conns +- void *ldc_selectinfo;/* platform specifics for select */ +-#define ld_selectinfo ldc->ldc_selectinfo +- +- /* ldap_common refcnt - free only if 0 */ +-#ifdef LDAP_R_COMPILE +- ldap_pvt_thread_mutex_t ldc_mutex; +-#define ld_ldcmutex ldc->ldc_mutex +-#endif +- /* protected by ldc_mutex */ +- unsigned int ldc_refcnt; +-#define ld_ldcrefcnt ldc->ldc_refcnt + }; + + struct ldap { diff --git a/testing/openldap/ntlm.patch b/testing/openldap/ntlm.patch new file mode 100644 index 000000000..6804b610d --- /dev/null +++ b/testing/openldap/ntlm.patch @@ -0,0 +1,230 @@ +Patch from evolution-exchange (2.10.3). The ldap_ntlm_bind function is +actually called by evolution-data-server, checked at version 1.12.2. +Without this patch, the Exchange addressbook integration uses simple binds +with cleartext passwords. + +Russ checked with openldap-software for upstream's opinion on this patch +on 2007-12-21. Upstream had never received it as a patch submission and +given that it's apparently only for older Exchange servers that can't do +SASL and DIGEST-MD5, it's not very appealing. + +Bug#457374 filed against evolution-data-server asking if this support is +still required on 2007-12-21. + +Index: trunk/include/ldap.h +=================================================================== +--- trunk.orig/include/ldap.h ++++ trunk/include/ldap.h +@@ -2461,5 +2461,25 @@ + LDAPControl **ctrls, + LDAPDerefRes **drp )); + ++/* ++ * hacks for NTLM ++ */ ++#define LDAP_AUTH_NTLM_REQUEST ((ber_tag_t) 0x8aU) ++#define LDAP_AUTH_NTLM_RESPONSE ((ber_tag_t) 0x8bU) ++LDAP_F( int ) ++ldap_ntlm_bind LDAP_P(( ++ LDAP *ld, ++ LDAP_CONST char *dn, ++ ber_tag_t tag, ++ struct berval *cred, ++ LDAPControl **sctrls, ++ LDAPControl **cctrls, ++ int *msgidp )); ++LDAP_F( int ) ++ldap_parse_ntlm_bind_result LDAP_P(( ++ LDAP *ld, ++ LDAPMessage *res, ++ struct berval *challenge)); ++ + LDAP_END_DECL + #endif /* _LDAP_H */ +Index: trunk/libraries/libldap/ntlm.c +=================================================================== +--- /dev/null ++++ trunk/libraries/libldap/ntlm.c +@@ -0,0 +1,138 @@ ++/* $OpenLDAP: pkg/ldap/libraries/libldap/ntlm.c,v 1.1.4.10 2002/01/04 20:38:21 kurt Exp $ */ ++/* ++ * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved. ++ * COPYING RESTRICTIONS APPLY, see COPYRIGHT file ++ */ ++ ++/* Mostly copied from sasl.c */ ++ ++#include "portable.h" ++ ++#include <stdlib.h> ++#include <stdio.h> ++ ++#include <ac/socket.h> ++#include <ac/string.h> ++#include <ac/time.h> ++#include <ac/errno.h> ++ ++#include "ldap-int.h" ++ ++int ++ldap_ntlm_bind( ++ LDAP *ld, ++ LDAP_CONST char *dn, ++ ber_tag_t tag, ++ struct berval *cred, ++ LDAPControl **sctrls, ++ LDAPControl **cctrls, ++ int *msgidp ) ++{ ++ BerElement *ber; ++ int rc; ++ ber_int_t id; ++ ++ Debug( LDAP_DEBUG_TRACE, "ldap_ntlm_bind\n", 0, 0, 0 ); ++ ++ assert( ld != NULL ); ++ assert( LDAP_VALID( ld ) ); ++ assert( msgidp != NULL ); ++ ++ if( msgidp == NULL ) { ++ ld->ld_errno = LDAP_PARAM_ERROR; ++ return ld->ld_errno; ++ } ++ ++ /* create a message to send */ ++ if ( (ber = ldap_alloc_ber_with_options( ld )) == NULL ) { ++ ld->ld_errno = LDAP_NO_MEMORY; ++ return ld->ld_errno; ++ } ++ ++ assert( LBER_VALID( ber ) ); ++ ++ LDAP_NEXT_MSGID( ld, id ); ++ rc = ber_printf( ber, "{it{istON}" /*}*/, ++ id, LDAP_REQ_BIND, ++ ld->ld_version, dn, tag, ++ cred ); ++ ++ /* Put Server Controls */ ++ if( ldap_int_put_controls( ld, sctrls, ber ) != LDAP_SUCCESS ) { ++ ber_free( ber, 1 ); ++ return ld->ld_errno; ++ } ++ ++ if ( ber_printf( ber, /*{*/ "N}" ) == -1 ) { ++ ld->ld_errno = LDAP_ENCODING_ERROR; ++ ber_free( ber, 1 ); ++ return ld->ld_errno; ++ } ++ ++ /* send the message */ ++ *msgidp = ldap_send_initial_request( ld, LDAP_REQ_BIND, dn, ber, id ); ++ ++ if(*msgidp < 0) ++ return ld->ld_errno; ++ ++ return LDAP_SUCCESS; ++} ++ ++int ++ldap_parse_ntlm_bind_result( ++ LDAP *ld, ++ LDAPMessage *res, ++ struct berval *challenge) ++{ ++ ber_int_t errcode; ++ ber_tag_t tag; ++ BerElement *ber; ++ ber_len_t len; ++ ++ Debug( LDAP_DEBUG_TRACE, "ldap_parse_ntlm_bind_result\n", 0, 0, 0 ); ++ ++ assert( ld != NULL ); ++ assert( LDAP_VALID( ld ) ); ++ assert( res != NULL ); ++ ++ if ( ld == NULL || res == NULL ) { ++ return LDAP_PARAM_ERROR; ++ } ++ ++ if( res->lm_msgtype != LDAP_RES_BIND ) { ++ ld->ld_errno = LDAP_PARAM_ERROR; ++ return ld->ld_errno; ++ } ++ ++ if ( ld->ld_error ) { ++ LDAP_FREE( ld->ld_error ); ++ ld->ld_error = NULL; ++ } ++ if ( ld->ld_matched ) { ++ LDAP_FREE( ld->ld_matched ); ++ ld->ld_matched = NULL; ++ } ++ ++ /* parse results */ ++ ++ ber = ber_dup( res->lm_ber ); ++ ++ if( ber == NULL ) { ++ ld->ld_errno = LDAP_NO_MEMORY; ++ return ld->ld_errno; ++ } ++ ++ tag = ber_scanf( ber, "{ioa" /*}*/, ++ &errcode, challenge, &ld->ld_error ); ++ ber_free( ber, 0 ); ++ ++ if( tag == LBER_ERROR ) { ++ ld->ld_errno = LDAP_DECODING_ERROR; ++ return ld->ld_errno; ++ } ++ ++ ld->ld_errno = errcode; ++ ++ return( ld->ld_errno ); ++} ++ +Index: trunk/libraries/libldap/Makefile.in +=================================================================== +--- trunk.orig/libraries/libldap/Makefile.in ++++ trunk/libraries/libldap/Makefile.in +@@ -27,7 +27,7 @@ + init.c options.c print.c string.c util-int.c schema.c \ + charray.c os-local.c dnssrv.c utf-8.c utf-8-conv.c \ + tls2.c tls_o.c tls_g.c tls_m.c \ +- turn.c ppolicy.c dds.c txn.c ldap_sync.c stctrl.c \ ++ turn.c ppolicy.c dds.c txn.c ldap_sync.c stctrl.c ntlm.c \ + assertion.c deref.c ldif.c fetch.c + + OBJS = bind.lo open.lo result.lo error.lo compare.lo search.lo \ +@@ -40,7 +40,7 @@ + init.lo options.lo print.lo string.lo util-int.lo schema.lo \ + charray.lo os-local.lo dnssrv.lo utf-8.lo utf-8-conv.lo \ + tls2.lo tls_o.lo tls_g.lo tls_m.lo \ +- turn.lo ppolicy.lo dds.lo txn.lo ldap_sync.lo stctrl.lo \ ++ turn.lo ppolicy.lo dds.lo txn.lo ldap_sync.lo stctrl.lo ntlm.lo \ + assertion.lo deref.lo ldif.lo fetch.lo + + LDAP_INCDIR= ../../include +Index: trunk/libraries/libldap_r/Makefile.in +=================================================================== +--- trunk.orig/libraries/libldap_r/Makefile.in ++++ trunk/libraries/libldap_r/Makefile.in +@@ -29,7 +29,7 @@ + init.c options.c print.c string.c util-int.c schema.c \ + charray.c os-local.c dnssrv.c utf-8.c utf-8-conv.c \ + tls2.c tls_o.c tls_g.c tls_m.c \ +- turn.c ppolicy.c dds.c txn.c ldap_sync.c stctrl.c \ ++ turn.c ppolicy.c dds.c txn.c ldap_sync.c stctrl.c ntlm.c \ + assertion.c deref.c ldif.c fetch.c + SRCS = threads.c rdwr.c rmutex.c tpool.c rq.c \ + thr_posix.c thr_cthreads.c thr_thr.c thr_lwp.c thr_nt.c \ +@@ -47,7 +47,7 @@ + init.lo options.lo print.lo string.lo util-int.lo schema.lo \ + charray.lo os-local.lo dnssrv.lo utf-8.lo utf-8-conv.lo \ + tls2.lo tls_o.lo tls_g.lo tls_m.lo \ +- turn.lo ppolicy.lo dds.lo txn.lo ldap_sync.lo stctrl.lo \ ++ turn.lo ppolicy.lo dds.lo txn.lo ldap_sync.lo stctrl.lo ntlm.lo \ + assertion.lo deref.lo ldif.lo fetch.lo + + LDAP_INCDIR= ../../include diff --git a/testing/openldap/openldap.install b/testing/openldap/openldap.install new file mode 100644 index 000000000..cf3cb9f25 --- /dev/null +++ b/testing/openldap/openldap.install @@ -0,0 +1,20 @@ +post_install(){ + groupadd -g 439 ldap &>/dev/null + useradd -u 439 -g ldap -d /var/lib/openldap -s /bin/false ldap &>/dev/null + chown -R ldap:ldap var/lib/openldap &>/dev/null +} + +post_upgrade(){ + getent group ldap >/dev/null 2>&1 || groupadd -g 439 ldap &>/dev/null + getent passwd ldap >/dev/null 2>&1 || useradd -u 439 -g ldap -d /var/lib/openldap -s /bin/false ldap &>/dev/null + chown -R ldap:ldap var/lib/openldap &>/dev/null +} + +post_remove(){ + if getent passwd ldap >/dev/null 2>&1; then + userdel ldap + fi + if getent group ldap >/dev/null 2>&1; then + groupdel ldap + fi +} diff --git a/testing/openldap/slapd b/testing/openldap/slapd new file mode 100755 index 000000000..4f212da66 --- /dev/null +++ b/testing/openldap/slapd @@ -0,0 +1,49 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +[ -f "/etc/conf.d/slapd" ] && . /etc/conf.d/slapd + +PID=`pidof -o %PPID /usr/sbin/slapd` +case "$1" in + start) + stat_busy "Starting OpenLDAP" + [ ! -d /run/openldap ] && install -d -m755 -o ldap -g ldap /run/openldap + if [ -z "$PID" ]; then + if [ -z "$SLAPD_SERVICES" ]; then + /usr/sbin/slapd -u ldap -g ldap $SLAPD_OPTIONS + else + /usr/sbin/slapd -u ldap -g ldap -h "$SLAPD_SERVICES" $SLAPD_OPTIONS + fi + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + add_daemon slapd + else + stat_fail + fi + ;; + stop) + stat_busy "Stopping OpenLDAP" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm -f /run/openldap/slapd.pid + rm -f /run/openldap/slapd.args + rm_daemon slapd + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/openldap/slapd.default b/testing/openldap/slapd.default new file mode 100644 index 000000000..72ae2a6a7 --- /dev/null +++ b/testing/openldap/slapd.default @@ -0,0 +1,6 @@ +# slapd normally serves ldap only on all TCP-ports 389. slapd can also +# service requests on TCP-port 636 (ldaps) and requests via unix +# sockets. +# Example usage: +#SLAPD_SERVICES="ldap://127.0.0.1:389/ ldaps:/// ldapi:///" +SLAPD_OPTIONS="" diff --git a/testing/openldap/slapd.service b/testing/openldap/slapd.service new file mode 100644 index 000000000..d8baa57b5 --- /dev/null +++ b/testing/openldap/slapd.service @@ -0,0 +1,9 @@ +[Unit] +Description=OpenLDAP server daemon + +[Service] +Type=forking +ExecStart=/usr/sbin/slapd + +[Install] +WantedBy=multi-user.target diff --git a/testing/openssh/PKGBUILD b/testing/openssh/PKGBUILD new file mode 100644 index 000000000..dd9ad59bf --- /dev/null +++ b/testing/openssh/PKGBUILD @@ -0,0 +1,96 @@ +# $Id: PKGBUILD 161935 2012-06-16 17:16:33Z dreisner $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: Aaron Griffin <aaron@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> + +pkgname=openssh +pkgver=6.0p1 +pkgrel=3 +pkgdesc='Free version of the SSH connectivity tools' +url='http://www.openssh.org/portable.html' +license=('custom:BSD') +arch=('i686' 'x86_64') +depends=('krb5' 'openssl' 'libedit' 'ldns') +optdepends=('xorg-xauth: X11 forwarding' + 'x11-ssh-askpass: input passphrase in X') +source=("ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz" + 'sshd.close-sessions' + 'sshdgenkeys.service' + 'sshd@.service' + 'sshd.service' + 'sshd.socket' + 'tmpfiles.d' + 'sshd.confd' + 'sshd.pam' + 'sshd') +sha1sums=('f691e53ef83417031a2854b8b1b661c9c08e4422' + '954bf1660aa32620c37034320877f4511b767ccb' + '6c71de2c2ca9622aa8e863acd94b135555e11125' + 'bd6eae36c7ef9efb7147778baad7858b81f2d660' + '83a257b8f6a62237383262cb0e2583e5609ddac0' + 'a30fb5fda6d0143345bae47684edaffb8d0a92a7' + 'b5cf44205e8f4365c00bfbee110d7c0e563627aa' + 'ec102deb69cad7d14f406289d2fc11fee6eddbdd' + '659e3ee95c269014783ff8b318c6f50bf7496fbd' + 'ed36e3a522f619ff6b13e253526596e4cca11e9f') + +backup=('etc/ssh/ssh_config' 'etc/ssh/sshd_config' 'etc/pam.d/sshd' 'etc/conf.d/sshd') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --libexecdir=/usr/lib/ssh \ + --sysconfdir=/etc/ssh \ + --with-ldns \ + --with-libedit \ + --with-ssl-engine \ + --with-pam \ + --with-privsep-user=nobody \ + --with-kerberos5=/usr \ + --with-xauth=/usr/bin/xauth \ + --with-mantype=man \ + --with-md5-passwords \ + --with-pid-dir=/run \ + + make +} + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # The connect.sh test must be run by a user with a decent login shell; + # chroot builds use nobody with /bin/false. + make tests || true +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + rm "${pkgdir}"/usr/share/man/man1/slogin.1 + ln -sf ssh.1.gz "${pkgdir}"/usr/share/man/man1/slogin.1.gz + + install -Dm644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENCE" + + install -Dm644 ../sshdgenkeys.service "${pkgdir}"/usr/lib/systemd/system/sshdgenkeys.service + install -Dm644 ../sshd@.service "${pkgdir}"/usr/lib/systemd/system/sshd@.service + install -Dm644 ../sshd.service "${pkgdir}"/usr/lib/systemd/system/sshd.service + install -Dm644 ../sshd.socket "${pkgdir}"/usr/lib/systemd/system/sshd.socket + install -Dm644 ../tmpfiles.d "${pkgdir}"/usr/lib/tmpfiles.d/openssh.conf + + install -Dm755 ../sshd.close-sessions "${pkgdir}/etc/rc.d/functions.d/sshd-close-sessions" # FS#17389 + install -Dm644 ../sshd.confd "${pkgdir}"/etc/conf.d/sshd + install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/sshd + install -Dm755 ../sshd "${pkgdir}"/etc/rc.d/sshd + + install -Dm755 contrib/findssl.sh "${pkgdir}"/usr/bin/findssl.sh + install -Dm755 contrib/ssh-copy-id "${pkgdir}"/usr/bin/ssh-copy-id + install -Dm644 contrib/ssh-copy-id.1 "${pkgdir}"/usr/share/man/man1/ssh-copy-id.1 + + sed \ + -e '/^#ChallengeResponseAuthentication yes$/c ChallengeResponseAuthentication no' \ + -e '/^#UsePAM no$/c UsePAM yes' \ + -i "${pkgdir}"/etc/ssh/sshd_config +} diff --git a/testing/openssh/sshd b/testing/openssh/sshd new file mode 100755 index 000000000..4bf4780f5 --- /dev/null +++ b/testing/openssh/sshd @@ -0,0 +1,45 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/sshd + +PIDFILE=/run/sshd.pid +PID=$(cat $PIDFILE 2>/dev/null) +if ! readlink -q /proc/$PID/exe | grep -q '^/usr/sbin/sshd'; then + PID= + rm $PIDFILE 2>/dev/null +fi + +case "$1" in + start) + stat_busy 'Starting Secure Shell Daemon' + /usr/bin/ssh-keygen -A + [[ -d /var/empty ]] || mkdir -p /var/empty + [[ -z $PID ]] && /usr/sbin/sshd $SSHD_ARGS + if [[ $? -gt 0 ]]; then + stat_fail + else + add_daemon sshd + stat_done + fi + ;; + stop) + stat_busy 'Stopping Secure Shell Daemon' + [[ ! -z $PID ]] && kill $PID &> /dev/null + if [[ $? -gt 0 ]]; then + stat_fail + else + rm_daemon sshd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/openssh/sshd.close-sessions b/testing/openssh/sshd.close-sessions new file mode 100644 index 000000000..be2a709fc --- /dev/null +++ b/testing/openssh/sshd.close-sessions @@ -0,0 +1,17 @@ +# Close sshd sessions before shutting down the network; see FS#17389. + +sshd_close_sessions () { + if ck_daemon sshd; then + return + fi + /etc/rc.d/sshd stop + stat_busy "Stopping Secure Shell Sessions" + for i in $(pgrep sshd); do + if readlink -q /proc/$i/exe | grep -q '^/usr/sbin/sshd'; then + kill $i + fi + done &>/dev/null + stat_done +} + +add_hook shutdown_start sshd_close_sessions diff --git a/testing/openssh/sshd.confd b/testing/openssh/sshd.confd new file mode 100644 index 000000000..5ce7c0079 --- /dev/null +++ b/testing/openssh/sshd.confd @@ -0,0 +1,4 @@ +# +# Parameters to be passed to sshd +# +SSHD_ARGS="" diff --git a/testing/openssh/sshd.pam b/testing/openssh/sshd.pam new file mode 100644 index 000000000..aeef8be27 --- /dev/null +++ b/testing/openssh/sshd.pam @@ -0,0 +1,13 @@ +#%PAM-1.0 +#auth required pam_securetty.so #Disable remote root +auth required pam_unix.so +auth required pam_env.so +account required pam_nologin.so +account required pam_unix.so +account required pam_time.so +password required pam_unix.so +session required pam_unix_session.so +session required pam_limits.so +session optional pam_loginuid.so +-session optional pam_ck_connector.so nox11 +-session optional pam_systemd.so diff --git a/testing/openssh/sshd.service b/testing/openssh/sshd.service new file mode 100644 index 000000000..7c8f88372 --- /dev/null +++ b/testing/openssh/sshd.service @@ -0,0 +1,19 @@ +[Unit] +Description=OpenSSH Daemon +After=sshdgenkeys.service + +[Service] +ExecStart=/usr/sbin/sshd -D +ExecReload=/bin/kill -HUP $MAINPID +KillMode=process +Restart=always + +[Install] +WantedBy=multi-user.target +Also=sshdgenkeys.service + +# Note that this is the service file for running a single SSH server for all +# incoming connections, suitable only for systems with a large amount of SSH +# traffic. In almost all other cases it is a better idea to use sshd.socket + +# sshd@.service (i.e. the on-demand spawning version for one instance per +# connection). diff --git a/testing/openssh/sshd.socket b/testing/openssh/sshd.socket new file mode 100644 index 000000000..6a67bfe86 --- /dev/null +++ b/testing/openssh/sshd.socket @@ -0,0 +1,10 @@ +[Unit] +Conflicts=sshd.service + +[Socket] +ListenStream=22 +Accept=yes + +[Install] +WantedBy=sockets.target +Also=sshdgenkeys.service diff --git a/testing/openssh/sshdgenkeys.service b/testing/openssh/sshdgenkeys.service new file mode 100644 index 000000000..47c1c3fd6 --- /dev/null +++ b/testing/openssh/sshdgenkeys.service @@ -0,0 +1,18 @@ +[Unit] +Description=SSH Key Generation +ConditionPathExists=|!/etc/ssh/ssh_host_key +ConditionPathExists=|!/etc/ssh/ssh_host_key.pub +ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key +ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key.pub +ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key +ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key.pub +ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key +ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key.pub + +[Service] +ExecStart=/usr/bin/ssh-keygen -A +Type=oneshot +RemainAfterExit=yes + +[Install] +WantedBy=multi-user.target diff --git a/testing/openssh/tmpfiles.d b/testing/openssh/tmpfiles.d new file mode 100644 index 000000000..7c5b26100 --- /dev/null +++ b/testing/openssh/tmpfiles.d @@ -0,0 +1 @@ +d /var/empty 0755 root root - diff --git a/testing/sane/PKGBUILD b/testing/sane/PKGBUILD new file mode 100644 index 000000000..a72581f79 --- /dev/null +++ b/testing/sane/PKGBUILD @@ -0,0 +1,72 @@ +# $Id: PKGBUILD 161936 2012-06-16 17:16:49Z dreisner $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca> +# Contributor: Simo L. <neotuli@yahoo.com> +# Contributor: eric <eric@archlinux.org> + +pkgname=sane +pkgver=1.0.22 +pkgrel=9 +pkgdesc="Scanner Access Now Easy" +url="http://www.sane-project.org/" +arch=('i686' 'x86_64') +license=('GPL') +depends=('libtiff>=4.0.0' 'libgphoto2>=2.4.7-2' 'libjpeg>=8' 'libusb-compat' 'libieee1284' 'v4l-utils' 'avahi' 'bash' 'net-snmp') +makedepends=('texlive-latexextra') +install=$pkgname.install +backup=(etc/sane.d/{abaton.conf,agfafocus.conf,apple.conf,artec.conf,artec_eplus48u.conf,avision.conf,bh.conf,canon.conf,canon630u.conf,canon_dr.conf,canon_pp.conf,cardscan.conf,coolscan2.conf,coolscan3.conf,coolscan.conf,dc25.conf,dc210.conf,dc240.conf,dell1600n_net.conf,dll.conf,dmc.conf,epjitsu.conf,epson.conf,epson2.conf,fujitsu.conf,genesys.conf,gphoto2.conf,gt68xx.conf,hp.conf,hp3900.conf,hp4200.conf,hp5400.conf,hpsj5s.conf,hs2p.conf,ibm.conf,kodak.conf,leo.conf,lexmark.conf,ma1509.conf,magicolor.conf,matsushita.conf,microtek.conf,microtek2.conf,mustek.conf,mustek_pp.conf,mustek_usb.conf,mustek_usb2.conf,nec.conf,net.conf,p5.conf,pie.conf,pixma.conf,plustek.conf,plustek_pp.conf,qcam.conf,ricoh.conf,rts8891.conf,s9036.conf,saned.conf,sceptre.conf,sharp.conf,sm3840.conf,snapscan.conf,sp15c.conf,st400.conf,stv680.conf,tamarack.conf,teco1.conf,teco2.conf,teco3.conf,test.conf,u12.conf,umax.conf,umax1220u.conf,umax_pp.conf,xerox_mfp.conf,v4l.conf} etc/xinetd.d/sane) +source=(ftp://ftp2.sane-project.org/pub/sane/$pkgname-backends-$pkgver/$pkgname-backends-$pkgver.tar.gz + 'sane.xinetd' + 'libv4l-0.8.3.patch' + 'xerox_mfp_fix_usb_devices.patch' + 'saned.socket' + 'saned.service') +options=(!libtool) +md5sums=('fadf56a60f4776bfb24491f66b617cf5' + 'da946cc36fb83612162cf9505986d4b2' + 'e645a8921cff9f18ffbdabb2ed885060' + 'cfef73e7db7c28308914d3db6767d852' + 'e57e9e15528f47f5f1b3f1411135ed5d' + 'e44bd4c994a52d6f472463d1eb0a03be') + +build() { + cd "${srcdir}/${pkgname}-backends-${pkgver}" + + patch -p1 -i "${srcdir}"/libv4l-0.8.3.patch + # fix https://bugs.archlinux.org/task/26114 + patch -Np1 -i "${srcdir}"/xerox_mfp_fix_usb_devices.patch + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --with-docdir=/usr/share/doc/sane \ + --enable-avahi \ + --enable-pthread \ + --disable-rpath \ + --disable-locking + make +} + +package () { + cd "${srcdir}/${pkgname}-backends-${pkgver}" + make DESTDIR="${pkgdir}" install + # fix hp officejets + echo "#hpaio" >> "${pkgdir}/etc/sane.d/dll.conf" + # install udev files + install -D -m0644 tools/udev/libsane.rules \ + "${pkgdir}/usr/lib/udev/rules.d/53-sane.rules" + # fix udev rules + sed -i 's|NAME="%k", ||g' "${pkgdir}/usr/lib/udev/rules.d/53-sane.rules" + + # install xinetd file + install -D -m644 "${srcdir}/sane.xinetd" "${pkgdir}/etc/xinetd.d/sane" + + # Install the pkg-config file + install -D -m644 tools/sane-backends.pc \ + "${pkgdir}/usr/lib/pkgconfig/sane-backends.pc" + # install systemd files + install -D -m644 ${srcdir}/saned.socket \ + "${pkgdir}/usr/lib/systemd/system/saned.socket" + install -D -m644 ${srcdir}/saned.service \ + "${pkgdir}/usr/lib/systemd/system/saned@.service" +} diff --git a/testing/sane/libv4l-0.8.3.patch b/testing/sane/libv4l-0.8.3.patch new file mode 100644 index 000000000..4e240e0cf --- /dev/null +++ b/testing/sane/libv4l-0.8.3.patch @@ -0,0 +1,64 @@ +From 26c69b228b29f612faf4b0cc85db969ee7cc4ea6 Mon Sep 17 00:00:00 2001 +From: Nils Philippsen <nils@redhat.com> +Date: Mon, 14 Mar 2011 13:35:05 +0100 +Subject: [PATCH] patch: v4l + +Squashed commit of the following: + +commit 23381932c76846191b42a48e505b37cd74711265 +Author: Julien BLACHE <jb@jblache.org> +Date: Wed Feb 16 19:37:43 2011 +0100 + + Fix v4l build with libv4l 0.8.3+ + + (cherry picked from commit c5ca46c2d1be78c651afb843cc834cf2b5b24953) + + Conflicts: + + ChangeLog + + Signed-off-by: Nils Philippsen <nils@redhat.com> +--- + backend/v4l.c | 3 +-- + backend/v4l.h | 3 ++- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/backend/v4l.c b/backend/v4l.c +index 6510ef0..38595ed 100644 +--- a/backend/v4l.c ++++ b/backend/v4l.c +@@ -84,9 +84,8 @@ + #include "../include/sane/sanei_config.h" + #define V4L_CONFIG_FILE "v4l.conf" + +-#include "v4l.h" +- + #include <libv4l1.h> ++#include "v4l.h" + + static const SANE_Device **devlist = NULL; + static int num_devices; +diff --git a/backend/v4l.h b/backend/v4l.h +index 588b96e..6aee586 100644 +--- a/backend/v4l.h ++++ b/backend/v4l.h +@@ -29,6 +29,7 @@ + #ifndef v4l_h + #define v4l_h + ++#ifndef __LINUX_VIDEODEV_H + /* Kernel interface */ + /* Only the stuff we need. For more features, more defines are needed */ + +@@ -165,7 +166,7 @@ struct video_channel + + + /* end of kernel interface */ +- ++#endif /* !__LINUX_VIDEODEV_H */ + + #include <../include/sane/sane.h> + +-- +1.7.4 + diff --git a/testing/sane/sane.install b/testing/sane/sane.install new file mode 100644 index 000000000..5ec361eea --- /dev/null +++ b/testing/sane/sane.install @@ -0,0 +1,7 @@ +post_install() { + /bin/cat <<THEEND +NOTE +---- +Add your user to group 'scanner' to use scanner devices. +THEEND +} diff --git a/testing/sane/sane.xinetd b/testing/sane/sane.xinetd new file mode 100644 index 000000000..b035664b4 --- /dev/null +++ b/testing/sane/sane.xinetd @@ -0,0 +1,11 @@ +service sane-port +{ + port = 6566 + socket_type = stream + wait = no + user = root + group = scanner + server = /usr/sbin/saned + # disabled by default! + disable = yes + } diff --git a/testing/sane/saned.service b/testing/sane/saned.service new file mode 100644 index 000000000..69e833e7e --- /dev/null +++ b/testing/sane/saned.service @@ -0,0 +1,8 @@ +[Unit] +Description=Scanner Service + +[Service] +Group=scanner +ExecStart=/usr/sbin/saned +StandardInput=socket +StandardError=syslog diff --git a/testing/sane/saned.socket b/testing/sane/saned.socket new file mode 100644 index 000000000..66ef9c9c8 --- /dev/null +++ b/testing/sane/saned.socket @@ -0,0 +1,9 @@ +[Unit] +Description=saned incoming socket + +[Socket] +ListenStream=6566 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/testing/sane/xerox_mfp_fix_usb_devices.patch b/testing/sane/xerox_mfp_fix_usb_devices.patch new file mode 100644 index 000000000..5ed29b974 --- /dev/null +++ b/testing/sane/xerox_mfp_fix_usb_devices.patch @@ -0,0 +1,67 @@ +commit 5ea227caeacd504b64eef301e83fa63e0a25b3f7 +Author: Alex Belkin <abc@telekom.ru> +Date: Tue Mar 8 17:57:19 2011 +0300 + + keep usb device by default (correct for bug introduced by tcp sub-backend + +diff --git a/backend/xerox_mfp.c b/backend/xerox_mfp.c +index e08b50f..d4672a7 100644 +--- a/backend/xerox_mfp.c ++++ b/backend/xerox_mfp.c +@@ -37,10 +37,10 @@ + static const SANE_Device **devlist = NULL; /* sane_get_devices array */ + static struct device *devices_head = NULL; /* sane_get_devices list */ + +-transport available_transports[] = { ++enum { TRANSPORT_USB, TRANSPORT_TCP, TRANSPORTS_MAX }; ++transport available_transports[TRANSPORTS_MAX] = { + { "usb", usb_dev_request, usb_dev_open, usb_dev_close, usb_configure_device }, + { "tcp", tcp_dev_request, tcp_dev_open, tcp_dev_close, tcp_configure_device }, +- { 0 } + }; + + static int resolv_state(int state) +@@ -824,7 +824,13 @@ free_devices (void) + devices_head = NULL; + } + +-/* SANE API ignores return code of this callback */ ++static transport *tr_from_devname(SANE_String_Const devname) ++{ ++ if (strncmp("tcp", devname, 3) == 0) ++ return &available_transports[TRANSPORT_TCP]; ++ return &available_transports[TRANSPORT_USB]; ++} ++ + static SANE_Status + list_one_device (SANE_String_Const devname) + { +@@ -839,12 +845,7 @@ list_one_device (SANE_String_Const devname) + return SANE_STATUS_GOOD; + } + +- for (tr = available_transports; tr->ttype; tr++) { +- if (!strncmp (devname, tr->ttype, strlen(tr->ttype))) +- break; +- } +- if (!tr->ttype) +- return SANE_STATUS_INVAL; ++ tr = tr_from_devname(devname); + + dev = calloc (1, sizeof (struct device)); + if (dev == NULL) +@@ -878,13 +879,7 @@ list_one_device (SANE_String_Const devname) + static SANE_Status + list_conf_devices (UNUSED (SANEI_Config * config), const char *devname) + { +- transport *tr; +- +- for (tr = available_transports; tr->ttype; tr++) { +- if (!strncmp (devname, tr->ttype, strlen(tr->ttype))) +- return tr->configure_device(devname, list_one_device); +- } +- return SANE_STATUS_INVAL; ++ return tr_from_devname(devname)->configure_device(devname, list_one_device); + } + + SANE_Status diff --git a/testing/smartmontools/PKGBUILD b/testing/smartmontools/PKGBUILD new file mode 100644 index 000000000..1cb08bd73 --- /dev/null +++ b/testing/smartmontools/PKGBUILD @@ -0,0 +1,46 @@ +# $Id: PKGBUILD 161937 2012-06-16 17:16:57Z dreisner $ +# Maintainer: Giovanni Scafora <giovanni@archlinux.org> +# Contributor: Jeff Mickey <jeff@archlinux.org> +# Contributor: Jani Talikka <jani.talikka@gmail.com> +# Contributor: Ralf Barth <archlinux.org@haggy.org> + +pkgname=smartmontools +pkgver=5.42 +pkgrel=4 +pkgdesc="Control and monitor S.M.A.R.T. enabled ATA and SCSI Hard Drives" +url="http://smartmontools.sourceforge.net" +license=('GPL') +arch=('i686' 'x86_64') +depends=('gcc-libs' 'libcap-ng' 'bash') +backup=('etc/smartd.conf' + 'etc/conf.d/smartd') +source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz" + 'smartd.conf' + 'smartd.rc') +md5sums=('4460bf9a79a1252ff5c00ba52cf76b2a' + '28c1b80c41dac52d433961dcfb4f70e0' + 'fb30e07f87f2c1d99532e018291ad3e8') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --enable-drivedb \ + --with-libcap-ng=yes \ + --with-systemdsystemunitdir=/usr/lib/systemd/system + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + sed -i -e "s:sysconfig/smartmontools:conf.d/smartd:g" smartd.service + sed -i -e "s:smartd_opts:SMARTD_ARGS:g" smartd.service + + make DESTDIR="${pkgdir}" install + + rm -rf ${pkgdir}/etc/rc.d + install -Dm755 ${srcdir}/smartd.rc "${pkgdir}/etc/rc.d/smartd" + install -Dm644 ${srcdir}/smartd.conf "${pkgdir}/etc/conf.d/smartd" +} diff --git a/testing/smartmontools/smartd.conf b/testing/smartmontools/smartd.conf new file mode 100644 index 000000000..f14870abf --- /dev/null +++ b/testing/smartmontools/smartd.conf @@ -0,0 +1 @@ +SMARTD_ARGS="" diff --git a/testing/smartmontools/smartd.rc b/testing/smartmontools/smartd.rc new file mode 100755 index 000000000..16920db12 --- /dev/null +++ b/testing/smartmontools/smartd.rc @@ -0,0 +1,39 @@ +#!/bin/bash + +# source application-specific settings +SMARTD_ARGS= +[ -f /etc/conf.d/smartd ] && . /etc/conf.d/smartd + +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + + start) + stat_busy "Starting smartd" + /usr/sbin/smartd ${SMARTD_ARGS} &>/dev/null + if [ $? -ne 0 ]; then + stat_fail + else + add_daemon smartd + stat_done + fi + ;; + + stop) + stat_busy "Stopping smartd" + kill -9 `pidof /usr/sbin/smartd` &>/dev/null + rm_daemon smartd + stat_done + ;; + + restart) + stat_busy "Restarting smartd ..." + $0 stop + $0 start + stat_done + ;; + + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/testing/squid/PKGBUILD b/testing/squid/PKGBUILD new file mode 100644 index 000000000..6620d2ffd --- /dev/null +++ b/testing/squid/PKGBUILD @@ -0,0 +1,94 @@ +# $Id: PKGBUILD 161938 2012-06-16 17:17:12Z dreisner $ +# Maintainer: Kevin Piche <kevin@archlinux.org> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> + +pkgname=squid +pkgver=3.1.20 +pkgrel=2 +pkgdesc="A full-featured Web proxy cache server." +arch=('i686' 'x86_64') +url="http://www.squid-cache.org" +depends=('openssl' 'pam' 'cron' 'perl' 'libltdl') +makedepends=('libcap') +license=('GPL') +backup=('etc/squid/squid.conf' + 'etc/squid/mime.conf' + 'etc/conf.d/squid') +install=squid.install +source=("http://www.squid-cache.org/Versions/v3/3.1/$pkgname-$pkgver.tar.bz2" + 'squid' + 'squid.conf.d' + 'squid.pam' + 'squid.cron' + 'squid.service') +md5sums=('c4d733a383c0508fd0746d64a2d7278a' + '02f7b5bd793f778e40834fd6457d2199' + '2383772ef94efddc7b920628bc7ac5b0' + '270977cdd9b47ef44c0c427ab9034777' + 'b499c2b725aefd7bd60bec2f1a9de392' + '20e00e1aa1198786795f3da32db3c1d8') + +build() { + cd "$pkgname-$pkgver" + + # gcc 4.6 doesn't support -fhuge-objects. + sed '/^ HUGE_OBJECT_FLAG=/ s/"-fhuge-objects"//' -i configure + + # fix cache_dir, cache_dir size, and effective group. + sed '/^DEFAULT_SWAP_DIR/ s@/cache@/cache/squid@' -i src/Makefile.in + sed '/^#cache_dir/ s/100/256/ + /^NAME: cache_effective_group/ {n;n;s/none/proxy/}' -i src/cf.data.pre + + ./configure \ + --prefix=/usr \ + --datadir=/usr/share/squid \ + --sysconfdir=/etc/squid \ + --libexecdir=/usr/lib/squid \ + --localstatedir=/var \ + --with-logdir=/var/log/squid \ + --with-pidfile=/run/squid.pid \ + --enable-auth="basic,digest,ntlm" \ + --enable-removal-policies="lru,heap" \ + --enable-digest-auth-helpers="password" \ + --enable-storeio="aufs,ufs,diskd" \ + --enable-basic-auth-helpers="getpwnam,YP,NCSA,SMB,MSNT,PAM,multi-domain-NTLM" \ + --enable-external-acl-helpers="ip_user,unix_group,wbinfo_group" \ + --enable-ntlm-auth-helpers="smb_lm,fakeauth,no_check" \ + --enable-delay-pools \ + --enable-arp-acl \ + --enable-ssl \ + --enable-snmp \ + --enable-linux-netfilter \ + --enable-ident-lookups \ + --enable-useragent-log \ + --enable-cache-digests \ + --enable-referer-log \ + --enable-arp-acl \ + --enable-htcp \ + --enable-carp \ + --enable-epoll \ + --with-filedescriptors=4096 \ + --with-large-files \ + --enable-arp-acl \ + --with-default-user=proxy \ + --enable-async-io \ + --enable-truncate + + make +} + +package() { + make -C "$pkgname-$pkgver" DESTDIR="$pkgdir" install + + install -Dm755 "$srcdir"/squid "$pkgdir"/etc/rc.d/squid + install -Dm755 "$srcdir"/squid.cron "$pkgdir"/etc/cron.weekly/squid + install -Dm644 "$srcdir"/squid.conf.d "$pkgdir"/etc/conf.d/squid + install -Dm644 "$srcdir"/squid.pam "$pkgdir"/etc/pam.d/squid + + install -Dm644 "$srcdir/squid.service" "$pkgdir/usr/lib/systemd/system/squid.service" + + # random unneeded empty dir... + rmdir "$pkgdir/usr/include" +} + +# vim: ts=2 sw=2 et ft=sh diff --git a/testing/squid/squid b/testing/squid/squid new file mode 100644 index 000000000..da5534427 --- /dev/null +++ b/testing/squid/squid @@ -0,0 +1,48 @@ +#!/bin/bash + +# source application-specific settings +[[ -f /etc/conf.d/squid ]] && . /etc/conf.d/squid + +. /etc/rc.conf +. /etc/rc.d/functions + +pidfile=/run/squid.pid +{ read -r PID </run/squid.pid; } 2>/dev/null +if [[ $pid && ! /proc/$pid/exe -ef /usr/sbin/squid ]]; then + rm /run/squid.pid +fi + +case $1 in + start) + stat_busy "Starting squid" + if [[ $PID ]] || ! squid $SQUID_ARGS; then + stat_fail + else + add_daemon squid + stat_done + fi + ;; + + stop) + stat_busy "Stopping squid" + if [[ -z $PID ]] || ! squid -k shutdown &>/dev/null; then + stat_fail + else + # squid takes forever to shutdown all its listening FDs + while [[ /proc/$PID/exe -ef /usr/sbin/squid ]]; do + stat_append "." + sleep 3 + done + rm_daemon squid + stat_done + fi + ;; + + restart) + $0 stop + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/testing/squid/squid.conf.d b/testing/squid/squid.conf.d new file mode 100644 index 000000000..ea248b76c --- /dev/null +++ b/testing/squid/squid.conf.d @@ -0,0 +1,4 @@ +# +# Parameters to be passed to squid +# +SQUID_ARGS="-sYC" diff --git a/testing/squid/squid.cron b/testing/squid/squid.cron new file mode 100644 index 000000000..c78e51105 --- /dev/null +++ b/testing/squid/squid.cron @@ -0,0 +1,9 @@ +#!/bin/sh + +# exit without error if no pidfile exists +{ read pid </run/squid.pid; } 2>/dev/null || exit 0 + +# make sure found PID really is a squid process +if [ /proc/$pid/exec -ef /usr/sbin/squid ]; then + /usr/sbin/squid -k rotate +fi diff --git a/testing/squid/squid.install b/testing/squid/squid.install new file mode 100644 index 000000000..e7aa5ff68 --- /dev/null +++ b/testing/squid/squid.install @@ -0,0 +1,26 @@ +post_install() { + if [ -z "$(grep ^proxy: /etc/group)" ]; then + usr/sbin/groupadd -g 15 proxy &>/dev/null + fi + + id proxy &>/dev/null || \ + usr/sbin/useradd -u 15 -g proxy -d /var/empty proxy + + chown proxy.proxy var/{cache,log}/squid + +# cat << EOF +#Release notes: http://www.squid-cache.org/Versions/v3/3.1/RELEASENOTES.html +#EOF +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + usr/sbin/userdel proxy &> /dev/null + if [ ! -z "$(grep ^proxy: /etc/group)" ]; then + usr/sbin/groupdel proxy &>/dev/null + fi +} + diff --git a/testing/squid/squid.pam b/testing/squid/squid.pam new file mode 100644 index 000000000..df8a8104f --- /dev/null +++ b/testing/squid/squid.pam @@ -0,0 +1,4 @@ +#/etc/pam.d/squid +# +auth required pam_unix.so +account required pam_unix.so diff --git a/testing/squid/squid.service b/testing/squid/squid.service new file mode 100644 index 000000000..9d41cc243 --- /dev/null +++ b/testing/squid/squid.service @@ -0,0 +1,13 @@ +[Unit] +Description=Web Proxy Cache Server +After=network.target + +[Service] +Type=forking +PIDFile=/run/squid.pid +ExecStart=/usr/sbin/squid -sYC +ExecStop=/usr/sbin/squid -k shutdown +ExecReload=/usr/sbin/squid -k reconfigure + +[Install] +WantedBy=multi-user.target diff --git a/testing/yp-tools/PKGBUILD b/testing/yp-tools/PKGBUILD new file mode 100644 index 000000000..c4214a550 --- /dev/null +++ b/testing/yp-tools/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 161940 2012-06-16 17:17:17Z dreisner $ +# Mantainer: Tom Gundersen <teg@jklm.no> +# Contributor: Gaetan Bisson <bisson@archlinux.org> +# Contributor: dorphell <dorphell@archlinux.org> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> + +pkgname=yp-tools +pkgver=2.12 +pkgrel=3 +pkgdesc='Linux NIS Tools' +arch=('i686' 'x86_64') +url='http://www.linux-nis.org/nis/yp-tools/' +license=('GPL2') +depends=('ypbind-mt') +#source=("ftp://ftp.kernel.org/pub/linux/utils/net/NIS/$pkgname-$pkgver.tar.gz") +source=("ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.bz2" + 'domainname.service') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + install -D -m644 ../domainname.service "${pkgdir}/usr/lib/systemd/service/domainname.service" +} +md5sums=('ce1e06d86caa285fa8cd76fdf103f51e' + '8d354b76eb0df9a3b06637bfff87453b') diff --git a/testing/yp-tools/domainname.service b/testing/yp-tools/domainname.service new file mode 100644 index 000000000..035f767c8 --- /dev/null +++ b/testing/yp-tools/domainname.service @@ -0,0 +1,11 @@ +[Unit] +Description=NIS Domainname + +[Service] +Type=oneshot +EnvironmentFile=/etc/conf.d/nisdomainname +ExecStart=/usr/bin/nisdomainname $NISDOMAINNAME +RemainAfterExit=true + +[Install] +WantedBy=multi-user.target diff --git a/testing/ypbind-mt/PKGBUILD b/testing/ypbind-mt/PKGBUILD new file mode 100644 index 000000000..99213a1d9 --- /dev/null +++ b/testing/ypbind-mt/PKGBUILD @@ -0,0 +1,50 @@ +# $Id: PKGBUILD 161942 2012-06-16 17:17:28Z dreisner $ +# Maintainer: Tom Gundersen <teg@jklm.no> +# Contributor: Gaetan Bisson <bisson@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> + +pkgname=ypbind-mt +pkgver=1.33 +pkgrel=5 +pkgdesc='Linux NIS daemon' +url='http://www.linux-nis.org/nis/ypbind-mt/' +license=('GPL2') +arch=('i686' 'x86_64') +makedepends=('networkmanager') +depends=('rpcbind' 'openslp' 'dbus-glib' 'yp-tools') +backup=('etc/yp.conf' 'etc/conf.d/ypbind' 'etc/conf.d/nisdomainname') +#source=("ftp://ftp.kernel.org/pub/linux/utils/net/NIS/${pkgname}-${pkgver}.tar.gz" +source=("ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.bz2" + 'nisdomainname.conf' + 'ypbind.conf' + 'ypbind' + 'ypbind.service') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --enable-dbus-nm \ + + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + + install -D -m644 etc/yp.conf "${pkgdir}"/etc/yp.conf + install -D -m755 ../ypbind "${pkgdir}"/etc/rc.d/ypbind + install -D -m644 ../ypbind.conf "${pkgdir}"/etc/conf.d/ypbind + install -D -m644 ../nisdomainname.conf "${pkgdir}"/etc/conf.d/nisdomainname + install -D -m644 ../ypbind.service "${pkgdir}"/usr/lib/systemd/system/ypbind.service + install -d -m755 "${pkgdir}"/var/yp/binding +} +md5sums=('692f68ed0476762be4228ce543a5b791' + 'e83a85291ea2ee152a78f2c16b0b1185' + '229309a989abad27703ac2e6d07dc7ae' + '1f7a4c80414d580c9afb3a08267beed0' + '88a721095e334cd442f4649a151ba9be') diff --git a/testing/ypbind-mt/nisdomainname.conf b/testing/ypbind-mt/nisdomainname.conf new file mode 100644 index 000000000..bbbbf8fc7 --- /dev/null +++ b/testing/ypbind-mt/nisdomainname.conf @@ -0,0 +1,4 @@ +# +# NIS domain to be set in /etc/rc.d/ypbind +# +NISDOMAINNAME="" diff --git a/testing/ypbind-mt/ypbind b/testing/ypbind-mt/ypbind new file mode 100755 index 000000000..6a5ef11e3 --- /dev/null +++ b/testing/ypbind-mt/ypbind @@ -0,0 +1,35 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +. /etc/conf.d/ypbind +. /etc/conf.d/nisdomainname + +name=ypbind +PID=$(pidof -o %PPID /usr/sbin/ypbind) + +case "$1" in +start) + stat_busy "Starting $name daemon" + [[ -n $NISDOMAINNAME ]] && /usr/bin/domainname "$NISDOMAINNAME" &>/dev/null + [[ -z "$PID" ]] && /usr/sbin/ypbind $YPBIND_ARGS &>/dev/null \ + && { add_daemon $name; stat_done; } \ + || { stat_fail; exit 1; } + ;; +stop) + stat_busy "Stopping $name daemon" + [[ -n "$PID" ]] && kill $PID &>/dev/null \ + && { rm_daemon $name; stat_done; } \ + || { stat_fail; exit 1; } + ;; +restart) + $0 stop + sleep 1 + $0 start + ;; +*) + echo "usage: $0 {start|stop|restart}" + exit 1 + ;; +esac diff --git a/testing/ypbind-mt/ypbind.conf b/testing/ypbind-mt/ypbind.conf new file mode 100644 index 000000000..fd0ebd491 --- /dev/null +++ b/testing/ypbind-mt/ypbind.conf @@ -0,0 +1,4 @@ +# +# Parameters to be passed to ypbind +# +YPBIND_ARGS="" diff --git a/testing/ypbind-mt/ypbind.service b/testing/ypbind-mt/ypbind.service new file mode 100644 index 000000000..c59231000 --- /dev/null +++ b/testing/ypbind-mt/ypbind.service @@ -0,0 +1,13 @@ +[Unit] +Description=YP Bind +Requires=rpcbind.service domainname.service +After=rpcbind.service domainname.service network.target +Before=systemd-user-sessions.service + +[Service] +Type=forking +PIDFile=/run/ypbind.pid +ExecStart=/usr/sbin/ypbind + +[Install] +WantedBy=multi-user.target |