diff options
Diffstat (limited to 'community-testing/polipo')
-rw-r--r-- | community-testing/polipo/PKGBUILD | 55 | ||||
-rw-r--r-- | community-testing/polipo/polipo.conf.d | 4 | ||||
-rw-r--r-- | community-testing/polipo/polipo.cron | 2 | ||||
-rw-r--r-- | community-testing/polipo/polipo.install | 25 | ||||
-rw-r--r-- | community-testing/polipo/polipo.rc.d | 71 | ||||
-rw-r--r-- | community-testing/polipo/polipo.service | 10 |
6 files changed, 167 insertions, 0 deletions
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 |