summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorNicolás Reynolds <fauno@endefensadelsl.org>2014-06-06 04:00:43 +0000
committerNicolás Reynolds <fauno@endefensadelsl.org>2014-06-06 04:00:43 +0000
commit6b55be9272c15e1858a1a7236482298f677c1a3b (patch)
treea00e7300c358b2a4b16184192c53b8ce555a2412 /core
parent8faa42b28f39ace5fc2c3ec8a054fa0a5b246eab (diff)
Fri Jun 6 03:57:24 UTC 2014
Diffstat (limited to 'core')
-rw-r--r--core/btrfs-progs/01-fix-manpages.patch13
-rw-r--r--core/btrfs-progs/PKGBUILD22
-rw-r--r--core/gnupg/PKGBUILD8
-rw-r--r--core/openssl/PKGBUILD11
-rw-r--r--core/openssl/openssl-1.0.1f-perl-5.18.patch356
-rw-r--r--core/perl/PKGBUILD14
-rwxr-xr-xcore/perl/generate-rebuild-list.sh4
-rw-r--r--core/systemd/0001-backlight-do-nothing-if-max_brightness-is-0.patch108
-rw-r--r--core/systemd/0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch26
-rw-r--r--core/systemd/0002-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch38
-rw-r--r--core/systemd/0003-man-reword-Persistent-description.patch50
-rw-r--r--core/systemd/0004-core-Make-sure-a-stamp-file-exists-for-all-Persisten.patch85
-rw-r--r--core/systemd/PKGBUILD37
-rw-r--r--core/systemd/systemd.install97
14 files changed, 135 insertions, 734 deletions
diff --git a/core/btrfs-progs/01-fix-manpages.patch b/core/btrfs-progs/01-fix-manpages.patch
new file mode 100644
index 000000000..6fb9ce6ed
--- /dev/null
+++ b/core/btrfs-progs/01-fix-manpages.patch
@@ -0,0 +1,13 @@
+diff --git a/Documentation/Makefile b/Documentation/Makefile
+index e22f5bca0ff2..e3ad34133832 100644
+--- a/Documentation/Makefile
++++ b/Documentation/Makefile
+@@ -74,7 +74,7 @@ install: install-man
+ install-man: man
+ $(INSTALL) -d -m 755 $(DESTDIR)$(man8dir)
+ $(INSTALL) -m 644 $(GZ_MAN8) $(DESTDIR)$(man8dir)
+- $(LNS) btrfs-check.8.gz $(DESTDIR)$(man8dir)
++ $(LNS) btrfs-check.8.gz $(DESTDIR)$(man8dir)/btrfsck.8.gz
+
+ clean:
+ $(RM) *.xml *.xml+ *.8 *.8.gz
diff --git a/core/btrfs-progs/PKGBUILD b/core/btrfs-progs/PKGBUILD
index 16443376e..0889fb819 100644
--- a/core/btrfs-progs/PKGBUILD
+++ b/core/btrfs-progs/PKGBUILD
@@ -1,15 +1,15 @@
-# $Id: PKGBUILD 212061 2014-05-05 21:10:41Z seblu $
+# $Id: PKGBUILD 214301 2014-06-05 12:52:24Z seblu $
# Maintainer: Sébastien "Seblu" Luttringer
# Contributor: Tom Gundersen <teg@jklm.no>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=btrfs-progs
-pkgver=3.14.1
-pkgrel=1
+pkgver=3.14.2
+pkgrel=2
pkgdesc='Btrfs filesystem utilities'
arch=('i686' 'x86_64')
depends=('glibc' 'e2fsprogs' 'lzo2' 'zlib')
-makedepends=('git')
+makedepends=('git' 'asciidoc' 'xmlto')
url='http://btrfs.wiki.kernel.org/'
replaces=('btrfs-progs-unstable')
conflicts=('btrfs-progs-unstable')
@@ -17,12 +17,18 @@ provides=('btrfs-progs-unstable')
license=('GPL2')
source=("git://git.kernel.org/pub/scm/linux/kernel/git/mason/${pkgname}.git#tag=v${pkgver}"
'initcpio-install-btrfs'
- 'initcpio-hook-btrfs')
+ 'initcpio-hook-btrfs'
+ '01-fix-manpages.patch')
install=btrfs-progs.install
options=(!staticlibs)
md5sums=('SKIP'
'7241ba3a4286d08da0d50b7176941112'
- 'b09688a915a0ec8f40e2f5aacbabc9ad')
+ 'b09688a915a0ec8f40e2f5aacbabc9ad'
+ 'db22d0460539f4696b3d7301dedee17c')
+
+prepare() {
+ patch -p 1 -d $pkgname < 01-fix-manpages.patch
+}
build() {
cd $pkgname
@@ -36,10 +42,6 @@ package() {
make prefix="$pkgdir"/usr install
install -Dm755 btrfs-select-super "$pkgdir"/usr/bin
- # fix manpage
- install -d "$pkgdir"/usr/share/
- mv "$pkgdir"/usr/man "$pkgdir"/usr/share/man
-
# install mkinitcpio hooks
cd "$srcdir"
install -Dm644 initcpio-install-btrfs "$pkgdir/usr/lib/initcpio/install/btrfs"
diff --git a/core/gnupg/PKGBUILD b/core/gnupg/PKGBUILD
index c045ebc26..8bcda0399 100644
--- a/core/gnupg/PKGBUILD
+++ b/core/gnupg/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 203564 2014-01-13 17:11:40Z andyrtr $
+# $Id: PKGBUILD 214306 2014-06-05 17:24:35Z bisson $
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Judd Vinet <jvinet@zeroflux.org>
pkgname=gnupg
-pkgver=2.0.22
-pkgrel=2
+pkgver=2.0.23
+pkgrel=1
pkgdesc='Complete and free implementation of the OpenPGP standard'
url='http://www.gnupg.org/'
license=('GPL')
@@ -18,7 +18,7 @@ makedepends=('curl' 'libldap' 'libusb-compat')
depends=('bzip2' 'libksba' 'libgcrypt' 'pth' 'libassuan' 'readline' 'pinentry' 'dirmngr')
source=("ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2"{,.sig}
'protect-tool-env.patch')
-sha1sums=('9ba9ee288e9bf813e0f1e25cbe06b58d3072d8b8' 'SKIP'
+sha1sums=('c90e47ab95a40dd070fd75faef0a05c7b679553b' 'SKIP'
'2ec97ba55ae47ff0d63bc813b8c64cb79cef11db')
install=install
diff --git a/core/openssl/PKGBUILD b/core/openssl/PKGBUILD
index 5a7ab62e5..791ceaece 100644
--- a/core/openssl/PKGBUILD
+++ b/core/openssl/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 209889 2014-04-08 03:24:09Z pierre $
+# $Id: PKGBUILD 214302 2014-06-05 12:54:53Z seblu $
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
pkgname=openssl
-_ver=1.0.1g
+_ver=1.0.1h
# use a pacman compatible version scheme
pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}}
#pkgver=$_ver
@@ -18,9 +18,8 @@ backup=('etc/ssl/openssl.cnf')
source=("https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz"
"https://www.openssl.org/source/${pkgname}-${_ver}.tar.gz.asc"
'no-rpath.patch'
- 'ca-dir.patch'
- 'openssl-1.0.1f-perl-5.18.patch')
-md5sums=('de62b43dfcd858e66a74bee1c834e959'
+ 'ca-dir.patch')
+md5sums=('8d6d684a9430d5cc98a62a5d8fbda8cf'
'SKIP'
'dc78d3d06baffc16217519242ce92478'
'3bf51be3a1bbd262be46dc619f92aa90'
@@ -33,8 +32,6 @@ prepare() {
patch -p0 -i $srcdir/no-rpath.patch
# set ca dir to /etc/ssl by default
patch -p0 -i $srcdir/ca-dir.patch
-
- patch -p1 -i $srcdir/openssl-1.0.1f-perl-5.18.patch
}
build() {
diff --git a/core/openssl/openssl-1.0.1f-perl-5.18.patch b/core/openssl/openssl-1.0.1f-perl-5.18.patch
deleted file mode 100644
index c66209637..000000000
--- a/core/openssl/openssl-1.0.1f-perl-5.18.patch
+++ /dev/null
@@ -1,356 +0,0 @@
-Forward-ported from openssl-1.0.1e-perl-5.18.patch
-Fixes install with perl-5.18.
-
-https://bugs.gentoo.org/show_bug.cgi?id=497286
-
-Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
-
---- openssl-1.0.1f/doc/apps/cms.pod
-+++ openssl-1.0.1f/doc/apps/cms.pod
-@@ -450,28 +450,28 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- the operation was completely successfully.
-
--=item 1
-+=item C<1>
-
- an error occurred parsing the command options.
-
--=item 2
-+=item C<2>
-
- one of the input files could not be read.
-
--=item 3
-+=item C<3>
-
- an error occurred creating the CMS file or when reading the MIME
- message.
-
--=item 4
-+=item C<4>
-
- an error occurred decrypting or verifying the message.
-
--=item 5
-+=item C<5>
-
- the message was verified correctly but an error occurred writing out
- the signers certificates.
---- openssl-1.0.1f/doc/apps/smime.pod
-+++ openssl-1.0.1f/doc/apps/smime.pod
-@@ -308,28 +308,28 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- the operation was completely successfully.
-
--=item 1
-+=item C<1>
-
- an error occurred parsing the command options.
-
--=item 2
-+=item C<2>
-
- one of the input files could not be read.
-
--=item 3
-+=item C<3>
-
- an error occurred creating the PKCS#7 file or when reading the MIME
- message.
-
--=item 4
-+=item C<4>
-
- an error occurred decrypting or verifying the message.
-
--=item 5
-+=item C<5>
-
- the message was verified correctly but an error occurred writing out
- the signers certificates.
---- openssl-1.0.1f/doc/ssl/SSL_accept.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_accept.pod
-@@ -44,13 +44,13 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The TLS/SSL handshake was not successful but was shut down controlled and
- by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the
- return value B<ret> to find out the reason.
-
--=item 1
-+=item C<1>
-
- The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been
- established.
---- openssl-1.0.1f/doc/ssl/SSL_clear.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_clear.pod
-@@ -56,12 +56,12 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The SSL_clear() operation could not be performed. Check the error stack to
- find out the reason.
-
--=item 1
-+=item C<1>
-
- The SSL_clear() operation was successful.
-
---- openssl-1.0.1f/doc/ssl/SSL_COMP_add_compression_method.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_COMP_add_compression_method.pod
-@@ -53,11 +53,11 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The operation succeeded.
-
--=item 1
-+=item C<1>
-
- The operation failed. Check the error queue to find out the reason.
-
---- openssl-1.0.1f/doc/ssl/SSL_connect.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_connect.pod
-@@ -41,13 +41,13 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The TLS/SSL handshake was not successful but was shut down controlled and
- by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the
- return value B<ret> to find out the reason.
-
--=item 1
-+=item C<1>
-
- The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been
- established.
---- openssl-1.0.1f/doc/ssl/SSL_CTX_add_session.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_CTX_add_session.pod
-@@ -52,13 +52,13 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The operation failed. In case of the add operation, it was tried to add
- the same (identical) session twice. In case of the remove operation, the
- session was not found in the cache.
-
--=item 1
-+=item C<1>
-
- The operation succeeded.
-
---- openssl-1.0.1f/doc/ssl/SSL_CTX_load_verify_locations.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_CTX_load_verify_locations.pod
-@@ -100,13 +100,13 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The operation failed because B<CAfile> and B<CApath> are NULL or the
- processing at one of the locations specified failed. Check the error
- stack to find out the reason.
-
--=item 1
-+=item C<1>
-
- The operation succeeded.
-
---- openssl-1.0.1f/doc/ssl/SSL_CTX_set_client_CA_list.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_CTX_set_client_CA_list.pod
-@@ -66,13 +66,13 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- A failure while manipulating the STACK_OF(X509_NAME) object occurred or
- the X509_NAME could not be extracted from B<cacert>. Check the error stack
- to find out the reason.
-
--=item 1
-+=item C<1>
-
- The operation succeeded.
-
---- openssl-1.0.1f/doc/ssl/SSL_CTX_set_session_id_context.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_CTX_set_session_id_context.pod
-@@ -64,13 +64,13 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The length B<sid_ctx_len> of the session id context B<sid_ctx> exceeded
- the maximum allowed length of B<SSL_MAX_SSL_SESSION_ID_LENGTH>. The error
- is logged to the error stack.
-
--=item 1
-+=item C<1>
-
- The operation succeeded.
-
---- openssl-1.0.1f/doc/ssl/SSL_CTX_set_ssl_version.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_CTX_set_ssl_version.pod
-@@ -42,11 +42,11 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The new choice failed, check the error stack to find out the reason.
-
--=item 1
-+=item C<1>
-
- The operation succeeded.
-
---- openssl-1.0.1f/doc/ssl/SSL_CTX_use_psk_identity_hint.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_CTX_use_psk_identity_hint.pod
-@@ -96,7 +96,7 @@
- connection will fail with decryption_error before it will be finished
- completely.
-
--=item 0
-+=item C<0>
-
- PSK identity was not found. An "unknown_psk_identity" alert message
- will be sent and the connection setup fails.
---- openssl-1.0.1f/doc/ssl/SSL_do_handshake.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_do_handshake.pod
-@@ -45,13 +45,13 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The TLS/SSL handshake was not successful but was shut down controlled and
- by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the
- return value B<ret> to find out the reason.
-
--=item 1
-+=item C<1>
-
- The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been
- established.
---- openssl-1.0.1f/doc/ssl/SSL_read.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_read.pod
-@@ -86,7 +86,7 @@
- The read operation was successful; the return value is the number of
- bytes actually read from the TLS/SSL connection.
-
--=item 0
-+=item C<0>
-
- The read operation was not successful. The reason may either be a clean
- shutdown due to a "close notify" alert sent by the peer (in which case
---- openssl-1.0.1f/doc/ssl/SSL_session_reused.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_session_reused.pod
-@@ -27,11 +27,11 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- A new session was negotiated.
-
--=item 1
-+=item C<1>
-
- A session was reused.
-
---- openssl-1.0.1f/doc/ssl/SSL_set_fd.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_set_fd.pod
-@@ -35,11 +35,11 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The operation failed. Check the error stack to find out why.
-
--=item 1
-+=item C<1>
-
- The operation succeeded.
-
---- openssl-1.0.1f/doc/ssl/SSL_set_session.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_set_session.pod
-@@ -37,11 +37,11 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The operation failed; check the error stack to find out the reason.
-
--=item 1
-+=item C<1>
-
- The operation succeeded.
-
---- openssl-1.0.1f/doc/ssl/SSL_shutdown.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_shutdown.pod
-@@ -92,14 +92,14 @@
-
- =over 4
-
--=item 0
-+=item C<0>
-
- The shutdown is not yet finished. Call SSL_shutdown() for a second time,
- if a bidirectional shutdown shall be performed.
- The output of L<SSL_get_error(3)|SSL_get_error(3)> may be misleading, as an
- erroneous SSL_ERROR_SYSCALL may be flagged even though no error occurred.
-
--=item 1
-+=item C<1>
-
- The shutdown was successfully completed. The "close notify" alert was sent
- and the peer's "close notify" alert was received.
---- openssl-1.0.1f/doc/ssl/SSL_write.pod
-+++ openssl-1.0.1f/doc/ssl/SSL_write.pod
-@@ -79,7 +79,7 @@
- The write operation was successful, the return value is the number of
- bytes actually written to the TLS/SSL connection.
-
--=item 0
-+=item C<0>
-
- The write operation was not successful. Probably the underlying connection
- was closed. Call SSL_get_error() with the return value B<ret> to find out,
diff --git a/core/perl/PKGBUILD b/core/perl/PKGBUILD
index 2b51192a4..a44ae66dc 100644
--- a/core/perl/PKGBUILD
+++ b/core/perl/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 204014 2014-01-14 08:12:09Z bluewind $
+# $Id: PKGBUILD 214187 2014-06-04 13:50:35Z bluewind $
# Maintainer: Florian Pritz <bluewind@xinu.at>
# Contributor: Angel Velasquez <angvp@archlinux.org>
# Contributor: kevin <kevin.archlinux.org>
@@ -6,7 +6,7 @@
# Contributor: francois <francois.archlinux.org>
pkgname=perl
-pkgver=5.18.2
+pkgver=5.20.0
pkgrel=2
pkgdesc="A highly capable, feature-rich programming language"
arch=(i686 x86_64)
@@ -19,7 +19,7 @@ source=(http://www.cpan.org/src/5.0/perl-${pkgver}.tar.bz2
perlbin.csh
provides.pl)
options=('makeflags' '!purge')
-md5sums=('d549b16ee4e9210988da39193a9389c1'
+md5sums=('20cbecd4e9e880ee7a50a136c8b1484e'
'5ed2542fdb9a60682f215bd33701e61a'
'1f0cbbee783e8a6d32f01be5118e0d5e'
'999c3eea6464860704abbb055a0f0896')
@@ -63,7 +63,7 @@ build() {
check() {
cd ${srcdir}/${pkgname}-${pkgver}
- TEST_JOBS=$(echo $MAKEFLAGS | sed 's/.*-j\([0-9][0-9]*\).*/\1/') make test_harness || true
+ TEST_JOBS=$(echo $MAKEFLAGS | sed 's/.*-j\([0-9][0-9]*\).*/\1/') make test_harness
# make test
}
@@ -90,12 +90,6 @@ package() {
-e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \
-i ${pkgdir}/usr/share/perl5/core_perl/CPAN/FirstTime.pm
- ### CPANPLUS Settings ###
- # Set CPANPLUS default config to use the site directories.
- sed -e "/{'makemakerflags'}/ s/'';/'INSTALLDIRS=site';/" \
- -e "/{'buildflags'}/ s/'';/'installdirs=site';/" \
- -i ${pkgdir}/usr/share/perl5/core_perl/CPANPLUS/Config.pm
-
# Profile script to set paths to perl scripts.
install -D -m755 ${srcdir}/perlbin.sh \
${pkgdir}/etc/profile.d/perlbin.sh
diff --git a/core/perl/generate-rebuild-list.sh b/core/perl/generate-rebuild-list.sh
new file mode 100755
index 000000000..1e8f8a5d9
--- /dev/null
+++ b/core/perl/generate-rebuild-list.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+pkgfile -r "^/usr/lib/perl5/vendor_perl/auto/.*\.so$" | sed 's#^.*/##' | sort -u
+ssh celestia PATH=/usr/local/bin:\$PATH\; /home/bluewind/bin/sogrep-all libperl.so
diff --git a/core/systemd/0001-backlight-do-nothing-if-max_brightness-is-0.patch b/core/systemd/0001-backlight-do-nothing-if-max_brightness-is-0.patch
deleted file mode 100644
index c7525066e..000000000
--- a/core/systemd/0001-backlight-do-nothing-if-max_brightness-is-0.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From eab2144e7ef737e532a241bcfae432395ae8f22d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Thomas=20B=C3=A4chler?= <thomas@archlinux.org>
-Date: Thu, 27 Mar 2014 23:41:59 +0100
-Subject: [PATCH 1/4] backlight: do nothing if max_brightness is 0
-
-On virtually any newer Asus mainboard, the eeepc-wmi driver is loaded.
-It exposes a backlight device despite the lack of any physical backlight
-devices. This fake backlight device has max_brightness set to 0. Since
-the introduction of the clamp_brightness function, systemd-backlight
-tries to write '1' to brightness and fails.
-
-This patch changes systemd-backlight to exit gracefully when
-max_brightness is 0 before performing any action. This affects
-both the load and save actions.
----
- src/backlight/backlight.c | 44 ++++++++++++++++++++++++++++++--------------
- 1 file changed, 30 insertions(+), 14 deletions(-)
-
-diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c
-index abf8bcf..ce0385b 100644
---- a/src/backlight/backlight.c
-+++ b/src/backlight/backlight.c
-@@ -192,30 +192,37 @@ static bool validate_device(struct udev *udev, struct udev_device *device) {
- return true;
- }
-
--/* Some systems turn the backlight all the way off at the lowest levels.
-- * clamp_brightness clamps the saved brightness to at least 1 or 5% of
-- * max_brightness. This avoids preserving an unreadably dim screen, which
-- * would otherwise force the user to disable state restoration. */
--static void clamp_brightness(struct udev_device *device, char **value) {
-+static unsigned get_max_brightness(struct udev_device *device) {
- int r;
- const char *max_brightness_str;
-- unsigned brightness, max_brightness, new_brightness;
-+ unsigned max_brightness;
-
- max_brightness_str = udev_device_get_sysattr_value(device, "max_brightness");
- if (!max_brightness_str) {
-- log_warning("Failed to read max_brightness attribute; not checking saved brightness");
-- return;
-+ log_warning("Failed to read max_brightness attribute");
-+ return 0;
- }
-
-- r = safe_atou(*value, &brightness);
-+ r = safe_atou(max_brightness_str, &max_brightness);
- if (r < 0) {
-- log_warning("Failed to parse brightness \"%s\": %s", *value, strerror(-r));
-- return;
-+ log_warning("Failed to parse max_brightness \"%s\": %s", max_brightness_str, strerror(-r));
-+ return 0;
- }
-
-- r = safe_atou(max_brightness_str, &max_brightness);
-+ return max_brightness;
-+}
-+
-+/* Some systems turn the backlight all the way off at the lowest levels.
-+ * clamp_brightness clamps the saved brightness to at least 1 or 5% of
-+ * max_brightness. This avoids preserving an unreadably dim screen, which
-+ * would otherwise force the user to disable state restoration. */
-+static void clamp_brightness(struct udev_device *device, char **value, unsigned max_brightness) {
-+ int r;
-+ unsigned brightness, new_brightness;
-+
-+ r = safe_atou(*value, &brightness);
- if (r < 0) {
-- log_warning("Failed to parse max_brightness \"%s\": %s", max_brightness_str, strerror(-r));
-+ log_warning("Failed to parse brightness \"%s\": %s", *value, strerror(-r));
- return;
- }
-
-@@ -239,6 +246,7 @@ int main(int argc, char *argv[]) {
- _cleanup_udev_device_unref_ struct udev_device *device = NULL;
- _cleanup_free_ char *saved = NULL, *ss = NULL, *escaped_ss = NULL, *escaped_sysname = NULL, *escaped_path_id = NULL;
- const char *sysname, *path_id;
-+ unsigned max_brightness;
- int r;
-
- if (argc != 3) {
-@@ -294,6 +302,14 @@ int main(int argc, char *argv[]) {
- return EXIT_FAILURE;
- }
-
-+ /* If max_brightness is 0, then there is no actual backlight
-+ * device. This happens on desktops with Asus mainboards
-+ * that load the eeepc-wmi module.
-+ */
-+ max_brightness = get_max_brightness(device);
-+ if (max_brightness == 0)
-+ return EXIT_SUCCESS;
-+
- escaped_ss = cescape(ss);
- if (!escaped_ss) {
- log_oom();
-@@ -348,7 +364,7 @@ int main(int argc, char *argv[]) {
- return EXIT_FAILURE;
- }
-
-- clamp_brightness(device, &value);
-+ clamp_brightness(device, &value, max_brightness);
-
- r = udev_device_set_sysattr_value(device, "brightness", value);
- if (r < 0) {
---
-1.9.2
-
diff --git a/core/systemd/0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch b/core/systemd/0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch
new file mode 100644
index 000000000..f5c55e249
--- /dev/null
+++ b/core/systemd/0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch
@@ -0,0 +1,26 @@
+From d8e40d62ab871a87fde421c4b246bb45bc3cbe2d Mon Sep 17 00:00:00 2001
+From: Jonathan Liu <net147@gmail.com>
+Date: Thu, 29 May 2014 01:17:25 +1000
+Subject: [PATCH] units: use KillMode=mixed for systemd-nspawn@.service
+
+This causes the container to shut down cleanly when the service is
+stopped.
+---
+ units/systemd-nspawn@.service.in | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/units/systemd-nspawn@.service.in b/units/systemd-nspawn@.service.in
+index ff36e90..e373628 100644
+--- a/units/systemd-nspawn@.service.in
++++ b/units/systemd-nspawn@.service.in
+@@ -11,6 +11,7 @@ Documentation=man:systemd-nspawn(1)
+
+ [Service]
+ ExecStart=@bindir@/systemd-nspawn --quiet --keep-unit --boot --link-journal=guest --directory=/var/lib/container/%i
++KillMode=mixed
+ Type=notify
+
+ [Install]
+--
+1.9.3
+
diff --git a/core/systemd/0002-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch b/core/systemd/0002-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch
deleted file mode 100644
index c99756691..000000000
--- a/core/systemd/0002-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From cad77d38e7e0544f719812af2bf5dc97d71a6f02 Mon Sep 17 00:00:00 2001
-From: Kay Sievers <kay@vrfy.org>
-Date: Sat, 5 Apr 2014 13:59:01 -0400
-Subject: [PATCH 2/4] reduce the amount of messages logged to /dev/kmsg when
- "debug" is specified
-
----
- src/core/main.c | 9 ++-------
- 1 file changed, 2 insertions(+), 7 deletions(-)
-
-diff --git a/src/core/main.c b/src/core/main.c
-index 41605ee..feabead 100644
---- a/src/core/main.c
-+++ b/src/core/main.c
-@@ -412,18 +412,13 @@ static int parse_proc_cmdline_item(const char *key, const char *value) {
- }
-
- } else if (streq(key, "quiet") && !value) {
--
- if (arg_show_status == _SHOW_STATUS_UNSET)
- arg_show_status = SHOW_STATUS_AUTO;
-
- } else if (streq(key, "debug") && !value) {
--
-- /* Log to kmsg, the journal socket will fill up before the
-- * journal is started and tools running during that time
-- * will block with every log message for for 60 seconds,
-- * before they give up. */
- log_set_max_level(LOG_DEBUG);
-- log_set_target(detect_container(NULL) > 0 ? LOG_TARGET_CONSOLE : LOG_TARGET_KMSG);
-+ if (detect_container(NULL) > 0)
-+ log_set_target(LOG_TARGET_CONSOLE);
-
- } else if (!in_initrd() && !value) {
- unsigned i;
---
-1.9.2
-
diff --git a/core/systemd/0003-man-reword-Persistent-description.patch b/core/systemd/0003-man-reword-Persistent-description.patch
deleted file mode 100644
index feb394da8..000000000
--- a/core/systemd/0003-man-reword-Persistent-description.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 1d83dac5adba9e1db5b058436e23ba7ac403d652 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
-Date: Mon, 7 Apr 2014 20:58:37 -0400
-Subject: [PATCH 3/4] man: reword Persistent= description
-
-I think it is easier to grok this way.
----
- man/systemd.timer.xml | 26 ++++++++++++--------------
- 1 file changed, 12 insertions(+), 14 deletions(-)
-
-diff --git a/man/systemd.timer.xml b/man/systemd.timer.xml
-index 58eaab0..44f55e0 100644
---- a/man/systemd.timer.xml
-+++ b/man/systemd.timer.xml
-@@ -255,20 +255,18 @@
- <term><varname>Persistent=</varname></term>
-
- <listitem><para>Takes a boolean
-- argument. If true the service unit is
-- immediately triggered when the timer
-- unit is activated and the timer
-- elapsed at least once since the last
-- time the service unit has been
-- triggered by the timer unit. The time
-- when the service unit was last
-- triggered is stored on disk. This is
-- useful to catch up for missed timers
-- when a machine is shutdown temporarily
-- and then is powered up again. Note
-- that this setting only has an effect
-- on timers configured with
-- <varname>OnCalendar=</varname>.
-+ argument. If true, the time when the
-+ service unit was last triggered is
-+ stored on disk. When the timer is
-+ activated, the service unit is
-+ triggered immediately if it would have
-+ been triggered at least once during
-+ the time when the timer was inactive.
-+ This is useful to catch up on missed
-+ runs of the service when the machine
-+ was off. Note that this setting only
-+ has an effect on timers configured
-+ with <varname>OnCalendar=</varname>.
- </para></listitem>
- </varlistentry>
-
---
-1.9.2
-
diff --git a/core/systemd/0004-core-Make-sure-a-stamp-file-exists-for-all-Persisten.patch b/core/systemd/0004-core-Make-sure-a-stamp-file-exists-for-all-Persisten.patch
deleted file mode 100644
index 741176e62..000000000
--- a/core/systemd/0004-core-Make-sure-a-stamp-file-exists-for-all-Persisten.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From 7cee0cf1ecc18ea8a016bef48c79f7ea4fd4195a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Thomas=20B=C3=A4chler?= <thomas@archlinux.org>
-Date: Wed, 2 Apr 2014 20:18:44 +0200
-Subject: [PATCH 4/4] core: Make sure a stamp file exists for all
- Persistent=true timers
-
-If a persistent timer has no stamp file yet, it behaves just like a normal
-timer until it runs for the first time. If the system is always shut down
-while the timer is supposed to run, a stamp file is never created and
-Peristent=true has no effect.
-
-This patch fixes this by creating a stamp file with the current time
-when the timer is first started.
----
- src/core/timer.c | 40 ++++++++++++++++++++++++----------------
- 1 file changed, 24 insertions(+), 16 deletions(-)
-
-diff --git a/src/core/timer.c b/src/core/timer.c
-index 6c85304..b0a9023 100644
---- a/src/core/timer.c
-+++ b/src/core/timer.c
-@@ -111,6 +111,23 @@ static int timer_add_default_dependencies(Timer *t) {
- return unit_add_two_dependencies_by_name(UNIT(t), UNIT_BEFORE, UNIT_CONFLICTS, SPECIAL_SHUTDOWN_TARGET, NULL, true);
- }
-
-+static void update_stampfile(Timer *t, usec_t timestamp) {
-+ _cleanup_close_ int fd = -1;
-+
-+ mkdir_parents_label(t->stamp_path, 0755);
-+
-+ /* Update the file atime + mtime, if we can */
-+ fd = open(t->stamp_path, O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0644);
-+ if (fd >= 0) {
-+ struct timespec ts[2];
-+
-+ timespec_store(&ts[0], timestamp);
-+ ts[1] = ts[0];
-+
-+ futimens(fd, ts);
-+ }
-+}
-+
- static int timer_setup_persistent(Timer *t) {
- int r;
-
-@@ -496,22 +513,8 @@ static void timer_enter_running(Timer *t) {
-
- dual_timestamp_get(&t->last_trigger);
-
-- if (t->stamp_path) {
-- _cleanup_close_ int fd = -1;
--
-- mkdir_parents_label(t->stamp_path, 0755);
--
-- /* Update the file atime + mtime, if we can */
-- fd = open(t->stamp_path, O_WRONLY|O_CREAT|O_TRUNC|O_CLOEXEC, 0644);
-- if (fd >= 0) {
-- struct timespec ts[2];
--
-- timespec_store(&ts[0], t->last_trigger.realtime);
-- ts[1] = ts[0];
--
-- futimens(fd, ts);
-- }
-- }
-+ if (t->stamp_path)
-+ update_stampfile(t, t->last_trigger.realtime);
-
- timer_set_state(t, TIMER_RUNNING);
- return;
-@@ -539,6 +542,11 @@ static int timer_start(Unit *u) {
-
- if (stat(t->stamp_path, &st) >= 0)
- t->last_trigger.realtime = timespec_load(&st.st_atim);
-+ else if (errno == ENOENT)
-+ /* The timer has never run before,
-+ * make sure a stamp file exists.
-+ */
-+ update_stampfile(t, now(CLOCK_REALTIME));
- }
-
- t->result = TIMER_SUCCESS;
---
-1.9.2
-
diff --git a/core/systemd/PKGBUILD b/core/systemd/PKGBUILD
index 966b70596..cfa48bbc9 100644
--- a/core/systemd/PKGBUILD
+++ b/core/systemd/PKGBUILD
@@ -3,48 +3,38 @@
pkgbase=systemd
pkgname=('systemd' 'libsystemd' 'systemd-sysvcompat')
-pkgver=212
-pkgrel=3
+pkgver=213
+pkgrel=5
arch=('i686' 'x86_64')
url="http://www.freedesktop.org/wiki/Software/systemd"
makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gobject-introspection' 'gperf'
'gtk-doc' 'intltool' 'kmod' 'libcap' 'libgcrypt' 'libmicrohttpd' 'libxslt'
- 'util-linux' 'linux-api-headers' 'pam' 'python' 'python-lxml' 'quota-tools' 'xz')
+ 'util-linux' 'linux-api-headers' 'pam' 'python' 'python-lxml' 'quota-tools'
+ 'shadow' 'xz')
options=('strip' 'debug')
source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz"
'initcpio-hook-udev'
'initcpio-install-systemd'
'initcpio-install-udev'
- '0001-backlight-do-nothing-if-max_brightness-is-0.patch'
- '0002-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch'
- '0003-man-reword-Persistent-description.patch'
- '0004-core-Make-sure-a-stamp-file-exists-for-all-Persisten.patch'
- )
-md5sums=('257a75fff826ff91cb1ce567091cf270'
+ '0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch')
+md5sums=('06496edcf86ddf6d8c12d72ba78e735d'
'29245f7a240bfba66e2b1783b63b6b40'
'66cca7318e13eaf37c5b7db2efa69846'
'bde43090d4ac0ef048e3eaee8202a407'
- '4b5d61e30b423ff5a0ec38037146b61b'
- 'd9518fc6cef154ebc76555b0fb9d4412'
- 'c35c7f55d41c0a8b8725785b49ce6440'
- '2e7aee18c749727c8bbc8db86f17edc0')
+ '5f8ad7126970855614c7fa34b317728d')
prepare() {
cd "$pkgname-$pkgver"
- # http://cgit.freedesktop.org/systemd/systemd/commit/?id=3cadce7d33e263ec7a6a83c00c11144930258b22
- patch -p1 -i "$srcdir/0001-backlight-do-nothing-if-max_brightness-is-0.patch"
- # http://cgit.freedesktop.org/systemd/systemd/commit/?id=b2103dccb354de3f38c49c14ccb637bdf665e40f
- patch -p1 -i "$srcdir/0002-reduce-the-amount-of-messages-logged-to-dev-kmsg-whe.patch"
- # http://cgit.freedesktop.org/systemd/systemd/commit/?id=de41590a9bb370de92e4a1ed933bc6e38abb6787
- patch -p1 -i "$srcdir/0003-man-reword-Persistent-description.patch"
- # http://cgit.freedesktop.org/systemd/systemd/commit/?id=472fc28fdade525e700ebf4b25d026a8c907796d
- patch -p1 -i "$srcdir/0004-core-Make-sure-a-stamp-file-exists-for-all-Persisten.patch"
+ patch -Np1 <"$srcdir/0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch"
}
build() {
cd "$pkgname-$pkgver"
+ # LTO currently breaks the build because of libtool failures
+ CFLAGS+=' -fno-lto'
+
./configure \
--libexecdir=/usr/lib \
--localstatedir=/var \
@@ -62,10 +52,6 @@ build() {
make
}
-check() {
- make -C "$pkgname-$pkgver" check || :
-}
-
package_systemd() {
pkgdesc="system and service manager"
license=('GPL2' 'LGPL2.1' 'MIT')
@@ -100,6 +86,7 @@ package_systemd() {
# post_install as a sane default.
rm "$pkgdir/etc/systemd/system/getty.target.wants/getty@tty1.service"
rm "$pkgdir/etc/systemd/system/multi-user.target.wants/systemd-networkd.service"
+ rm "$pkgdir/etc/systemd/system/multi-user.target.wants/systemd-resolved.service"
rmdir "$pkgdir/etc/systemd/system/getty.target.wants"
# get rid of RPM macros
diff --git a/core/systemd/systemd.install b/core/systemd/systemd.install
index ecd9afd5b..5c370f7ae 100644
--- a/core/systemd/systemd.install
+++ b/core/systemd/systemd.install
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
sd_booted() {
- [ -d /run/systemd/system ]
+ [[ -d run/systemd/system ]]
}
add_privs() {
@@ -13,13 +13,13 @@ add_privs() {
add_journal_acls() {
# ignore errors, since the filesystem might not support ACLs
- setfacl -Rnm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/ 2>/dev/null
+ setfacl -Rnm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx var/log/journal/ 2>/dev/null
:
}
maybe_reexec() {
# don't reexec on 209-1 upgrade due to large infrastructural changes.
- if [ "$(vercmp 209-1 "$2")" -eq 1 ]; then
+ if [[ $(vercmp 209-1 "$2") -eq 1 ]]; then
echo ':: systemd has not been reexecuted. It is recommended that you'
echo ' reboot at your earliest convenience.'
return
@@ -32,32 +32,54 @@ maybe_reexec() {
_dir_empty() {
set -- "$1"/*
- [ ! -e "$1" ] && [ ! -L "$1" ]
+ [[ ! -e $1 && ! -L $1 ]]
}
post_common() {
systemd-machine-id-setup
+ # TODO: drop this for 214
+ # http://cgit.freedesktop.org/systemd/systemd/commit/?id=fdd2531170
add_privs usr/bin/systemd-detect-virt 'cap_dac_override,cap_sys_ptrace+ep'
udevadm hwdb --update
journalctl --update-catalog
}
-_208_changes() {
+_204_1_changes() {
+ printf '==> The /bin/systemd symlink has been removed. Any references in your\n'
+ printf ' bootloader (or elsewhere) must be updated to /usr/lib/systemd/systemd.\n'
+}
+
+_205_1_changes() {
+ printf '==> systemd 205 restructures the cgroup hierarchy and changes internal\n'
+ printf ' protocols. You should reboot at your earliest convenience.\n'
+}
+
+_206_1_changes() {
+ printf '==> The "timestamp" hook for mkinitcpio no longer exists. If you used\n'
+ printf ' this hook, you must remove it from /etc/mkinitcpio.conf. A "systemd"\n'
+ printf ' hook has been added which provides this functionality, and more.\n'
+}
+
+_208_1_changes() {
chown root:systemd-journal var/log/journal
chmod 2755 var/log/journal
- if [ -e var/lib/backlight ] && [ ! -e var/lib/systemd/backlight ]; then
+ if [[ -e var/lib/backlight && ! -e var/lib/systemd/backlight ]]; then
mv -T var/lib/backlight var/lib/systemd/backlight
fi
- if [ -e var/lib/random-seed ] && [ ! -e var/lib/systemd/random-seed ]; then
+ if [[ -e var/lib/random-seed && ! -e var/lib/systemd/random-seed ]]; then
mv -T var/lib/random-seed var/lib/systemd/random-seed
fi
}
-_209_changes() {
+_208_8_changes() {
+ add_journal_acls
+}
+
+_209_1_changes() {
# attempt to preserve existing behavior
local old_rule=etc/udev/rules.d/80-net-name-slot.rules
@@ -81,7 +103,7 @@ _209_changes() {
fi
}
-_210_changes() {
+_210_1_changes() {
if sd_booted; then
# If /etc/systemd/network is non-empty, then this is a 209 user who used
# networkd. Re-enable it for them.
@@ -91,6 +113,16 @@ _210_changes() {
fi
}
+_213_4_changes() {
+ if sd_booted; then
+ # if /etc/resolv.conf is a symlink, just assume that it was being managed
+ # by systemd-networkd, and re-enable systemd-resolved.
+ if [[ -L etc/resolv.conf ]]; then
+ systemctl enable systemd-resolved
+ fi
+ fi
+}
+
post_install() {
post_common "$@"
@@ -108,37 +140,20 @@ post_upgrade() {
maybe_reexec "$@"
- if [ "$(vercmp 204-1 "$2")" -eq 1 ]; then
- printf '==> The /bin/systemd symlink has been removed. Any references in your\n'
- printf ' bootloader (or elsewhere) must be updated to /usr/lib/systemd/systemd.\n'
- fi
-
- if [ "$(vercmp 205-1 "$2")" -eq 1 ]; then
- printf '==> systemd 205 restructures the cgroup hierarchy and changes internal\n'
- printf ' protocols. You should reboot at your earliest convenience.\n'
- fi
-
- if [ "$(vercmp 206-1 "$2")" -eq 1 ]; then
- printf '==> The "timestamp" hook for mkinitcpio no longer exists. If you used\n'
- printf ' this hook, you must remove it from /etc/mkinitcpio.conf. A "systemd"\n'
- printf ' hook has been added which provides this functionality, and more.\n'
- fi
-
- if [ "$(vercmp 208-1 "$2")" -eq 1 ]; then
- _208_changes
- fi
-
- if [ "$(vercmp 208-8 "$2")" -eq 1 ]; then
- add_journal_acls
- fi
-
- if [ "$(vercmp 209-1 "$2")" -eq 1 ]; then
- _209_changes
- fi
-
- if [ "$(vercmp 210-1 "$2")" -eq 1 ]; then
- _210_changes
- fi
+ local v upgrades=(204-1
+ 205-1
+ 206-1
+ 208-1
+ 208-8
+ 209-1
+ 210-1
+ 213-4)
+
+ for v in "${upgrades[@]}"; do
+ if [[ $(vercmp "$v" "$2") -eq 1 ]]; then
+ "_${v//-/_}_changes"
+ fi
+ done
}
# vim:set ts=2 sw=2 et: