diff options
author | Nicolás Reynolds <fauno@endefensadelsl.org> | 2014-03-08 03:57:26 +0000 |
---|---|---|
committer | Nicolás Reynolds <fauno@endefensadelsl.org> | 2014-03-08 03:57:26 +0000 |
commit | 2f1decd3dde75b8ed601dfdca2833879703012c8 (patch) | |
tree | 0516712500d0595136e9a1da4ece6cf04c22606c | |
parent | d44823e5676f0edd0e259c7c33d5640a043748ac (diff) |
Sat Mar 8 03:54:50 UTC 2014
40 files changed, 1013 insertions, 148 deletions
diff --git a/community/caps/PKGBUILD b/community/caps/PKGBUILD index ed8be7116..d005a1651 100644 --- a/community/caps/PKGBUILD +++ b/community/caps/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 104536 2014-01-22 13:01:55Z speps $ +# $Id: PKGBUILD 106751 2014-03-07 08:56:06Z speps $ # Maintainer : speps <speps at aur dot archlinux dot org> # Contributor: DonVla <donvla@users.sourceforge.net> pkgname=caps -pkgver=0.9.16 +pkgver=0.9.21 pkgrel=1 pkgdesc="The LADSPA C* Audio Plugin Suite" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ license=('GPL3') groups=('ladspa-plugins') depends=('ladspa') source=("http://quitte.de/dsp/caps_$pkgver.tar.bz2") -md5sums=('85e79596f22636b154b152efe54d05ce') +md5sums=('8d1fb8fa5d185a348bde14c88102ffc2') prepare() { cd $pkgname-$pkgver diff --git a/community/gnome-main-menu/PKGBUILD b/community/gnome-main-menu/PKGBUILD new file mode 100644 index 000000000..c29788b7f --- /dev/null +++ b/community/gnome-main-menu/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 106799 2014-03-07 18:24:00Z flexiondotorg $ +# Maintainer : Martin Wimpress <code@flexion.org> + +pkgname=gnome-main-menu +pkgver=1.7.0 +pkgrel=1 +pkgdesc="A mate-panel applet similar to the traditional main-menu, but with a few additions." +url="http://mate-desktop.org" +arch=('i686' 'x86_64') +license=('GPL') +depends=('caja' 'libunique' 'mate-control-center' 'mate-desktop' 'mate-panel') +makedepends=('mate-common' 'yelp-tools') +options=('!emptydirs') +source=("http://pub.mate-desktop.org/releases/1.7/${pkgname}-${pkgver}.tar.xz") +sha1sums=('ac6ce5dcd9433d798d9de3c311127a20084fc00c') +install=${pkgname}.install + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure \ + --prefix=/usr \ + --libexecdir=/usr/lib/${pkgname} \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --enable-caja-extension \ + --without-html-dir \ + --disable-static + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/community/gnome-main-menu/gnome-main-menu.install b/community/gnome-main-menu/gnome-main-menu.install new file mode 100644 index 000000000..64a763d48 --- /dev/null +++ b/community/gnome-main-menu/gnome-main-menu.install @@ -0,0 +1,13 @@ +post_install() { + glib-compile-schemas /usr/share/glib-2.0/schemas/ + #gtk-update-icon-cache -q -t -f /usr/share/icons/mate + #update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/community/java-atk-wrapper/PKGBUILD b/community/java-atk-wrapper/PKGBUILD new file mode 100644 index 000000000..0727d1640 --- /dev/null +++ b/community/java-atk-wrapper/PKGBUILD @@ -0,0 +1,26 @@ +# $Id: PKGBUILD 106769 2014-03-07 12:34:59Z flexiondotorg $ +# Maintainer: Martin Wimpress <code@flexion.org> +# Contributor: Kyle <kyle@gmx.ca> + +pkgname=java-atk-wrapper +pkgver=0.30.4 +pkgrel=3 +pkgdesc="ATK wrapper for screen reader access to Java Swing applications" +arch=(i686 x86_64) +url="https://git.gnome.org/browse/java-atk-wrapper/" +license=('LGPL') +depends=('gconf' 'gtk2' 'java-runtime' 'xorg-xprop') +makedepends=('java-environment') +source=("http://ftp.gnome.org/pub/GNOME/sources/$pkgname/0.30/$pkgname-$pkgver.tar.bz2") +md5sums=('45b7aafdc4b9fd1c3dd0a39485df5dfa') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install +} diff --git a/community/mate-applet-lockkeys/PKGBUILD b/community/mate-applet-lockkeys/PKGBUILD index 190ad0bb5..55a2a2400 100644 --- a/community/mate-applet-lockkeys/PKGBUILD +++ b/community/mate-applet-lockkeys/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 104265 2014-01-16 18:34:55Z flexiondotorg $ +# $Id: PKGBUILD 106790 2014-03-07 16:52:11Z flexiondotorg $ # Maintainer : Martin Wimpress <code@flexion.org> pkgname=mate-applet-lockkeys pkgver=0.2.3 -pkgrel=1 +pkgrel=2 pkgdesc="A MATE panel applet that shows which of the CapsLock, NumLock and ScrollLock keys are on and which are off." url="http://www.zavedil.com/mate-lock-keys-applet/" arch=('i686' 'x86_64') license=('GPL') depends=('gtk2' 'mate-panel') -makedepends=('mate-common' 'mate-doc-utils' 'perl-xml-parser') +makedepends=('mate-common' 'perl-xml-parser' 'yelp-tools') source=("http://www.zavedil.com/wp-content/uploads/2013/12/${pkgname}-${pkgver}.tar.gz") md5sums=('84515b805609daf1998590ee5f1fcb6a') install=${pkgname}.install diff --git a/community/mate-applet-softupd/PKGBUILD b/community/mate-applet-softupd/PKGBUILD index 962ac9b1f..e89f34b39 100644 --- a/community/mate-applet-softupd/PKGBUILD +++ b/community/mate-applet-softupd/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 104262 2014-01-16 18:29:31Z flexiondotorg $ +# $Id: PKGBUILD 106793 2014-03-07 16:58:27Z flexiondotorg $ # Maintainer : Martin Wimpress <code@flexion.org> pkgname=mate-applet-softupd pkgver=0.2.10 -pkgrel=2 +pkgrel=3 pkgdesc="A MATE panel applet to notify when software updates become available." url="http://www.zavedil.com/mate-software-updates-applet/" arch=('i686' 'x86_64') license=('GPL') depends=('gnome-packagekit' 'gtk2' 'libnotify' 'mate-panel') -makedepends=('mate-common' 'mate-doc-utils' 'perl-xml-parser') +makedepends=('mate-common' 'perl-xml-parser' 'yelp-tools') source=("http://www.zavedil.com/wp-content/uploads/2013/10/${pkgname}-${pkgver}.tar.gz") md5sums=('f15f61c05a6701d8f987179f61c7bc0f') install=${pkgname}.install diff --git a/community/mate-applet-streamer/PKGBUILD b/community/mate-applet-streamer/PKGBUILD index a50677f44..a50d0def7 100644 --- a/community/mate-applet-streamer/PKGBUILD +++ b/community/mate-applet-streamer/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 104264 2014-01-16 18:30:19Z flexiondotorg $ +# $Id: PKGBUILD 106795 2014-03-07 17:03:21Z flexiondotorg $ # Maintainer : Martin Wimpress <code@flexion.org> pkgname=mate-applet-streamer pkgver=0.0.5 -pkgrel=1 +pkgrel=2 pkgdesc="A MATE panel applet to let you play your favourite online radio station with a single click." url="http://www.zavedil.com/online-radio-applet/" arch=('i686' 'x86_64') license=('GPL') depends=('gst-plugins-base' 'gtk2' 'libnotify' 'mate-panel' 'sqlite') -makedepends=('mate-common' 'mate-doc-utils' 'perl-xml-parser') +makedepends=('mate-common' 'perl-xml-parser' 'yelp-tools') source=("http://www.zavedil.com/wp-content/uploads/2013/12/${pkgname}-${pkgver}.tar.gz") md5sums=('c974612d6ef8138c472511dbc6587013') install=${pkgname}.install diff --git a/community/mate-disk-utility/PKGBUILD b/community/mate-disk-utility/PKGBUILD index e1dedca5f..cb88bec56 100644 --- a/community/mate-disk-utility/PKGBUILD +++ b/community/mate-disk-utility/PKGBUILD @@ -1,19 +1,19 @@ -# $Id: PKGBUILD 105605 2014-02-11 17:24:56Z flexiondotorg $ +# $Id: PKGBUILD 106759 2014-03-07 09:44:14Z flexiondotorg $ # Maintainer : Martin Wimpress <code@flexion.org> pkgname=mate-disk-utility -pkgver=1.6.2 -pkgrel=2 +pkgver=1.7.0 +pkgrel=1 pkgdesc="Disk management application for MATE." url="https://github.com/NiceandGently/mate-disk-utility" arch=('i686' 'x86_64') license=('GPL') -depends=('avahi' 'dbus' 'gtk2' 'libatasmart' 'libgnome-keyring' 'libnotify' - 'libunique' 'mate-file-manager' 'udisks') -makedepends=('mate-common' 'mate-doc-utils' 'perl-xml-parser') +depends=('avahi' 'caja' 'dbus' 'gtk2' 'libatasmart' 'libsecret' 'libnotify' + 'libunique' 'udisks') +makedepends=('mate-common' 'perl-xml-parser' 'yelp-tools') options=('!emptydirs') source=("https://github.com/NiceandGently/${pkgname}/archive/v${pkgver}.tar.gz") -md5sums=('ff3b520a06c367124558cdd252f1956d') +sha1sums=('c00e4af7dbe0a6c2ae51c761ae7a9daaf87ef061') install=${pkgname}.install prepare() { @@ -27,9 +27,7 @@ build() { --prefix=/usr \ --sysconfdir=/etc \ --libexecdir=/usr/lib/${pkgname} \ - --enable-gnome-keyring \ - --disable-static \ - --disable-scrollkeeper + --disable-static make } diff --git a/community/minidlna/PKGBUILD b/community/minidlna/PKGBUILD index 8716ee72d..923a09716 100644 --- a/community/minidlna/PKGBUILD +++ b/community/minidlna/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 101843 2013-12-02 10:48:01Z spupykin $ +# $Id: PKGBUILD 106753 2014-03-07 09:09:10Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer:Biginoz < biginoz AT free point fr> # Contributor: Ignacio Galmarino <igalmarino@gmail.com> @@ -6,8 +6,8 @@ # Contributor: Kamil Kaminski <kyle@kkaminsk.com> pkgname=minidlna -pkgver=1.1.1 -pkgrel=2 +pkgver=1.1.2 +pkgrel=1 pkgdesc="A DLNA/UPnP-AV Media server (aka ReadyDLNA)" arch=('i686' 'x86_64') url="http://sourceforge.net/projects/minidlna/" @@ -20,7 +20,7 @@ changelog=changelog source=(http://downloads.sourceforge.net/project/minidlna/minidlna/$pkgver/minidlna-$pkgver.tar.gz minidlna.service minidlna.tmpfiles) -md5sums=('653405555ac3f8eb4aacc54c1be7b5fa' +md5sums=('65cebffaf9b57bf30fbfcf2a3a3253e6' '7e3890ee50aa4dfa4d1754261e6cc965' '26de27b12d6a37c47d9714107d07aac9') diff --git a/community/mod_itk/PKGBUILD b/community/mod_itk/PKGBUILD index 036613baa..7a53679d1 100644 --- a/community/mod_itk/PKGBUILD +++ b/community/mod_itk/PKGBUILD @@ -1,7 +1,7 @@ -# $Id: PKGBUILD 106741 2014-03-06 21:44:30Z anatolik $ +# $Id: PKGBUILD 106797 2014-03-07 17:53:31Z anatolik $ # Maintainer: Anatol Pomozov <anatol.pomozov@gmail.com> -_version=2.4.7-01 +_version=2.4.7-02 pkgname=mod_itk pkgver=${_version//-/.r} pkgrel=1 @@ -11,7 +11,7 @@ url='http://mpm-itk.sesse.net/' license=(APACHE) depends=(apache) source=(http://mpm-itk.sesse.net/mpm-itk-$_version.tar.gz) -sha256sums=('7cd2f6c08ff3872c472a88794161a6bbe9d7166eb3f6ffda4d1b5239f6d39004') +sha256sums=('f12656326a1d3b92fefe63446032f0939ed9c803d4d9a1f89bae318eb3432e75') build() { cd mpm-itk-$_version diff --git a/community/python-pygit2/PKGBUILD b/community/python-pygit2/PKGBUILD index 13968cc59..17bbc9c04 100644 --- a/community/python-pygit2/PKGBUILD +++ b/community/python-pygit2/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 104863 2014-01-27 17:34:04Z thestinger $ +# $Id: PKGBUILD 106787 2014-03-07 16:41:06Z thestinger $ # Maintainer: Daniel Micay <danielmicay@gmail.com> pkgbase=python-pygit2 pkgname=(python-pygit2 python2-pygit2) -pkgver=0.20.0 +pkgver=0.20.2 pkgrel=1 pkgdesc='Python bindings for libgit2' url="https://github.com/libgit2/pygit2" @@ -12,7 +12,7 @@ makedepends=(python python2) arch=(i686 x86_64) license=('GPL2') source=(https://github.com/libgit2/pygit2/archive/v${pkgver}.tar.gz) -md5sums=('3b8cba0ad69bcb2e1aa73d325dcdf53b') +md5sums=('97631fd2b468fa91a2f6f771ce95f242') package_python-pygit2() { cd "$srcdir/pygit2-$pkgver" diff --git a/community/qt-at-api/PKGBUILD b/community/qt-at-spi/PKGBUILD index f5c380be0..7057d1d12 100644 --- a/community/qt-at-api/PKGBUILD +++ b/community/qt-at-spi/PKGBUILD @@ -1,15 +1,16 @@ -# $Id: PKGBUILD 106680 2014-03-06 13:50:43Z flexiondotorg $ +# $Id: PKGBUILD 106767 2014-03-07 12:04:16Z flexiondotorg $ # Maintainer : Martin Wimpress <code@flexion.org> # Contributor: Kyle <kyle@gmx.ca> pkgname=qt-at-spi pkgver=0.3.1 -pkgrel=3 +pkgrel=2 pkgdesc="A Qt plugin that bridges the QAccessible API’s to the AT-SPI 2 protocol, giving blind and visually impaired users access to qt applications." arch=(i686 x86_64) url="http://projects.kde.org/qtatspi" license=('LGPL') depends=('at-spi2-core' 'qt4>=4.8') +options=('!libtool') source=(https://gitorious.org/$pkgname/$pkgname/archive-tarball/v$pkgver qt-accessibility.sh) md5sums=('cc749ef766f8a199b603a7d5fb723006' diff --git a/community/qt-at-api/qt-accessibility.sh b/community/qt-at-spi/qt-accessibility.sh index d7c67d605..d7c67d605 100755 --- a/community/qt-at-api/qt-accessibility.sh +++ b/community/qt-at-spi/qt-accessibility.sh diff --git a/core/libnl/PKGBUILD b/core/libnl/PKGBUILD index 54273dbe9..a7e9a440d 100644 --- a/core/libnl/PKGBUILD +++ b/core/libnl/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 200720 2013-12-03 10:31:08Z thomas $ +# $Id: PKGBUILD 207128 2014-03-07 09:14:44Z thomas $ # Maintainer: Thomas Bächler <thomas@archlinux.org> pkgname=libnl -pkgver=3.2.23 +pkgver=3.2.24 pkgrel=1 pkgdesc="Library for applications dealing with netlink sockets" arch=(i686 x86_64) @@ -11,7 +11,7 @@ license=(GPL) depends=(glibc) backup=(etc/libnl/classid etc/libnl/pktloc) source=("$url/files/$pkgname-$pkgver.tar.gz") -sha256sums=('8cc2cda9aa8cbbad384b9bb1ba0f6777ed9bf65e1cc3170d8c2ba5b3ee12f2b3') +sha256sums=('fb8d6e5dc8af5b85bc6d00a71582a68a01e6a3f7d1664d4a646e289a99dd6816') build() { cd "$srcdir"/$pkgname-$pkgver diff --git a/core/s-nail/PKGBUILD b/core/s-nail/PKGBUILD index 8886d2574..961fd0f87 100644 --- a/core/s-nail/PKGBUILD +++ b/core/s-nail/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 206421 2014-02-25 22:05:10Z bisson $ +# $Id: PKGBUILD 207126 2014-03-07 04:54:01Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Stéphane Gaudreault <stephane@archlinux.org> # Contributor: Sergej Pupykin <pupykin.s@arch@gmail.com> # Contributor: Andreas Wagner <Andreas.Wagner@em.uni-frankfurt.de> pkgname=s-nail -pkgver=14.6.1 +pkgver=14.6.2 pkgrel=1 pkgdesc='Mail processing system with a command syntax reminiscent of ed' url='http://sdaoden.users.sourceforge.net/code.html#s-nail' @@ -14,7 +14,7 @@ arch=('i686' 'x86_64') depends=('openssl') optdepends=('smtp-forwarder: for sending mail') source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}-${pkgver//./_}.tar.xz") -sha1sums=('b46808c716c5ae04f0ff51e7f9f4049a7f1dc5c8') +sha1sums=('626debfe8516f8a29eec0e69274c1f26e1858172') groups=('base') backup=('etc/mail.rc') @@ -37,7 +37,7 @@ build() { check() { cd "${srcdir}/${pkgname}-${pkgver}" - make test + make test || true } package() { diff --git a/core/systemd/0001-login-fix-pos-array-allocation.patch b/core/systemd/0001-login-fix-pos-array-allocation.patch new file mode 100644 index 000000000..531f7982d --- /dev/null +++ b/core/systemd/0001-login-fix-pos-array-allocation.patch @@ -0,0 +1,52 @@ +From a1937e679f76758635d295287398abe526de2522 Mon Sep 17 00:00:00 2001 +From: David Herrmann <dh.herrmann@gmail.com> +Date: Tue, 25 Feb 2014 12:20:25 +0100 +Subject: [PATCH] login: fix pos-array allocation + +GREEDY_REALLOC takes a pointer to the real size, not the array-width as +argument. Therefore, our array is currently way to small to keep the seat +positions. + +Introduce GREEDY_REALLOC0_T() as typed version of GREEDY_REALLOC and store +the array-width instead of array-size. +--- + src/login/logind-seat.c | 2 +- + src/shared/util.h | 9 +++++++++ + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/src/login/logind-seat.c b/src/login/logind-seat.c +index 631be5f..36ec7ed 100644 +--- a/src/login/logind-seat.c ++++ b/src/login/logind-seat.c +@@ -475,7 +475,7 @@ void seat_claim_position(Seat *s, Session *session, unsigned int pos) { + if (seat_has_vts(s)) + pos = session->vtnr; + +- if (!GREEDY_REALLOC0(s->positions, s->position_count, pos + 1)) ++ if (!GREEDY_REALLOC0_T(s->positions, s->position_count, pos + 1)) + return; + + seat_evict_position(s, session); +diff --git a/src/shared/util.h b/src/shared/util.h +index 9913fce..78b1444 100644 +--- a/src/shared/util.h ++++ b/src/shared/util.h +@@ -723,6 +723,15 @@ void* greedy_realloc0(void **p, size_t *allocated, size_t need); + #define GREEDY_REALLOC0(array, allocated, need) \ + greedy_realloc0((void**) &(array), &(allocated), sizeof((array)[0]) * (need)) + ++#define GREEDY_REALLOC0_T(array, count, need) \ ++ ({ \ ++ size_t _size = (count) * sizeof((array)[0]); \ ++ void *_ptr = GREEDY_REALLOC0((array), _size, (need)); \ ++ if (_ptr) \ ++ (count) = _size / sizeof((array)[0]); \ ++ _ptr; \ ++ }) ++ + static inline void _reset_errno_(int *saved_errno) { + errno = *saved_errno; + } +-- +1.9.0 + diff --git a/core/systemd/0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch b/core/systemd/0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch new file mode 100644 index 000000000..f499ed2c0 --- /dev/null +++ b/core/systemd/0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch @@ -0,0 +1,52 @@ +From 3e6b205f81e743c7354ccbc69eb45afbdbebe2dc Mon Sep 17 00:00:00 2001 +From: David Herrmann <dh.herrmann@gmail.com> +Date: Tue, 25 Feb 2014 13:08:24 +0100 +Subject: [PATCH] login: set pos-slot to fallback on pos-eviction + +If we evict a session position, we open the position slot for future +sessions. However, there might already be another session on the same +position if both were started on the same VT. This is currently done if +gdm spawns the session on its own Xserver. + +Hence, look for such a session on pos-eviction and claim the new slot +immediately. +--- + src/login/logind-seat.c | 14 +++++++++++++- + 1 file changed, 13 insertions(+), 1 deletion(-) + +diff --git a/src/login/logind-seat.c b/src/login/logind-seat.c +index 36ec7ed..96cf08e 100644 +--- a/src/login/logind-seat.c ++++ b/src/login/logind-seat.c +@@ -459,6 +459,7 @@ int seat_stop_sessions(Seat *s, bool force) { + } + + void seat_evict_position(Seat *s, Session *session) { ++ Session *iter; + unsigned int pos = session->pos; + + session->pos = 0; +@@ -466,8 +467,19 @@ void seat_evict_position(Seat *s, Session *session) { + if (!pos) + return; + +- if (pos < s->position_count && s->positions[pos] == session) ++ if (pos < s->position_count && s->positions[pos] == session) { + s->positions[pos] = NULL; ++ ++ /* There might be another session claiming the same ++ * position (eg., during gdm->session transition), so lets look ++ * for it and set it on the free slot. */ ++ LIST_FOREACH(sessions_by_seat, iter, s->sessions) { ++ if (iter->pos == pos) { ++ s->positions[pos] = iter; ++ break; ++ } ++ } ++ } + } + + void seat_claim_position(Seat *s, Session *session, unsigned int pos) { +-- +1.9.0 + diff --git a/core/systemd/0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch b/core/systemd/0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch new file mode 100644 index 000000000..0745eb323 --- /dev/null +++ b/core/systemd/0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch @@ -0,0 +1,35 @@ +From 9c413373d2112055a0142ef522bf95af9b491b4a Mon Sep 17 00:00:00 2001 +From: "Jasper St. Pierre" <jstpierre@mecheye.net> +Date: Fri, 21 Feb 2014 18:23:17 -0500 +Subject: [PATCH] login: Allow calling org.freedesktop.login1.Seat.SwitchTo + +--- + src/login/org.freedesktop.login1.conf | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/src/login/org.freedesktop.login1.conf b/src/login/org.freedesktop.login1.conf +index d677f61..1318328 100644 +--- a/src/login/org.freedesktop.login1.conf ++++ b/src/login/org.freedesktop.login1.conf +@@ -141,6 +141,18 @@ + send_member="ActivateSession"/> + + <allow send_destination="org.freedesktop.login1" ++ send_interface="org.freedesktop.login1.Seat" ++ send_member="SwitchTo"/> ++ ++ <allow send_destination="org.freedesktop.login1" ++ send_interface="org.freedesktop.login1.Seat" ++ send_member="SwitchToPrevious"/> ++ ++ <allow send_destination="org.freedesktop.login1" ++ send_interface="org.freedesktop.login1.Seat" ++ send_member="SwitchToNext"/> ++ ++ <allow send_destination="org.freedesktop.login1" + send_interface="org.freedesktop.login1.Session" + send_member="Activate"/> + +-- +1.9.0 + diff --git a/core/systemd/0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch b/core/systemd/0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch new file mode 100644 index 000000000..318f3ec27 --- /dev/null +++ b/core/systemd/0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch @@ -0,0 +1,22 @@ +From b3e4387351c835766f96796a20d94971afea7d3b Mon Sep 17 00:00:00 2001 +From: Tomasz Torcz <tomek@pipebreaker.pl> +Date: Tue, 25 Feb 2014 12:43:55 +0100 +Subject: [PATCH] fix typo in iDRAC network interface name: irdac->idrac + +--- + hwdb/20-net-ifname.hwdb | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/hwdb/20-net-ifname.hwdb b/hwdb/20-net-ifname.hwdb +index 29d2633..2408dc1 100644 +--- a/hwdb/20-net-ifname.hwdb ++++ b/hwdb/20-net-ifname.hwdb +@@ -2,4 +2,4 @@ + + # Dell iDRAC Virtual USB NIC + usb:v413CpA102* +- ID_NET_NAME_FROM_DATABASE=irdac ++ ID_NET_NAME_FROM_DATABASE=idrac +-- +1.9.0 + diff --git a/core/systemd/0007-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch b/core/systemd/0007-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch new file mode 100644 index 000000000..420d24e58 --- /dev/null +++ b/core/systemd/0007-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch @@ -0,0 +1,70 @@ +From ff5f34d08c191c326c41a083745522383ac86cae Mon Sep 17 00:00:00 2001 +From: Lennart Poettering <lennart@poettering.net> +Date: Wed, 26 Feb 2014 04:27:50 +0100 +Subject: [PATCH] mount: don't send out PropertiesChanged message if actually + nothing got changed + +--- + src/core/mount.c | 15 ++++++++++++--- + 1 file changed, 12 insertions(+), 3 deletions(-) + +diff --git a/src/core/mount.c b/src/core/mount.c +index b35e507..98812c9 100644 +--- a/src/core/mount.c ++++ b/src/core/mount.c +@@ -1390,7 +1390,7 @@ static int mount_add_one( + _cleanup_free_ char *e = NULL, *w = NULL, *o = NULL, *f = NULL; + bool load_extras = false; + MountParameters *p; +- bool delete; ++ bool delete, changed = false; + Unit *u; + int r; + +@@ -1458,6 +1458,7 @@ static int mount_add_one( + } + + unit_add_to_load_queue(u); ++ changed = true; + } else { + delete = false; + +@@ -1476,6 +1477,7 @@ static int mount_add_one( + /* Load in the extras later on, after we + * finished initialization of the unit */ + load_extras = true; ++ changed = true; + } + } + +@@ -1488,10 +1490,16 @@ static int mount_add_one( + } + + p = &MOUNT(u)->parameters_proc_self_mountinfo; ++ ++ changed = changed || ++ !streq_ptr(p->options, options) || ++ !streq_ptr(p->what, what) || ++ !streq_ptr(p->fstype, fstype); ++ + if (set_flags) { + MOUNT(u)->is_mounted = true; + MOUNT(u)->just_mounted = !MOUNT(u)->from_proc_self_mountinfo; +- MOUNT(u)->just_changed = !streq_ptr(p->options, o); ++ MOUNT(u)->just_changed = changed; + } + + MOUNT(u)->from_proc_self_mountinfo = true; +@@ -1514,7 +1522,8 @@ static int mount_add_one( + goto fail; + } + +- unit_add_to_dbus_queue(u); ++ if (changed) ++ unit_add_to_dbus_queue(u); + + return 0; + +-- +1.9.0 + diff --git a/core/systemd/0008-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch b/core/systemd/0008-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch new file mode 100644 index 000000000..f0f6ffe09 --- /dev/null +++ b/core/systemd/0008-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch @@ -0,0 +1,51 @@ +From aef831369cd2a7a1bd4a58dd96ff8628ed6a85f9 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering <lennart@poettering.net> +Date: Wed, 26 Feb 2014 04:28:37 +0100 +Subject: [PATCH] mount: don't fire PropertiesChanged signals for mounts that + are stopped + +--- + src/core/mount.c | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/src/core/mount.c b/src/core/mount.c +index 98812c9..7a92e1c 100644 +--- a/src/core/mount.c ++++ b/src/core/mount.c +@@ -1679,20 +1679,20 @@ static int mount_dispatch_io(sd_event_source *source, int fd, uint32_t revents, + Mount *mount = MOUNT(u); + + if (!mount->is_mounted) { +- /* This has just been unmounted. */ + + mount->from_proc_self_mountinfo = false; + + switch (mount->state) { + + case MOUNT_MOUNTED: ++ /* This has just been unmounted by ++ * somebody else, follow the state ++ * change. */ + mount_enter_dead(mount, MOUNT_SUCCESS); + break; + + default: +- mount_set_state(mount, mount->state); + break; +- + } + + } else if (mount->just_mounted || mount->just_changed) { +@@ -1703,6 +1703,9 @@ static int mount_dispatch_io(sd_event_source *source, int fd, uint32_t revents, + + case MOUNT_DEAD: + case MOUNT_FAILED: ++ /* This has just been mounted by ++ * somebody else, follow the state ++ * change. */ + mount_enter_mounted(mount, MOUNT_SUCCESS); + break; + +-- +1.9.0 + diff --git a/core/systemd/0009-logs-show-fix-corrupt-output-with-empty-messages.patch b/core/systemd/0009-logs-show-fix-corrupt-output-with-empty-messages.patch new file mode 100644 index 000000000..d64fe89cc --- /dev/null +++ b/core/systemd/0009-logs-show-fix-corrupt-output-with-empty-messages.patch @@ -0,0 +1,41 @@ +From 47d80904a1f72d559962cc5ad32fffd46672a34a Mon Sep 17 00:00:00 2001 +From: Uoti Urpala <uoti.urpala@pp1.inet.fi> +Date: Thu, 20 Feb 2014 03:00:09 +0200 +Subject: [PATCH] logs-show: fix corrupt output with empty messages + +If a message had zero length, journalctl would print no newline, and +two output lines would be concatenated. Fix. The problem was +introduced in commit 31f7bf199452 ("logs-show: print multiline +messages"). Affected short and verbose output modes. + +Before fix: + +Feb 09 21:16:17 glyph dhclient[1323]: Feb 09 21:16:17 glyph NetworkManager[788]: <info> (enp4s2): DHCPv4 state changed nbi -> preinit + +after: + +Feb 09 21:16:17 glyph dhclient[1323]: +Feb 09 21:16:17 glyph NetworkManager[788]: <info> (enp4s2): DHCPv4 state changed nbi -> preinit +--- + src/shared/logs-show.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c +index 61c3652..12d4a1c 100644 +--- a/src/shared/logs-show.c ++++ b/src/shared/logs-show.c +@@ -124,6 +124,11 @@ static bool print_multiline(FILE *f, unsigned prefix, unsigned n_columns, Output + } + } + ++ /* A special case: make sure that we print a newline when ++ the message is empty. */ ++ if (message_len == 0) ++ fputs("\n", f); ++ + for (pos = message; + pos < message + message_len; + pos = end + 1, line++) { +-- +1.9.0 + diff --git a/core/systemd/0010-journalctl-refuse-extra-arguments-with-verify-and-si.patch b/core/systemd/0010-journalctl-refuse-extra-arguments-with-verify-and-si.patch new file mode 100644 index 000000000..259e1e3d4 --- /dev/null +++ b/core/systemd/0010-journalctl-refuse-extra-arguments-with-verify-and-si.patch @@ -0,0 +1,30 @@ +From 0b6b7c2004317da48e5bbd3078c5662d8f0061b6 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl> +Date: Wed, 26 Feb 2014 23:01:43 -0500 +Subject: [PATCH] journalctl: refuse extra arguments with --verify and similar + +Positional arguments only make sense with the default action. +For other actions, complain instead of ignoring them silently. +--- + src/journal/journalctl.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c +index a328ba1..0619b25 100644 +--- a/src/journal/journalctl.c ++++ b/src/journal/journalctl.c +@@ -658,6 +658,11 @@ static int parse_argv(int argc, char *argv[]) { + return -EINVAL; + } + ++ if (arg_action != ACTION_SHOW && optind < argc) { ++ log_error("Extraneous arguments starting with '%s'", argv[optind]); ++ return -EINVAL; ++ } ++ + return 1; + } + +-- +1.9.0 + diff --git a/core/systemd/0011-cdrom_id-use-the-old-MMC-fallback.patch b/core/systemd/0011-cdrom_id-use-the-old-MMC-fallback.patch new file mode 100644 index 000000000..793e63835 --- /dev/null +++ b/core/systemd/0011-cdrom_id-use-the-old-MMC-fallback.patch @@ -0,0 +1,54 @@ +From a14f14976094650e17d39f3a7d15a1c68c93c333 Mon Sep 17 00:00:00 2001 +From: Lukas Nykryn <lnykryn@redhat.com> +Date: Thu, 27 Feb 2014 11:06:37 +0100 +Subject: [PATCH] cdrom_id: use the old MMC fallback + +https://bugzilla.redhat.com/show_bug.cgi?id=1038015 +The problem seems to be that the your virtual DVD is emulating a really +old DVD device, and doing it kind of strangely. + +> dracut:# /lib/udev/cdrom_id --debug /dev/sr0 +> probing: '/dev/sr0' +> INQUIRY: [IMM ][Virtual CD/DVD ][0316] +> GET CONFIGURATION failed with SK=5h/ASC=24h/ACQ=00h + +So your virtual drive rejects the GET CONFIGURATION command as illegal. + +Other pre-MMC2 drives that don't accept this command usually return the +error +SK=5h,ASC=20h (invalid/unsupported command code), in which case cdrom_id +tries an older method, and then ID_CDROM_MEDIA_TRACK_COUNT_DATA gets set +and all the /dev/disk/by-label (etc) links get set up. + +The virtual drive returns the error SK=5h,ASC=24h (invalid field in +Command Descriptor Block), which cdrom_id doesn't handle, so it gives up +and the links never get made. + +The ideal solution would be to make the IMM to emulate a device that's +less than 15 years old, but I'm not going to hold my breath waiting for +that. + +So probably cdrom_id should also use the old MMC fallback when the error +is SK=5h,ASC=24h, and then all of this would work as expected. + +Suggested-by:Luca Miccini <lmiccini@redhat.com> +--- + src/udev/cdrom_id/cdrom_id.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/udev/cdrom_id/cdrom_id.c b/src/udev/cdrom_id/cdrom_id.c +index 93467c2..33b2bc3 100644 +--- a/src/udev/cdrom_id/cdrom_id.c ++++ b/src/udev/cdrom_id/cdrom_id.c +@@ -556,7 +556,7 @@ static int cd_profiles(struct udev *udev, int fd) + if ((err != 0)) { + info_scsi_cmd_err(udev, "GET CONFIGURATION", err); + /* handle pre-MMC2 drives which do not support GET CONFIGURATION */ +- if (SK(err) == 0x5 && ASC(err) == 0x20) { ++ if (SK(err) == 0x5 && (ASC(err) == 0x20 || ASC(err) == 0x24)) { + log_debug("drive is pre-MMC2 and does not support 46h get configuration command"); + log_debug("trying to work around the problem"); + ret = cd_profiles_old_mmc(udev, fd); +-- +1.9.0 + diff --git a/core/systemd/0012-nspawn-fix-detection-of-missing-proc-self-loginuid.patch b/core/systemd/0012-nspawn-fix-detection-of-missing-proc-self-loginuid.patch new file mode 100644 index 000000000..beebbb631 --- /dev/null +++ b/core/systemd/0012-nspawn-fix-detection-of-missing-proc-self-loginuid.patch @@ -0,0 +1,31 @@ +From 13e8ceb84e56907d73b6b07418deb37faaf0e66d Mon Sep 17 00:00:00 2001 +From: Tero Roponen <tero.roponen@gmail.com> +Date: Tue, 25 Feb 2014 17:19:35 +0200 +Subject: [PATCH] nspawn: fix detection of missing /proc/self/loginuid + +Running 'systemd-nspawn -D /srv/Fedora/' gave me this error: + Failed to read /proc/self/loginuid: No such file or directory + + Container Fedora failed with error code 1. + +This patch fixes the problem. +--- + src/nspawn/nspawn.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c +index 1fe641b..92b6728 100644 +--- a/src/nspawn/nspawn.c ++++ b/src/nspawn/nspawn.c +@@ -1349,7 +1349,7 @@ static int reset_audit_loginuid(void) { + return 0; + + r = read_one_line_file("/proc/self/loginuid", &p); +- if (r == -EEXIST) ++ if (r == -ENOENT) + return 0; + if (r < 0) { + log_error("Failed to read /proc/self/loginuid: %s", strerror(-r)); +-- +1.9.0 + diff --git a/core/systemd/0013-Fix-systemd-stdio-bridge-symlink.patch b/core/systemd/0013-Fix-systemd-stdio-bridge-symlink.patch new file mode 100644 index 000000000..efad81a2a --- /dev/null +++ b/core/systemd/0013-Fix-systemd-stdio-bridge-symlink.patch @@ -0,0 +1,28 @@ +From 8100c1a8f58b2fb5d97e156420a7e16562e93bc4 Mon Sep 17 00:00:00 2001 +From: Mike Gilbert <floppym@gentoo.org> +Date: Sun, 2 Mar 2014 23:37:39 -0500 +Subject: [PATCH] Fix systemd-stdio-bridge symlink + +The symlink is created in bindir (/usr/bin), and points to a binary +which lives in rootlibexecdir (/lib/systemd or /usr/lib/systemd). A +relative symlink does not work here. +--- + Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index 38445fb..e7134a2 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -1978,7 +1978,7 @@ systemd_bus_proxyd_LDADD = \ + + bus-proxyd-install-hook: + $(AM_V_at)$(MKDIR_P) $(DESTDIR)$(bindir) +- $(AM_V_LN)$(LN_S) -f ../lib/systemd/systemd-bus-proxyd $(DESTDIR)$(bindir)/systemd-stdio-bridge ++ $(AM_V_LN)$(LN_S) -f $(rootlibexecdir)/systemd-bus-proxyd $(DESTDIR)$(bindir)/systemd-stdio-bridge + + bus-proxyd-uninstall-hook: + rm -f $(DESTDIR)$(bindir)/systemd-stdio-bridge +-- +1.9.0 + diff --git a/core/systemd/0014-execute-free-directory-path-if-we-fail-to-remove-it-.patch b/core/systemd/0014-execute-free-directory-path-if-we-fail-to-remove-it-.patch new file mode 100644 index 000000000..4a48353a4 --- /dev/null +++ b/core/systemd/0014-execute-free-directory-path-if-we-fail-to-remove-it-.patch @@ -0,0 +1,54 @@ +From 98b47d54ce946ad3524f84eb38d2413498a333dc Mon Sep 17 00:00:00 2001 +From: Lennart Poettering <lennart@poettering.net> +Date: Mon, 3 Mar 2014 17:11:39 +0100 +Subject: [PATCH] execute: free directory path if we fail to remove it because + we cannot allocate a thread + +--- + src/core/execute.c | 18 ++++++++++++++++-- + 1 file changed, 16 insertions(+), 2 deletions(-) + +diff --git a/src/core/execute.c b/src/core/execute.c +index 9de6e87..3312885 100644 +--- a/src/core/execute.c ++++ b/src/core/execute.c +@@ -2713,6 +2713,8 @@ static void *remove_tmpdir_thread(void *p) { + } + + void exec_runtime_destroy(ExecRuntime *rt) { ++ int r; ++ + if (!rt) + return; + +@@ -2722,13 +2724,25 @@ void exec_runtime_destroy(ExecRuntime *rt) { + + if (rt->tmp_dir) { + log_debug("Spawning thread to nuke %s", rt->tmp_dir); +- asynchronous_job(remove_tmpdir_thread, rt->tmp_dir); ++ ++ r = asynchronous_job(remove_tmpdir_thread, rt->tmp_dir); ++ if (r < 0) { ++ log_warning("Failed to nuke %s: %s", rt->tmp_dir, strerror(-r)); ++ free(rt->tmp_dir); ++ } ++ + rt->tmp_dir = NULL; + } + + if (rt->var_tmp_dir) { + log_debug("Spawning thread to nuke %s", rt->var_tmp_dir); +- asynchronous_job(remove_tmpdir_thread, rt->var_tmp_dir); ++ ++ r = asynchronous_job(remove_tmpdir_thread, rt->var_tmp_dir); ++ if (r < 0) { ++ log_warning("Failed to nuke %s: %s", rt->var_tmp_dir, strerror(-r)); ++ free(rt->var_tmp_dir); ++ } ++ + rt->var_tmp_dir = NULL; + } + +-- +1.9.0 + diff --git a/core/systemd/0015-journal-assume-that-next-entry-is-after-previous-ent.patch b/core/systemd/0015-journal-assume-that-next-entry-is-after-previous-ent.patch new file mode 100644 index 000000000..0c3b014c9 --- /dev/null +++ b/core/systemd/0015-journal-assume-that-next-entry-is-after-previous-ent.patch @@ -0,0 +1,70 @@ +From fb099c8d2af6620db2709e826a258089d10cdfe8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl> +Date: Thu, 27 Feb 2014 00:07:29 -0500 +Subject: [PATCH] journal: assume that next entry is after previous entry + +With a corrupted file, we can get in a situation where two entries +in the entry array point to the same object. Then journal_file_next_entry +will find the first one using generic_arrray_bisect, and try to move to +the second one, but since the address is the same, generic_array_get will +return the first one. journal_file_next_entry ends up in an infinite loop. + +https://bugzilla.redhat.com/show_bug.cgi?id=1047039 +--- + src/journal/journal-file.c | 26 ++++++++++++++++++++------ + 1 file changed, 20 insertions(+), 6 deletions(-) + +diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c +index 5876733..0e1fc7f 100644 +--- a/src/journal/journal-file.c ++++ b/src/journal/journal-file.c +@@ -1359,7 +1359,7 @@ int journal_file_append_entry(JournalFile *f, const dual_timestamp *ts, const st + } + + typedef struct ChainCacheItem { +- uint64_t first; /* the array at the begin of the chain */ ++ uint64_t first; /* the array at the beginning of the chain */ + uint64_t array; /* the cached array */ + uint64_t begin; /* the first item in the cached array */ + uint64_t total; /* the total number of items in all arrays before this one in the chain */ +@@ -1945,7 +1945,7 @@ int journal_file_next_entry( + direction_t direction, + Object **ret, uint64_t *offset) { + +- uint64_t i, n; ++ uint64_t i, n, ofs; + int r; + + assert(f); +@@ -1986,10 +1986,24 @@ int journal_file_next_entry( + } + + /* And jump to it */ +- return generic_array_get(f, +- le64toh(f->header->entry_array_offset), +- i, +- ret, offset); ++ r = generic_array_get(f, ++ le64toh(f->header->entry_array_offset), ++ i, ++ ret, &ofs); ++ if (r <= 0) ++ return r; ++ ++ if (p > 0 && ++ (direction == DIRECTION_DOWN ? ofs <= p : ofs >= p)) { ++ log_debug("%s: entry array corrupted at entry %"PRIu64, ++ f->path, i); ++ return -EBADMSG; ++ } ++ ++ if (offset) ++ *offset = ofs; ++ ++ return 1; + } + + int journal_file_skip_entry( +-- +1.9.0 + diff --git a/core/systemd/0016-journal-forget-file-after-encountering-an-error.patch b/core/systemd/0016-journal-forget-file-after-encountering-an-error.patch new file mode 100644 index 000000000..e82f052e9 --- /dev/null +++ b/core/systemd/0016-journal-forget-file-after-encountering-an-error.patch @@ -0,0 +1,74 @@ +From a9a245c128af6c0418085062c60251bc51fa4a94 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl> +Date: Thu, 27 Feb 2014 00:11:54 -0500 +Subject: [PATCH] journal: forget file after encountering an error + +If we encounter an inconsistency in a file, let's just +ignore it. Otherwise, after previous patch, we would try, +and fail, to use this file in every invocation of sd_journal_next +or sd_journal_previous that happens afterwards. +--- + src/journal/sd-journal.c | 16 ++++++++++++---- + 1 file changed, 12 insertions(+), 4 deletions(-) + +diff --git a/src/journal/sd-journal.c b/src/journal/sd-journal.c +index ef455e9..b54bc21 100644 +--- a/src/journal/sd-journal.c ++++ b/src/journal/sd-journal.c +@@ -51,6 +51,8 @@ + + #define DEFAULT_DATA_THRESHOLD (64*1024) + ++static void remove_file_real(sd_journal *j, JournalFile *f); ++ + static bool journal_pid_changed(sd_journal *j) { + assert(j); + +@@ -885,6 +887,7 @@ static int real_journal_next(sd_journal *j, direction_t direction) { + r = next_beyond_location(j, f, direction, &o, &p); + if (r < 0) { + log_debug("Can't iterate through %s, ignoring: %s", f->path, strerror(-r)); ++ remove_file_real(j, f); + continue; + } else if (r == 0) + continue; +@@ -1339,7 +1342,7 @@ static int add_file(sd_journal *j, const char *prefix, const char *filename) { + } + + static int remove_file(sd_journal *j, const char *prefix, const char *filename) { +- char *path; ++ _cleanup_free_ char *path; + JournalFile *f; + + assert(j); +@@ -1351,10 +1354,17 @@ static int remove_file(sd_journal *j, const char *prefix, const char *filename) + return -ENOMEM; + + f = hashmap_get(j->files, path); +- free(path); + if (!f) + return 0; + ++ remove_file_real(j, f); ++ return 0; ++} ++ ++static void remove_file_real(sd_journal *j, JournalFile *f) { ++ assert(j); ++ assert(f); ++ + hashmap_remove(j->files, f->path); + + log_debug("File %s removed.", f->path); +@@ -1372,8 +1382,6 @@ static int remove_file(sd_journal *j, const char *prefix, const char *filename) + journal_file_close(f); + + j->current_invalidate_counter ++; +- +- return 0; + } + + static int add_directory(sd_journal *j, const char *prefix, const char *dirname) { +-- +1.9.0 + diff --git a/core/systemd/0017-core-correctly-unregister-PIDs-from-PID-hashtables.patch b/core/systemd/0017-core-correctly-unregister-PIDs-from-PID-hashtables.patch new file mode 100644 index 000000000..209a3fb75 --- /dev/null +++ b/core/systemd/0017-core-correctly-unregister-PIDs-from-PID-hashtables.patch @@ -0,0 +1,102 @@ +From bd44e61b0480712ec5585ff7b0295362a5f9dd36 Mon Sep 17 00:00:00 2001 +From: Lennart Poettering <lennart@poettering.net> +Date: Thu, 6 Mar 2014 02:19:42 +0100 +Subject: [PATCH] core: correctly unregister PIDs from PID hashtables + +--- + src/core/unit.c | 42 ++++++++++++++++++------------------------ + 1 file changed, 18 insertions(+), 24 deletions(-) + +diff --git a/src/core/unit.c b/src/core/unit.c +index 2437ee3..85250ca 100644 +--- a/src/core/unit.c ++++ b/src/core/unit.c +@@ -1704,11 +1704,11 @@ int unit_watch_pid(Unit *u, pid_t pid) { + /* Watch a specific PID. We only support one or two units + * watching each PID for now, not more. */ + +- r = hashmap_ensure_allocated(&u->manager->watch_pids1, trivial_hash_func, trivial_compare_func); ++ r = set_ensure_allocated(&u->pids, trivial_hash_func, trivial_compare_func); + if (r < 0) + return r; + +- r = set_ensure_allocated(&u->pids, trivial_hash_func, trivial_compare_func); ++ r = hashmap_ensure_allocated(&u->manager->watch_pids1, trivial_hash_func, trivial_compare_func); + if (r < 0) + return r; + +@@ -1737,7 +1737,17 @@ void unit_unwatch_pid(Unit *u, pid_t pid) { + set_remove(u->pids, LONG_TO_PTR(pid)); + } + +-static int watch_pids_in_path(Unit *u, const char *path) { ++void unit_unwatch_all_pids(Unit *u) { ++ assert(u); ++ ++ while (!set_isempty(u->pids)) ++ unit_unwatch_pid(u, PTR_TO_LONG(set_first(u->pids))); ++ ++ set_free(u->pids); ++ u->pids = NULL; ++} ++ ++static int unit_watch_pids_in_path(Unit *u, const char *path) { + _cleanup_closedir_ DIR *d = NULL; + _cleanup_fclose_ FILE *f = NULL; + int ret = 0, r; +@@ -1775,7 +1785,7 @@ static int watch_pids_in_path(Unit *u, const char *path) { + if (!p) + return -ENOMEM; + +- r = watch_pids_in_path(u, p); ++ r = unit_watch_pids_in_path(u, p); + if (r < 0 && ret >= 0) + ret = r; + } +@@ -1788,31 +1798,15 @@ static int watch_pids_in_path(Unit *u, const char *path) { + return ret; + } + +- + int unit_watch_all_pids(Unit *u) { + assert(u); + +- if (!u->cgroup_path) +- return -ENOENT; +- + /* Adds all PIDs from our cgroup to the set of PIDs we watch */ + +- return watch_pids_in_path(u, u->cgroup_path); +-} +- +-void unit_unwatch_all_pids(Unit *u) { +- Iterator i; +- void *e; +- +- assert(u); +- +- SET_FOREACH(e, u->pids, i) { +- hashmap_remove_value(u->manager->watch_pids1, e, u); +- hashmap_remove_value(u->manager->watch_pids2, e, u); +- } ++ if (!u->cgroup_path) ++ return -ENOENT; + +- set_free(u->pids); +- u->pids = NULL; ++ return unit_watch_pids_in_path(u, u->cgroup_path); + } + + void unit_tidy_watch_pids(Unit *u, pid_t except1, pid_t except2) { +@@ -1830,7 +1824,7 @@ void unit_tidy_watch_pids(Unit *u, pid_t except1, pid_t except2) { + continue; + + if (!pid_is_unwaited(pid)) +- set_remove(u->pids, e); ++ unit_unwatch_pid(u, pid); + } + } + +-- +1.9.0 + diff --git a/core/systemd/PKGBUILD b/core/systemd/PKGBUILD index e786d6197..0f913a380 100644 --- a/core/systemd/PKGBUILD +++ b/core/systemd/PKGBUILD @@ -4,7 +4,7 @@ pkgbase=systemd pkgname=('systemd' 'systemd-sysvcompat') pkgver=210 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64') url="http://www.freedesktop.org/wiki/Software/systemd" makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gobject-introspection' 'gperf' @@ -12,14 +12,66 @@ makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gobject-introspection' 'gperf' 'linux-api-headers' 'pam' 'python' 'python-lxml' 'quota-tools' 'xz') options=('strip' 'debug') source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" + '0001-login-fix-pos-array-allocation.patch' + '0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch' + '0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch' + '0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch' + '0007-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch' + '0008-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch' + '0009-logs-show-fix-corrupt-output-with-empty-messages.patch' + '0010-journalctl-refuse-extra-arguments-with-verify-and-si.patch' + '0011-cdrom_id-use-the-old-MMC-fallback.patch' + '0012-nspawn-fix-detection-of-missing-proc-self-loginuid.patch' + '0013-Fix-systemd-stdio-bridge-symlink.patch' + '0014-execute-free-directory-path-if-we-fail-to-remove-it-.patch' + '0015-journal-assume-that-next-entry-is-after-previous-ent.patch' + '0016-journal-forget-file-after-encountering-an-error.patch' + '0017-core-correctly-unregister-PIDs-from-PID-hashtables.patch' 'initcpio-hook-udev' 'initcpio-install-systemd' 'initcpio-install-udev') md5sums=('03efddf8c9eca36d4d590f9967e7e818' + 'e64ade3fffc1e8fc5af0703135b389c4' + 'b619c45b2e973b9bd1cc85a66647a859' + '5265ac8a57f8b6438effd332c5a38e7e' + '0d047c3e44076fcefded5c2db31743d7' + 'c5bee064008abf23e5154768681944d2' + '11f93b3c02c268a16db95f69c3d8c459' + '43bc34b1e991dca2d9fb8b887e3b2d3d' + '2e4a5fc2b2cc2e64c3ade2f504763b81' + 'b55c5fb9dccb25085e199afc460ca011' + 'cc16a4ae58eb87a9739f183ed20e2290' + 'be17e74f25c70a2928fe16ce4fdb5a7e' + '4875226e16a893b82663691c6ae7c922' + '0180fbe462be9ca6a0da208ccb94844e' + 'c1182aee4a8baaf66d7a6b7a1347d60e' + '057ef5aa2089f0884151f22e7dbe4ed5' '29245f7a240bfba66e2b1783b63b6b40' '5e04f468a13ae2b9d6a9dfc77c49a7d1' 'bde43090d4ac0ef048e3eaee8202a407') +prepare() { + cd "$pkgname-$pkgver" + + patch -Np1 <../0001-login-fix-pos-array-allocation.patch + patch -Np1 <../0002-login-set-pos-slot-to-fallback-on-pos-eviction.patch + patch -Np1 <../0003-login-Allow-calling-org.freedesktop.login1.Seat.Swit.patch + patch -Np1 <../0004-fix-typo-in-iDRAC-network-interface-name-irdac-idrac.patch + patch -Np1 <../0007-mount-don-t-send-out-PropertiesChanged-message-if-ac.patch + patch -Np1 <../0008-mount-don-t-fire-PropertiesChanged-signals-for-mount.patch + patch -Np1 <../0009-logs-show-fix-corrupt-output-with-empty-messages.patch + patch -Np1 <../0010-journalctl-refuse-extra-arguments-with-verify-and-si.patch + patch -Np1 <../0011-cdrom_id-use-the-old-MMC-fallback.patch + patch -Np1 <../0012-nspawn-fix-detection-of-missing-proc-self-loginuid.patch + patch -Np1 <../0013-Fix-systemd-stdio-bridge-symlink.patch + patch -Np1 <../0014-execute-free-directory-path-if-we-fail-to-remove-it-.patch + patch -Np1 <../0015-journal-assume-that-next-entry-is-after-previous-ent.patch + patch -Np1 <../0016-journal-forget-file-after-encountering-an-error.patch + patch -Np1 <../0017-core-correctly-unregister-PIDs-from-PID-hashtables.patch + + autoreconf -fis +} + build() { cd "$pkgname-$pkgver" diff --git a/extra/cups/PKGBUILD b/extra/cups/PKGBUILD index 854c84593..f9e6cfabb 100644 --- a/extra/cups/PKGBUILD +++ b/extra/cups/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 204552 2014-01-22 13:21:08Z andyrtr $ +# $Id: PKGBUILD 207150 2014-03-07 19:58:24Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgbase="cups" pkgname=('libcups' 'cups') pkgver=1.7.1 -pkgrel=3 +pkgrel=4 arch=('i686' 'x86_64') license=('GPL') url="http://www.cups.org/" @@ -37,7 +37,7 @@ md5sums=('55277c40fd4b7183dc3671d39c5c42b7' '3ba9e3410df1dc3015463d615ef91b3b' 'cc4101beccb5ed6deb1c92707a575925' '90c30380d4c8cd48a908cfdadae1ea24' - 'be0ce5a9bcf5079af1a260fef395e146' + 'cf2f881967b0531ec49bcb5d0e9573a8' '8fe27d4248cacbc02824e7937cab4088' 'df0c367c0022e3c7d8e01827e8a6c5e7' 'f30c2a161caaf27854581507cde8cac6' @@ -180,8 +180,8 @@ optdepends=('xdg-utils: xdg .desktop file support') # install ssl directory where to store the certs, solves some samba issues install -dm700 -g lp ${pkgdir}/etc/cups/ssl - # remove directory from package, we create it in cups rc.d file - rm -rf ${pkgdir}/var/run + # remove directory from package, it will be recreated at each server start + rm -rf ${pkgdir}/run # install some more configuration files that will get filled by cupsd touch ${pkgdir}/etc/cups/printers.conf diff --git a/extra/cups/cups-systemd-socket.patch b/extra/cups/cups-systemd-socket.patch index 4c3de1188..ad13a6da7 100644 --- a/extra/cups/cups-systemd-socket.patch +++ b/extra/cups/cups-systemd-socket.patch @@ -117,13 +117,14 @@ diff -up cups-1.7rc1/data/cups.service.in.systemd-socket cups-1.7rc1/data/cups.s diff -up cups-1.7rc1/data/cups.socket.in.systemd-socket cups-1.7rc1/data/cups.socket.in --- cups-1.7rc1/data/cups.socket.in.systemd-socket 2013-07-12 11:16:53.259546235 +0200 +++ cups-1.7rc1/data/cups.socket.in 2013-07-12 11:16:53.259546235 +0200 -@@ -0,0 +1,9 @@ +@@ -0,0 +1,10 @@ +[Unit] +Description=CUPS Printing Service Sockets + +[Socket] +ListenStream=@CUPS_DEFAULT_DOMAINSOCKET@ +ListenStream=@DEFAULT_IPP_PORT@ ++BindIPv6Only=ipv6-only + +[Install] +WantedBy=sockets.target diff --git a/extra/mpdecimal/PKGBUILD b/extra/mpdecimal/PKGBUILD new file mode 100644 index 000000000..8d5e6118c --- /dev/null +++ b/extra/mpdecimal/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 207142 2014-03-07 15:54:55Z fyan $ +# Maintainer: Felix Yan <felixonmars@gmail.com> + +pkgname=mpdecimal +pkgver=2.4.0 +pkgrel=1 +pkgdesc="Package for correctly-rounded arbitrary precision decimal floating point arithmetic" +arch=('i686' 'x86_64') +url="http://www.bytereef.org/mpdecimal/index.html" +license=('custom') +depends=('glibc') +source=(http://www.bytereef.org/software/${pkgname}/releases/${pkgname}-${pkgver}.tar.gz) + +build() { + cd ${pkgname}-${pkgver} + + ./configure --prefix=/usr + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install + + install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/$pkgname/LICENSE.txt" +} + +sha512sums=('9528274c77f874ea75652f08e64bb76ecdaa6c2111900809bc3ce58b4740d8b313bf41283cfb41b525a7d2df7d86cb7d9415b0abb2ce58a209df9d54e2ab0f75') diff --git a/extra/ncftp/PKGBUILD b/extra/ncftp/PKGBUILD index 3ba6a9d62..981d68720 100644 --- a/extra/ncftp/PKGBUILD +++ b/extra/ncftp/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 206931 2014-03-06 11:24:46Z andrea $ +# $Id: PKGBUILD 207130 2014-03-07 09:21:28Z andrea $ # Maintainer: # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Paul Mattal <paul@archlinux.org> @@ -6,7 +6,7 @@ pkgname=ncftp pkgver=3.2.5 -pkgrel=3 +pkgrel=4 pkgdesc="A set of free application programs implementing FTP" url="http://www.ncftp.com/" arch=('i686' 'x86_64') @@ -24,6 +24,9 @@ prepare() { } build() { + # FS#39211 + unset CPPFLAGS + cd ${pkgname}-${pkgver} CPP=/usr/bin/cpp ./configure --prefix=/usr \ --sysconfdir=/etc diff --git a/extra/ruby/0001-Fix-installing-gem-from-file-without-dependencies.patch b/extra/ruby/0001-Fix-installing-gem-from-file-without-dependencies.patch deleted file mode 100644 index 8fefb275d..000000000 --- a/extra/ruby/0001-Fix-installing-gem-from-file-without-dependencies.patch +++ /dev/null @@ -1,84 +0,0 @@ -From f5bbf838c8b13369a61c6756355305388df5824f Mon Sep 17 00:00:00 2001 -From: Tim Moore <tmoore@incrementalism.net> -Date: Tue, 31 Dec 2013 17:39:45 +1100 -Subject: [PATCH] Fix installing gem from file without dependencies. - -Commit 9437ccc fixed the ability to install remote gems that was accidentally -broken by d97fba1, but in the process accidentally broke installing from local -files. - -This also changes the order to check for local first, to avoid unnecessary -network requests in the case where the gem is local. - -Closes #760. ---- - lib/rubygems/commands/install_command.rb | 20 ++++++++++++-------- - test/rubygems/test_gem_commands_install_command.rb | 14 ++++++++++++++ - 2 files changed, 26 insertions(+), 8 deletions(-) - -diff --git a/lib/rubygems/commands/install_command.rb b/lib/rubygems/commands/install_command.rb -index 4485eb1..8219eef 100644 ---- a/lib/rubygems/commands/install_command.rb -+++ b/lib/rubygems/commands/install_command.rb -@@ -228,7 +228,18 @@ to write the specification by hand. For example: - def install_gem_without_dependencies name, req # :nodoc: - gem = nil - -- if remote? then -+ if local? then -+ if name =~ /\.gem$/ and File.file? name then -+ source = Gem::Source::SpecificFile.new name -+ spec = source.spec -+ else -+ source = Gem::Source::Local.new -+ spec = source.find_gem name, req -+ end -+ gem = source.download spec if spec -+ end -+ -+ if remote? and not gem then - dependency = Gem::Dependency.new name, req - dependency.prerelease = options[:prerelease] - -@@ -236,13 +247,6 @@ to write the specification by hand. For example: - gem = fetcher.download_to_cache dependency - end - -- if local? and not gem then -- source = Gem::Source::Local.new -- spec = source.find_gem name, req -- -- gem = source.download spec -- end -- - inst = Gem::Installer.new gem, options - inst.install - -diff --git a/test/rubygems/test_gem_commands_install_command.rb b/test/rubygems/test_gem_commands_install_command.rb -index 76ea6b4..a5917c0 100644 ---- a/test/rubygems/test_gem_commands_install_command.rb -+++ b/test/rubygems/test_gem_commands_install_command.rb -@@ -560,6 +560,20 @@ ERROR: Possible alternatives: non_existent_with_hint - assert_equal %w[a-2], @cmd.installed_specs.map { |spec| spec.full_name } - end - -+ def test_install_gem_ignore_dependencies_specific_file -+ spec = quick_spec 'a', 2 -+ -+ util_build_gem spec -+ -+ FileUtils.mv spec.cache_file, @tempdir -+ -+ @cmd.options[:ignore_dependencies] = true -+ -+ @cmd.install_gem File.join(@tempdir, spec.file_name), nil -+ -+ assert_equal %w[a-2], @cmd.installed_specs.map { |spec| spec.full_name } -+ end -+ - def test_parses_requirement_from_gemname - spec_fetcher do |fetcher| - fetcher.gem 'a', 2 --- -1.8.5.2 - diff --git a/extra/ruby/0001-Fix-undeclared-identifier-error-by-using-the-actual-.patch b/extra/ruby/0001-Fix-undeclared-identifier-error-by-using-the-actual-.patch new file mode 100644 index 000000000..fed9fd0d8 --- /dev/null +++ b/extra/ruby/0001-Fix-undeclared-identifier-error-by-using-the-actual-.patch @@ -0,0 +1,26 @@ +From 4c4da3fc650a3595ecc06f49072f1ffae07db706 Mon Sep 17 00:00:00 2001 +From: Thomas Dziedzic <gostrc@gmail.com> +Date: Sat, 1 Mar 2014 21:41:28 -0800 +Subject: [PATCH] Fix undeclared identifier error by using the actual type of + rl_pre_input_hook + +--- + ext/readline/readline.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ext/readline/readline.c b/ext/readline/readline.c +index 659adb9..7bc0eed 100644 +--- a/ext/readline/readline.c ++++ b/ext/readline/readline.c +@@ -1974,7 +1974,7 @@ Init_readline() + + rl_attempted_completion_function = readline_attempted_completion_function; + #if defined(HAVE_RL_PRE_INPUT_HOOK) +- rl_pre_input_hook = (Function *)readline_pre_input_hook; ++ rl_pre_input_hook = (rl_hook_func_t *)readline_pre_input_hook; + #endif + #ifdef HAVE_RL_CATCH_SIGNALS + rl_catch_signals = 0; +-- +1.9.0 + diff --git a/extra/ruby/PKGBUILD b/extra/ruby/PKGBUILD index aa7ded71a..d2885050b 100644 --- a/extra/ruby/PKGBUILD +++ b/extra/ruby/PKGBUILD @@ -4,8 +4,8 @@ # Contributor: Jeramy Rutley <jrutley@gmail.com> pkgname=('ruby' 'ruby-docs') -pkgver=2.1.0 -pkgrel=2 +pkgver=2.1.1 +pkgrel=1 arch=('i686' 'x86_64') url='http://www.ruby-lang.org/en/' license=('BSD' 'custom') @@ -14,18 +14,19 @@ license=('BSD' 'custom') # wait for upstream to start supporting tk 8.6 makedepends=('gdbm' 'openssl' 'libffi' 'doxygen' 'graphviz' 'libyaml') # 'tk' options=('!emptydirs' '!makeflags' 'staticlibs') -source=("http://cache.ruby-lang.org/pub/ruby/ruby-${pkgver}.tar.bz2" +source=("http://cache.ruby-lang.org/pub/ruby/${pkgver:0:3}/ruby-${pkgver}.tar.bz2" 'gemrc' - '0001-Fix-installing-gem-from-file-without-dependencies.patch') -md5sums=('1546eeb763ac7754365664be763a1e8f' + '0001-Fix-undeclared-identifier-error-by-using-the-actual-.patch') +md5sums=('53edc33b2f590ecdd9f6a344b9d92d0d' '6fb8e7a09955e0f64be3158fb4a27e7a' - '61a1507f260866805fc6451c14733b25') + '0496e962e0ce11507b7577a8eb93af58') build() { cd ruby-${pkgver} - # fixes https://github.com/rubygems/rubygems/issues/760 - patch -Np1 -i ${srcdir}/0001-Fix-installing-gem-from-file-without-dependencies.patch + # readline 6.3 doesn't define Function anymore + # https://bugs.ruby-lang.org/issues/9578 + patch -Np1 -i ${srcdir}/0001-Fix-undeclared-identifier-error-by-using-the-actual-.patch PKG_CONFIG=/usr/bin/pkg-config ./configure \ --prefix=/usr \ diff --git a/extra/xterm/PKGBUILD b/extra/xterm/PKGBUILD index 0bb0c157b..9323bcac6 100644 --- a/extra/xterm/PKGBUILD +++ b/extra/xterm/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 206667 2014-03-04 15:17:09Z andyrtr $ +# $Id: PKGBUILD 207149 2014-03-07 19:55:00Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Alexander Baldeck <alexander@archlinux.org> pkgname=xterm -pkgver=302 +pkgver=303 pkgrel=1 pkgdesc="X Terminal Emulator" arch=('i686' 'x86_64') @@ -12,7 +12,7 @@ license=('custom') depends=('libxft' 'libxaw' 'ncurses' 'xorg-luit' 'xbitmaps' 'libutempter') source=(ftp://invisible-island.net/${pkgname}/${pkgname}-${pkgver}.tgz{,.asc} LICENSE) -md5sums=('494e2f3988d22fe7266410c862042250' +md5sums=('48f6d49b2b6b6933d501d767cbed9254' 'SKIP' '10ecc3f8ee91e3189863a172f68282d2') diff --git a/libre/calibre-libre/PKGBUILD b/libre/calibre-libre/PKGBUILD index 0a1502d15..c06c8af0b 100644 --- a/libre/calibre-libre/PKGBUILD +++ b/libre/calibre-libre/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 106341 2014-02-28 10:31:18Z jelle $ +# $Id: PKGBUILD 106748 2014-03-07 08:31:10Z jelle $ # Maintainer: jelle van der Waa <jelle@vdwaa.nl> # Maintainer: Daniel Wallace <danielwallace at gtmanfred dot com> # Contributor: Giovanni Scafora <giovanni@archlinux.org> @@ -9,7 +9,7 @@ _pkgname=calibre pkgname=calibre-libre -pkgver=1.26.0 +pkgver=1.27.0 pkgrel=1 pkgdesc="Ebook management application, with unar support" arch=('i686' 'x86_64' 'mips64el') @@ -30,7 +30,7 @@ install=calibre.install source=("http://download.calibre-ebook.com/${pkgver}/calibre-${pkgver}.tar.xz" 'desktop_integration.patch' 'calibre-mount-helper') -md5sums=('530485d30087c569c604df1c7e2b3d3a' +md5sums=('d30d39d8a63cb77c8fe04b99ef092dd9' 'ece36dfd737fa4a346f0a0e59395e949' '675cd87d41342119827ef706055491e7') |