summaryrefslogtreecommitdiffstats
path: root/abs/core-testing/pacman
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core-testing/pacman')
-rw-r--r--abs/core-testing/pacman/PKGBUILD46
-rw-r--r--abs/core-testing/pacman/mirrorlist101
-rw-r--r--abs/core-testing/pacman/pacman.conf76
-rw-r--r--abs/core-testing/pacman/pacman.install56
4 files changed, 279 insertions, 0 deletions
diff --git a/abs/core-testing/pacman/PKGBUILD b/abs/core-testing/pacman/PKGBUILD
new file mode 100644
index 0000000..ccd1857
--- /dev/null
+++ b/abs/core-testing/pacman/PKGBUILD
@@ -0,0 +1,46 @@
+# $Id: PKGBUILD 10342 2008-08-27 01:24:22Z dan $
+# Maintainer: Aaron Griffin <aaron@archlinux.org>
+# Maintainer: Dan McGee <dan@archlinux.org>
+
+pkgname=pacman
+pkgver=3.2.1
+pkgrel=10
+pkgdesc="A library-based package manager with dependency support"
+arch=('i686' 'x86_64')
+url="http://www.archlinux.org/pacman/"
+license=('GPL')
+groups=('base')
+depends=('bash' 'libarchive>=2.5.5' 'libdownload>=1.3')
+backup=(etc/pacman.conf etc/makepkg.conf etc/pacman.d/mirrorlist)
+install=pacman.install
+options=(!libtool)
+source=(ftp://ftp.archlinux.org/other/pacman/$pkgname-$pkgver.tar.gz
+ pacman.conf
+ mirrorlist)
+md5sums=('5b133613cebd74aa8c199de049e25cc4'
+ '49b799e923933a30cdefcac06f530fb0'
+ 'a16981c0fef957a95999550f68cdb0f8')
+
+build() {
+ cd $startdir/src/$pkgname-$pkgver
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
+ make || return 1
+ make DESTDIR=$startdir/pkg install || return 1
+
+ # install arch specific stuff
+ mkdir -p ${startdir}/pkg/etc/pacman.d
+ install -m644 ${startdir}/src/pacman.conf ${startdir}/pkg/etc/
+ install -m644 ${startdir}/src/mirrorlist ${startdir}/pkg/etc/pacman.d/
+
+ # customize mirrorlist to architecture
+ sed -i -e "s/@carch@/${CARCH}/g" ${startdir}/pkg/etc/pacman.d/mirrorlist
+
+ # install completion files
+ mkdir -p $startdir/pkg/etc/bash_completion.d/
+ install -m644 contrib/bash_completion $startdir/pkg/etc/bash_completion.d/pacman
+ mkdir -p $startdir/pkg/usr/share/zsh/site-functions/
+ install -m644 contrib/zsh_completion $startdir/pkg/usr/share/zsh/site-functions/_pacman
+}
+
+# vim: set ts=2 sw=2 et:
diff --git a/abs/core-testing/pacman/mirrorlist b/abs/core-testing/pacman/mirrorlist
new file mode 100644
index 0000000..83e75ae
--- /dev/null
+++ b/abs/core-testing/pacman/mirrorlist
@@ -0,0 +1,101 @@
+#
+# Arch Linux repository mirrorlist
+#
+
+# North America
+# - United States
+Server = ftp://ftp.archlinux.org/$repo/os/@carch@
+Server = ftp://locke.suu.edu/linux/dist/archlinux/$repo/os/@carch@
+Server = http://archlinux.unixheads.org/$repo/os/@carch@
+Server = ftp://ftp.gtlib.gatech.edu/pub/linux/distributions/archlinux/$repo/os/@carch@
+Server = ftp://mirror.cs.vt.edu/pub/ArchLinux/$repo/os/@carch@
+Server = http://mirrors.easynews.com/linux/archlinux/$repo/os/@carch@
+Server = ftp://ftp.ibiblio.org/pub/linux/distributions/archlinux/$repo/os/@carch@
+Server = http://holmes.umflint.edu/archlinux/$repo/os/@carch@
+Server = http://mirror.neotuli.net/arch/$repo/os/@carch@
+Server = http://mirror.rit.edu/archlinux/$repo/os/@carch@
+Server = http://mirror.umoss.org/archlinux/$repo/os/@carch@
+Server = http://schlunix.org/archlinux/$repo/os/@carch@
+# - Canada
+Server = ftp://mirror.csclub.uwaterloo.ca/archlinux/$repo/os/@carch
+
+# South America
+# - Brazil
+Server = http://archlinux.c3sl.ufpr.br/$repo/os/@carch@
+Server = ftp://archlinux.c3sl.ufpr.br/archlinux/$repo/os/@carch@
+Server = ftp://ftp.las.ic.unicamp.br/pub/archlinux/$repo/os/@carch@
+
+# Europe
+# - Austria
+Server = ftp://gd.tuwien.ac.at/opsys/linux/archlinux/$repo/os/@carch@
+# - Belgium
+Server = ftp://ftp.belnet.be/mirror/archlinux.org/$repo/os/@carch@
+# - Czech Republic
+Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/$repo/os/@carch@
+# - Estonia
+Server = ftp://ftp.estpak.ee/pub/archlinux/$repo/os/@carch@
+# - France
+Server = ftp://mir1.archlinuxfr.org/archlinux/$repo/os/@carch@
+Server = ftp://mir2.archlinuxfr.org/archlinux/$repo/os/@carch@
+Server = ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/archlinux/$repo/os/@carch@
+Server = http://mir.archlinux.fr/$repo/os/@carch@
+Server = ftp://ftp.free.fr/mirrors/ftp.archlinux.org/$repo/os/@carch@
+Server = ftp://ftp.rez-gif.supelec.fr/Linux/archlinux/$repo/os/@carch@
+# - Germany
+Server = ftp://ftp.hosteurope.de/mirror/ftp.archlinux.org/$repo/os/@carch@
+Server = ftp://ftp5.gwdg.de/pub/linux/archlinux/$repo/os/@carch@
+Server = ftp://ftp.uni-bayreuth.de/pub/linux/archlinux/$repo/os/@carch@
+Server = ftp://ftp.archlinuxppc.org/@carch@/$repo/os/@carch@
+Server = ftp://ftp.tu-chemnitz.de/pub/linux/archlinux/$repo/os/@carch@
+Server = http://ftp.uni-kl.de/pub/linux/archlinux/$repo/os/@carch@
+# - Great Britain
+Server = http://www.mirrorservice.org/sites/ftp.archlinux.org/$repo/os/@carch@
+Server = ftp://mirrors.uk2.net/pub/archlinux/$repo/os/@carch@
+Server = http://archlinux.mirrors.uk2.net/$repo/os/@carch@
+# - Greece
+Server = ftp://ftp.ntua.gr/pub/linux/archlinux/$repo/os/@carch@
+# - Hungary
+Server = ftp://ftp.mfa.kfki.hu/pub/mirrors/ftp.archlinux.org/$repo/os/@carch@
+# - Ireland
+Server = ftp://ftp.heanet.ie/mirrors/ftp.archlinux.org/$repo/os/@carch@
+# - Italy
+Server = ftp://mi.mirror.garr.it/mirrors/archlinux/$repo/os/@carch@
+# - Netherlands
+Server = ftp://ftp.nluug.nl/pub/metalab/distributions/archlinux/$repo/os/@carch@
+Server = ftp://ftp.surfnet.nl/pub/os/Linux/distr/archlinux/$repo/os/@carch@
+# - Norway
+Server = http://arch.likbilen.com/$repo/os/@carch
+# - Poland
+Server = ftp://mirror.icis.pcz.pl/archlinux/$repo/os/@carch@
+Server = http://piotrkosoft.net/pub/mirrors/ftp.archlinux.org/$repo/os/@carch@
+Server = ftp://ftp.piotrkosoft.net/pub/mirrors/ftp.archlinux.org/$repo/os/@carch@
+Server = http://unix.net.pl/archlinux.org/$repo/os/@carch@
+# - Portugal
+Server = ftp://cesium.di.uminho.pt/pub/archlinux/$repo/os/@carch@
+# - Romania
+Server = ftp://ftp.iasi.roedu.net/mirrors/archlinux.org/$repo/os/@carch@
+# - Russia
+Server = ftp://mirror.yandex.ru/archlinux/$repo/os/@carch@
+Server = http://archlinux.freeside.ru/$repo/os/@carch@
+# - Sweden
+Server = ftp://ftp.ds.hj.se/pub/os/linux/archlinux/$repo/os/@carch@
+Server = ftp://ftp.gigabit.nu/$repo/os/@carch@
+# - Switzerland
+Server = http://archlinux.puzzle.ch/$repo/os/@carch@
+# - Turkey
+Server = http://server.elsistech.com/archlinux/$repo/os/@carch@
+# - Ukraine
+Server = ftp://hell.org.ua/archlinux/$repo/os/@carch@
+Server = ftp://ftp.linux.kiev.ua/pub/Linux/ArchLinux/$repo/os/@carch@
+
+# Asia
+# - Israel
+Server = http://mirror.isoc.org.il/pub/archlinux/$repo/os/@carch@
+# - Vietnam
+# Domain name is ftp.indochinalinux.com but there are frequent DNS problems
+Server = ftp://202.78.230.5/archlinux/$repo/os/@carch@
+
+# Australia
+Server = ftp://mirror.pacific.net.au/linux/archlinux/$repo/os/@carch@
+Server = ftp://mirror.aarnet.edu.au/pub/archlinux/$repo/os/@carch@
+
diff --git a/abs/core-testing/pacman/pacman.conf b/abs/core-testing/pacman/pacman.conf
new file mode 100644
index 0000000..6a7bd54
--- /dev/null
+++ b/abs/core-testing/pacman/pacman.conf
@@ -0,0 +1,76 @@
+#
+# /etc/pacman.conf
+#
+# See the pacman.conf(5) manpage for option and repository directives
+
+#
+# GENERAL OPTIONS
+#
+[options]
+# The following paths are commented out with their default values listed.
+# If you wish to use different paths, uncomment and update the paths.
+#RootDir = /
+#DBPath = /var/lib/pacman/
+#CacheDir = /var/cache/pacman/pkg/
+#LogFile = /var/log/pacman.log
+HoldPkg = pacman glibc
+# If upgrades are available for these packages they will be asked for first
+SyncFirst = pacman
+#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
+#XferCommand = /usr/bin/curl %u > %o
+
+# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
+#IgnorePkg =
+#IgnoreGroup =
+
+#NoUpgrade =
+#NoExtract =
+
+# Misc options (all disabled by default)
+#NoPassiveFtp
+#UseSyslog
+#ShowSize
+#UseDelta
+#TotalDownload
+
+#
+# REPOSITORIES
+# - can be defined here or included from another file
+# - pacman will search repositories in the order defined here
+# - local/custom mirrors can be added here or in separate files
+# - repositories listed first will take precedence when packages
+# have identical names, regardless of version number
+# - URLs will have $repo replaced by the name of the current repo
+#
+# Repository entries are of the format:
+# [repo-name]
+# Server = ServerName
+# Include = IncludePath
+#
+# The header [repo-name] is crucial - it must be present and
+# uncommented to enable the repo.
+#
+
+# Testing is disabled by default. To enable, uncomment the following
+# two lines. You can add preferred servers immediately after the header,
+# and they will be used before the default mirrors.
+#[testing]
+#Include = /etc/pacman.d/mirrorlist
+
+[core]
+# Add your preferred servers here, they will be used first
+Include = /etc/pacman.d/mirrorlist
+
+[extra]
+# Add your preferred servers here, they will be used first
+Include = /etc/pacman.d/mirrorlist
+
+[community]
+# Add your preferred servers here, they will be used first
+Include = /etc/pacman.d/mirrorlist
+
+# An example of a custom package repository. See the pacman manpage for
+# tips on creating your own repositories.
+#[custom]
+#Server = file:///home/custompkgs
+
diff --git a/abs/core-testing/pacman/pacman.install b/abs/core-testing/pacman/pacman.install
new file mode 100644
index 0000000..46e4763
--- /dev/null
+++ b/abs/core-testing/pacman/pacman.install
@@ -0,0 +1,56 @@
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ # one time stuff for md5sum issue with older pacman versions
+ if [ "$(vercmp $2 3.0.2)" -lt 0 ]; then
+ _resetbackups
+ fi
+}
+
+_resetbackups() {
+ echo ">>> Performing one-time reset of NoUpgrade md5sums. After this reset"
+ echo ">>> you are able to remove all NoUpgrade lines of already protected"
+ echo ">>> files from pacman.conf."
+ echo ">>>"
+
+ # path variables
+ pacconf="/etc/pacman.conf"
+ dbpath="/var/lib/pacman/local"
+
+ # get a list of NoUpgrade files from the user's pacman.conf
+ echo ">>> Retrieving pacman.conf NoUpgrade list..."
+ config=$(grep "^NoUpgrade" $pacconf | cut -d'=' -f2)
+ # add the standard list of files, even if they are already above
+ config="$config \
+ etc/passwd etc/group etc/shadow etc/sudoers \
+ etc/fstab etc/raidtab etc/ld.so.conf \
+ etc/rc.conf etc/rc.local \
+ etc/modprobe.conf etc/modules.conf \
+ etc/lilo.conf boot/grub/menu.lst"
+
+ # blank md5sum for use in sed expression
+ zeroes='00000000000000000000000000000000'
+
+ for file in $config; do
+ echo ">>> -> finding owner of /$file..."
+ line=$(LC_ALL=C LANG=C pacman -Qo /$file 2>/dev/null)
+ # if file is owned by a package, go find its incorrectly stored sum
+ if [ ! -z "$line" ]; then
+ # get the name and version of the package owning file
+ name=$(echo $line | awk '{print $5}')
+ version=$(echo $line | awk '{print $6}')
+ # set the path to the backup array holding the md5sum
+ path="$dbpath/$name-$version/files"
+ # run a sed on the path to reset the line containing $file
+ # NOTE: literal tab characters in sed expression after $file
+ echo ">>> -> resetting sum of /$file..."
+ sed -i "s#$file [0-9a-fA-F]*#$file $zeroes#" $path
+ else
+ echo ">>> -> $file is unowned."
+ fi
+ done
+}
+
+op=$1
+shift
+$op $*