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