diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2014-01-22 00:21:21 -0200 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2014-01-22 00:21:21 -0200 |
commit | 88ef0d1d758f53f11a845c8b3ca30e3eb1955208 (patch) | |
tree | 4d9f7f821dbfda289be53850b4338e561b1e26fb /libre | |
parent | 16e1ba06c6d1f0ade84cc9afca0cc54238ade5fd (diff) | |
parent | ec9ee033ba2c22d6c1a6b119ba6fe0525810d9bc (diff) | |
download | abslibre-88ef0d1d758f53f11a845c8b3ca30e3eb1955208.tar.gz abslibre-88ef0d1d758f53f11a845c8b3ca30e3eb1955208.tar.bz2 abslibre-88ef0d1d758f53f11a845c8b3ca30e3eb1955208.zip |
Merge branch 'master' of ssh://projects.parabolagnulinux.org:1863/srv/git/abslibre
Diffstat (limited to 'libre')
-rw-r--r-- | libre/dpkg/PKGBUILD | 185 | ||||
-rw-r--r-- | libre/dpkg/dpkg-gzip-rsyncable.patch | 19 | ||||
-rw-r--r-- | libre/libretools/PKGBUILD | 16 | ||||
-rw-r--r-- | libre/libretools/libretools.install | 64 |
4 files changed, 177 insertions, 107 deletions
diff --git a/libre/dpkg/PKGBUILD b/libre/dpkg/PKGBUILD index 806194577..99681df3e 100644 --- a/libre/dpkg/PKGBUILD +++ b/libre/dpkg/PKGBUILD @@ -12,20 +12,38 @@ pkgname=(dpkg-devtools perl-dpkg) pkgdesc="Debian Package manager and utilities" license=('GPL2') -pkgver=1.16.10 +pkgver=1.17.6 url="http://packages.debian.org/source/sid/dpkg" -_debrepo=http://ftp.debian.org/debian/pool/main - -pkgrel=1.3 -arch=('i686' 'x86_64' 'mips64el') -depends=('bzip2' 'xz' 'zlib' 'ncurses') -checkdepends=('perl-test-pod') -makedepends=('perl-io-string' 'perl-timedate') +pkgrel=1 +options=('staticlibs') + +if ! type in_array &>/dev/null; then + in_array() { + local i + for i in "${@:2}"; do [[ $i = "$1" ]] && return 0; done + return 1 + } +fi + +# The architecture dependent bits aren't packaged with the reduced pkgname +arch=('any') +for _pkg in dpkg dselect libdpkg; do + if in_array "$_pkg" "${pkgname[@]}"; then + arch=('i686' 'x86_64' 'mips64el') + fi +done +unset _pkg + +makedepends=('bzip2' 'xz' 'zlib' 'ncurses') +checkdepends=('gzip' 'perl-test-pod' 'perl-io-string' 'perl-timedate') -_debfile() { echo "${_debrepo}/${1:0:1}/${1}/${1}_${2}"; } -source=("$(_debfile ${pkgbase} ${pkgver}).tar.xz" +_debrepo=http://ftp.debian.org/debian/pool/main +_debfile() { echo "${_debrepo}/${1:0:1}/${1%_*}/${1}"; } +source=("$(_debfile ${pkgbase}_${pkgver}).tar.xz" dpkg-gzip-rsyncable.patch) +md5sums=('c87f2ae291d460015353e01d121bea85' + '9c77a553e3219dcd29b7ff44b89d718d') ###################################################################### @@ -34,97 +52,104 @@ source=("$(_debfile ${pkgbase} ${pkgver}).tar.xz" # Shame on the dpkg developers for not putting that logic into the build system. _destdir="$pkgbase-$pkgver/debian/pkg-makepkg" _debhelper_install() { - local debname=$1 - cd "$srcdir/$_destdir" - - # main files - sed -e '/^\s*$/d' -e 's|usr/share/perl5/|&vendor_perl/|g' ../$debname.install \ - | while read pattern dest; do - if [[ -z $dest ]]; then - for file in $pattern; do - install -d "$pkgdir/${file%/*}" - cp -a "$file" "$pkgdir/$file" || true - done - else - install -d "$pkgdir/$dest/" - cp -a "$pattern" "$pkgdir/$dest/" || true - fi - done - - # manpages - sed -e 's|^debian/tmp/||' -e '/^\s*$/d' ../$debname.manpages 2>/dev/null \ - | while read pattern; do - for file in $pattern; do - install -d "$pkgdir/${file%/*}" - cp -a "$file" "$pkgdir/$file" || true - done - done - - # other documentation - install -d "$pkgdir/usr/share/doc/$pkgname/" - sed '/^\s*$/d' ../$debname.docs 2>/dev/null \ - | while read file; do - gzip \ - < "$srcdir/$pkgbase-$pkgver/$file" \ - > "$pkgdir/usr/share/doc/$pkgname/${file##*/}.gz" - done - - # symlinks - sed '/^\s*$/d' ../$debname.links 2>/dev/null \ - | while read file link; do - ln -s "/$file" "$pkgdir/$link" - done + local debname=$1 + cd "$srcdir/$_destdir" + + # main files + sed -e '/^\s*$/d' -e 's|usr/share/perl5/|&vendor_perl/|g' ../$debname.install | + while read pattern dest; do + if [[ -z $dest ]]; then + for file in $pattern; do + install -d "$pkgdir/${file%/*}" + cp -a "$file" "$pkgdir/$file" || true + done + else + install -d "$pkgdir/$dest/" + cp -a "$pattern" "$pkgdir/$dest/" || true + fi + done + + # manpages + sed -e 's|^debian/tmp/||' -e '/^\s*$/d' ../$debname.manpages 2>/dev/null | + while read pattern; do + for file in $pattern; do + install -d "$pkgdir/${file%/*}" + cp -a "$file" "$pkgdir/$file" || true + done + done + + # other documentation + sed '/^\s*$/d' ../$debname.docs 2>/dev/null | + while read file; do + install -d "$pkgdir/usr/share/doc/$pkgname/" + gzip \ + < "$srcdir/$pkgbase-$pkgver/$file" \ + > "$pkgdir/usr/share/doc/$pkgname/${file##*/}.gz" + done + + # symlinks + sed '/^\s*$/d' ../$debname.links 2>/dev/null | + while read file link; do + ln -s "/$file" "$pkgdir/$link" + done } ###################################################################### -build() { - cd "${srcdir}/${pkgbase}-${pkgver}" - - patch -Np0 -i "${srcdir}/dpkg-gzip-rsyncable.patch" +prepare() { + cd "${srcdir}/${pkgbase}-${pkgver}" + # {Arch Linux,Parabola}'s gzip doesn't support --rsyncable + patch -Np1 -i "${srcdir}/dpkg-gzip-rsyncable.patch" +} - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --with-zlib --with-bz2 --with-liblzma - make - make DESTDIR="$srcdir/$_destdir" install +build() { + cd "${srcdir}/${pkgbase}-${pkgver}" + ./configure \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --sysconfdir=/etc \ + --sbindir=/sbin \ + --localstatedir=/var \ + --with-zlib \ + --with-liblzma \ + --with-bz2 + make + make DESTDIR="$srcdir/$_destdir" install } check() { - cd "${srcdir}/${pkgbase}-${pkgver}" - make check + cd "${srcdir}/${pkgbase}-${pkgver}" + make check } package_dpkg() { - pkgdesc="Debian Package manager" - provides+=(start-stop-daemon) - conflicts+=(start-stop-daemon) - _debhelper_install dpkg + pkgdesc="Debian Package manager" + depends=('zlib' 'xz' 'bzip2') + _debhelper_install dpkg } package_dpkg-devtools() { - pkgdesc="Debian Package development tools" - arch=(any) - depends+=(perl-dpkg) - _debhelper_install dpkg-dev + pkgdesc="Debian Package development tools" + arch=('any') + depends=('perl-dpkg') + _debhelper_install dpkg-dev } package_dselect() { - pkgdesc="Debian Package manager high-level interface" - _debhelper_install dselect + pkgdesc="Debian Package manager high-level interface" + depends=('dpkg' 'perl' 'ncurses') + _debhelper_install dselect } package_libdpkg() { - pkgdesc="Debian Package manager library (static)" - _debhelper_install libdpkg-dev + pkgdesc="Debian Package manager library (static)" + _debhelper_install libdpkg-dev } package_perl-dpkg() { - pkgdesc="Debian Package perl modules" - arch=(any) - _debhelper_install libdpkg-perl + pkgdesc="Debian Package Perl modules" + arch=('any') + depends=('perl-timedate' 'gzip' 'bzip2' 'xz') + _debhelper_install libdpkg-perl } - -md5sums=('4df9319b2d17e19cdb6fe94dacee44da' - '5ab63758999e9bb10f84bce79a0307b2' - '74b7ce3045690a8fc290104f10cf8d42') -md5sums=('a20a06a5272717274a8b009368f237da' - '5ab63758999e9bb10f84bce79a0307b2') diff --git a/libre/dpkg/dpkg-gzip-rsyncable.patch b/libre/dpkg/dpkg-gzip-rsyncable.patch index 3daf6d76e..187633874 100644 --- a/libre/dpkg/dpkg-gzip-rsyncable.patch +++ b/libre/dpkg/dpkg-gzip-rsyncable.patch @@ -1,11 +1,12 @@ ---- ./scripts/Dpkg/Compression.pm.orig 2012-04-27 04:49:02.000000000 +0200 -+++ ./scripts/Dpkg/Compression.pm 2012-05-27 22:23:18.530628795 +0200 -@@ -52,7 +52,7 @@ +diff -ruN dpkg-1.17.6.orig/scripts/Dpkg/Compression.pm dpkg-1.17.6/scripts/Dpkg/Compression.pm +--- dpkg-1.17.6.orig/scripts/Dpkg/Compression.pm 2014-01-15 09:02:16.000000000 -0500 ++++ dpkg-1.17.6/scripts/Dpkg/Compression.pm 2014-01-19 23:22:39.771215424 -0500 +@@ -50,7 +50,7 @@ my $COMP = { - "gzip" => { - "file_ext" => "gz", -- "comp_prog" => [ "gzip", "--no-name", "--rsyncable" ], -+ "comp_prog" => [ "gzip", "--no-name" ], - "decomp_prog" => [ "gunzip" ], - "default_level" => 9, + gzip => { + file_ext => 'gz', +- comp_prog => [ 'gzip', '--no-name', '--rsyncable' ], ++ comp_prog => [ 'gzip', '--no-name' ], + decomp_prog => [ 'gunzip' ], + default_level => 9, }, diff --git a/libre/libretools/PKGBUILD b/libre/libretools/PKGBUILD index 569706f80..51d33f1cd 100644 --- a/libre/libretools/PKGBUILD +++ b/libre/libretools/PKGBUILD @@ -1,5 +1,5 @@ -# Maintainer: Joshua Haase <hahj87@gmail.com -# Contributor: Luke Shumaker <lukeshu@sbcglobal.net> +# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net> +# Contributor: Joshua Haase <hahj87@gmail.com # Contributor: fauno <fauno@kiwwwi.com.ar> # Contributor: Márcio Silva <coadde@lavabit.com> @@ -9,9 +9,9 @@ pkgdesc="Programs for Parabola development" url="https://projects.parabolagnulinux.org/packages/libretools.git/" license=('GPL3' 'GPL2') -pkgver=20131112 -_libretools_commit=0f03eb7ac94ad72f551eb1b2470b850d6bcf8bf0 -_devtools_commit=021653a0acecc8763e1bbe90dbb770b4e6df4390 +pkgver=20140120.1 +_libretools_commit=641002eff37a30eb2b8237b15b74cc15b4d9f822 +_devtools_commit=534d2015b45e013b37e1edbb997bd4df27d7b8fd _packages_url=https://projects.parabolagnulinux.org/packages source=($_packages_url/libretools.git/snapshot/libretools-$_libretools_commit.tar.bz2 @@ -64,8 +64,8 @@ package_libretools() { depends=( "librelib=$pkgver" + "gitget=$pkgver" # `createworkdir` arch-install-scripts # `archroot` uses `pacstrap` - git # `createworkdir` openssh # `librerelease` rsync # `librerelease` and `makechrootpkg.sh` subversion # `diff-unfree` @@ -87,5 +87,5 @@ package_libretools-mips64el() { make install-libretools-mips64el DESTDIR="$pkgdir" } -md5sums=('81e6d3d6fe1964a407a4520ce0916c0d' - '656008e8e35e6adba527b7bfc367b9f7') +md5sums=('8991b27aed494b60f33c84dd48aea874' + 'ec69dffa68829f063224de19bbd55fa9') diff --git a/libre/libretools/libretools.install b/libre/libretools/libretools.install index d46990da8..35edf68c7 100644 --- a/libre/libretools/libretools.install +++ b/libre/libretools/libretools.install @@ -1,14 +1,54 @@ #!/bin/sh -_makepkgconf_append='[[ ! -x /usr/bin/librefetch ]] || DLAGENTS+=("libre::/usr/bin/librefetch -p \"\$BUILDFILE\" %u %o")' +_edit_code=" 'https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -o %o %u'" +_edit_cmnt='#%s # commented out by the libretools post_install script' + +_add_cmnt='# The following line is added by the libretools post_install script' +_add_code='DLAGENTS+=({https,libre}'\''::/usr/bin/librefetch -p "$BUILDFILE" -- %u %o'\'')' + +# These lines were installed by previous versions of this script +_old_code=( + '[[ ! -x /usr/bin/librefetch ]] || DLAGENTS+=("libre::/usr/bin/librefetch -p \"\$BUILDFILE\" %u %o")' + '[[ ! -x /usr/bin/librefetch ]] || DLAGENTS+=({https,libre}"::/usr/bin/librefetch -p \"\$BUILDFILE\" -- %u %o")' + 'DLAGENTS+=({https,libre}"::/usr/bin/librefetch -p $(printf "%q" "$BUILDFILE") -- %u %o")' +) + +# has_line $line +has_line() { grep -Fxq -- "$1" etc/makepkg.conf; } +# add_line $line +add_line() { printf '%s\n' "$1" >> etc/makepkg.conf; } +# del_line $line +del_line() { + local lineno=($(grep -Fxn -- "$1" etc/makepkg.conf | cut -d: -f1)) + if [[ "${#lineno[@]}" -gt 0 ]]; then + sed -i "$(printf '%dd;' "${lineno[@]}")" etc/makepkg.conf; + fi +} +# rep_line $orig $replacement_bre +rep_line() { + local lineno=($(grep -Fxn -- "$1" etc/makepkg.conf | cut -d: -f1)) + if [[ "${#lineno[@]}" == 1 ]]; then + sed -i "${lineno}s|.*|${2//|/\\|}|" etc/makepkg.conf; + fi +} # arg 1: the new package version post_install() { - if grep -q 'libre::' etc/makepkg.conf; then + if grep -q 'librefetch' etc/makepkg.conf; then libremessages msg2 "libretools: librefetch is already in /etc/makepkg.conf" + local line del=false + for line in "${_old_code[@]}"; do + if has_line "$line"; then + pre_remove + post_install + return $? + fi + done else - libremessages msg2 "libretools: Adding librefetch to /etc/makepkg.conf" - printf '%s\n' "$_makepkgconf_append" >> etc/makepkg.conf + libremessages msg2 "libretools: adding librefetch to /etc/makepkg.conf" + rep_line "$_edit_code" "$(printf "$_edit_cmnt" '&')" + add_line "$_add_cmnt" + add_line "$_add_code" fi } @@ -19,10 +59,14 @@ post_upgrade() { } pre_remove() { - if fgrep -q "$_makepkgconf_append" etc/makepkg.conf; then - libremessages msg2 "libretools: removing librefetch from /etc/makepkg.conf" - sed -i '/libre::/d' etc/makepkg.conf - else - libremessages msg2 "libretools: librefetch is not in /etc/makepkg.conf as we added it" - fi + libremessages msg2 "libretools: removing librefetch from /etc/makepkg.conf" + + rep_line "$(printf "$_edit_cmnt" "$_edit_code")" "$_edit_code" + del_line "$_add_cmnt" + del_line "$_add_code" + + local line + for line in "${_old_code[@]}"; do + del_line "$line" + done } |