From a2165b238194d7b710665b58b0701a2cfb240bb4 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Wed, 5 Nov 2014 13:29:23 -0300 Subject: memlockd --- pcr/memlockd/PKGBUILD | 28 ++++++++++++++++++++++++++++ pcr/memlockd/memlockd.install | 22 ++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 pcr/memlockd/PKGBUILD create mode 100644 pcr/memlockd/memlockd.install diff --git a/pcr/memlockd/PKGBUILD b/pcr/memlockd/PKGBUILD new file mode 100644 index 000000000..a24d1b597 --- /dev/null +++ b/pcr/memlockd/PKGBUILD @@ -0,0 +1,28 @@ +# Contributor: fauno +pkgname=memlockd +pkgver=1.1.1 +pkgrel=1 +pkgdesc="daemon that locks files into memory" +arch=('i686' 'x86_64') +url="http://doc.coker.com.au/projects/memlockd/" +license=('GPL3') +depends=('glibc') +# main site doesn't announce 1.1.1 +source=(http://ftp.de.debian.org/debian/pool/main/${pkgname:0:1}/${pkgname}/${pkgname}_${pkgver}.tar.gz) +install=${pkgname}.install +backup=(etc/memlockd.cfg) +md5sums=('5e7a895b032eaa55f8cf15104e43364d') + +build() { + cd "$srcdir/$pkgname-$pkgver" + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + install -d -m 750 "${pkgdir}/usr/lib/memlockd" "${pkgdir}/etc/memlockd.d" + install -D -m 644 memlockd.8 "${pkgdir}/usr/share/man/man8/memlockd.8" + install -D -m 755 memlockd "${pkgdir}/usr/bin/memlockd" + install -D -m 640 memlockd.cfg "${pkgdir}/etc/memlockd.cfg" + install -D -m 644 memlockd.service "${pkgdir}/usr/lib/systemd/system/memlockd.service" +} diff --git a/pcr/memlockd/memlockd.install b/pcr/memlockd/memlockd.install new file mode 100644 index 000000000..a744f441a --- /dev/null +++ b/pcr/memlockd/memlockd.install @@ -0,0 +1,22 @@ +#!/bin/sh +# arg 1: the new package version +post_install() { + getent group memlockd >/dev/null || + groupadd --system memlockd + + getent passwd memlockd >/dev/null || + useradd --system \ + --gid memlockd \ + --shell /bin/false \ + --no-create-home \ + --home /usr/lib/memlockd \ + memlockd + + chown memlockd:memlockd /usr/lib/memlockd /etc/memlockd.d +} + +# arg 1: the old package version +pre_remove() { + userdel memlockd &>/dev/null + groupdel memlockd &>/dev/null +} -- cgit v1.2.3-54-g00ecf From 59979e3850945193f75cc64a7cd29c7d006943df Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Fri, 12 Dec 2014 17:12:27 -0300 Subject: mosquitto 1.3.5 --- pcr/mosquitto/PKGBUILD | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pcr/mosquitto/PKGBUILD b/pcr/mosquitto/PKGBUILD index 3777d5676..ebd2784d4 100644 --- a/pcr/mosquitto/PKGBUILD +++ b/pcr/mosquitto/PKGBUILD @@ -4,7 +4,7 @@ # Contributor: Dan Anderson pkgname=mosquitto -pkgver=1.3.2 +pkgver=1.3.5 pkgrel=1 pkgdesc="An Open Source MQTT v3.1 Broker" arch=('i686' 'x86_64' 'arm' 'armv6h' 'armv7h' 'mips64el') @@ -14,12 +14,6 @@ makedepends=('python' 'docbook-xsl' 'c-ares') license=('custom:BSD' 'custom:OpenSSL') source=(http://mosquitto.org/files/source/$pkgname-$pkgver.tar.gz{,.asc} "$pkgname.service" "$pkgname.install" "docbook.patch" "usr_move.patch") install=$pkgname.install -md5sums=('5d2fe7c8bf2518eb9829547751c04bbf' - 'SKIP' - '83dcdd5318ffe33d112b4b7a55269f05' - 'bfabddbce1d8c856cbb52517a7917d4c' - '8e1c14e99d7eba210b874e80b5153f0d' - 'b37551bbdccf751cdc5ea5b25afd2f5a') prepare() { cd "$srcdir/$pkgname-$pkgver" @@ -47,3 +41,9 @@ package() { install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE" install -Dm644 LICENSE-3rd-party.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE-3rd-party" } +md5sums=('55094ad4dc7c7985377f43d4fc3d09da' + 'SKIP' + '83dcdd5318ffe33d112b4b7a55269f05' + 'bfabddbce1d8c856cbb52517a7917d4c' + '8e1c14e99d7eba210b874e80b5153f0d' + 'b37551bbdccf751cdc5ea5b25afd2f5a') -- cgit v1.2.3-54-g00ecf From 3f6441ae46acbd6ccf113159a52d5b00c4fd6a4e Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Sun, 14 Dec 2014 14:33:51 -0300 Subject: knot 1.6.1 --- pcr/knot/PKGBUILD | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pcr/knot/PKGBUILD b/pcr/knot/PKGBUILD index 90586f1ae..c297aa299 100644 --- a/pcr/knot/PKGBUILD +++ b/pcr/knot/PKGBUILD @@ -4,14 +4,14 @@ # Contributor: Otto Sabart pkgname=knot -pkgver=1.5.3 +pkgver=1.6.1 pkgrel=1 pkgdesc='high-performance authoritative-only DNS server' url='https://www.knot-dns.cz/' arch=('i686' 'x86_64') license=('GPL3') install=install -depends=('liburcu>=0.5.4' 'openssl>=1.0.0' 'zlib') +depends=('liburcu' 'openssl>=1.0.0' 'zlib') makedepends=('autoconf>=2.65' 'libtool' 'flex>=2.5.3' 'bison>=2.3') source=("https://secure.nic.cz/files/knot-dns/${pkgname}-${pkgver}.tar.xz" 'knot.service') @@ -48,3 +48,5 @@ check() { cd "${srcdir}/${pkgname}-${pkgver}" make check } +md5sums=('c726ebf12fd2f325da8407538a2124f2' + '4f775e901f66bf4c9d231493eeb8d72a') -- cgit v1.2.3-54-g00ecf From a1a812593f4cd2a80e9725c928184ed95275cf35 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Mon, 22 Dec 2014 09:40:59 -0300 Subject: patched tahoe --- ...auto_deps-Workaround-dep-resolution-issue.patch | 48 ++++++++++++++++++++++ pcr/tahoe-lafs/PKGBUILD | 14 +++++-- 2 files changed, 59 insertions(+), 3 deletions(-) create mode 100644 pcr/tahoe-lafs/0001-auto_deps-Workaround-dep-resolution-issue.patch diff --git a/pcr/tahoe-lafs/0001-auto_deps-Workaround-dep-resolution-issue.patch b/pcr/tahoe-lafs/0001-auto_deps-Workaround-dep-resolution-issue.patch new file mode 100644 index 000000000..e50ec14c2 --- /dev/null +++ b/pcr/tahoe-lafs/0001-auto_deps-Workaround-dep-resolution-issue.patch @@ -0,0 +1,48 @@ +From 8899e10098990adb688433f3209e277391aad5f3 Mon Sep 17 00:00:00 2001 +From: Kyle Manna +Date: Sun, 21 Dec 2014 23:32:59 -0800 +Subject: [PATCH] auto_deps: Workaround dep resolution issue + +Errors: + + tahoe[5580]: Traceback (most recent call last): + tahoe[5580]: File "/usr/bin/tahoe", line 6, in + tahoe[5580]: from pkg_resources import load_entry_point + tahoe[5580]: File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 2951, in + tahoe[5580]: working_set = WorkingSet._build_master() + tahoe[5580]: File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 563, in _build_master + tahoe[5580]: return cls._build_from_requirements(__requires__) + tahoe[5580]: File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 576, in _build_from_requirements + tahoe[5580]: dists = ws.resolve(reqs, Environment()) + tahoe[5580]: File "/usr/lib/python2.7/site-packages/pkg_resources.py", line 755, in resolve + tahoe[5580]: raise DistributionNotFound(req) + tahoe[5580]: pkg_resources.DistributionNotFound: pycrypto==2.1.0,==2.3,>=2.4.1 +--- + src/allmydata/_auto_deps.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/allmydata/_auto_deps.py b/src/allmydata/_auto_deps.py +index b7be321..3e93134 100644 +--- a/src/allmydata/_auto_deps.py ++++ b/src/allmydata/_auto_deps.py +@@ -16,7 +16,7 @@ install_requires = [ + + # zope.interface >= 3.6.0 is required for Twisted >= 12.1.0. + # zope.interface 3.6.3 and 3.6.4 are incompatible with Nevow (#1435). +- "zope.interface == 3.6.0, == 3.6.1, == 3.6.2, >= 3.6.5", ++ "zope.interface >= 3.6.5", + + # * On Windows we need at least Twisted 9.0 to avoid an indirect + # dependency on pywin32. +@@ -55,7 +55,7 @@ install_requires = [ + # Needed for SFTP. pyasn1 is needed by twisted.conch in Twisted >= 9.0. + # pycrypto 2.2 doesn't work due to https://bugs.launchpad.net/pycrypto/+bug/620253 + # pycrypto 2.4 doesn't work due to https://bugs.launchpad.net/pycrypto/+bug/881130 +- "pycrypto == 2.1.0, == 2.3, >= 2.4.1", ++ "pycrypto >= 2.4.1", + "pyasn1 >= 0.0.8a", + + # http://www.voidspace.org.uk/python/mock/ , 0.8.0 provides "call" +-- +2.2.1 + diff --git a/pcr/tahoe-lafs/PKGBUILD b/pcr/tahoe-lafs/PKGBUILD index e47b3b05e..a9937ba82 100644 --- a/pcr/tahoe-lafs/PKGBUILD +++ b/pcr/tahoe-lafs/PKGBUILD @@ -2,7 +2,7 @@ # Contributor (Arch): Nicolas Pouillard pkgname=tahoe-lafs pkgver=1.10.0 -pkgrel=1 +pkgrel=2 pkgdesc="a secure, decentralized, fault-tolerant filesystem" arch=('any') url='http://tahoe-lafs.org/' @@ -12,13 +12,21 @@ depends=('net-tools' 'python2' 'python2-zope-interface>=3.6.5' 'twisted' 'python2-pyasn1' 'python2-crypto' 'pycryptopp' 'nevow' 'python2-foolscap' 'python2-simplejson' 'zfec' 'python2-pyopenssl' 'pyutil' 'python2-argparse' 'zbase32' 'python2-mock>=0.8.0') -source=(nodaemon.patch https://tahoe-lafs.org/source/tahoe-lafs/releases/allmydata-tahoe-$pkgver.tar.bz2) +source=(nodaemon.patch + 0001-auto_deps-Workaround-dep-resolution-issue.patch + https://tahoe-lafs.org/source/tahoe-lafs/releases/allmydata-tahoe-$pkgver.tar.bz2) sha256sums=('7fb13a50bdca729b9c78f12369e56fccf55594b646bddb270d55c08c83ce3449' + '055079c36e58a604765312eeb98df4133c77634bdb9a88da5a8c0142ea9e4e10' '9c5516700fe95fdf8c57eca1e2a7b4aebf2de9a4d327d50afd684ebf833ccfe2') -build(){ +prepare() { cd "$srcdir/allmydata-tahoe-$pkgver" patch -p0 < ../nodaemon.patch + patch -p1 < ../0001-auto_deps-Workaround-dep-resolution-issue.patch +} + +build(){ + cd "$srcdir/allmydata-tahoe-$pkgver" python2 setup.py build # disabled due to the nodaemon patch and the test_filesystem* tests #python2 setup.py test || return 1 -- cgit v1.2.3-54-g00ecf From 52e1ad75f96ccb08d093050faa943e076a4bcfe5 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Mon, 22 Dec 2014 10:05:37 -0300 Subject: gnu anubis upgrade --- pcr/anubis/PKGBUILD | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/pcr/anubis/PKGBUILD b/pcr/anubis/PKGBUILD index 1b345a943..8674da32f 100644 --- a/pcr/anubis/PKGBUILD +++ b/pcr/anubis/PKGBUILD @@ -1,25 +1,32 @@ # Maintainer: Nicolás Reynolds # Contributor (Arch): Nathan Owe pkgname=anubis -pkgver=4.1.1 -pkgrel=2 +pkgver=4.2 +pkgrel=1 pkgdesc="An SMTP message submission daemon. " -arch=('i686') +arch=('i686' 'x86_64') url="http://www.gnu.org/software/anubis/" license=('GPL3') -depends=('guile' 'gpgme' 'gnutls' 'gsasl' 'pam' 'pcre' 'tcp_wrappers') -source=(ftp://ftp.gnu.org/gnu/anubis/$pkgname-$pkgver.tar.gz) -md5sums=('28df4daee11bc74a9e4b19b425d8a196') +depends=('guile' 'gpgme' 'gnutls' 'gsasl' 'pam' 'pcre') +makedepends=('libmariadbclient' 'postgresql-libs') +source=(ftp://ftp.gnu.org/gnu/anubis/$pkgname-$pkgver.tar.gz{,.sig}) +md5sums=('3ca1dd378ba72900a432004cb9db935f' SKIP) build() { cd $srcdir/$pkgname-$pkgver ./configure --prefix=/usr \ + --with-guile \ --with-pam \ + --with-mysql \ + --with-postgres \ --with-pcre \ - --with-tcp-wrappers \ + --without-tcp-wrappers \ --with-socks-proxy - make + + # For some reason the GUILE_INCLUDES variable is set but not used + # during build. + make CFLAGS="$CFLAGS $(guile-config compile)" } package() { -- cgit v1.2.3-54-g00ecf From 9f826fd2a16388e1a64cfe9578adabb5e3ea2fe1 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Mon, 22 Dec 2014 10:20:41 -0300 Subject: python2-potr: this version solves a bug making weechat-otr lag --- pcr/python2-potr/PKGBUILD | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/pcr/python2-potr/PKGBUILD b/pcr/python2-potr/PKGBUILD index e3cbe4651..d6d154056 100644 --- a/pcr/python2-potr/PKGBUILD +++ b/pcr/python2-potr/PKGBUILD @@ -1,8 +1,8 @@ # Maintainer (Arch): Michael Düll pkgname=python2-potr -pkgver=1.0.0 -pkgrel=4 +pkgver=1.0.1 +pkgrel=1 pkgdesc="This is a pure Python2 OTR implementation; it does not bind to libotr." arch=(any) url="https://github.com/afflux/pure-python-otr" @@ -12,16 +12,10 @@ conflicts=('python-potr-git' 'python-potr') replaces=('python-potr') #options=(!emptydirs) source=("https://github.com/python-otr/pure-python-otr/archive/${pkgver}.tar.gz") -sha512sums=('46b0dab24cab68e695661c5982ba25823e39540ecef7e90693898342f44e52afa549d8708166ebef81474aee3f846d8b76690e3061fa1bc65147e804751f8f48') +sha512sums=('db76af179d6ed7276ecdca7f16da8e1ed4e2454ce66a269016833c87a512e165bea6afd3b2785f863d183611530a0f6c3793f1620be1f01ab6bb6c3963b874da') PYTHON=`which python2` -#build() { -# cd $srcdir/afflux* -# set_python2 -# $PYTHON ./setup.py build -#} - prepare() { cd $srcdir/pure-python-otr-${pkgver} set_python2 -- cgit v1.2.3-54-g00ecf From 8a263949cc384afcb12fc79f8b1b089ec458148d Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Mon, 22 Dec 2014 10:55:21 -0300 Subject: tinc-pre upgrade --- pcr/tinc-pre/PKGBUILD | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/pcr/tinc-pre/PKGBUILD b/pcr/tinc-pre/PKGBUILD index ebbd4cc3f..5c9c306e9 100644 --- a/pcr/tinc-pre/PKGBUILD +++ b/pcr/tinc-pre/PKGBUILD @@ -1,6 +1,6 @@ pkgname=tinc-pre -pkgver=1.1pre7 -pkgrel=2 +pkgver=1.1pre10 +pkgrel=1 pkgdesc="VPN (Virtual Private Network) daemon (Pre-release)" arch=(i686 x86_64) url="http://www.tinc-vpn.org/" @@ -11,6 +11,9 @@ provides=('tinc-pre') conflicts=('tinc') source=(http://www.tinc-vpn.org/packages/tinc-$pkgver.tar.gz{,.sig} tincd@.service) +sha256sums=('3a6a47d70c5e890b45ec570e9a6b1ad69a18ff33d401e2d38ecbb892ac468e7a' + 'SKIP' + '43d086b76e2a6ff6d91a2ace2d6d048fc7109fefecd5047ab6c437ba0e9252ed') build() { cd "$srcdir/tinc-$pkgver" @@ -34,9 +37,3 @@ package() { sed -e 's,#!/usr/bin/python,#!/usr/bin/python2,' \ -i $pkgdir/usr/bin/tinc-gui } -sha1sums=('62a014356864c3a5204edd6e934f3ee575760cfc' - 'SKIP' - '6ab485732bb6c59e7e0e162f22251a0f554ec69c') -sha256sums=('ff330627ad0d6ce1233408bb75b11d7506be13eb0c802ff1657866d97545074b' - 'SKIP' - '43d086b76e2a6ff6d91a2ace2d6d048fc7109fefecd5047ab6c437ba0e9252ed') -- cgit v1.2.3-54-g00ecf From d13f9136f9f442d90a3b2dfe7f9841f8a1e13ff2 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Mon, 22 Dec 2014 11:03:29 -0300 Subject: localepurge --- pcr/localepurge/PKGBUILD | 43 +++++++ pcr/localepurge/locale.nopurge | 56 +++++++++ pcr/localepurge/localepurge.8.patch | 142 +++++++++++++++++++++ pcr/localepurge/localepurge.config.patch | 147 ++++++++++++++++++++++ pcr/localepurge/localepurge.patch | 206 +++++++++++++++++++++++++++++++ 5 files changed, 594 insertions(+) create mode 100644 pcr/localepurge/PKGBUILD create mode 100644 pcr/localepurge/locale.nopurge create mode 100644 pcr/localepurge/localepurge.8.patch create mode 100644 pcr/localepurge/localepurge.config.patch create mode 100644 pcr/localepurge/localepurge.patch diff --git a/pcr/localepurge/PKGBUILD b/pcr/localepurge/PKGBUILD new file mode 100644 index 000000000..be13e0aeb --- /dev/null +++ b/pcr/localepurge/PKGBUILD @@ -0,0 +1,43 @@ +# Maintainer: Hyacinthe Cartiaux +# Contributor: Francesco Groccia +# Contributor: Dincer Celik + +pkgname=localepurge +pkgver=0.7.3.4 +pkgrel=1 +pkgdesc="Script to remove disk space wasted for unneeded localizations." +arch=('any') +url="http://packages.debian.org/source/sid/localepurge" +license=('GPL') +backup=('etc/locale.nopurge') +source=("http://ftp.de.debian.org/debian/pool/main/l/localepurge/${pkgname}_${pkgver}.tar.xz" + "${pkgname}.patch" + "${pkgname}.8.patch" + "${pkgname}.config.patch" + "locale.nopurge") + +prepare() +{ + patch -uN ${srcdir}/${pkgname}/usr/sbin/localepurge < ${srcdir}/localepurge.patch + patch -uN ${srcdir}/${pkgname}/debian/localepurge.8 < ${srcdir}/localepurge.8.patch + patch -uN ${srcdir}/${pkgname}/debian/localepurge.config < ${srcdir}/localepurge.config.patch +} + +package() +{ + install -D -m755 ${srcdir}/${pkgname}/usr/sbin/localepurge ${pkgdir}/usr/bin/localepurge + install -D -m644 ${srcdir}/${pkgname}/debian/localepurge.8 ${pkgdir}/usr/share/man/man8/localepurge.8 + install -D -m755 ${srcdir}/${pkgname}/debian/localepurge.config ${pkgdir}/usr/bin/localepurge-config + install -D -m644 locale.nopurge ${pkgdir}/etc/locale.nopurge + if [ ! -e /var/cache/localepurge/localelist ]; then + find /usr/share/locale -maxdepth 1 -type d -name "*" -printf "%f\n" | grep "^[a-z]" | cut -d" " -f1 | sort -u > ${srcdir}/localelist + else + cp /var/cache/localepurge/localelist ${srcdir}/localelist + fi + install -D -m644 ${srcdir}/localelist ${pkgdir}/var/cache/localepurge/localelist +} +sha256sums=('18d933181bf455ce386b91794a6e8dc9026bd89dde29ca6fbcde34d3030e2060' + 'b8704eec22d0e84ada9a524277322f9892c11f3f4b84ec0dd4f50f0ca2dc7474' + '82bd40594ef0646465eed6e525368e87694322513c0d3280879fcfc5c40cb6a7' + 'b27e69a87f81ecb01ecd9fd92c174ed3c4406200eedc50ba6ebabce91e3851e8' + 'b9c28be93fa47d4f0315972159e501d9eef28bbab7ffe6e8e7c4a13c359f35e8') diff --git a/pcr/localepurge/locale.nopurge b/pcr/localepurge/locale.nopurge new file mode 100644 index 000000000..66968232d --- /dev/null +++ b/pcr/localepurge/locale.nopurge @@ -0,0 +1,56 @@ +#################################################### +# This is the configuration file for localepurge(8). +#################################################### +# Comment this to enable localepurge. +# NO COMMENT IT IF YOU ARE NOT SURE WHAT ARE YOU DOING +# THIS APP DO NOT ASK FOR CONFIRMATION + +NEEDSCONFIGFIRST + +#################################################### +# Uncommenting this string enables removal of localized +# man pages based on the configuration information for +# locale files defined below: + +MANDELETE + +#################################################### +# Uncommenting this string causes localepurge to simply delete +# locales which have newly appeared on the system without +# bothering you about it: + +#DONTBOTHERNEWLOCALE + +##################################################### +# Commenting out this string enables faster but less +# accurate calculation of freed disk space: + +#QUICKNDIRTYCALC + +#################################################### +# Uncommenting this string enables display of freed disk +# space if localepurge has purged any superfluous data: + +SHOWFREEDSPACE + +##################################################### +# Commenting out this string disables verbose output: + +#VERBOSE + +##################################################### +# You like Colors? + +#NOCOLOR + +##################################################### +# You can use the -v -d -nc options in command line. + +##################################################### +# Following locales won't be deleted from this system +# for example: +en +en_GB +en_GB.UTF-8 +en_US +en_US.UTF-8 diff --git a/pcr/localepurge/localepurge.8.patch b/pcr/localepurge/localepurge.8.patch new file mode 100644 index 000000000..793b6184b --- /dev/null +++ b/pcr/localepurge/localepurge.8.patch @@ -0,0 +1,142 @@ +--- ../localepurge-orig/debian/localepurge.8 2013-09-20 12:52:48.000000000 +0200 ++++ localepurge.8 2013-09-21 12:48:33.864666265 +0200 +@@ -1,4 +1,4 @@ +-.TH LOCALEPURGE 8 ++.TH LOCALEPURGE 8 "2013-09-21" "GNU/Linux" "" + .SH NAME + localepurge \- reclaim disk space removing unneeded localizations + .SH SYNOPSIS +@@ -7,15 +7,8 @@ + .SH "DESCRIPTION" + .BR localepurge + is a small script to recover disk space wasted for unneeded locale +-files and localized man pages. It will be automagically invoked by +-.BR dpkg +-upon completion of any +-.BR apt +-installation run. You have to define the locale +-directory names you want to keep from removal after each +-.BR apt +-installation run +-in the ++files and localized man pages. You have to define the locale ++directory names you want to keep from removal in the + .BR /etc/locale.nopurge + configuration file. Unless + .BR localepurge +@@ -35,10 +28,17 @@ + .BR \-\ /usr/share/omf + .br + The localization files you actually need and which you want to be preserved on your system can be +-easily configured by running the following command: ++easily configured by editing the following file: + .br +-.BR dpkg-reconfigure\ localepurge ++.BR /etc/locale.nopurge + .br ++New locales discovered on your system will be listed in ++.I /var/cache/localepurge/localelist\-new ++and should be added to ++.I /var/cache/localepurge/localelist ++by the ++.BR /usr/bin/localepurge-config ++script. + .SH OPTIONS + The configurable options consist of toggling verbose output, reporting a + summary of freed space, and deletion of localized manual pages in +@@ -68,10 +68,10 @@ + .BR not + .BR integrated + .BR with +-.BR Debian's ++.BR "Arch Linux's" + .BR package + .BR management +-.BR system ++.BR system + and therefore is not meant for the faint of heart. Responsibility for its + usage and possible breakage of your system therefore lies in the sysadmin's + (your) hands. +@@ -85,60 +85,12 @@ + All locale directories containing a subdirectory named LC_MESSAGES + which are either commented out or not even listed at all in + .BR /etc/locale.nopurge +-will be irreversibly deleted. The only way to +-reinstall any lost locales is a complete reinstallation of all the +-Debian packages containing them. See +-.BR /usr/share/doc/localepurge/reinstall_debs.sh +-for a recipe. +-Alternatively you can reconfigure +-it with +-.BR dpkg-reconfigure(8) +-to prevent locale files from being purged during subsequent runs of apt. +-.br +-.SH SOLVING PROBLEMS caused by localepurge +-This program does interfere with the Debian package management and does +-provoke strange, but usually harmless, behaviour of programs related +-with +-.BR apt/dpkg +-like +-.BR dpkg-repack(1), +-.BR debsums(1), +-.BR reportbug(1), +-etc. +-If you need to have any package in its full integrity so that e.g. the +-formerly mentioned programs work as designed by its author and as +-expected by you, simply deinstall +-.BR localepurge +-temporarily without purging its configuration and reinstall the packages +-you need in their fully integral state. When you are done with what you +-needed the integral packages for simply reinstall +-.BR localepurge +-again. +- ++will be irreversibly deleted. The only way to reinstall any lost ++locales is a complete reinstallation of all the Arch Linux packages ++containing them. For more information, see "Reinstalling all installed packages" ++at http://wiki.archlinux.org/index.php/Pacman_Tips. + .SH FILES + .BR /etc/locale.nopurge +-.SH SEE ALSO +-Administrators of systems with short disk space should have a look +-at both the +-.BR deborphan +-and +-.BR debfoster +-packages. Especially +-.BR debfoster +-can work wonders for your scarce disk space! +- +-.br +-.BR deborphan(1) +-.br +-.BR debfoster(8) +-.br +-.BR dpkg-reconfigure(8) +-.br +-.BR debconf(8) +-.br +-.BR /usr/share/doc/localepurge/README.debian +-.br +-.BR /usr/share/doc/localepurge/reinstall_debs.sh + .SH AUTHOR + .BR localepurge + and its accompanying manual page was written for the +@@ -150,3 +102,17 @@ + Debian's great package management system will make + .BR localepurge + fully obsolete. ++.SH NOTE ++This manual page and the Debian localepurge script have been modified ++for Arch Linux system by Francesco Groccia . ++Some Debian\-specific information has been removed. ++.br ++In particular, the following files have been revised from the ++localepurge source code (Debian "sid" distribution): ++.HP ++ ++.I ../debian/localepurge.8 ++ ++.I ../debian/localepurge.config ++ ++.I ../usr/sbin/localepurge diff --git a/pcr/localepurge/localepurge.config.patch b/pcr/localepurge/localepurge.config.patch new file mode 100644 index 000000000..83f021853 --- /dev/null +++ b/pcr/localepurge/localepurge.config.patch @@ -0,0 +1,147 @@ +--- localepurge.conf.orig 2014-02-04 18:17:32.554174127 +0100 ++++ localepurge.conf 2014-02-04 18:21:08.911092875 +0100 +@@ -2,26 +2,11 @@ + + set -e + +-. /usr/share/debconf/confmodule +- + # first get all possible locales and create a full list of locale values: + +-CONFIG_FILE="/etc/locale.nopurge" + TEMPFILE="$(mktemp --suffix ".locales")" + LOCALELIST=/var/cache/localepurge/localelist + +-conf_has_key() { +- local key="$1" +- +- if [ -f "$CONFIG_FILE" ] && fgrep --quiet --line-regexp \ +- "$key" "$CONFIG_FILE"; then +- echo "true" +- else +- echo "false" +- fi +-} +- +- + # for the purpose of presenting a ready made preselection at the very first + # configuration, include already configured locales from locales package: + +@@ -46,9 +31,7 @@ + + # include locales supported by the locales package: + +-if [ -f /usr/share/i18n/SUPPORTED ]; then +- grep ^[a-z] /usr/share/i18n/SUPPORTED | cut -d' ' -f1 | sort -u >> "$TEMPFILE" +-fi ++find /usr/share/locale -maxdepth 1 -type d -name "*" -printf "%f\n" | grep "^[a-z]" | cut -d" " -f1 | sort -u >> "$TEMPFILE" + + # include locales from our previous localelist if it already exists: + +@@ -59,8 +42,7 @@ + # include locales from newly added locales: + NEWLOCALELIST="$LOCALELIST"-new + +-if [ -f "$NEWLOCALELIST" ] && \ +- [ $(ps w -p "$PPID" | grep -c dpkg-reconfigure) = "1" ]; then ++if [ -f "$NEWLOCALELIST" ]; then + cat "$NEWLOCALELIST" >> "$TEMPFILE" + rm -f "$NEWLOCALELIST" + fi +@@ -79,96 +61,9 @@ + else + mv "$LOCALELIST" "$LOCALELIST"-old + sort -u "$TEMPFILE" > "$LOCALELIST" +-fi +- +-# finally sort and create full list of all collected locale names +- +-LOCALES=$(sort -u "$TEMPFILE" | tr '\n' ' ' \ +- | sed 's/\ /,\ /g' | sed 's/,\ $//g') +- +-if [ -f "$CONFIG_FILE" ] ; then +- # Update the debconf database +- PRESELECT="$(grep --extended-regexp '^[[:lower:]][[:lower:]]' \ +- "$CONFIG_FILE" | tr '\n' ' ' | sed 's/\ /,\ /g' | \ +- sed 's/,\ $//g')" +- db_set localepurge/nopurge "$PRESELECT" +- +- db_set localepurge/use-dpkg-feature "$(conf_has_key USE_DPKG)" +- db_set localepurge/mandelete "$(conf_has_key MANDELETE)" +- db_set localepurge/dontbothernew "$(conf_has_key DONTBOTHERNEWLOCALE)" +- db_set localepurge/showfreedspace "$(conf_has_key SHOWFREEDSPACE)" +- db_set localepurge/quickndirtycalc "$(conf_has_key QUICKNDIRTYCALC)" +- db_set localepurge/verbose "$(conf_has_key VERBOSE)" +- +-else +- +- # sort and create preselection values from "$LOCALEGEN" +- +- PRESELECT=$(sort -u "$LOCALEGEN" | tr '\n' ' ' \ +- | sed 's/\ /,\ /g' | sed 's/,\ $//g') + fi + + # deleting temporary files not needed anymore: + + rm -f "$TEMPFILE" "$LOCALEGEN" + +-############################################################# +-# now that all locale data is in place let debconf take over: +- +-db_subst localepurge/nopurge locales "$LOCALES" +- +-# uncomment for debugging: +-#echo "$LOCALES" > /tmp/locales.list +- +-db_get localepurge/nopurge +-if [ "$RET" = "" ] && [ "$RET" != "PURGE_ALL" ] \ +- || [ "$RET" = "NEEDSCONFIGFIRST" ]; then +- db_set localepurge/nopurge "$PRESELECT" +- db_fset localepurge/nopurge seen false +- # uncomment for debugging: +- #echo "$PRESELECT" > /tmp/preselect.list +-fi +- +-db_input high localepurge/nopurge || true +-db_go +- +-db_get localepurge/nopurge +-if [ "$RET" = "" ] || [ "$RET" = "PURGE_ALL" ]; then +- db_input high localepurge/none_selected || true +- db_go +- +- db_get localepurge/none_selected +- if [ "$RET" = "false" ]; then +- db_input high localepurge/remove_no || true +- db_go +- fi +-fi +- +-db_input high localepurge/use-dpkg-feature || true +-db_go +-if [ "$RET" = "" -o "$RET" = "true" ] ; then +- USE_DPKG=yes +-else +- USE_DPKG=no +-fi +- +-db_input medium localepurge/mandelete || true +-db_go +- +-if [ "$USE_DPKG" = "xno" ] ; then +- # Features incompatible with the dpkg approach. +- db_input medium localepurge/dontbothernew || true +- db_go +- +- db_input low localepurge/showfreedspace || true +- db_go +- +- db_get localepurge/showfreedspace +- if [ "$RET" = "true" ]; then +- db_input low localepurge/quickndirtycalc || true +- db_go +- fi +- +- db_input low localepurge/verbose || true +- db_go +-fi diff --git a/pcr/localepurge/localepurge.patch b/pcr/localepurge/localepurge.patch new file mode 100644 index 000000000..c0174d5bf --- /dev/null +++ b/pcr/localepurge/localepurge.patch @@ -0,0 +1,206 @@ +--- ../localepurge-orig/usr/sbin/localepurge 2013-06-15 18:46:01.000000000 +0200 ++++ localepurge 2013-09-21 12:04:38.155721151 +0200 +@@ -1,6 +1,6 @@ + #! /bin/bash + +-# Deleting all locale files and localized man pages installed ++# Deleting all locale files and localized man pages installed + # on system which are *not* listed in /etc/locale.nopurge + + set -e +@@ -12,48 +12,35 @@ + fi + + if [ "$1" = "--help" ] || [ "$1" = "-h" ]; then +- echo "" +- echo "Verbose output is triggered with option '-v' or '-verbose'." +- echo "Debugging output is triggered with option '-d' or '-debug'." +- echo "To reconfigure it, run 'dpkg-reconfigure localepurge'." +- echo "Documentation is either available via 'man localepurge'" +- echo "or by reading the docs in /usr/share/doc/localepurge." +- echo "" +- if [ -f $NOPURGECONF ] && fgrep --quiet --line-regexp USE_DPKG $NOPURGECONF ; then +- echo "NB: localepurge has been configured to use dpkg. Therefore," +- echo "this script will not do anything." +- fi +- exit 0 ++ echo "" ++ echo "Verbose output is triggered with option '-v' or '-verbose'." ++ echo "Debugging output is triggered with option '-d' or '-debug'." ++ echo "To reconfigure it, edit /etc/locale.nopurge file." ++ echo "Documentation is available via 'man 8 localepurge'." ++ echo "" ++ exit 0 + fi + +- + # Do nothing and report why if no valid configuration file exists: + +-if [ ! -f $NOPURGECONF ] +- then +- echo " No $NOPURGECONF file present, exiting ..." ++if [ ! -f $NOPURGECONF ]; then ++ echo " No $NOPURGECONF file present, exiting ..." ++ exit 0 ++else ++ if fgrep --quiet --line-regexp NEEDSCONFIGFIRST $NOPURGECONF ; then ++ echo ++ echo " You have to configure \"localepurge\" by editing" ++ echo ++ echo " /etc/locale.nopurge file" ++ echo ++ echo " to make $0 actually start to function." ++ echo ++ echo " Nothing to be done, exiting ..." ++ echo + exit 0 +- else +- if fgrep --quiet --line-regexp USE_DPKG $NOPURGECONF +- then +- # Do nothing, dpkg does all the work for us. +- exit 0 +- elif fgrep --quiet --line-regexp NEEDSCONFIGFIRST $NOPURGECONF +- then +- echo +- echo " You have to configure \"localepurge\" with the command" +- echo +- echo " dpkg-reconfigure localepurge" +- echo +- echo " to make $0 actually start to function." +- echo +- echo " Nothing to be done, exiting ..." +- echo +- exit 0 +- fi ++ fi + fi + +- + ################################################################ + ## Initialise variables + +@@ -85,7 +72,6 @@ + VERBOSE=1 + fi + +- + ################################################################ + ## Manage the list of locales + +@@ -97,57 +83,57 @@ + + ((VERBOSE)) && echo "localepurge: checking for existence of $LOCALECACHEDIR..." + if [ ! -d $LOCALECACHEDIR ]; then +- mkdir -m 644 -p $LOCALECACHEDIR ++ mkdir -m 644 -p $LOCALECACHEDIR + fi + + ((VERBOSE)) && echo "localepurge: checking for existence of $LOCALELIST..." + if [ ! -f $LOCALELIST ]; then +- touch $LOCALELIST && chmod 664 $LOCALELIST ++ touch $LOCALELIST && chmod 664 $LOCALELIST + fi + + ((VERBOSE)) && echo "localepurge: checking system for new locale ..." + + for NEWLOCALE in $(cd /usr/share/locale; ls .) +-do +- if [ -d /usr/share/locale/$NEWLOCALE/LC_MESSAGES ]; then +- if [ ! "$(grep -cx $NEWLOCALE $LOCALELIST)" = "1" ]; then +- echo "$NEWLOCALE" >> "$NEWLOCALELIST" ++do ++ if [ -d /usr/share/locale/$NEWLOCALE/LC_MESSAGES ]; then ++ if [ ! "$(grep -cx $NEWLOCALE $LOCALELIST)" = "1" ]; then ++ echo "$NEWLOCALE" >> "$NEWLOCALELIST" ++ fi + fi +- fi + done + + for NEWLOCALE in $(ls --ignore="man[1-9]*" /usr/share/man) +-do +- if [ -d /usr/share/man/$NEWLOCALE/man1 ] || [ -d /usr/share/man/$NEWLOCALE/man8 ]; then +- if [ ! "$(grep -cx $NEWLOCALE $LOCALELIST)" = "1" ]; then +- echo "$NEWLOCALE" >> "$NEWLOCALELIST" ++do ++ if [ -d /usr/share/man/$NEWLOCALE/man1 ] || [ -d /usr/share/man/$NEWLOCALE/man8 ]; then ++ if [ ! "$(grep -cx $NEWLOCALE $LOCALELIST)" = "1" ]; then ++ echo "$NEWLOCALE" >> "$NEWLOCALELIST" ++ fi + fi +- fi + done + + if [ -f $NEWLOCALELIST ]; then +- if ((DONTBOTHERNEWLOCALE)); then +- mv "$NEWLOCALELIST" "$NEWLOCALELIST".temp +- sort -u "$NEWLOCALELIST".temp "$LOCALELIST"> "$NEWLOCALELIST" +- mv "$NEWLOCALELIST" "$LOCALELIST" +- rm "$NEWLOCALELIST".temp +- else +- mv "$NEWLOCALELIST" "$NEWLOCALELIST".temp +- sort -u "$NEWLOCALELIST".temp > "$NEWLOCALELIST" +- rm "$NEWLOCALELIST".temp +- fi ++ if ((DONTBOTHERNEWLOCALE)); then ++ mv "$NEWLOCALELIST" "$NEWLOCALELIST".temp ++ sort -u "$NEWLOCALELIST".temp "$LOCALELIST"> "$NEWLOCALELIST" ++ mv "$NEWLOCALELIST" "$LOCALELIST" ++ rm "$NEWLOCALELIST".temp ++ else ++ mv "$NEWLOCALELIST" "$NEWLOCALELIST".temp ++ sort -u "$NEWLOCALELIST".temp > "$NEWLOCALELIST" ++ rm "$NEWLOCALELIST".temp ++ fi + fi + + if [ -f "$NEWLOCALELIST" ] && [ $DONTBOTHERNEWLOCALE != yes ]; then + echo "Some new locales have appeared on your system:" + echo +- tr '\n' ' ' < "$NEWLOCALELIST" ++ tr '\n' ' ' < "$NEWLOCALELIST" + echo + echo + echo "They will not be touched until you reconfigure localepurge" + echo "with the following command:" + echo +- echo " dpkg-reconfigure localepurge" ++ echo " /usr/bin/localepurge-config" + echo + fi + +@@ -157,7 +143,7 @@ + ## all locales and create a pattern matching superfluous locales. + nopurge=$( + set -o noglob; # Disable path expansion and use 'echo' +- # below to change newlines into spaces ++ # below to change newlines into spaces + echo $(grep --invert-match --extended-regexp '^[ \t]*(#|$)' $NOPURGECONF) + ) + nopurgepat='@(C|'"${nopurge// /|}"')' +@@ -172,7 +158,7 @@ + ) + + ################################################################ +-## Define utility functions ++## Define utility functions + + # Function for disk space calculation + # Usage: get_used_space +@@ -202,7 +188,7 @@ + local flag + ((VERBOSE)) && flag=-v + for file; do +- if [ -f "$file" ] || [ -h "$file" ]; then ++ if [ -f "$file" ] || [ -h "$file" ]; then + echo "$file" + fi + done | xargs rm $flag +@@ -241,7 +227,6 @@ + fi + } + +- + ################################################################ + ## Now, get the job done + -- cgit v1.2.3-54-g00ecf