mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
added aur/squid
This commit is contained in:
parent
b969054587
commit
90daaaca9a
7 changed files with 198 additions and 0 deletions
94
aur/squid/PKGBUILD
Normal file
94
aur/squid/PKGBUILD
Normal file
|
@ -0,0 +1,94 @@
|
||||||
|
# $Id: PKGBUILD 161334 2012-06-09 22:30:24Z 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
|
48
aur/squid/squid
Normal file
48
aur/squid/squid
Normal file
|
@ -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
|
4
aur/squid/squid.conf.d
Normal file
4
aur/squid/squid.conf.d
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
#
|
||||||
|
# Parameters to be passed to squid
|
||||||
|
#
|
||||||
|
SQUID_ARGS="-sYC"
|
9
aur/squid/squid.cron
Normal file
9
aur/squid/squid.cron
Normal file
|
@ -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
|
26
aur/squid/squid.install
Normal file
26
aur/squid/squid.install
Normal file
|
@ -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
|
||||||
|
}
|
||||||
|
|
4
aur/squid/squid.pam
Normal file
4
aur/squid/squid.pam
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
#/etc/pam.d/squid
|
||||||
|
#
|
||||||
|
auth required pam_unix.so
|
||||||
|
account required pam_unix.so
|
13
aur/squid/squid.service
Normal file
13
aur/squid/squid.service
Normal file
|
@ -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
|
Loading…
Reference in a new issue