summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--community/chrony/PKGBUILD7
-rw-r--r--community/mupdf/PKGBUILD12
-rw-r--r--community/openntpd/PKGBUILD9
-rw-r--r--community/openntpd/openntpd.install2
-rw-r--r--community/openntpd/openntpd.service2
-rw-r--r--core/iproute2/PKGBUILD8
-rw-r--r--core/rfkill/PKGBUILD54
-rw-r--r--core/rfkill/conf.d20
-rwxr-xr-xcore/rfkill/rc.d38
-rw-r--r--core/rfkill/rules.d1
-rw-r--r--core/rfkill/service11
-rw-r--r--extra/calligra/PKGBUILD39
-rw-r--r--extra/dvdauthor/PKGBUILD14
-rw-r--r--extra/fping/PKGBUILD10
-rw-r--r--extra/irqbalance/PKGBUILD20
-rw-r--r--extra/irqbalance/irqbalance-2011-08-09.patch1584
-rw-r--r--extra/irqbalance/irqbalance.service8
-rw-r--r--extra/libkgapi/PKGBUILD8
-rw-r--r--extra/licq/PKGBUILD8
-rw-r--r--extra/live-media/PKGBUILD6
-rw-r--r--extra/ntp/PKGBUILD9
-rw-r--r--extra/ntp/ntpd.service8
-rw-r--r--extra/smb4k/PKGBUILD6
-rw-r--r--extra/swig/PKGBUILD20
-rw-r--r--extra/transmission/PKGBUILD18
-rw-r--r--extra/transmission/transmission-cli.install9
-rw-r--r--extra/transmission/transmission.systemd14
-rw-r--r--extra/transmission/transmission.tmpfiles1
-rw-r--r--extra/transmission/transmissiond2
-rw-r--r--extra/transmission/transmissiond.conf5
-rw-r--r--libre/initscripts/PKGBUILD9
-rw-r--r--libre/virtualbox-libre-modules-lts/PKGBUILD8
-rw-r--r--libre/virtualbox-libre-modules-lts/free-distros.patch26
-rw-r--r--libre/virtualbox-libre-modules/PKGBUILD8
-rw-r--r--libre/virtualbox-libre-modules/free-distros.patch26
-rw-r--r--libre/virtualbox-libre/PKGBUILD23
-rw-r--r--libre/virtualbox-libre/free-distros.patch26
-rw-r--r--testing/grep/PKGBUILD10
-rw-r--r--testing/grep/grep.install10
-rw-r--r--testing/modemmanager/PKGBUILD6
-rw-r--r--testing/modemmanager/modem-manager.service4
-rw-r--r--testing/wireless_tools/PKGBUILD32
-rw-r--r--testing/wireless_tools/dense.patch49
-rw-r--r--~fauno/notmuch/PKGBUILD4
44 files changed, 1987 insertions, 207 deletions
diff --git a/community/chrony/PKGBUILD b/community/chrony/PKGBUILD
index 5b0fad6de..cb9bdbfc9 100644
--- a/community/chrony/PKGBUILD
+++ b/community/chrony/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 72784 2012-06-22 12:49:49Z dreisner $
+# $Id: PKGBUILD 75347 2012-08-20 19:15:16Z dreisner $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Patrick Leslie Polzer <leslie.polzer@gmx.net>
@@ -8,7 +8,7 @@
pkgname=chrony
pkgver=1.26
-pkgrel=3
+pkgrel=5
pkgdesc='Lightweight NTP client and server'
arch=('i686' 'x86_64')
url="http://chrony.tuxfamily.org/"
@@ -36,4 +36,7 @@ package() {
install -Dm0644 $srcdir/$pkgname-$pkgver/examples/chrony.conf.example $pkgdir/etc/chrony.conf
install -Dm0755 $srcdir/rc.d $pkgdir/etc/rc.d/chrony
install -Dm644 $srcdir/service $pkgdir/usr/lib/systemd/system/chrony.service
+
+ install -dm755 "$pkgdir/usr/lib/ntp-units.d"
+ echo "$pkgname.service" > "$pkgdir/usr/lib/ntp-units.d/$pkgname.list"
}
diff --git a/community/mupdf/PKGBUILD b/community/mupdf/PKGBUILD
index c1e8e8963..f339be13c 100644
--- a/community/mupdf/PKGBUILD
+++ b/community/mupdf/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 74707 2012-08-02 09:04:30Z bpiotrowski $
+# $Id: PKGBUILD 75333 2012-08-20 06:45:01Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Brad Fanella <bradfanella@archlinux.us>
# Contributor: Stefan Husmann <stefan-husmann@t-online.de>
@@ -6,8 +6,8 @@
# Contributor: xduugu (.desktop and install files)
pkgname=mupdf
-pkgver=1.0
-pkgrel=2
+pkgver=1.1
+pkgrel=1
pkgdesc="lightweight PDF viewer and toolkit written in portable C"
arch=('i686' 'x86_64')
url="http://mupdf.com"
@@ -15,19 +15,19 @@ license=('GPL3')
depends=('freetype2' 'libjpeg' 'jbig2dec' 'openjpeg' 'libxext' 'desktop-file-utils' 'xdg-utils')
install=mupdf.install
source=("http://mupdf.com/download/$pkgname-$pkgver-source.tar.gz")
-md5sums=('d986ab98e2b035b7abd61afc474562b3')
+md5sums=('f7b5fd753f40aca207e9afd70d8f8edf')
build() {
CFLAGS+=" -fPIC"
CXXFLAGS+=" -fPIC"
cd "$srcdir"/$pkgname-$pkgver-source
- make build=release prefix="$pkgdir/usr"
+ make build=release prefix="$pkgdir"/usr
}
package() {
cd "$srcdir"/$pkgname-$pkgver-source
- make build=release prefix="$pkgdir/usr" install
+ make build=release prefix="$pkgdir"/usr install
sed -i 's/mupdf.xpm/mupdf/' debian/mupdf.desktop
sed -i 's/application\/x-pdf/application\/x-pdf/' debian/mupdf.desktop
diff --git a/community/openntpd/PKGBUILD b/community/openntpd/PKGBUILD
index 5bddf7dca..899ae7e15 100644
--- a/community/openntpd/PKGBUILD
+++ b/community/openntpd/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 72171 2012-06-09 14:07:36Z dreisner $
+# $Id: PKGBUILD 75345 2012-08-20 19:14:50Z dreisner $
# Maintainer: Vesa Kaihlavirta <vegai@iki.fi>
# Contributor: Mark Rosenstand <mark@borkware.net>
# Contributor: Giorgio Lando <patroclo7@gmail.com> (adjtimex patch)
@@ -6,7 +6,7 @@
pkgname=openntpd
pkgver=3.9p1
-pkgrel=15
+pkgrel=18
pkgdesc="Free, easy to use implementation of the Network Time Protocol."
url="http://www.openntpd.org/"
arch=('x86_64' 'i686')
@@ -21,7 +21,7 @@ sha256sums=('83dd7c1e8ec8b4567afe49af539271b5a73562fb7a3ca51df73eccba89ec8c49'
'77a0d1f3439d779c2ce259becf3fa583c21a16682a4f5327094da2e9837f6f96'
'3abcec94c072b5913ef7156a22049d796ff04e19105befe1ea81a66522928fd2'
'fe12841110c3c080519e248988c4b6334f54bd9646b015753c7e15de2a9600c5'
- 'b54b88cb0fe35636405e2b09744633cd815edb3e8c864035bcdb05f727858f53')
+ '7ad4d3ce4af3a6ff47ba2e5428092139666ad821101dafe1599b209d53f6943f')
build() {
cd "$srcdir/$pkgname-$pkgver"
@@ -52,6 +52,9 @@ package() {
# avoid conflict with filesystem>=2012.06
rm -r "$pkgdir/run"
+
+ install -dm755 "$pkgdir/usr/lib/ntp-units.d"
+ echo "$pkgname.service" > "$pkgdir/usr/lib/ntp-units.d/$pkgname.list"
}
# vim:set ts=2 sw=2 et:
diff --git a/community/openntpd/openntpd.install b/community/openntpd/openntpd.install
index 42063ef21..4f42aeb1f 100644
--- a/community/openntpd/openntpd.install
+++ b/community/openntpd/openntpd.install
@@ -10,7 +10,7 @@ createuser() {
post_install() {
createuser
- systemd-tmpfiles --create /usr/lib/tmpfiles.d/openntpd.conf
+ systemd-tmpfiles --create openntpd.conf
}
post_upgrade() {
diff --git a/community/openntpd/openntpd.service b/community/openntpd/openntpd.service
index db76531d1..e419204d4 100644
--- a/community/openntpd/openntpd.service
+++ b/community/openntpd/openntpd.service
@@ -4,7 +4,7 @@ After=network.target
[Service]
Type=forking
-ExecStart=/usr/sbin/ntpd
+ExecStart=/usr/sbin/ntpd -s
[Install]
WantedBy=multi-user.target
diff --git a/core/iproute2/PKGBUILD b/core/iproute2/PKGBUILD
index 471b91ea9..4ce4a46f4 100644
--- a/core/iproute2/PKGBUILD
+++ b/core/iproute2/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 162200 2012-06-23 12:13:11Z ronald $
+# $Id: PKGBUILD 165491 2012-08-20 23:01:53Z allan $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Judd Vinet <jvinet@zeroflux.org>
pkgname=iproute2
-pkgver=3.4.0
-pkgrel=2
+pkgver=3.5.1
+pkgrel=1
pkgdesc="IP Routing Utilities"
arch=('i686' 'x86_64')
license=('GPL2')
@@ -20,7 +20,7 @@ backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_pro
'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables')
source=(http://www.kernel.org/pub/linux/utils/net/$pkgname/$pkgname-$pkgver.tar.xz
iproute2-fhs.patch)
-sha1sums=('fcea492dea2f3ecf9d35f279e2f1a7ea6ca0d527'
+sha1sums=('461f3e97d84264a597176de3ba94633114959df5'
'35b8cf2dc94b73eccad427235c07596146cd6f6c')
build() {
diff --git a/core/rfkill/PKGBUILD b/core/rfkill/PKGBUILD
index 64c76c5f7..bf87f9627 100644
--- a/core/rfkill/PKGBUILD
+++ b/core/rfkill/PKGBUILD
@@ -1,37 +1,39 @@
-# $Id: PKGBUILD 156346 2012-04-17 15:19:00Z bisson $
-# Maintainer: Thomas Bächler <thomas@archlinux.org>
+# $Id: PKGBUILD 165479 2012-08-20 14:46:54Z bisson $
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+# Contributor: Thomas Bächler <thomas@archlinux.org>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
pkgname=rfkill
pkgver=0.4
-pkgrel=4
-pkgdesc="A tool for enabling and disabling wireless devices"
-arch=('i686' 'x86_64')
-url="http://linuxwireless.org/en/users/Documentation/rfkill"
+pkgrel=5
+pkgdesc='Tool for enabling and disabling wireless devices'
+url='http://linuxwireless.org/en/users/Documentation/rfkill'
license=('custom')
-source=(http://wireless.kernel.org/download/${pkgname}/${pkgname}-${pkgver}.tar.bz2
- 60-rfkill.rules
- rfkill.conf.d
- rfkill.rc.d)
-backup=(etc/conf.d/rfkill)
-md5sums=('727892c0fb35c80ee3849fbe89b45350'
- '63f9bf9264911242e430867a41e8918c'
- '398e7cadf023e05e3e0c323aa33575b9'
- '793f0510e26547eb2632efce7d16e50e')
+arch=('i686' 'x86_64')
+source=("http://wireless.kernel.org/download/${pkgname}/${pkgname}-${pkgver}.tar.bz2"
+ 'rules.d'
+ 'service'
+ 'conf.d'
+ 'rc.d')
+sha1sums=('fccabf5a272ac2891f24dc35449dc6f4c45ff44b'
+ '6390eaa793b473098aaa11b13c5254d611a4c13a'
+ 'cadc563f967c5ac680e7cdfd764718b412201f8a'
+ 'd969fe927a9fb2926af43a311a7c1fa126fe59a9'
+ '380af0b002f51543557306ed68a27f0059fd5a6f')
+
+backup=('etc/conf.d/rfkill')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR="${pkgdir}" install
- # License
- install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
- # Udev rule
- install -Dm644 "${srcdir}/60-rfkill.rules" "${pkgdir}/usr/lib/udev/rules.d/60-rfkill.rules"
- # Init script
- install -Dm644 "${srcdir}/rfkill.conf.d" "${pkgdir}/etc/conf.d/rfkill"
- install -Dm755 "${srcdir}/rfkill.rc.d" "${pkgdir}/etc/rc.d/rfkill"
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ install -Dm644 ../rules.d "${pkgdir}/usr/lib/udev/rules.d/60-rfkill.rules"
+ install -Dm644 ../service "${pkgdir}/usr/lib/systemd/system/rfkill.service"
+ install -Dm644 ../conf.d "${pkgdir}/etc/conf.d/rfkill"
+ install -Dm755 ../rc.d "${pkgdir}/etc/rc.d/rfkill"
}
diff --git a/core/rfkill/conf.d b/core/rfkill/conf.d
new file mode 100644
index 000000000..4483da26c
--- /dev/null
+++ b/core/rfkill/conf.d
@@ -0,0 +1,20 @@
+#
+# /etc/conf.d/rfkill
+# Configuration for the rfkill startup script
+#
+
+# List of devices to block on startup (space-separated)
+RFKILL_BLOCK=""
+
+# List of devices to unblock on startup (space-separated)
+RFKILL_UNBLOCK="all"
+
+# Supported device names are: all, wifi, bluetooth, umb, wimax, wwan, gps and specific device names like phy0, hci0, ...
+# See "rfkill list" for available devices
+# Examples:
+#
+# Block all bluetooth devices:
+# RFKILL_BLOCK="bluetooth"
+#
+# Unblock the phy0 wifi device and all wwan devices:
+# RFKILL_UNBLOCK="phy0 wwan"
diff --git a/core/rfkill/rc.d b/core/rfkill/rc.d
new file mode 100755
index 000000000..ce90ee150
--- /dev/null
+++ b/core/rfkill/rc.d
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/rfkill
+
+case "$1" in
+ start)
+ for device in ${RFKILL_BLOCK}; do
+ stat_busy "Blocking rfkill device: ${device}"
+ /usr/sbin/rfkill block ${device}
+ if [ $? -eq 0 ]; then
+ stat_done
+ else
+ stat_fail
+ fi
+ done
+ for device in ${RFKILL_UNBLOCK}; do
+ stat_busy "Unblocking rfkill device: ${device}"
+ /usr/sbin/rfkill unblock ${device}
+ if [ $? -eq 0 ]; then
+ stat_done
+ else
+ stat_fail
+ fi
+ done
+ ;;
+ stop)
+ ;;
+ restart)
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start}"
+ exit 1
+ ;;
+esac
+exit 0
diff --git a/core/rfkill/rules.d b/core/rfkill/rules.d
new file mode 100644
index 000000000..bc98a3bef
--- /dev/null
+++ b/core/rfkill/rules.d
@@ -0,0 +1 @@
+KERNEL=="rfkill", GROUP="rfkill", MODE="0664"
diff --git a/core/rfkill/service b/core/rfkill/service
new file mode 100644
index 000000000..decd5b6fc
--- /dev/null
+++ b/core/rfkill/service
@@ -0,0 +1,11 @@
+[Unit]
+Description=RFKill-Block Selected Devices
+
+[Service]
+Type=oneshot
+ExecStart=/usr/sbin/rfkill block 9999
+ExecStop=/usr/sbin/rfkill unblock all
+RemainAfterExit=yes
+
+[Install]
+WantedBy=multi-user.target
diff --git a/extra/calligra/PKGBUILD b/extra/calligra/PKGBUILD
index c10db20f4..51081072d 100644
--- a/extra/calligra/PKGBUILD
+++ b/extra/calligra/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 165426 2012-08-19 07:57:30Z andyrtr $
+# $Id: PKGBUILD 165455 2012-08-20 08:43:02Z andrea $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
@@ -22,15 +22,14 @@ pkgname=('calligra-filters'
'calligra-braindump'
'calligra-flow')
pkgver=2.5.0
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
url='http://www.calligra-suite.org/'
license=('FDL1.2' 'GPL2' 'LGPL')
-makedepends=('cmake' 'automoc4' 'boost ' 'eigen2'
- 'kdepimlibs' 'libpqxx' 'freetds' 'xbase'
- 'kdegraphics-okular' 'gsl' 'kdeedu-marble'
- 'libwps' 'libwpg' 'pstoedit' 'glew'
- 'fftw' 'opengtl' 'lcms2' 'libkdcraw')
+makedepends=('cmake' 'automoc4' 'boost ' 'kdepimlibs' 'eigen2' 'kdeedu-marble'
+ 'lcms2' 'libmysqlclient' 'libpqxx' 'freetds' 'xbase' 'libwpg'
+ 'libwps' 'gsl' 'glew' 'fftw' 'opengtl' 'poppler-qt' 'libkdcraw'
+ 'openjpeg' 'kdegraphics-okular' 'pstoedit')
groups=('calligra')
source=("http://download.kde.org/stable/${pkgbase}-${pkgver}/${pkgbase}-${pkgver}.tar.bz2")
md5sums=('bea9b5e9d95691caaba385ef5522a60d')
@@ -41,9 +40,7 @@ build() {
cmake ../${pkgbase}-${pkgver} \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_active=OFF \
- -DBUILD_mobile=OFF \
- -DIHAVEPATCHEDQT=1
+ -DBUILD_active=OFF
make
}
@@ -132,7 +129,7 @@ package_calligra-tools() {
package_calligra-karbon() {
pkgdesc="Create scalable vector drawings"
- depends=('calligra-libs' 'calligra-templates' 'kdebase-runtime')
+ depends=('calligra-libs' 'calligra-templates' 'kdebase-runtime' 'pstoedit')
optdepends=('calligra-filters: import/export filters'
'calligra-tools: extra calligra tools')
conflicts=('koffice-karbon' 'koffice-karbon-doc' 'calligra-karbon-doc')
@@ -145,7 +142,7 @@ package_calligra-karbon() {
package_calligra-kexi() {
pkgdesc="Develop desktop database applications"
- depends=('calligra-libs' 'calligra-templates')
+ depends=('calligra-libs' 'calligra-templates' 'glew' 'fftw')
optdepends=('libmysqlclient: MySQL driver'
'libpqxx: PostgreSQL driver'
'freetds: Sybase & MS SQL driver'
@@ -159,6 +156,8 @@ package_calligra-kexi() {
cd "${srcdir}"/build/kexi
make DESTDIR="${pkgdir}" install
+ cd "${srcdir}"/build/doc/kexi
+ make DESTDIR="${pkgdir}" install
}
package_calligra-plan() {
@@ -182,12 +181,14 @@ package_calligra-stage() {
cd "${srcdir}"/build/stage
make DESTDIR="${pkgdir}" install
+ cd "${srcdir}"/build/doc/stage
+ make DESTDIR="${pkgdir}" install
}
package_calligra-krita() {
pkgdesc="Edit and paint images"
- depends=('calligra-templates' 'calligra-plugins' 'kdebase-runtime'
- 'qimageblitz' 'poppler-qt' 'opengtl' 'glew' 'libkdcraw' 'fftw')
+ depends=('calligra-templates' 'calligra-plugins' 'kdebase-runtime' 'eigen2'
+ 'poppler-qt' 'libkdcraw' 'fftw' 'glew' 'opengtl')
conflicts=('koffice-krita' 'calligra-krita-doc')
replaces=('koffice-krita' 'calligra-krita-doc')
install=calligra-krita.install
@@ -198,7 +199,7 @@ package_calligra-krita() {
package_calligra-sheets() {
pkgdesc="Write spreadsheet documents"
- depends=('calligra-templates' 'calligra-libs' 'gsl' 'kdebase-runtime')
+ depends=('calligra-templates' 'calligra-libs' 'gsl' 'kdebase-runtime' 'eigen2')
optdepends=('calligra-filters: import/export filters'
'calligra-plugins: extra calligra plugins'
'calligra-tools: extra calligra tools')
@@ -208,12 +209,13 @@ package_calligra-sheets() {
cd "${srcdir}"/build/sheets
make DESTDIR="${pkgdir}" install
+ cd "${srcdir}"/build/doc/sheets
+ make DESTDIR="${pkgdir}" install
}
package_calligra-words() {
pkgdesc="Word Processor"
- depends=('calligra-templates' 'calligra-pics' 'calligra-kounavail'
- 'calligra-plugins' 'kdegraphics-okular')
+ depends=('calligra-templates' 'calligra-pics' 'calligra-plugins' 'kdegraphics-okular')
optdepends=('calligra-tools: extra calligra tools')
conflicts=('koffice-kword')
replaces=('koffice-kword')
@@ -227,6 +229,7 @@ package_calligra-handbook() {
pkgdesc="Documentation for Calligra"
conflicts=('koffice-handbook')
replaces=('koffice-handbook')
+ options=('docs')
cd "${srcdir}"/build/doc/calligra
make DESTDIR="${pkgdir}" install
@@ -243,7 +246,7 @@ package_calligra-braindump() {
package_calligra-flow() {
pkgdesc="Flowchart & Diagram Editing"
- depends=('calligra-words' 'kdebase-runtime')
+ depends=('calligra-words')
conflicts=('calligra-flow-doc')
replaces=('calligra-flow-doc')
install=calligra-flow.install
diff --git a/extra/dvdauthor/PKGBUILD b/extra/dvdauthor/PKGBUILD
index 6eda716a9..003bebf9a 100644
--- a/extra/dvdauthor/PKGBUILD
+++ b/extra/dvdauthor/PKGBUILD
@@ -1,28 +1,24 @@
-# $Id: PKGBUILD 148702 2012-02-05 11:47:33Z ibiru $
+# $Id: PKGBUILD 165483 2012-08-20 17:27:32Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Travis Willard <travisw@wmpub.ca>
# Contributor: Jaroslaw Swierczynski <swiergot@juvepoland.com>
# Contributor: Nicolai Lissner <nlissne@linux01.gwdg.de>
pkgname=dvdauthor
-pkgver=0.7.0
-pkgrel=4
+pkgver=0.7.1
+pkgrel=1
pkgdesc="DVD authoring tools"
arch=('i686' 'x86_64')
url="http://dvdauthor.sourceforge.net/"
license=('GPL')
depends=('libdvdread' 'imagemagick' 'libxml2' 'libpng' 'fribidi')
options=('!makeflags')
-source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz"
- 'dvdauthor-0.7.0-libpng15.patch')
-md5sums=('33a447fb98ab3293ac40f869eedc17ff'
- '9ea90bbea6adb0469c8c1b2f7d033f11')
+source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz")
+md5sums=('2694a5a3ef460106ea3caf0f7f60ff80')
build() {
cd "${srcdir}/${pkgname}"
- patch -Np0 -i "${srcdir}/dvdauthor-0.7.0-libpng15.patch"
-
./configure --prefix=/usr \
--sysconfdir=/etc
make
diff --git a/extra/fping/PKGBUILD b/extra/fping/PKGBUILD
index d451776c2..0383b1d05 100644
--- a/extra/fping/PKGBUILD
+++ b/extra/fping/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 160147 2012-05-29 23:00:04Z giovanni $
+# $Id: PKGBUILD 165451 2012-08-20 08:01:40Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=fping
-pkgver=3.2
+pkgver=3.3
pkgrel=1
pkgdesc="A utility to ping multiple hosts at once"
arch=('i686' 'x86_64')
@@ -11,13 +11,15 @@ url="http://www.fping.org/"
license=('custom')
depends=('glibc')
source=("http://www.fping.org/dist/${pkgname}-${pkgver}.tar.gz")
-md5sums=('efc86557e9b54e5c3becb598a50684a0')
+md5sums=('3260bdc49e72ccc9dc63b1e2fb02eae5')
build() {
cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr \
- --mandir=/usr/share/man
+ --mandir=/usr/share/man \
+ --enable-ipv4 \
+ --enable-ipv6
make
}
diff --git a/extra/irqbalance/PKGBUILD b/extra/irqbalance/PKGBUILD
index 99648219e..52c5ae477 100644
--- a/extra/irqbalance/PKGBUILD
+++ b/extra/irqbalance/PKGBUILD
@@ -2,7 +2,8 @@
# Contributor: Martin Striz <ms@poruba.net>
pkgname=irqbalance
-pkgver=1.0.3
+_realver=1.0.3
+pkgver=1.0.3.20110809
pkgrel=1
pkgdesc="IRQ balancing daemon for SMP systems"
arch=('i686' 'x86_64')
@@ -11,22 +12,29 @@ license=('GPL')
depends=(glib2 numactl libcap-ng)
makedepends=(pkgconfig)
backup=(etc/conf.d/irqbalance)
-source=(http://irqbalance.googlecode.com/files/irqbalance-$pkgver.tar.gz
+source=(http://irqbalance.googlecode.com/files/irqbalance-$_realver.tar.gz
+ irqbalance-2011-08-09.patch
irqbalance.conf.d
- irqbalance.rc.d)
+ irqbalance.rc.d
+ irqbalance.service)
md5sums=('6f246481d6295bcb9a79751c03207c96'
+ '49a5669fc3eb452a5d24abec887f0a6a'
'336c1ee99818f9ecda1687e34c69fd6b'
- 'fb82fc5d267d39110baf720d81282a7c')
+ 'fb82fc5d267d39110baf720d81282a7c'
+ '9e82dc471128117982a8dd0c4bd5f246')
build() {
- cd "$srcdir/$pkgname-$pkgver"
+ cd "$srcdir/$pkgname-$_realver"
+ patch -Np1 < ../irqbalance-2011-08-09.patch
+ autoreconf -fi
./configure --prefix=/usr
make
}
package() {
- cd "$srcdir/$pkgname-$pkgver"
+ cd "$srcdir/$pkgname-$_realver"
make install DESTDIR="$pkgdir"
install -D -m644 ../irqbalance.conf.d "$pkgdir"/etc/conf.d/irqbalance
install -D -m755 ../irqbalance.rc.d "$pkgdir"/etc/rc.d/irqbalance
+ install -D -m644 ../irqbalance.service "$pkgdir"/usr/lib/systemd/system/irqbalance.service
}
diff --git a/extra/irqbalance/irqbalance-2011-08-09.patch b/extra/irqbalance/irqbalance-2011-08-09.patch
new file mode 100644
index 000000000..fcdb8bdbf
--- /dev/null
+++ b/extra/irqbalance/irqbalance-2011-08-09.patch
@@ -0,0 +1,1584 @@
+diff --git a/ChangeLog b/ChangeLog
+deleted file mode 100644
+index f5e9428..0000000
+--- a/ChangeLog
++++ /dev/null
+@@ -1,3 +0,0 @@
+-This is all tracked in the SVN repo. This file is just here to keep the
+-autotools from complaining
+-
+diff --git a/Makefile.am b/Makefile.am
+index 9847232..188e34f 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -22,17 +22,17 @@
+
+ AUTOMAKE_OPTIONS = no-dependencies
+ ACLOCAL_AMFLAGS = -I m4
+-EXTRA_DIST = README INSTALL COPYING autogen.sh m4/cap-ng.m4 misc/irqbalance.service
+-
++EXTRA_DIST = INSTALL COPYING autogen.sh misc/irqbalance.service
++
+ INCLUDES = -I${top_srcdir}
+-LIBS = $(CAPNG_LDADD) $(GLIB_LIBS) @LIBS@
+-AM_CFLAGS = $(GLIB_CFLAGS)
++AM_CFLAGS = $(LIBCAP_NG_CFLAGS) $(GLIB_CFLAGS)
+ AM_CPPFLAGS = -W -Wall -Wshadow -Wformat -Wundef -D_GNU_SOURCE
+ noinst_HEADERS = bitmap.h constants.h cpumask.h irqbalance.h non-atomic.h \
+ types.h
+ sbin_PROGRAMS = irqbalance
+ irqbalance_SOURCES = activate.c bitmap.c classify.c cputree.c irqbalance.c \
+- irqlist.c numa.c placement.c powermode.c procinterrupts.c
++ irqlist.c numa.c placement.c procinterrupts.c
++irqbalance_LDADD = $(LIBCAP_NG_LIBS) $(GLIB_LIBS)
+ dist_man_MANS = irqbalance.1
+
+ CONFIG_CLEAN_FILES = debug*.list config/*
+@@ -40,3 +40,6 @@ clean-generic:
+ rm -rf autom4te*.cache
+ rm -f *.rej *.orig *~
+
++if LOCAL_GLIB
++SUBDIRS = glib-local
++endif
+diff --git a/NEWS b/NEWS
+deleted file mode 100644
+index 7cc0277..0000000
+--- a/NEWS
++++ /dev/null
+@@ -1 +0,0 @@
+-No news currently
+diff --git a/README b/README
+deleted file mode 100644
+index e69de29..0000000
+diff --git a/activate.c b/activate.c
+index 292c44a..02fc8dc 100644
+--- a/activate.c
++++ b/activate.c
+@@ -1,5 +1,6 @@
+ /*
+ * Copyright (C) 2006, Intel Corporation
++ * Copyright (C) 2012, Neil Horman <nhorman@tuxdriver.com>
+ *
+ * This file is part of irqbalance
+ *
+@@ -31,34 +32,63 @@
+
+ #include "irqbalance.h"
+
++static int check_affinity(struct irq_info *info, cpumask_t applied_mask)
++{
++ cpumask_t current_mask;
++ char buf[PATH_MAX];
++ char *line = NULL;
++ size_t size = 0;
++ FILE *file;
++
++ sprintf(buf, "/proc/irq/%i/smp_affinity", info->irq);
++ file = fopen(buf, "r");
++ if (!file)
++ return 1;
++ if (getline(&line, &size, file)==0) {
++ free(line);
++ fclose(file);
++ return 1;
++ }
++ cpumask_parse_user(line, strlen(line), current_mask);
++ fclose(file);
++ free(line);
++
++ return cpus_equal(applied_mask, current_mask);
++}
+
+ static void activate_mapping(struct irq_info *info, void *data __attribute__((unused)))
+ {
+ char buf[PATH_MAX];
+ FILE *file;
+ cpumask_t applied_mask;
++ int valid_mask = 0;
++
++ if ((hint_policy == HINT_POLICY_EXACT) &&
++ (!cpus_empty(info->affinity_hint))) {
++ applied_mask = info->affinity_hint;
++ valid_mask = 1;
++ } else if (info->assigned_obj) {
++ applied_mask = info->assigned_obj->mask;
++ valid_mask = 1;
++ if ((hint_policy == HINT_POLICY_SUBSET) &&
++ (!cpus_empty(info->affinity_hint)))
++ cpus_and(applied_mask, applied_mask, info->affinity_hint);
++ }
+
+ /*
+ * only activate mappings for irqs that have moved
+ */
+- if (!info->moved)
++ if (!info->moved && (!valid_mask || check_affinity(info, applied_mask)))
+ return;
+
+ if (!info->assigned_obj)
+ return;
+
+-
+ sprintf(buf, "/proc/irq/%i/smp_affinity", info->irq);
+ file = fopen(buf, "w");
+ if (!file)
+ return;
+
+- if ((hint_policy == HINT_POLICY_EXACT) &&
+- (!cpus_empty(info->affinity_hint)))
+- applied_mask = info->affinity_hint;
+- else
+- applied_mask = info->assigned_obj->mask;
+-
+ cpumask_scnprintf(buf, PATH_MAX, applied_mask);
+ fprintf(file, "%s", buf);
+ fclose(file);
+diff --git a/autogen.sh b/autogen.sh
+index 5ad9f14..b792e8b 100755
+--- a/autogen.sh
++++ b/autogen.sh
+@@ -1,4 +1,5 @@
+ #! /bin/sh
+ set -x -e
++mkdir -p m4
+ # --no-recursive is available only in recent autoconf versions
+ autoreconf -fv --install
+diff --git a/classify.c b/classify.c
+index 124dab0..05b3bfb 100644
+--- a/classify.c
++++ b/classify.c
+@@ -52,6 +52,8 @@ static short class_codes[MAX_CLASS] = {
+ };
+
+ static GList *interrupts_db;
++static GList *new_irq_list;
++static GList *banned_irqs;
+
+ #define SYSDEV_DIR "/sys/bus/pci/devices"
+
+@@ -63,6 +65,30 @@ static gint compare_ints(gconstpointer a, gconstpointer b)
+ return ai->irq - bi->irq;
+ }
+
++void add_banned_irq(int irq)
++{
++ struct irq_info find, *new;
++ GList *entry;
++
++ find.irq = irq;
++ entry = g_list_find_custom(banned_irqs, &find, compare_ints);
++ if (entry)
++ return;
++
++ new = calloc(sizeof(struct irq_info), 1);
++ if (!new) {
++ if (debug_mode)
++ printf("No memory to ban irq %d\n", irq);
++ return;
++ }
++
++ new->irq = irq;
++
++ banned_irqs = g_list_append(banned_irqs, new);
++ return;
++}
++
++
+ /*
+ * Inserts an irq_info struct into the intterupts_db list
+ * devpath points to the device directory in sysfs for the
+@@ -90,6 +116,13 @@ static struct irq_info *add_one_irq_to_db(const char *devpath, int irq)
+ return NULL;
+ }
+
++ entry = g_list_find_custom(banned_irqs, &find, compare_ints);
++ if (entry) {
++ if (debug_mode)
++ printf("SKIPPING BANNED IRQ %d\n", irq);
++ return NULL;
++ }
++
+ new = calloc(sizeof(struct irq_info), 1);
+ if (!new)
+ return NULL;
+@@ -175,6 +208,43 @@ out:
+ return new;
+ }
+
++static int check_for_irq_ban(char *path, int irq)
++{
++ char *cmd;
++ int rc;
++
++ if (!banscript)
++ return 0;
++
++ cmd = alloca(strlen(path)+strlen(banscript)+32);
++ if (!cmd)
++ return 0;
++
++ sprintf(cmd, "%s %s %d",banscript, path, irq);
++ rc = system(cmd);
++
++ /*
++ * The system command itself failed
++ */
++ if (rc == -1) {
++ if (debug_mode)
++ printf("%s failed, please check the --banscript option\n", cmd);
++ else
++ syslog(LOG_INFO, "%s failed, please check the --banscript option\n", cmd);
++ return 0;
++ }
++
++ if (WEXITSTATUS(rc)) {
++ if (debug_mode)
++ printf("irq %d is baned by %s\n", irq, banscript);
++ else
++ syslog(LOG_INFO, "irq %d is baned by %s\n", irq, banscript);
++ return 1;
++ }
++ return 0;
++
++}
++
+ /*
+ * Figures out which interrupt(s) relate to the device we're looking at in dirname
+ */
+@@ -199,6 +269,10 @@ static void build_one_dev_entry(const char *dirname)
+ irqnum = strtol(entry->d_name, NULL, 10);
+ if (irqnum) {
+ sprintf(path, "%s/%s", SYSDEV_DIR, dirname);
++ if (check_for_irq_ban(path, irqnum)) {
++ add_banned_irq(irqnum);
++ continue;
++ }
+ new = add_one_irq_to_db(path, irqnum);
+ if (!new)
+ continue;
+@@ -221,6 +295,11 @@ static void build_one_dev_entry(const char *dirname)
+ */
+ if (irqnum) {
+ sprintf(path, "%s/%s", SYSDEV_DIR, dirname);
++ if (check_for_irq_ban(path, irqnum)) {
++ add_banned_irq(irqnum);
++ goto done;
++ }
++
+ new = add_one_irq_to_db(path, irqnum);
+ if (!new)
+ goto done;
+@@ -248,6 +327,8 @@ void rebuild_irq_db(void)
+ {
+ DIR *devdir = opendir(SYSDEV_DIR);
+ struct dirent *entry;
++ GList *gentry;
++ struct irq_info *ninfo, *iinfo;
+
+ free_irq_db();
+
+@@ -263,22 +344,46 @@ void rebuild_irq_db(void)
+ build_one_dev_entry(entry->d_name);
+
+ } while (entry != NULL);
++
+ closedir(devdir);
++
++ if (!new_irq_list)
++ return;
++ gentry = g_list_first(new_irq_list);
++ while(gentry) {
++ ninfo = gentry->data;
++ iinfo = get_irq_info(ninfo->irq);
++ new_irq_list = g_list_remove(gentry, ninfo);
++ if (!iinfo) {
++ if (debug_mode)
++ printf("Adding untracked IRQ %d to database\n", ninfo->irq);
++ interrupts_db = g_list_append(interrupts_db, ninfo);
++ } else
++ free(ninfo);
++
++ gentry = g_list_first(new_irq_list);
++ }
++ g_list_free(new_irq_list);
++ new_irq_list = NULL;
++
+ }
+
+-struct irq_info *add_misc_irq(int irq)
++struct irq_info *add_new_irq(int irq)
+ {
+- struct irq_info *new;
++ struct irq_info *new, *nnew;
+
+ new = calloc(sizeof(struct irq_info), 1);
+- if (!new)
++ nnew = calloc(sizeof(struct irq_info), 1);
++ if (!new || !nnew)
+ return NULL;
+
+ new->irq = irq;
+ new->type = IRQ_TYPE_LEGACY;
+ new->class = IRQ_OTHER;
+ new->numa_node = get_numa_node(-1);
++ memcpy(nnew, new, sizeof(struct irq_info));
+ interrupts_db = g_list_append(interrupts_db, new);
++ new_irq_list = g_list_append(new_irq_list, nnew);
+ return new;
+ }
+
+@@ -307,7 +412,7 @@ struct irq_info *get_irq_info(int irq)
+ void migrate_irq(GList **from, GList **to, struct irq_info *info)
+ {
+ GList *entry;
+- struct irq_info find, *tmp;;
++ struct irq_info find, *tmp;
+
+ find.irq = info->irq;
+ entry = g_list_find_custom(*from, &find, compare_ints);
+@@ -325,18 +430,9 @@ static gint sort_irqs(gconstpointer A, gconstpointer B)
+ a = (struct irq_info*)A;
+ b = (struct irq_info*)B;
+
+- if (a->class < b->class)
+- return 1;
+- if (a->class > b->class)
+- return -1;
+- if (a->load < b->load)
+- return 1;
+- if (a->load > b->load)
+- return -1;
+- if (a<b)
++ if (a->class < b->class || a->load < b->load || a < b)
+ return 1;
+ return -1;
+-
+ }
+
+ void sort_irq_list(GList **list)
+diff --git a/configure.ac b/configure.ac
+index eed55ba..1230d66 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1,49 +1,12 @@
+-dnl
+-define([AC_INIT_NOTICE],
+-[### Generated automatically using autoconf version] AC_ACVERSION [
+-### Copyright 2009 Steve Grubb <sgrubb@redhat.com>
+-###
+-### Permission is hereby granted, free of charge, to any person obtaining a
+-### copy of this software and associated documentation files (the "Software"),
+-### to deal in the Software without restriction, including without limitation
+-### the rights to use, copy, modify, merge, publish, distribute, sublicense,
+-### and/or sell copies of the Software, and to permit persons to whom the
+-### Software is furnished to do so, subject to the following conditions:
+-###
+-### The above copyright notice and this permission notice shall be included
+-### in all copies or substantial portions of the Software.
+-###
+-### THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+-### IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+-### FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+-### THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+-### OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+-### ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+-### OTHER DEALINGS IN THE SOFTWARE.
+-###
+-### For usage, run `./configure --help'
+-### For more detailed information on installation, read the file `INSTALL'.
+-###
+-### If configuration succeeds, status is in the file `config.status'.
+-### A log of configuration tests is in `config.log'.
+-])
+-
+-AC_REVISION($Revision: 1.3 $)dnl
+ AC_INIT(irqbalance,1.0.3)
+ AC_PREREQ(2.12)dnl
+ AM_CONFIG_HEADER(config.h)
+
+-echo Configuring irqbalance $VERSION
+-
+ AC_CONFIG_MACRO_DIR([m4])
+-AC_CANONICAL_TARGET
+-AM_INIT_AUTOMAKE
++AM_INIT_AUTOMAKE([foreign])
+ AM_PROG_LIBTOOL
+ AC_SUBST(LIBTOOL_DEPS)
+
+-AC_MSG_NOTICE()
+-AC_MSG_NOTICE([Checking for programs])
+-
+ AC_PROG_CC
+ AC_PROG_INSTALL
+ AC_PROG_AWK
+@@ -55,9 +18,6 @@ AS_IF([test "$enable_numa" = "no"],[
+ ac_cv_lib_numa_numa_available=no
+ ])
+
+-AC_MSG_NOTICE
+-AC_MSG_NOTICE([echo Checking for header files])
+-
+ AC_HEADER_STDC
+ AC_CHECK_HEADERS([numa.h])
+
+@@ -70,10 +30,57 @@ AC_C_CONST
+ AC_C_INLINE
+ AM_PROG_CC_C_O
+
+-PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.28])
+-LIBCAP_NG_PATH
++AC_ARG_WITH([glib2],
++ [AS_HELP_STRING([--without-glib2],
++ [Don't use system glib2 library. Use local implementation instead.])],
++ [],
++ [with_glib2=check])
++
++local_glib2=
++AS_IF(
++ [test "x$with_glib2" = xyes],
++ [PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.28])],
++
++ [test "x$with_glib2" = xno],
++ [local_glib2="yes"],
++
++ [PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.28], [], [local_glib2="yes"])]
++)
++
++AS_IF(
++ [test "x$local_glib2" = xyes],
++ [
++ GLIB_CFLAGS=-I./glib-local
++ GLIB_LIBS=glib-local/libglib.a
++ AC_SUBST(GLIB_CFLAGS)
++ AC_SUBST(GLIB_LIBS)
++ AC_MSG_WARN(Using locale implementation of GList functions)
++ ]
++)
++
++AM_CONDITIONAL([LOCAL_GLIB], [test "x$local_glib2" = "xyes"])
++
++AC_ARG_WITH([libcap-ng],
++ AS_HELP_STRING([libcap-ng], [Add libcap-ng-support @<:@default=auto@:>@]))
++
++AS_IF(
++ [test "x$libcap_ng" != "xno"],
++ [
++ PKG_CHECK_MODULES([LIBCAP_NG], [libcap-ng],
++ [AC_DEFINE(HAVE_LIBCAP_NG,1,[libcap-ng support])],
++ [
++ AS_IF(
++ [test "x$libcap_ng" = "xyes"],
++ [
++ AC_MSG_ERROR([libcap-ng not found])
++ ]
++ )
++ ]
++ )
++ ]
++)
+
+-AC_OUTPUT(Makefile)
++AC_OUTPUT(Makefile glib-local/Makefile)
+
+ AC_MSG_NOTICE()
+ AC_MSG_NOTICE([irqbalance Version: $VERSION])
+diff --git a/cputree.c b/cputree.c
+index af4fd3a..9568967 100644
+--- a/cputree.c
++++ b/cputree.c
+@@ -1,5 +1,6 @@
+ /*
+ * Copyright (C) 2006, Intel Corporation
++ * Copyright (C) 2012, Neil Horman <nhorman@tuxdriver.com>
+ *
+ * This file is part of irqbalance
+ *
+diff --git a/glib-local/Makefile.am b/glib-local/Makefile.am
+new file mode 100644
+index 0000000..336b56e
+--- /dev/null
++++ b/glib-local/Makefile.am
+@@ -0,0 +1,8 @@
++## Process this file with automake to produce Makefile.in
++noinst_LIBRARIES = libglib.a
++
++libglib_a_SOURCES = glist.c
++
++libglib_a_CFLAGS = @GLIB_CFLAGS@
++
++noinst_HEADERS = glib.h glist.h
+diff --git a/glib-local/glib.h b/glib-local/glib.h
+new file mode 100644
+index 0000000..5874892
+--- /dev/null
++++ b/glib-local/glib.h
+@@ -0,0 +1 @@
++#include <glist.h>
+diff --git a/glib-local/glist.c b/glib-local/glist.c
+new file mode 100644
+index 0000000..6fa1761
+--- /dev/null
++++ b/glib-local/glist.c
+@@ -0,0 +1,381 @@
++#include <stdlib.h>
++
++#include "glist.h"
++
++/**
++ * g_list_free:
++ * @list: a #GList
++ *
++ * Frees all of the memory used by a #GList.
++ * The freed elements are returned to the slice allocator.
++ *
++ * <note><para>
++ * If list elements contain dynamically-allocated memory,
++ * you should either use g_list_free_full() or free them manually
++ * first.
++ * </para></note>
++ */
++void
++g_list_free (GList *list)
++{
++ GList *l = list;
++
++ while(l) {
++ GList *tmp = l->next;
++ free(l);
++ l = tmp;
++ }
++}
++
++/**
++ * g_list_last:
++ * @list: a #GList
++ *
++ * Gets the last element in a #GList.
++ *
++ * Returns: the last element in the #GList,
++ * or %NULL if the #GList has no elements
++ */
++GList*
++g_list_last (GList *list)
++{
++ if (list)
++ {
++ while (list->next)
++ list = list->next;
++ }
++
++ return list;
++}
++
++/**
++ * g_list_append:
++ * @list: a pointer to a #GList
++ * @data: the data for the new element
++ *
++ * Adds a new element on to the end of the list.
++ *
++ * <note><para>
++ * The return value is the new start of the list, which
++ * may have changed, so make sure you store the new value.
++ * </para></note>
++ *
++ * <note><para>
++ * Note that g_list_append() has to traverse the entire list
++ * to find the end, which is inefficient when adding multiple
++ * elements. A common idiom to avoid the inefficiency is to prepend
++ * the elements and reverse the list when all elements have been added.
++ * </para></note>
++ *
++ * |[
++ * /&ast; Notice that these are initialized to the empty list. &ast;/
++ * GList *list = NULL, *number_list = NULL;
++ *
++ * /&ast; This is a list of strings. &ast;/
++ * list = g_list_append (list, "first");
++ * list = g_list_append (list, "second");
++ *
++ * /&ast; This is a list of integers. &ast;/
++ * number_list = g_list_append (number_list, GINT_TO_POINTER (27));
++ * number_list = g_list_append (number_list, GINT_TO_POINTER (14));
++ * ]|
++ *
++ * Returns: the new start of the #GList
++ */
++GList*
++g_list_append (GList *list,
++ gpointer data)
++{
++ GList *new_list;
++ GList *last;
++
++ new_list = malloc(sizeof(*new_list));
++ new_list->data = data;
++ new_list->next = NULL;
++
++ if (list)
++ {
++ last = g_list_last (list);
++ /* g_assert (last != NULL); */
++ last->next = new_list;
++ new_list->prev = last;
++
++ return list;
++ }
++ else
++ {
++ new_list->prev = NULL;
++ return new_list;
++ }
++}
++
++static inline GList*
++_g_list_remove_link (GList *list,
++ GList *link)
++{
++ if (link)
++ {
++ if (link->prev)
++ link->prev->next = link->next;
++ if (link->next)
++ link->next->prev = link->prev;
++
++ if (link == list)
++ list = list->next;
++
++ link->next = NULL;
++ link->prev = NULL;
++ }
++
++ return list;
++}
++
++/**
++ * g_list_delete_link:
++ * @list: a #GList
++ * @link_: node to delete from @list
++ *
++ * Removes the node link_ from the list and frees it.
++ * Compare this to g_list_remove_link() which removes the node
++ * without freeing it.
++ *
++ * Returns: the new head of @list
++ */
++GList*
++g_list_delete_link (GList *list,
++ GList *link_)
++{
++ list = _g_list_remove_link (list, link_);
++ free (link_);
++
++ return list;
++}
++
++/**
++ * g_list_first:
++ * @list: a #GList
++ *
++ * Gets the first element in a #GList.
++ *
++ * Returns: the first element in the #GList,
++ * or %NULL if the #GList has no elements
++ */
++GList*
++g_list_first (GList *list)
++{
++ if (list)
++ {
++ while (list->prev)
++ list = list->prev;
++ }
++
++ return list;
++}
++
++static GList *
++g_list_sort_merge (GList *l1,
++ GList *l2,
++ GFunc compare_func,
++ gpointer user_data)
++{
++ GList list, *l, *lprev;
++ gint cmp;
++
++ l = &list;
++ lprev = NULL;
++
++ while (l1 && l2)
++ {
++ cmp = ((GCompareDataFunc) compare_func) (l1->data, l2->data, user_data);
++
++ if (cmp <= 0)
++ {
++ l->next = l1;
++ l1 = l1->next;
++ }
++ else
++ {
++ l->next = l2;
++ l2 = l2->next;
++ }
++ l = l->next;
++ l->prev = lprev;
++ lprev = l;
++ }
++ l->next = l1 ? l1 : l2;
++ l->next->prev = l;
++
++ return list.next;
++}
++
++static GList*
++g_list_sort_real (GList *list,
++ GFunc compare_func,
++ gpointer user_data)
++{
++ GList *l1, *l2;
++
++ if (!list)
++ return NULL;
++ if (!list->next)
++ return list;
++
++ l1 = list;
++ l2 = list->next;
++
++ while ((l2 = l2->next) != NULL)
++ {
++ if ((l2 = l2->next) == NULL)
++ break;
++ l1 = l1->next;
++ }
++ l2 = l1->next;
++ l1->next = NULL;
++
++ return g_list_sort_merge (g_list_sort_real (list, compare_func, user_data),
++ g_list_sort_real (l2, compare_func, user_data),
++ compare_func,
++ user_data);
++}
++
++/**
++ * g_list_sort:
++ * @list: a #GList
++ * @compare_func: the comparison function used to sort the #GList.
++ * This function is passed the data from 2 elements of the #GList
++ * and should return 0 if they are equal, a negative value if the
++ * first element comes before the second, or a positive value if
++ * the first element comes after the second.
++ *
++ * Sorts a #GList using the given comparison function.
++ *
++ * Returns: the start of the sorted #GList
++ */
++/**
++ * GCompareFunc:
++ * @a: a value.
++ * @b: a value to compare with.
++ * @Returns: negative value if @a &lt; @b; zero if @a = @b; positive
++ * value if @a > @b.
++ *
++ * Specifies the type of a comparison function used to compare two
++ * values. The function should return a negative integer if the first
++ * value comes before the second, 0 if they are equal, or a positive
++ * integer if the first value comes after the second.
++ **/
++GList *
++g_list_sort (GList *list,
++ GCompareFunc compare_func)
++{
++ return g_list_sort_real (list, (GFunc) compare_func, NULL);
++
++}
++
++/**
++ * g_list_length:
++ * @list: a #GList
++ *
++ * Gets the number of elements in a #GList.
++ *
++ * <note><para>
++ * This function iterates over the whole list to
++ * count its elements.
++ * </para></note>
++ *
++ * Returns: the number of elements in the #GList
++ */
++guint
++g_list_length (GList *list)
++{
++ guint length;
++
++ length = 0;
++ while (list)
++ {
++ length++;
++ list = list->next;
++ }
++
++ return length;
++}
++
++/**
++ * g_list_foreach:
++ * @list: a #GList
++ * @func: the function to call with each element's data
++ * @user_data: user data to pass to the function
++ *
++ * Calls a function for each element of a #GList.
++ */
++/**
++ * GFunc:
++ * @data: the element's data.
++ * @user_data: user data passed to g_list_foreach() or
++ * g_slist_foreach().
++ *
++ * Specifies the type of functions passed to g_list_foreach() and
++ * g_slist_foreach().
++ **/
++void
++g_list_foreach (GList *list,
++ GFunc func,
++ gpointer user_data)
++{
++ while (list)
++ {
++ GList *next = list->next;
++ (*func) (list->data, user_data);
++ list = next;
++ }
++}
++
++/**
++ * g_list_free_full:
++ * @list: a pointer to a #GList
++ * @free_func: the function to be called to free each element's data
++ *
++ * Convenience method, which frees all the memory used by a #GList, and
++ * calls the specified destroy function on every element's data.
++ *
++ * Since: 2.28
++ */
++void
++g_list_free_full (GList *list,
++ GDestroyNotify free_func)
++{
++ g_list_foreach (list, (GFunc) free_func, NULL);
++ g_list_free (list);
++}
++
++/**
++ * g_list_find_custom:
++ * @list: a #GList
++ * @data: user data passed to the function
++ * @func: the function to call for each element.
++ * It should return 0 when the desired element is found
++ *
++ * Finds an element in a #GList, using a supplied function to
++ * find the desired element. It iterates over the list, calling
++ * the given function which should return 0 when the desired
++ * element is found. The function takes two #gconstpointer arguments,
++ * the #GList element's data as the first argument and the
++ * given user data.
++ *
++ * Returns: the found #GList element, or %NULL if it is not found
++ */
++GList*
++g_list_find_custom (GList *list,
++ gconstpointer data,
++ GCompareFunc func)
++{
++ g_return_val_if_fail (func != NULL, list);
++
++ while (list)
++ {
++ if (! func (list->data, data))
++ return list;
++ list = list->next;
++ }
++
++ return NULL;
++}
+diff --git a/glib-local/glist.h b/glib-local/glist.h
+new file mode 100644
+index 0000000..47f2cfe
+--- /dev/null
++++ b/glib-local/glist.h
+@@ -0,0 +1,56 @@
++#ifndef __G_LIST_H__
++#define __G_LIST_H__
++
++typedef int gint;
++typedef unsigned int guint;
++typedef void* gpointer;
++typedef const void *gconstpointer;
++typedef gint (*GCompareFunc) (gconstpointer a,
++ gconstpointer b);
++typedef gint (*GCompareDataFunc) (gconstpointer a,
++ gconstpointer b,
++ gpointer user_data);
++typedef void (*GFunc) (gpointer data,
++ gpointer user_data);
++typedef void (*GDestroyNotify) (gpointer data);
++
++struct _GList;
++typedef struct _GList GList;
++
++struct _GList
++{
++ gpointer data;
++ GList *next;
++ GList *prev;
++};
++
++/* Doubly linked lists
++ */
++void g_list_free (GList *list);
++GList* g_list_append (GList *list,
++ gpointer data);
++GList* g_list_delete_link (GList *list,
++ GList *link_);
++GList* g_list_first (GList *list);
++GList* g_list_sort (GList *list,
++ GCompareFunc compare_func);
++guint g_list_length (GList *list);
++void g_list_foreach (GList *list,
++ GFunc func,
++ gpointer user_data);
++void g_list_free_full (GList *list,
++ GDestroyNotify free_func);
++GList* g_list_find_custom (GList *list,
++ gconstpointer data,
++ GCompareFunc func);
++
++#define g_list_previous(list) ((list) ? (((GList *)(list))->prev) : NULL)
++#define g_list_next(list) ((list) ? (((GList *)(list))->next) : NULL)
++
++#define g_return_val_if_fail(expr,val) do { \
++ if (expr) { } else \
++ { \
++ return (val); \
++ } } while(0);
++
++#endif /* __G_LIST_H__ */
+diff --git a/irqbalance.1 b/irqbalance.1
+index 55fc15f..20105bc 100644
+--- a/irqbalance.1
++++ b/irqbalance.1
+@@ -39,7 +39,11 @@ Causes irqbalance to be run once, after which the daemon exits
+ .TP
+
+ .B --debug
+-Causes irqbalance to run in the foreground and extra debug information to be printed
++Causes irqbalance to print extra debug information. Implies --foreground
++
++.TP
++.B --foreground
++Causes irqbalance to run in the foreground (without --debug)
+
+ .TP
+ .B --hintpolicy=[exact | subset | ignore]
+@@ -62,6 +66,30 @@ average cpu softirq workload, and no cpus are more than 1 standard deviation
+ above (and have more than 1 irq assigned to them), attempt to place 1 cpu in
+ powersave mode. In powersave mode, a cpu will not have any irqs balanced to it,
+ in an effort to prevent that cpu from waking up without need.
++
++.TP
++.B --banirq=<irqnum>
++Add the specified irq list to the set of banned irqs. irqbalance will not affect
++the affinity of any irqs on the banned list, allowing them to be specified
++manually. This option is addative and can be specified multiple times
++
++.TP
++.B --banscript=<script>
++Execute the specified script for each irq that is discovered, passing the sysfs
++path to the associated device as the first argument, and the irq vector as the
++second. An exit value of 0 tells irqbalance that this interrupt should balanced
++and managed as a normal irq, while a non-zero exit code indicates this irq
++should be ignored by irqbalance completely (see --banirq above). Use of this
++script provides users the ability to dynamically select which irqs get exluded
++from balancing, and provides an opportunity for manual affinity setting in one
++single code point.
++
++.TP
++.B --pid=<file>
++Have irqbalance write its process id to the specified file. By default no
++pidfile is written. The written pidfile is automatically unlinked when
++irqbalance exits.
++
+ .SH "ENVIRONMENT VARIABLES"
+ .TP
+ .B IRQBALANCE_ONESHOT
+@@ -75,9 +103,10 @@ Same as --debug
+ .B IRQBALANCE_BANNED_CPUS
+ Provides a mask of cpus which irqbalance should ignore and never assign interrupts to
+
++.SH "SIGNALS"
+ .TP
+-.B IRQBALANCE_BANNED_INTERRUPTS
+-A list of space delimited IRQ numbers that irqbalance should not touch
++.B SIGHUP
++Forces a rescan of the available irqs and system topology
+
+ .SH "Homepage"
+ http://code.google.com/p/irqbalance
+diff --git a/irqbalance.c b/irqbalance.c
+index 99c5db7..fbe6ac6 100644
+--- a/irqbalance.c
++++ b/irqbalance.c
+@@ -1,5 +1,6 @@
+ /*
+ * Copyright (C) 2006, Intel Corporation
++ * Copyright (C) 2012, Neil Horman <nhorman@tuxdriver.com>
+ *
+ * This file is part of irqbalance
+ *
+@@ -27,6 +28,10 @@
+ #include <syslog.h>
+ #include <unistd.h>
+ #include <signal.h>
++#include <time.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <fcntl.h>
+ #ifdef HAVE_GETOPT_LONG
+ #include <getopt.h>
+ #endif
+@@ -39,12 +44,15 @@
+ volatile int keep_going = 1;
+ int one_shot_mode;
+ int debug_mode;
++int foreground_mode;
+ int numa_avail;
+-int need_cpu_rescan;
++int need_rescan;
+ extern cpumask_t banned_cpus;
+ enum hp_e hint_policy = HINT_POLICY_SUBSET;
+ unsigned long power_thresh = ULONG_MAX;
+ unsigned long long cycle_count = 0;
++char *pidfile = NULL;
++char *banscript = NULL;
+
+ void sleep_approx(int seconds)
+ {
+@@ -64,32 +72,45 @@ void sleep_approx(int seconds)
+ struct option lopts[] = {
+ {"oneshot", 0, NULL, 'o'},
+ {"debug", 0, NULL, 'd'},
++ {"foreground", 0, NULL, 'f'},
+ {"hintpolicy", 1, NULL, 'h'},
+ {"powerthresh", 1, NULL, 'p'},
++ {"banirq", 1 , NULL, 'i'},
++ {"banscript", 1, NULL, 'b'},
++ {"pid", 1, NULL, 's'},
+ {0, 0, 0, 0}
+ };
+
+ static void usage(void)
+ {
+- printf("irqbalance [--oneshot | -o] [--debug | -d] [--hintpolicy= | -h [exact|subset|ignore]]\n");
+- printf(" [--powerthresh= | -p <off> | <n>]\n");
++ printf("irqbalance [--oneshot | -o] [--debug | -d] [--foreground | -f] [--hintpolicy= | -h [exact|subset|ignore]]\n");
++ printf(" [--powerthresh= | -p <off> | <n>] [--banirq= | -i <n>]\n");
+ }
+
+ static void parse_command_line(int argc, char **argv)
+ {
+ int opt;
+ int longind;
++ unsigned long val;
+
+ while ((opt = getopt_long(argc, argv,
+- "odh:p:",
++ "odfh:i:p:s:",
+ lopts, &longind)) != -1) {
+
+ switch(opt) {
+ case '?':
+ usage();
+ exit(1);
++ break;
++ case 'b':
++ banscript = strdup(optarg);
++ break;
+ case 'd':
+ debug_mode=1;
++ foreground_mode=1;
++ break;
++ case 'f':
++ foreground_mode=1;
+ break;
+ case 'h':
+ if (!strncmp(optarg, "exact", strlen(optarg)))
+@@ -103,6 +124,14 @@ static void parse_command_line(int argc, char **argv)
+ exit(1);
+ }
+ break;
++ case 'i':
++ val = strtoull(optarg, NULL, 10);
++ if (val == ULONG_MAX) {
++ usage();
++ exit(1);
++ }
++ add_banned_irq((int)val);
++ break;
+ case 'p':
+ if (!strncmp(optarg, "off", strlen(optarg)))
+ power_thresh = ULONG_MAX;
+@@ -117,6 +146,9 @@ static void parse_command_line(int argc, char **argv)
+ case 'o':
+ one_shot_mode=1;
+ break;
++ case 's':
++ pidfile = optarg;
++ break;
+ }
+ }
+ }
+@@ -172,18 +204,34 @@ static void handler(int signum)
+ keep_going = 0;
+ }
+
++static void force_rescan(int signum)
++{
++ if (cycle_count)
++ need_rescan = 1;
++}
++
+ int main(int argc, char** argv)
+ {
+- struct sigaction action;
++ struct sigaction action, hupaction;
+
+ #ifdef HAVE_GETOPT_LONG
+ parse_command_line(argc, argv);
+ #else
+- if (argc>1 && strstr(argv[1],"--debug"))
++ if (argc>1 && strstr(argv[1],"--debug")) {
+ debug_mode=1;
++ foreground_mode=1;
++ }
++ if (argc>1 && strstr(argv[1],"--foreground"))
++ foreground_mode=1;
+ if (argc>1 && strstr(argv[1],"--oneshot"))
+ one_shot_mode=1;
+ #endif
++
++ /*
++ * Open the syslog connection
++ */
++ openlog(argv[0], 0, LOG_DAEMON);
++
+ if (getenv("IRQBALANCE_BANNED_CPUS")) {
+ cpumask_parse_user(getenv("IRQBALANCE_BANNED_CPUS"), strlen(getenv("IRQBALANCE_BANNED_CPUS")), banned_cpus);
+ }
+@@ -212,17 +260,35 @@ int main(int argc, char** argv)
+
+
+ /* On single core UP systems irqbalance obviously has no work to do */
+- if (core_count<2)
++ if (core_count<2) {
++ char *msg = "Balaincing is ineffective on systems with a "
++ "single cache domain. Shutting down\n";
++
++ if (debug_mode)
++ printf("%s", msg);
++ else
++ syslog(LOG_INFO, "%s", msg);
+ exit(EXIT_SUCCESS);
++ }
+ /* On dual core/hyperthreading shared cache systems just do a one shot setup */
+ if (cache_domain_count==1)
+ one_shot_mode = 1;
+
+- if (!debug_mode)
++ if (!foreground_mode) {
++ int pidfd = -1;
+ if (daemon(0,0))
+ exit(EXIT_FAILURE);
++ /* Write pidfile */
++ if (pidfile && (pidfd = open(pidfile,
++ O_WRONLY | O_CREAT | O_EXCL | O_TRUNC,
++ S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH)) >= 0) {
++ char str[16];
++ snprintf(str, sizeof(str), "%u\n", getpid());
++ write(pidfd, str, strlen(str));
++ close(pidfd);
++ }
++ }
+
+- openlog(argv[0], 0, LOG_DAEMON);
+
+ #ifdef HAVE_LIBCAP_NG
+ // Drop capabilities
+@@ -236,6 +302,11 @@ int main(int argc, char** argv)
+ parse_proc_interrupts();
+ parse_proc_stat();
+
++ hupaction.sa_handler = force_rescan;
++ sigemptyset(&hupaction.sa_mask);
++ hupaction.sa_flags = 0;
++ sigaction(SIGHUP, &hupaction, NULL);
++
+ while (keep_going) {
+ sleep_approx(SLEEP_INTERVAL);
+ if (debug_mode)
+@@ -247,8 +318,8 @@ int main(int argc, char** argv)
+ parse_proc_stat();
+
+ /* cope with cpu hotplug -- detected during /proc/interrupts parsing */
+- if (need_cpu_rescan) {
+- need_cpu_rescan = 0;
++ if (need_rescan) {
++ need_rescan = 0;
+ /* if there's a hotplug event we better turn off power mode for a bit until things settle */
+ power_mode = 0;
+ if (debug_mode)
+@@ -282,5 +353,10 @@ int main(int argc, char** argv)
+
+ }
+ free_object_tree();
++
++ /* Remove pidfile */
++ if (!foreground_mode && pidfile)
++ unlink(pidfile);
++
+ return EXIT_SUCCESS;
+ }
+diff --git a/irqbalance.h b/irqbalance.h
+index 4e85325..e46f31f 100644
+--- a/irqbalance.h
++++ b/irqbalance.h
+@@ -9,6 +9,7 @@
+ #include <stdint.h>
+ #include <glib.h>
+ #include <syslog.h>
++#include <limits.h>
+
+ #include "types.h"
+ #ifdef HAVE_NUMA_H
+@@ -40,7 +41,6 @@ void dump_tree(void);
+
+ void activate_mappings(void);
+ void account_for_nic_stats(void);
+-void check_power_mode(void);
+ void clear_cpu_tree(void);
+ void pci_numa_scan(void);
+
+@@ -64,10 +64,11 @@ enum hp_e {
+ extern int debug_mode;
+ extern int one_shot_mode;
+ extern int power_mode;
+-extern int need_cpu_rescan;
++extern int need_rescan;
+ extern enum hp_e hint_policy;
+ extern unsigned long long cycle_count;
+ extern unsigned long power_thresh;
++extern char *banscript;
+
+ /*
+ * Numa node access routines
+@@ -103,10 +104,11 @@ extern int get_cpu_count(void);
+ */
+ extern void rebuild_irq_db(void);
+ extern void free_irq_db(void);
++extern void add_banned_irq(int irq);
+ extern void for_each_irq(GList *list, void (*cb)(struct irq_info *info, void *data), void *data);
+ extern struct irq_info *get_irq_info(int irq);
+ extern void migrate_irq(GList **from, GList **to, struct irq_info *info);
+-extern struct irq_info *add_misc_irq(int irq);
++extern struct irq_info *add_new_irq(int irq);
+ #define irq_numa_node(irq) ((irq)->numa_node)
+
+
+diff --git a/irqlist.c b/irqlist.c
+index c29ee84..2523173 100644
+--- a/irqlist.c
++++ b/irqlist.c
+@@ -1,5 +1,6 @@
+ /*
+ * Copyright (C) 2006, Intel Corporation
++ * Copyright (C) 2012, Neil Horman <nhorman@tuxdriver.com>
+ *
+ * This file is part of irqbalance
+ *
+@@ -45,6 +46,7 @@ struct load_balance_info {
+ unsigned int num_within;
+ unsigned int num_over;
+ unsigned int num_under;
++ unsigned int num_powersave;
+ struct topo_obj *powersave;
+ };
+
+@@ -106,13 +108,16 @@ static void migrate_overloaded_irqs(struct topo_obj *obj, void *data)
+ struct load_balance_info *info = data;
+ int deviation;
+
++ if (obj->powersave_mode)
++ info->num_powersave++;
++
+ /*
+ * Don't rebalance irqs on objects whos load is below the average
+ */
+ if (obj->load <= info->avg_load) {
+ if ((obj->load + info->std_deviation) <= info->avg_load) {
+ info->num_under++;
+- if (!info->powersave)
++ if (power_thresh != ULONG_MAX && !info->powersave)
+ if (!obj->powersave_mode)
+ info->powersave = obj;
+ } else
+@@ -172,13 +177,13 @@ void update_migration_status(void)
+ {
+ struct load_balance_info info;
+ find_overloaded_objs(cpus, info);
+- if (cycle_count > 5) {
++ if (power_thresh != ULONG_MAX && cycle_count > 5) {
+ if (!info.num_over && (info.num_under >= power_thresh) && info.powersave) {
+ syslog(LOG_INFO, "cpu %d entering powersave mode\n", info.powersave->number);
+ info.powersave->powersave_mode = 1;
+ if (g_list_length(info.powersave->interrupts) > 0)
+ for_each_irq(info.powersave->interrupts, force_irq_migration, NULL);
+- } else if (info.num_over) {
++ } else if ((info.num_over) && (info.num_powersave)) {
+ syslog(LOG_INFO, "Load average increasing, re-enabling all cpus for irq balancing\n");
+ for_each_object(cpus, clear_powersave_mode, NULL);
+ }
+diff --git a/m4/cap-ng.m4 b/m4/cap-ng.m4
+deleted file mode 100644
+index 0024edc..0000000
+--- a/m4/cap-ng.m4
++++ /dev/null
+@@ -1,40 +0,0 @@
+-# libcap-ng.m4 - Checks for the libcap-ng support
+-# Copyright (c) 2009 Steve Grubb sgrubb@redhat.com
+-#
+-AC_DEFUN([LIBCAP_NG_PATH],
+-[
+- AC_ARG_WITH(libcap-ng,
+- [ --with-libcap-ng=[auto/yes/no] Add Libcap-ng support [default=auto]],,
+- with_libcap_ng=auto)
+-
+- # Check for Libcap-ng API
+- #
+- # libcap-ng detection
+-
+- if test x$with_libcap_ng = xno ; then
+- have_libcap_ng=no;
+- else
+- # Start by checking for header file
+- AC_CHECK_HEADER(cap-ng.h, capng_headers=yes, capng_headers=no)
+-
+- # See if we have libcap-ng library
+- AC_CHECK_LIB(cap-ng, capng_clear,
+- CAPNG_LDADD=-lcap-ng,)
+-
+- # Check results are usable
+- if test x$with_libcap_ng = xyes -a x$CAPNG_LDADD = x ; then
+- AC_MSG_ERROR(libcap-ng support was requested and the library was not found)
+- fi
+- if test x$CAPNG_LDADD != x -a $capng_headers = no ; then
+- AC_MSG_ERROR(libcap-ng libraries found but headers are missing)
+- fi
+- fi
+- AC_SUBST(CAPNG_LDADD)
+- AC_MSG_CHECKING(whether to use libcap-ng)
+- if test x$CAPNG_LDADD != x ; then
+- AC_DEFINE(HAVE_LIBCAP_NG,1,[libcap-ng support])
+- AC_MSG_RESULT(yes)
+- else
+- AC_MSG_RESULT(no)
+- fi
+-])
+diff --git a/misc/irqbalance.env b/misc/irqbalance.env
+new file mode 100644
+index 0000000..bd87e3d
+--- /dev/null
++++ b/misc/irqbalance.env
+@@ -0,0 +1,26 @@
++# irqbalance is a daemon process that distributes interrupts across
++# CPUS on SMP systems. The default is to rebalance once every 10
++# seconds. This is the environment file that is specified to systemd via the
++# EnvironmentFile key in the service unit file (or via whatever method the init
++# system you're using has.
++#
++# ONESHOT=yes
++# after starting, wait for a minute, then look at the interrupt
++# load and balance it once; after balancing exit and do not change
++# it again.
++#IRQBALANCE_ONESHOT=
++
++#
++# IRQBALANCE_BANNED_CPUS
++# 64 bit bitmask which allows you to indicate which cpu's should
++# be skipped when reblancing irqs. Cpu numbers which have their
++# corresponding bits set to one in this mask will not have any
++# irq's assigned to them on rebalance
++#
++#IRQBALANCE_BANNED_CPUS=
++
++#
++# IRQBALANCE_ARGS
++# append any args here to the irqbalance daemon as documented in the man page
++#
++#IRQBALANCE_ARGS=
+diff --git a/misc/irqbalance.service b/misc/irqbalance.service
+index f349616..3139a83 100644
+--- a/misc/irqbalance.service
++++ b/misc/irqbalance.service
+@@ -3,9 +3,8 @@ Description=irqbalance daemon
+ After=syslog.target
+
+ [Service]
+-EnvironmentFile=/etc/sysconfig/irqbalance
+-Type=forking
+-ExecStart=/usr/sbin/irqbalance $ONESHOT
++EnvironmentFile=/path/to/irqbalance.env
++ExecStart=/usr/sbin/irqbalance --foreground $IRQBALANCE_ARGS
+
+ [Install]
+ WantedBy=multi-user.target
+diff --git a/numa.c b/numa.c
+index 710ed67..96703bd 100644
+--- a/numa.c
++++ b/numa.c
+@@ -1,5 +1,6 @@
+ /*
+ * Copyright (C) 2006, Intel Corporation
++ * Copyright (C) 2012, Neil Horman <nhorman@tuxdriver.com>
+ *
+ * This file is part of irqbalance
+ *
+@@ -106,11 +107,11 @@ void build_numa_node_list(void)
+ static void free_numa_node(gpointer data)
+ {
+ struct topo_obj *obj = data;
+- if (data == &unspecified_node)
+- return;
+-
+ g_list_free(obj->children);
+- free(data);
++ g_list_free(obj->interrupts);
++
++ if (data != &unspecified_node)
++ free(data);
+ }
+
+ void free_numa_node_list(void)
+diff --git a/placement.c b/placement.c
+index 108ccc9..1172849 100644
+--- a/placement.c
++++ b/placement.c
+@@ -1,5 +1,6 @@
+ /*
+ * Copyright (C) 2006, Intel Corporation
++ * Copyright (C) 2012, Neil Horman <nhoramn@tuxdriver.com>
+ *
+ * This file is part of irqbalance
+ *
+@@ -48,7 +49,7 @@ static void find_best_object(struct topo_obj *d, void *data)
+ /*
+ * Don't consider the unspecified numa node here
+ */
+- if ((d->obj_type == OBJ_TYPE_NODE) && (d->number == -1))
++ if (numa_avail && (d->obj_type == OBJ_TYPE_NODE) && (d->number == -1))
+ return;
+
+ /*
+diff --git a/powermode.c b/powermode.c
+deleted file mode 100644
+index 82ba490..0000000
+--- a/powermode.c
++++ /dev/null
+@@ -1,34 +0,0 @@
+-/*
+- * Copyright (C) 2006, Intel Corporation
+- *
+- * This file is part of irqbalance
+- *
+- * This program file is free software; you can redistribute it and/or modify it
+- * under the terms of the GNU General Public License as published by the
+- * Free Software Foundation; version 2 of the License.
+- *
+- * This program is distributed in the hope that it will be useful, but WITHOUT
+- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+- * for more details.
+- *
+- * You should have received a copy of the GNU General Public License
+- * along with this program in a file named COPYING; if not, write to the
+- * Free Software Foundation, Inc.,
+- * 51 Franklin Street, Fifth Floor,
+- * Boston, MA 02110-1301 USA
+- */
+-#include "config.h"
+-#include <stdio.h>
+-#include <stdlib.h>
+-#include <unistd.h>
+-#include <stdint.h>
+-#include <string.h>
+-
+-#include "irqbalance.h"
+-
+-
+-void check_power_mode(void)
+-{
+-}
+-
+diff --git a/procinterrupts.c b/procinterrupts.c
+index 4d3b07b..431fffa 100644
+--- a/procinterrupts.c
++++ b/procinterrupts.c
+@@ -1,5 +1,6 @@
+ /*
+ * Copyright (C) 2006, Intel Corporation
++ * Copyright (C) 2012, Neil Horman <nhorman@tuxdriver.com>
+ *
+ * This file is part of irqbalance
+ *
+@@ -32,6 +33,8 @@
+
+ #define LINESIZE 4096
+
++extern cpumask_t banned_cpus;
++
+ static int proc_int_has_msi = 0;
+ static int msi_found_in_sysfs = 0;
+
+@@ -80,8 +83,12 @@ void parse_proc_interrupts(void)
+ c++;
+ number = strtoul(line, NULL, 10);
+ info = get_irq_info(number);
+- if (!info)
+- info = add_misc_irq(number);
++ if (!info) {
++ if (!cycle_count)
++ continue;
++ need_rescan = 1;
++ info = add_new_irq(number);
++ }
+
+ count = 0;
+ cpunr = 0;
+@@ -97,7 +104,7 @@ void parse_proc_interrupts(void)
+ cpunr++;
+ }
+ if (cpunr != core_count)
+- need_cpu_rescan = 1;
++ need_rescan = 1;
+
+ info->last_irq_count = info->irq_count;
+ info->irq_count = count;
+@@ -217,6 +224,9 @@ void parse_proc_stat(void)
+
+ cpunr = strtoul(&line[3], NULL, 10);
+
++ if (cpu_isset(cpunr, banned_cpus))
++ continue;
++
+ rc = sscanf(line, "%*s %*d %*d %*d %*d %*d %d %d", &irq_load, &softirq_load);
+ if (rc < 2)
+ break;
diff --git a/extra/irqbalance/irqbalance.service b/extra/irqbalance/irqbalance.service
new file mode 100644
index 000000000..372ac0aa4
--- /dev/null
+++ b/extra/irqbalance/irqbalance.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=CPU Interrupt Request Balancer
+
+[Service]
+ExecStart=/usr/sbin/irqbalance --foreground
+
+[Install]
+WantedBy=multi-user.target
diff --git a/extra/libkgapi/PKGBUILD b/extra/libkgapi/PKGBUILD
index 9fcc68fd8..9eb917056 100644
--- a/extra/libkgapi/PKGBUILD
+++ b/extra/libkgapi/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 164828 2012-08-06 23:06:24Z andrea $
+# $Id: PKGBUILD 165471 2012-08-20 13:27:31Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
pkgname=libkgapi
-pkgver=0.4.1
+pkgver=0.4.2
pkgrel=1
pkgdesc="A KDE-based library for accessing various Google services via their public API"
-url='https://projects.kde.org/projects/kdereview/libkgoogle'
+url='https://projects.kde.org/projects/extragear/libs/libkgapi'
arch=('i686' 'x86_64')
license=('GPL' 'LGPL' 'FDL')
depends=('kdepimlibs' 'qjson')
@@ -13,7 +13,7 @@ makedepends=('cmake' 'automoc4' 'boost')
replaces=('akonadi-google' 'libkgoogle')
conflicts=('akonadi-google' 'libkgoogle')
source=("http://download.kde.org/stable/${pkgname}/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2")
-md5sums=('b4cefa643e95f5670997b5001547988f')
+md5sums=('7da940eb4ed9bdb909d29e93ef6bce67')
build() {
cd "${srcdir}"
diff --git a/extra/licq/PKGBUILD b/extra/licq/PKGBUILD
index 907c1bc91..7975502c3 100644
--- a/extra/licq/PKGBUILD
+++ b/extra/licq/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 163710 2012-07-18 01:05:42Z ibiru $
+# $Id: PKGBUILD 165473 2012-08-20 13:43:35Z juergen $
# Maintainer: Juergen Hoetzel <juergen@archlinux.org>
pkgname=licq
-pkgver=1.6.0
-pkgrel=5
+pkgver=1.6.1
+pkgrel=1
pkgdesc="Advanced graphical ICQ clone and more for Unix"
arch=('i686' 'x86_64')
url="http://www.licq.org"
@@ -12,7 +12,7 @@ depends=('boost-libs' 'gpgme' 'libxss' 'qt')
makedepends=('cmake' 'boost')
options=('!libtool')
source=(http://downloads.sourceforge.net/sourceforge/licq/licq-${pkgver}.tar.bz2)
-md5sums=('383153697e281a0b1b4ff008936731b8')
+md5sums=('9caa6d2e215a41a8b99c64ecbc2e6299')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/extra/live-media/PKGBUILD b/extra/live-media/PKGBUILD
index 4e883f1f1..f04d06552 100644
--- a/extra/live-media/PKGBUILD
+++ b/extra/live-media/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 165449 2012-08-19 19:05:03Z giovanni $
+# $Id: PKGBUILD 165457 2012-08-20 09:26:27Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Gilles CHAUVIN <gcnweb@gmail.com>
pkgname=live-media
-pkgver=2012.08.17
+pkgver=2012.08.20
pkgrel=1
pkgdesc="A set of C++ libraries for multimedia streaming"
arch=('i686' 'x86_64')
@@ -11,7 +11,7 @@ license=('LGPL')
url="http://live555.com/liveMedia"
depends=('gcc-libs')
source=("http://live555.com/liveMedia/public/live.${pkgver}.tar.gz")
-md5sums=('8bb807d9ac435d4030a38466f8236117')
+md5sums=('0504355e4bb7fa5e2c02c098eb5421b6')
build() {
cd ${srcdir}/live
diff --git a/extra/ntp/PKGBUILD b/extra/ntp/PKGBUILD
index 3da7795da..2ad69005a 100644
--- a/extra/ntp/PKGBUILD
+++ b/extra/ntp/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 162162 2012-06-22 12:59:21Z dreisner $
+# $Id: PKGBUILD 165490 2012-08-20 19:14:16Z dreisner $
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Contributor: kevin <kevin@archlinux.org>
pkgname=ntp
pkgver=4.2.6.p5
_realver=4.2.6p5
-pkgrel=7
+pkgrel=10
pkgdesc='Network Time Protocol reference implementation'
url='http://www.ntp.org/'
license=('custom')
@@ -26,7 +26,7 @@ sha1sums=('4a5353a4791b6f4315a66c28d504ec6c7926b192'
'eb1f63814b9adbd3d518e880fa3b38c375f0fe91'
'4537d1f58b299d463db5048129cb264511474b0b'
'4f76f7f9ffc8315ff9924f793f272d4f6939b816'
- '81df5c4d51cb69bc29363625ff49e2bd388d1fa9')
+ '25a27cecdb937f48fa7b7c71dcc8b31cdad89306')
install=install
@@ -61,4 +61,7 @@ package() {
install -d "${pkgdir}"/usr/share/man
mv man/man* "${pkgdir}"/usr/share/man
mv "${pkgdir}/usr/share/man/man8/ntpd.8" "${pkgdir}/usr/share/man/man8/ntp-ntpd.8" # we should ditch openntpd
+
+ install -dm755 "$pkgdir/usr/lib/ntp-units.d"
+ echo "ntpd.service" > "$pkgdir/usr/lib/ntp-units.d/$pkgname.list"
}
diff --git a/extra/ntp/ntpd.service b/extra/ntp/ntpd.service
index e0cbf879e..dcb5df634 100644
--- a/extra/ntp/ntpd.service
+++ b/extra/ntp/ntpd.service
@@ -1,12 +1,12 @@
[Unit]
Description=Network Time Service
-After=network.target
+After=network.target nss-lookup.target
[Service]
Type=forking
-PIDFile=/run/ntpd.pid
-EnvironmentFile=/etc/conf.d/ntpd.conf
-ExecStart=/usr/bin/ntpd $NTPD_ARGS -p /run/ntpd.pid
+PrivateTmp=true
+ExecStart=/usr/bin/ntpd -g -u ntp:ntp
+ControlGroup=cpu:/
[Install]
WantedBy=multi-user.target
diff --git a/extra/smb4k/PKGBUILD b/extra/smb4k/PKGBUILD
index 03645c208..eb67059a2 100644
--- a/extra/smb4k/PKGBUILD
+++ b/extra/smb4k/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 162238 2012-06-24 07:45:21Z giovanni $
+# $Id: PKGBUILD 165459 2012-08-20 09:49:18Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Emanuele Rampichini <emanuele.rampichini@gmail.com>
pkgname=smb4k
-pkgver=1.0.3
+pkgver=1.0.4
pkgrel=1
pkgdesc="A KDE program that browses samba shares"
arch=('i686' 'x86_64')
@@ -13,7 +13,7 @@ depends=('kdebase-runtime')
makedepends=('cmake' 'automoc4')
install=smb4k.install
source=("http://downloads.sourceforge.net/project/${pkgname}/Smb4K%20%28stable%20releases%29/${pkgver}/${pkgname}-${pkgver}.tar.bz2")
-md5sums=('943b4ccf1a481600784538148d86d3e4')
+md5sums=('55a09aa0a9513c9b8c5ae6e414a3cc8e')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/extra/swig/PKGBUILD b/extra/swig/PKGBUILD
index e7f999488..73a195180 100644
--- a/extra/swig/PKGBUILD
+++ b/extra/swig/PKGBUILD
@@ -1,31 +1,21 @@
-# $Id: PKGBUILD 163234 2012-07-11 16:22:59Z stephane $
+# $Id: PKGBUILD 165493 2012-08-20 23:08:36Z stephane $
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=swig
-pkgver=2.0.7
-pkgrel=2
+pkgver=2.0.8
+pkgrel=1
pkgdesc="Generate scripting interfaces to C/C++ code"
arch=('i686' 'x86_64')
url="http://www.swig.org/"
license=('custom')
depends=('zlib' 'pcre')
-source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz
- pyint_fromsize_t.diff
- upstream_r13128.diff)
-sha1sums=('307020fb6437092e32c9c1bd9af8bccb1645b529'
- '59ee179b57920d255c58afe45632b896e40b5b7d'
- '8f0c5ae6a46c22606cc88c649bfd0a31f061a963')
+source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz)
+sha1sums=('763305da320163903c69c1cdfbf9a942117d9ace')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- # FS#30624
- patch -Np1 -i ../pyint_fromsize_t.diff
-
- # Fix call to Swig_name_decl
- patch -Np1 -i ../upstream_r13128.diff
-
./configure --prefix=/usr
make
}
diff --git a/extra/transmission/PKGBUILD b/extra/transmission/PKGBUILD
index fae2b402f..dc5bca7f2 100644
--- a/extra/transmission/PKGBUILD
+++ b/extra/transmission/PKGBUILD
@@ -1,19 +1,17 @@
-# $Id: PKGBUILD 164034 2012-07-24 18:37:58Z ibiru $
+# $Id: PKGBUILD 165472 2012-08-20 13:29:51Z tomegun $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
pkgbase=transmission
pkgname=('transmission-cli' 'transmission-gtk' 'transmission-qt')
pkgver=2.61
-pkgrel=1
+pkgrel=3
arch=('i686' 'x86_64')
url="http://www.transmissionbt.com/"
license=('MIT')
makedepends=('gtk3' 'intltool' 'curl' 'qt' 'libevent')
source=(http://mirrors.m0k.org/transmission/files/$pkgbase-$pkgver.tar.xz
- transmissiond transmissiond.conf)
-md5sums=('2ed5b7815ebda65223bac6bdb09dec42'
- '08875299e3fbb68fc546c1f350ac1f06'
- 'be39806c35b7544856fa4070b00fc960')
+ transmissiond transmissiond.conf transmission.systemd
+ transmission.tmpfiles)
build() {
cd "$pkgbase-$pkgver"
@@ -39,6 +37,9 @@ package_transmission-cli() {
install -D -m755 "$srcdir/transmissiond" "$pkgdir/etc/rc.d/transmissiond"
install -D -m644 "$srcdir/transmissiond.conf" "$pkgdir/etc/conf.d/transmissiond"
+ install -D -m644 "$srcdir/transmission.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/transmission.conf"
+ install -D -m644 "$srcdir/transmission.systemd" "$pkgdir/usr/lib/systemd/system/transmission.service"
+ ln -s transmission.service "$pkgdir/usr/lib/systemd/system/transmissiond.service"
install -D -m644 COPYING "$pkgdir/usr/share/licenses/transmission-cli/COPYING"
}
@@ -70,3 +71,8 @@ package_transmission-qt() {
install -D -m644 qt/icons/transmission.png "$pkgdir/usr/share/pixmaps/transmission-qt.png"
install -D -m644 qt/transmission-qt.desktop "$pkgdir/usr/share/applications/transmission-qt.desktop"
}
+md5sums=('2ed5b7815ebda65223bac6bdb09dec42'
+ '7d6186ee2a852ae3d44980f05063e194'
+ 'db72b02fee139e8ab416324e6c044d76'
+ '5c289c8901221a94be74665368ab5c2c'
+ '23f2320361ad54373c3a4551ef634fe8')
diff --git a/extra/transmission/transmission-cli.install b/extra/transmission/transmission-cli.install
index cb6bf6050..68df89498 100644
--- a/extra/transmission/transmission-cli.install
+++ b/extra/transmission/transmission-cli.install
@@ -3,7 +3,14 @@ post_install() {
If you want to run the Transmission daemon at boot,
add transmissiond to the DAEMONS array in /etc/rc.conf.
- You have to set the user in /etc/conf.d/transmissiond.
_EOF
}
+
+post_upgrade() {
+ # create user/group that the daemon will run as by default, do not delete this on uninstall, as it will own files
+ getent group transmission >/dev/null || groupadd -g 169 transmission
+ getent passwd transmission >/dev/null || useradd -c 'Transmission BitTorrent Client' -u 169 -g transmission -b '/var/lib' -m -s /bin/false transmission
+ passwd -l transmission &>/dev/null
+ systemd-tmpfiles --create transmission.conf
+}
diff --git a/extra/transmission/transmission.systemd b/extra/transmission/transmission.systemd
new file mode 100644
index 000000000..56ab8f794
--- /dev/null
+++ b/extra/transmission/transmission.systemd
@@ -0,0 +1,14 @@
+[Unit]
+Description=Transmission Bit Torrent Daemon
+
+# This assumes that a user 'transmission' exists, with a writeable homedirectory,
+# and that /run/transmission exists and is writeable by the transmission user.
+
+[Service]
+User=transmission
+Type=forking
+PIDFile=/run/transmission/transmission.pid
+ExecStart=/usr/bin/transmission-daemon --pid-file /run/transmission/transmission.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/extra/transmission/transmission.tmpfiles b/extra/transmission/transmission.tmpfiles
new file mode 100644
index 000000000..b603066c1
--- /dev/null
+++ b/extra/transmission/transmission.tmpfiles
@@ -0,0 +1 @@
+d /run/transmission - transmission transmission -
diff --git a/extra/transmission/transmissiond b/extra/transmission/transmissiond
index 1b4b4dc0e..ea3d770f9 100644
--- a/extra/transmission/transmissiond
+++ b/extra/transmission/transmissiond
@@ -8,7 +8,7 @@ PID=`pidof -o %PPID /usr/bin/transmission-daemon`
case "$1" in
start)
stat_busy "Starting Transmission Daemon"
- [ -z "$PID" ] && su -l -s /bin/sh -c "/usr/bin/transmission-daemon $TRANS_ARGS" $TRANS_USER
+ [ -z "$PID" ] && su -l -s /bin/sh -c "/usr/bin/transmission-daemon $TRANS_ARGS" "${TRANS_USER:-transmission}"
if [ $? -gt 0 ]; then
stat_fail
else
diff --git a/extra/transmission/transmissiond.conf b/extra/transmission/transmissiond.conf
index cf6c6f26e..45a9fd51d 100644
--- a/extra/transmission/transmissiond.conf
+++ b/extra/transmission/transmissiond.conf
@@ -1,5 +1,4 @@
# example configuration file
-# TRANSMISSION_HOME=/home/foo
-# TRANS_USER="foo"
-# TRANS_ARGS="-g $TRANSMISSION_HOME/.config/transmission-daemon"
+# TRANS_USER="transmission"
+# TRANS_ARGS=""
diff --git a/libre/initscripts/PKGBUILD b/libre/initscripts/PKGBUILD
index a209713b3..0eefec6df 100644
--- a/libre/initscripts/PKGBUILD
+++ b/libre/initscripts/PKGBUILD
@@ -5,13 +5,16 @@
# Maintainer (Parabola): Nicolas Reynolds <fauno@kiwwwi.com.ar>
pkgname=initscripts
-pkgver=2012.07.29
+pkgver=2012.08.21
pkgrel=1
pkgdesc="System initialization/bootup scripts (Parabola branding)"
arch=('any')
url="https://parabolagnulinux.org"
license=('GPL2')
groups=('base')
+provides=('initscripts-systemd')
+conflicts=('initscripts-systemd')
+replaces=('initscripts-systemd')
backup=(etc/inittab etc/rc.conf etc/rc.local etc/rc.local.shutdown)
depends=('glibc' 'bash' 'coreutils' 'systemd-tools' 'iproute2' 'ncurses' 'findutils' 'sysvinit')
optdepends=('dhcpcd: DHCP network configuration'
@@ -21,10 +24,10 @@ optdepends=('dhcpcd: DHCP network configuration'
makedepends=(asciidoc)
install=initscripts.install
source=("https://repo.parabolagnulinux.org/other/${pkgname}-${pkgver}.tar.xz"{,.sig})
+md5sums=('abf911f25417e8fd3c7d787e6f4f1e9e'
+ '993fd80840cb8d0090e2c93b95a2b71c')
package() {
cd ${srcdir}/${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
}
-md5sums=('0fc663f1ad8e7512f5907d498e09be21'
- '372f08fcb40e31c0e88a9715354e3b19')
diff --git a/libre/virtualbox-libre-modules-lts/PKGBUILD b/libre/virtualbox-libre-modules-lts/PKGBUILD
index 1d5f60079..597406075 100644
--- a/libre/virtualbox-libre-modules-lts/PKGBUILD
+++ b/libre/virtualbox-libre-modules-lts/PKGBUILD
@@ -6,8 +6,8 @@
pkgbase=virtualbox-libre-modules-lts
pkgname=('virtualbox-libre-modules-lts' 'virtualbox-libre-parabola-modules-lts')
-pkgver=4.1.18
-pkgrel=7
+pkgver=4.1.20
+pkgrel=2
arch=('i686' 'x86_64')
url='http://virtualbox.org'
license=('GPL')
@@ -20,7 +20,7 @@ source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}
os_musix_64.png os_musix.png os_parabola_64.png os_parabola.png os_trisquel_64.png
os_trisquel.png os_ututo_64.png os_ututo.png os_venenux.png libre.patch
free-distros.patch)
-md5sums=('38db0a87cba659b484af868b0c2bd3ac'
+md5sums=('5784c6dda8a9d53f8f21b2d41eba903c'
'4c88bd122677a35f68abd76eb01b378b'
'ed1341881437455d9735875ddf455fbe'
'8538dba8686d7449cb481c9bae9d722a'
@@ -45,7 +45,7 @@ md5sums=('38db0a87cba659b484af868b0c2bd3ac'
'4da8eeb2ece7e475fc7a0d1003da26c6'
'5e4187af59726d71c5be48d0cd816c34'
'a9e4724b56ddf99bb2e9a8fab8ad43ba'
- 'f7d275fc52e5f3cfafd85646c2914063')
+ '1e47d90affabfbf6dbb07d9d42742d6a')
_extramodules=extramodules-3.0-LIBRE-LTS
diff --git a/libre/virtualbox-libre-modules-lts/free-distros.patch b/libre/virtualbox-libre-modules-lts/free-distros.patch
index 7920fb6ab..47857e05d 100644
--- a/libre/virtualbox-libre-modules-lts/free-distros.patch
+++ b/libre/virtualbox-libre-modules-lts/free-distros.patch
@@ -432,8 +432,8 @@
<file alias="hd_16px.png">images/hd_16px.png</file>
<file alias="hd_disabled_16px.png">images/hd_disabled_16px.png</file>
<file alias="hd_32px.png">images/hd_32px.png</file>
---- VirtualBox-4.1.18.orig/src/VBox/Main/src-all/Global.cpp 2012-06-20 10:17:34.000000000 -0300
-+++ VirtualBox-4.1.18/src/VBox/Main/src-all/Global.cpp 2012-07-25 19:32:44.482993976 -0300
+--- VirtualBox-4.1.20.orig/src/VBox/Main/src-all/Global.cpp 2012-08-20 11:36:24.000000000 -0300
++++ VirtualBox-4.1.20/src/VBox/Main/src-all/Global.cpp 2012-08-21 14:22:29.148190849 -0300
@@ -35,284 +35,90 @@
VBOXOSTYPE_Unknown, VBOXOSHINT_NONE,
64, 4, 2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
@@ -655,25 +655,25 @@
- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros, "Xandros",
- VBOXOSTYPE_Xandros, VBOXOSHINT_RTCUTC,
- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
-- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros_64, "Xandros (64 bit)",
-- VBOXOSTYPE_Xandros_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
-- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
-- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle, "Oracle",
-- VBOXOSTYPE_Oracle, VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE,
-- 512, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+ { "GNU/Linux", "GNU/Linux", SchemaDefs_OSTypeId_Dynebolic, "Dyne:bolic",
+ VBOXOSTYPE_Dynebolic, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
+ 256, 4, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle_64, "Oracle (64 bit)",
-- VBOXOSTYPE_Oracle_x64, VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
-- 512, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros_64, "Xandros (64 bit)",
+- VBOXOSTYPE_Xandros_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
+- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+ { "GNU/Linux", "GNU/Linux", SchemaDefs_OSTypeId_Venenux, "Venenux",
+ VBOXOSTYPE_Venenux, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
+ 384, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle, "Oracle",
+- VBOXOSTYPE_Oracle, VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE,
+- 512, 12, 12 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle_64, "Oracle (64 bit)",
+- VBOXOSTYPE_Oracle_x64, VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
+- 512, 12, 12 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
- { "Linux", "Linux", SchemaDefs_OSTypeId_Linux, "Other Linux",
- VBOXOSTYPE_Linux, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
- 256, 12, 8 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
diff --git a/libre/virtualbox-libre-modules/PKGBUILD b/libre/virtualbox-libre-modules/PKGBUILD
index 7104ed19c..18b529e63 100644
--- a/libre/virtualbox-libre-modules/PKGBUILD
+++ b/libre/virtualbox-libre-modules/PKGBUILD
@@ -5,8 +5,8 @@
pkgbase=virtualbox-libre-modules
pkgname=('virtualbox-libre-modules' 'virtualbox-libre-parabola-modules')
-pkgver=4.1.18
-pkgrel=6.2
+pkgver=4.1.20
+pkgrel=2
arch=('i686' 'x86_64')
url='http://virtualbox.org'
license=('GPL')
@@ -19,7 +19,7 @@ source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}
os_musix_64.png os_musix.png os_parabola_64.png os_parabola.png os_trisquel_64.png
os_trisquel.png os_ututo_64.png os_ututo.png os_venenux.png libre.patch
free-distros.patch)
-md5sums=('38db0a87cba659b484af868b0c2bd3ac'
+md5sums=('5784c6dda8a9d53f8f21b2d41eba903c'
'4c88bd122677a35f68abd76eb01b378b'
'ed1341881437455d9735875ddf455fbe'
'8538dba8686d7449cb481c9bae9d722a'
@@ -44,7 +44,7 @@ md5sums=('38db0a87cba659b484af868b0c2bd3ac'
'4da8eeb2ece7e475fc7a0d1003da26c6'
'5e4187af59726d71c5be48d0cd816c34'
'a9e4724b56ddf99bb2e9a8fab8ad43ba'
- 'f7d275fc52e5f3cfafd85646c2914063')
+ '1e47d90affabfbf6dbb07d9d42742d6a')
_extramodules=extramodules-3.5-LIBRE
diff --git a/libre/virtualbox-libre-modules/free-distros.patch b/libre/virtualbox-libre-modules/free-distros.patch
index 7920fb6ab..47857e05d 100644
--- a/libre/virtualbox-libre-modules/free-distros.patch
+++ b/libre/virtualbox-libre-modules/free-distros.patch
@@ -432,8 +432,8 @@
<file alias="hd_16px.png">images/hd_16px.png</file>
<file alias="hd_disabled_16px.png">images/hd_disabled_16px.png</file>
<file alias="hd_32px.png">images/hd_32px.png</file>
---- VirtualBox-4.1.18.orig/src/VBox/Main/src-all/Global.cpp 2012-06-20 10:17:34.000000000 -0300
-+++ VirtualBox-4.1.18/src/VBox/Main/src-all/Global.cpp 2012-07-25 19:32:44.482993976 -0300
+--- VirtualBox-4.1.20.orig/src/VBox/Main/src-all/Global.cpp 2012-08-20 11:36:24.000000000 -0300
++++ VirtualBox-4.1.20/src/VBox/Main/src-all/Global.cpp 2012-08-21 14:22:29.148190849 -0300
@@ -35,284 +35,90 @@
VBOXOSTYPE_Unknown, VBOXOSHINT_NONE,
64, 4, 2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
@@ -655,25 +655,25 @@
- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros, "Xandros",
- VBOXOSTYPE_Xandros, VBOXOSHINT_RTCUTC,
- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
-- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros_64, "Xandros (64 bit)",
-- VBOXOSTYPE_Xandros_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
-- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
-- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle, "Oracle",
-- VBOXOSTYPE_Oracle, VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE,
-- 512, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+ { "GNU/Linux", "GNU/Linux", SchemaDefs_OSTypeId_Dynebolic, "Dyne:bolic",
+ VBOXOSTYPE_Dynebolic, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
+ 256, 4, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle_64, "Oracle (64 bit)",
-- VBOXOSTYPE_Oracle_x64, VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
-- 512, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros_64, "Xandros (64 bit)",
+- VBOXOSTYPE_Xandros_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
+- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+ { "GNU/Linux", "GNU/Linux", SchemaDefs_OSTypeId_Venenux, "Venenux",
+ VBOXOSTYPE_Venenux, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
+ 384, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle, "Oracle",
+- VBOXOSTYPE_Oracle, VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE,
+- 512, 12, 12 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle_64, "Oracle (64 bit)",
+- VBOXOSTYPE_Oracle_x64, VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
+- 512, 12, 12 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
- { "Linux", "Linux", SchemaDefs_OSTypeId_Linux, "Other Linux",
- VBOXOSTYPE_Linux, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
- 256, 12, 8 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
diff --git a/libre/virtualbox-libre/PKGBUILD b/libre/virtualbox-libre/PKGBUILD
index 8e239915d..eef1c73ca 100644
--- a/libre/virtualbox-libre/PKGBUILD
+++ b/libre/virtualbox-libre/PKGBUILD
@@ -10,8 +10,8 @@ pkgname=('virtualbox-libre'
'virtualbox-libre-sdk'
'virtualbox-libre-source'
'virtualbox-libre-parabola-source')
-pkgver=4.1.18
-pkgrel=5.4
+pkgver=4.1.20
+pkgrel=1
arch=('i686' 'x86_64')
url='http://virtualbox.org'
license=('GPL' 'custom')
@@ -20,14 +20,13 @@ makedepends=('libstdc++5' 'bin86' 'dev86' 'iasl' 'libxslt' 'libxml2' 'libxcursor
#'xorg-server-devel' 'xf86driproto' 'libxcomposite')
[[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc')
source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2
- 10-vboxdrv.rules vboxdrv-reference.patch LocalConfig.kmk ipv6_vnc.patch
+ 10-vboxdrv.rules vboxdrv-reference.patch LocalConfig.kmk ipv6_vnc.patch
change_default_driver_dir.patch vboxservice.conf vboxservice.rc vboxservice.service
- vboxweb.conf vboxweb.rc vboxweb.service os_blag_64.png os_blag.png
- os_dragora_64.png os_dragora.png os_dynebolic.png os_gnewsense_64.png os_gnewsense.png
- os_gnu_64.png os_gnuhurd.png os_gnulinux_64.png os_gnulinux.png os_gnu.png
- os_musix_64.png os_musix.png os_parabola_64.png os_parabola.png os_trisquel_64.png
- os_trisquel.png os_ututo_64.png os_ututo.png os_venenux.png libre.patch
- free-distros.patch)
+ vboxweb.conf vboxweb.rc vboxweb.service os_blag_64.png os_blag.png os_dragora_64.png
+ os_dragora.png os_dynebolic.png os_gnewsense_64.png os_gnewsense.png os_gnu_64.png
+ os_gnuhurd.png os_gnulinux_64.png os_gnulinux.png os_gnu.png os_musix_64.png
+ os_musix.png os_parabola_64.png os_parabola.png os_trisquel_64.png os_trisquel.png
+ os_ututo_64.png os_ututo.png os_venenux.png libre.patch free-distros.patch)
_extramodules=extramodules-3.5-LIBRE
_kernver="$(cat /usr/lib/modules/${_extramodules}/version)" || true
@@ -39,8 +38,6 @@ build() {
patch -Np1 -i "$srcdir/change_default_driver_dir.patch"
patch -Np1 -i "$srcdir/libre.patch"
patch -Np1 -i "$srcdir/free-distros.patch"
- # FS#30401
- patch -Np2 -i "$srcdir/ipv6_vnc.patch"
## Removing Nonfree directories
rm -rv "./include/VBox/ExtPack"
@@ -255,7 +252,7 @@ package_virtualbox-libre-parabola-source() {
cp -r src "$pkgdir/var/lib/dkms/vboxguest/$pkgver/source"
}
-md5sums=('38db0a87cba659b484af868b0c2bd3ac'
+md5sums=('5784c6dda8a9d53f8f21b2d41eba903c'
'5f85710e0b8606de967716ded7b2d351'
'bf5d1eeeec20a042e8af34cd61a9e11b'
'a1ff1d1b4423556887e48a32978226a6'
@@ -289,4 +286,4 @@ md5sums=('38db0a87cba659b484af868b0c2bd3ac'
'4da8eeb2ece7e475fc7a0d1003da26c6'
'5e4187af59726d71c5be48d0cd816c34'
'a9e4724b56ddf99bb2e9a8fab8ad43ba'
- 'f7d275fc52e5f3cfafd85646c2914063')
+ '1e47d90affabfbf6dbb07d9d42742d6a')
diff --git a/libre/virtualbox-libre/free-distros.patch b/libre/virtualbox-libre/free-distros.patch
index 7920fb6ab..47857e05d 100644
--- a/libre/virtualbox-libre/free-distros.patch
+++ b/libre/virtualbox-libre/free-distros.patch
@@ -432,8 +432,8 @@
<file alias="hd_16px.png">images/hd_16px.png</file>
<file alias="hd_disabled_16px.png">images/hd_disabled_16px.png</file>
<file alias="hd_32px.png">images/hd_32px.png</file>
---- VirtualBox-4.1.18.orig/src/VBox/Main/src-all/Global.cpp 2012-06-20 10:17:34.000000000 -0300
-+++ VirtualBox-4.1.18/src/VBox/Main/src-all/Global.cpp 2012-07-25 19:32:44.482993976 -0300
+--- VirtualBox-4.1.20.orig/src/VBox/Main/src-all/Global.cpp 2012-08-20 11:36:24.000000000 -0300
++++ VirtualBox-4.1.20/src/VBox/Main/src-all/Global.cpp 2012-08-21 14:22:29.148190849 -0300
@@ -35,284 +35,90 @@
VBOXOSTYPE_Unknown, VBOXOSHINT_NONE,
64, 4, 2 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
@@ -655,25 +655,25 @@
- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros, "Xandros",
- VBOXOSTYPE_Xandros, VBOXOSHINT_RTCUTC,
- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
-- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros_64, "Xandros (64 bit)",
-- VBOXOSTYPE_Xandros_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
-- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
-- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle, "Oracle",
-- VBOXOSTYPE_Oracle, VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE,
-- 512, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+ { "GNU/Linux", "GNU/Linux", SchemaDefs_OSTypeId_Dynebolic, "Dyne:bolic",
+ VBOXOSTYPE_Dynebolic, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
+ 256, 4, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
-- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle_64, "Oracle (64 bit)",
-- VBOXOSTYPE_Oracle_x64, VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
-- 512, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Xandros_64, "Xandros (64 bit)",
+- VBOXOSTYPE_Xandros_x64, VBOXOSHINT_64BIT | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
+- 256, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+ { "GNU/Linux", "GNU/Linux", SchemaDefs_OSTypeId_Venenux, "Venenux",
+ VBOXOSTYPE_Venenux, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
+ 384, 12, 8 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle, "Oracle",
+- VBOXOSTYPE_Oracle, VBOXOSHINT_RTCUTC | VBOXOSHINT_PAE,
+- 512, 12, 12 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
+- { "Linux", "Linux", SchemaDefs_OSTypeId_Oracle_64, "Oracle (64 bit)",
+- VBOXOSTYPE_Oracle_x64, VBOXOSHINT_64BIT | VBOXOSHINT_PAE | VBOXOSHINT_HWVIRTEX | VBOXOSHINT_IOAPIC | VBOXOSHINT_RTCUTC,
+- 512, 12, 12 * _1G64, NetworkAdapterType_I82540EM, 0, StorageControllerType_PIIX4, StorageBus_IDE,
+- StorageControllerType_IntelAhci, StorageBus_SATA, ChipsetType_PIIX3, AudioControllerType_AC97 },
- { "Linux", "Linux", SchemaDefs_OSTypeId_Linux, "Other Linux",
- VBOXOSTYPE_Linux, VBOXOSHINT_RTCUTC | VBOXOSHINT_USBTABLET,
- 256, 12, 8 * _1G64, NetworkAdapterType_Am79C973, 0, StorageControllerType_PIIX4, StorageBus_IDE,
diff --git a/testing/grep/PKGBUILD b/testing/grep/PKGBUILD
index 0b6547630..1bcec6a13 100644
--- a/testing/grep/PKGBUILD
+++ b/testing/grep/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 163569 2012-07-16 02:50:23Z dreisner $
+# $Id: PKGBUILD 165463 2012-08-20 11:35:50Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
pkgname=grep
-pkgver=2.13
-pkgrel=2
+pkgver=2.14
+pkgrel=1
pkgdesc="A string search utility"
arch=('i686' 'x86_64')
license=('GPL3')
@@ -14,8 +14,8 @@ depends=('glibc' 'pcre' 'sh')
makedepends=('texinfo')
install=${pkgname}.install
source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz{,.sig})
-md5sums=('5894d484e6c02249f9702d0d8a472115'
- '99acaa4d45ab931be2ecba49a1766df7')
+md5sums=('d4a3f03849d1e17ce56ab76aa5a24cab'
+ 'b94fdcaa058b47a9a25099c26cd2e4c3')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
diff --git a/testing/grep/grep.install b/testing/grep/grep.install
index 7cd31301f..885238ac3 100644
--- a/testing/grep/grep.install
+++ b/testing/grep/grep.install
@@ -1,11 +1,9 @@
infodir=usr/share/info
-filelist=(grep.info)
+file=grep.info
post_install() {
[ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info $infodir/$file.gz $infodir/dir 2> /dev/null
- done
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
}
post_upgrade() {
@@ -14,8 +12,6 @@ post_upgrade() {
pre_remove() {
[ -x usr/bin/install-info ] || return 0
- for file in ${filelist[@]}; do
- install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
- done
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
}
diff --git a/testing/modemmanager/PKGBUILD b/testing/modemmanager/PKGBUILD
index 403673c39..d48648e45 100644
--- a/testing/modemmanager/PKGBUILD
+++ b/testing/modemmanager/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 165395 2012-08-17 23:24:24Z heftig $
+# $Id: PKGBUILD 165461 2012-08-20 10:57:16Z heftig $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=modemmanager
_realname=ModemManager
pkgver=0.5.2.0
-pkgrel=3
+pkgrel=4
pkgdesc="Mobile broadband modem management service"
arch=('i686' 'x86_64')
url="http://cgit.freedesktop.org/ModemManager/ModemManager/"
@@ -15,7 +15,7 @@ options=('!libtool')
source=(http://download.gnome.org/sources/$_realname/0.5/$_realname-$pkgver.tar.xz
modem-manager.service)
sha256sums=('7f8b3e1996a24e031df7534e226a0f0c7c2dd8b30322e6c5f4611dc1a848e6c8'
- '66c9947972066dd5494c3a18b0e833f236e0866b455675368b5994900cbaf384')
+ '118e36f2f956d719cf4036f3fd5f5bf0fde88ca55bdf7ed95051b5b09066fcbe')
build() {
cd "$_realname-$pkgver"
diff --git a/testing/modemmanager/modem-manager.service b/testing/modemmanager/modem-manager.service
index 4e0c43c8c..bad666be8 100644
--- a/testing/modemmanager/modem-manager.service
+++ b/testing/modemmanager/modem-manager.service
@@ -5,6 +5,10 @@ Description=Modem Manager
Type=dbus
BusName=org.freedesktop.ModemManager
ExecStart=/usr/sbin/modem-manager
+# Suppress stderr to eliminate duplicated messages in syslog. MM calls openlog()
+# with LOG_PERROR. But systemd redirects stderr to syslog by default, which
+# results in logging each message twice.
+StandardError=null
[Install]
WantedBy=multi-user.target
diff --git a/testing/wireless_tools/PKGBUILD b/testing/wireless_tools/PKGBUILD
new file mode 100644
index 000000000..3ec9cd7d1
--- /dev/null
+++ b/testing/wireless_tools/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 165481 2012-08-20 14:54:59Z bisson $
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+# Contributor: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: Jason Chu <jchu@xentac.net>
+
+pkgname=wireless_tools
+pkgver=29
+pkgrel=7
+pkgdesc='Tools allowing to manipulate the Wireless Extensions'
+url='http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html'
+license=('GPL')
+arch=('i686' 'x86_64')
+source=("http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/${pkgname}.${pkgver}.tar.gz"
+ 'dense.patch')
+sha1sums=('22040ac1497f4c5f8ddeca365591b01ae3475710'
+ '5c297c7dff1ec1d2a3d918c20622ab3c6daf5b72')
+
+build() {
+ cd "${srcdir}/${pkgname}.${pkgver}"
+ patch -p1 -i ../dense.patch # FS#15363
+ make CFLAGS="${CFLAGS} -I." LDFLAGS="${LDFLAGS}"
+}
+
+package() {
+ cd "${srcdir}/${pkgname}.${pkgver}"
+ make \
+ INSTALL_DIR="${pkgdir}/usr/sbin" \
+ INSTALL_LIB="${pkgdir}/usr/lib" \
+ INSTALL_INC="${pkgdir}/usr/include" \
+ INSTALL_MAN="${pkgdir}/usr/share/man" \
+ install
+}
diff --git a/testing/wireless_tools/dense.patch b/testing/wireless_tools/dense.patch
new file mode 100644
index 000000000..85182cd82
--- /dev/null
+++ b/testing/wireless_tools/dense.patch
@@ -0,0 +1,49 @@
+The length field of wext data (iw_point.data) is 16 bits. The largest
+value is thus 65535. During the attempts to increase buffer size the
+buffer starts at 4096 and is doubled after each failure to fill. From the
+time this length reaches 65536 it is effectively zero. We thus loose all
+potential space from 32768 to 65535.
+
+This problem is clear when scanning in a RF dense environment.
+
+Without this patch:
+~$ iwlist wlan0 scan
+print_scanning_info: Allocation failed
+
+With this patch:
+~$ iwlist wlan0 scan | grep Cell | wc -l
+86
+
+Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
+
+---
+A similar patch was recently created to fix wpa_supplicant.
+
+I could not find a source code repo for this code and created this patch
+against version 30-pre7 downloaded from
+http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
+
+diff -uprN wireless_tools_org/wireless_tools.30/iwlist.c wireless_tools.30/iwlist.c
+--- wireless_tools_org/wireless_tools.30/iwlist.c 2008-01-16 17:45:41.000000000 -0800
++++ wireless_tools.30/iwlist.c 2009-02-12 14:16:48.000000000 -0800
+@@ -800,7 +800,7 @@ print_scanning_info(int skfd,
+ if(iw_get_ext(skfd, ifname, SIOCGIWSCAN, &wrq) < 0)
+ {
+ /* Check if buffer was too small (WE-17 only) */
+- if((errno == E2BIG) && (range.we_version_compiled > 16))
++ if((errno == E2BIG) && (range.we_version_compiled > 16) && (buflen < 65535))
+ {
+ /* Some driver may return very large scan results, either
+ * because there are many cells, or because they have many
+@@ -816,6 +816,10 @@ print_scanning_info(int skfd,
+ else
+ buflen *= 2;
+
++ /* wrq.u.data.length is 16 bits so max size is 65535 */
++ if(buflen > 65535)
++ buflen = 65535;
++
+ /* Try again */
+ goto realloc;
+ }
+
diff --git a/~fauno/notmuch/PKGBUILD b/~fauno/notmuch/PKGBUILD
index b53224387..b3ff31567 100644
--- a/~fauno/notmuch/PKGBUILD
+++ b/~fauno/notmuch/PKGBUILD
@@ -3,7 +3,7 @@
# Maintainer: Richard Murri <admin@richardmurri.com>
pkgname=notmuch
-pkgver=0.13.2
+pkgver=0.14
pkgrel=1
pkgdesc="Notmuch is not much of an email program"
arch=(i686 x86_64 mips64el)
@@ -65,4 +65,4 @@ package(){
# Remove conflicting zsh completion
rm -r ${pkgdir}/usr/share/zsh
}
-md5sums=('13be4cf1ab2be49b42fec87c3cb44a5a')
+md5sums=('5eb3f225d3eb37862932f6baa5780d15')