diff options
author | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2016-12-02 16:07:30 -0300 |
---|---|---|
committer | André Fabian Silva Delgado <emulatorman@parabola.nu> | 2016-12-02 16:21:16 -0300 |
commit | ff325fd5b9388da53c5914633a4e0bd985aa3c96 (patch) | |
tree | b9cc9781582af6fffe6afe80da34bd9cfbfa27ed /libre | |
parent | 45ff52132206e4d214683462895b5d5580ae3c10 (diff) |
systemd-232-4.parabola1: updating version
Diffstat (limited to 'libre')
5 files changed, 167 insertions, 41 deletions
diff --git a/libre/systemd/0001-Revert-nspawn-try-to-bind-mount-resolved-s-resolv.co.patch b/libre/systemd/0001-Revert-nspawn-try-to-bind-mount-resolved-s-resolv.co.patch new file mode 100644 index 000000000..5d47d01a4 --- /dev/null +++ b/libre/systemd/0001-Revert-nspawn-try-to-bind-mount-resolved-s-resolv.co.patch @@ -0,0 +1,62 @@ +From 481712d9ee88395042f0640f272c1f87142bc0a8 Mon Sep 17 00:00:00 2001 +From: Dave Reisner <dreisner@archlinux.org> +Date: Wed, 9 Nov 2016 11:14:03 -0500 +Subject: [PATCH] Revert "nspawn: try to bind mount resolved's resolv.conf + snippet into the container" + +This reverts commit 3539724c26a1b2b00c4eb3c004b635a4b8647de6. +--- + src/nspawn/nspawn.c | 27 ++++++++------------------- + 1 file changed, 8 insertions(+), 19 deletions(-) + +diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c +index c8b18bc..93df7c6 100644 +--- a/src/nspawn/nspawn.c ++++ b/src/nspawn/nspawn.c +@@ -1309,35 +1309,24 @@ static int setup_resolv_conf(const char *dest) { + /* Fix resolv.conf, if possible */ + where = prefix_roota(dest, "/etc/resolv.conf"); + +- if (access("/usr/lib/systemd/resolv.conf", F_OK) >= 0) { +- /* resolved is enabled on the host. In this, case bind mount its static resolv.conf file into the +- * container, so that the container can use the host's resolver. Given that network namespacing is +- * disabled it's only natural of the container also uses the host's resolver. It also has the big +- * advantage that the container will be able to follow the host's DNS server configuration changes +- * transparently. */ +- +- r = mount_verbose(LOG_WARNING, "/usr/lib/systemd/resolv.conf", where, NULL, MS_BIND, NULL); +- if (r >= 0) +- return mount_verbose(LOG_ERR, NULL, where, NULL, +- MS_BIND|MS_REMOUNT|MS_RDONLY|MS_NOSUID|MS_NODEV, NULL); +- } +- +- /* If that didn't work, let's copy the file */ + r = copy_file("/etc/resolv.conf", where, O_TRUNC|O_NOFOLLOW, 0644, 0); + if (r < 0) { +- /* If the file already exists as symlink, let's suppress the warning, under the assumption that +- * resolved or something similar runs inside and the symlink points there. ++ /* If the file already exists as symlink, let's ++ * suppress the warning, under the assumption that ++ * resolved or something similar runs inside and the ++ * symlink points there. + * +- * If the disk image is read-only, there's also no point in complaining. ++ * If the disk image is read-only, there's also no ++ * point in complaining. + */ + log_full_errno(IN_SET(r, -ELOOP, -EROFS) ? LOG_DEBUG : LOG_WARNING, r, +- "Failed to copy /etc/resolv.conf to %s, ignoring: %m", where); ++ "Failed to copy /etc/resolv.conf to %s: %m", where); + return 0; + } + + r = userns_lchown(where, 0, 0); + if (r < 0) +- log_warning_errno(r, "Failed to chown /etc/resolv.conf, ignoring: %m"); ++ log_warning_errno(r, "Failed to chown /etc/resolv.conf: %m"); + + return 0; + } +-- +2.10.2 + diff --git a/libre/systemd/0001-disable-RestrictAddressFamilies-on-i686.patch b/libre/systemd/0001-disable-RestrictAddressFamilies-on-i686.patch new file mode 100644 index 000000000..27e6f4fb0 --- /dev/null +++ b/libre/systemd/0001-disable-RestrictAddressFamilies-on-i686.patch @@ -0,0 +1,30 @@ +From ff59e06f9423af0532aaeedf931474823f764875 Mon Sep 17 00:00:00 2001 +From: Dave Reisner <dreisner@archlinux.org> +Date: Wed, 9 Nov 2016 08:00:26 -0500 +Subject: [PATCH] disable RestrictAddressFamilies on i686 + +Shit's broke, yo. + +https://github.com/systemd/systemd/issues/4575 +--- + src/core/execute.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/core/execute.c b/src/core/execute.c +index f666f7c..7d09154 100644 +--- a/src/core/execute.c ++++ b/src/core/execute.c +@@ -1254,6 +1254,10 @@ static int apply_address_families(const Unit* u, const ExecContext *c) { + Iterator i; + int r; + ++#if defined(__i386__) ++ return 0; ++#endif ++ + assert(c); + + if (skip_seccomp_unavailable(u, "RestrictAddressFamilies=")) +-- +2.10.2 + diff --git a/libre/systemd/0006-FSDG-man-Use-FSDG-operating-systems-as-examples.patch b/libre/systemd/0006-FSDG-man-Use-FSDG-operating-systems-as-examples.patch index 82d60ec94..9a8ce15ea 100644 --- a/libre/systemd/0006-FSDG-man-Use-FSDG-operating-systems-as-examples.patch +++ b/libre/systemd/0006-FSDG-man-Use-FSDG-operating-systems-as-examples.patch @@ -9,7 +9,7 @@ Subject: [PATCH 6/6] FSDG: man/: Use FSDG operating systems as examples. 2 files changed, 38 insertions(+), 48 deletions(-) diff --git a/man/os-release.xml b/man/os-release.xml -index 79eb402..a70ba1a 100644 +index caf60f4..2811f43 100644 --- a/man/os-release.xml +++ b/man/os-release.xml @@ -122,7 +122,7 @@ @@ -55,7 +55,7 @@ index 79eb402..a70ba1a 100644 assignment of <literal>ID_LIKE=debian</literal> is appropriate.</para></listitem> </varlistentry> -@@ -183,8 +183,8 @@ +@@ -199,8 +199,8 @@ identifying the operating system version, excluding any OS name information or release code name, and suitable for processing by scripts or usage in generated filenames. This @@ -66,7 +66,7 @@ index 79eb402..a70ba1a 100644 </varlistentry> <varlistentry> -@@ -195,8 +195,8 @@ +@@ -211,8 +211,8 @@ a release code name or OS version of some kind, as suitable. If not set, defaults to <literal>PRETTY_NAME="GNU/Linux"</literal>. Example: @@ -77,7 +77,7 @@ index 79eb402..a70ba1a 100644 </varlistentry> <varlistentry> -@@ -219,7 +219,7 @@ +@@ -235,7 +235,7 @@ <ulink url="http://scap.nist.gov/specifications/cpe/">Common Platform Enumeration Specification</ulink> as proposed by the NIST. This field is optional. Example: @@ -86,7 +86,7 @@ index 79eb402..a70ba1a 100644 </para></listitem> </varlistentry> -@@ -254,8 +254,8 @@ +@@ -270,8 +270,8 @@ one URL shall be listed in each setting. If multiple resources need to be referenced, it is recommended to provide an online landing page linking all available resources. Examples: @@ -97,7 +97,7 @@ index 79eb402..a70ba1a 100644 </varlistentry> <varlistentry> -@@ -330,21 +330,22 @@ +@@ -346,21 +346,22 @@ recommended to prefix new fields with an OS specific name in order to avoid name clashes. Applications reading this file must ignore unknown fields. Example: @@ -131,18 +131,18 @@ index 79eb402..a70ba1a 100644 <refsect1> diff --git a/man/systemd-nspawn.xml b/man/systemd-nspawn.xml -index 86cdb4e..bd7392c 100644 +index cd0a90d..ab35580 100644 --- a/man/systemd-nspawn.xml +++ b/man/systemd-nspawn.xml -@@ -912,46 +912,35 @@ +@@ -1004,46 +1004,35 @@ <title>Examples</title> <example> - <title>Download a Fedora image and start a shell in it</title> + <title>Build and boot a minimal BLAG distribution in a container</title> -- <programlisting># machinectl pull-raw --verify=no http://ftp.halifax.rwth-aachen.de/fedora/linux/releases/21/Cloud/Images/x86_64/Fedora-Cloud-Base-20141203-21.x86_64.raw.xz --# systemd-nspawn -M Fedora-Cloud-Base-20141203-21</programlisting> +- <programlisting># machinectl pull-raw --verify=no http://ftp.halifax.rwth-aachen.de/fedora/linux/releases/24/CloudImages/x86_64/images/Fedora-Cloud-Base-24-1.2.x86_64.raw.xz +-# systemd-nspawn -M Fedora-Cloud-Base-24-1.2.x86_64.raw</programlisting> - - <para>This downloads an image using - <citerefentry><refentrytitle>machinectl</refentrytitle><manvolnum>1</manvolnum></citerefentry> @@ -164,11 +164,11 @@ index 86cdb4e..bd7392c 100644 <example> - <title>Spawn a shell in a container of a minimal Debian unstable distribution</title> -+ <title>Spawn a shell in a container of a minimal gNewSense unstable distribution</title> ++ <title>Spawn a shell in a container of a minimal gNewSense Ucclia distribution</title> - <programlisting># debootstrap --arch=amd64 unstable ~/debian-tree/ -# systemd-nspawn -D ~/debian-tree/</programlisting> -+ <programlisting># debootstrap --arch=amd64 unstable ~/gnewsense-tree/ ++ <programlisting># debootstrap --arch=amd64 ucclia ~/gnewsense-tree/ +# systemd-nspawn -D ~/gnewsense-tree/</programlisting> - <para>This installs a minimal Debian unstable distribution into @@ -180,7 +180,7 @@ index 86cdb4e..bd7392c 100644 <example> - <title>Boot a minimal Arch Linux distribution in a container</title> -+ <title>Boot a minimal Parabola GNU/Linux-libre distribution in a container</title> ++ <title>Boot a minimal Parabola distribution in a container</title> - <programlisting># pacstrap -c -d ~/arch-tree/ base -# systemd-nspawn -bD ~/arch-tree/</programlisting> @@ -189,7 +189,7 @@ index 86cdb4e..bd7392c 100644 - <para>This installs a minimal Arch Linux distribution into the - directory <filename>~/arch-tree/</filename> and then boots an OS -+ <para>This installs a minimal Parabola GNU/Linux-libre distribution into the ++ <para>This installs a minimal Parabola distribution into the + directory <filename>~/parabola-tree/</filename> and then boots an OS in a namespace container in it.</para> </example> diff --git a/libre/systemd/PKGBUILD b/libre/systemd/PKGBUILD index 4309d7cad..31bf674cc 100644 --- a/libre/systemd/PKGBUILD +++ b/libre/systemd/PKGBUILD @@ -6,17 +6,17 @@ pkgbase=systemd pkgname=('systemd' 'libsystemd' 'systemd-sysvcompat' 'libsystemd-standalone' 'libudev' 'nss-myhostname' 'nss-mymachines' 'nss-resolve') -pkgver=231 +pkgver=232 pkgrel=4.parabola1 arch=('i686' 'x86_64' 'armv7h') -url="http://www.freedesktop.org/wiki/Software/systemd" +url="https://www.github.com/systemd/systemd" makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gperf' 'lz4' 'xz' 'pam' 'libelf' 'intltool' 'iptables' 'kmod' 'libcap' 'libidn' 'libgcrypt' 'libmicrohttpd' 'libxslt' 'util-linux' 'linux-libre-api-headers' 'python-lxml' 'quota-tools' 'shadow' 'git') makedepends_i686=('gnu-efi-libs') makedepends_x86_64=('gnu-efi-libs') -options=('strip' 'debug') +options=('strip') source=("git://github.com/systemd/systemd.git#tag=v$pkgver" 'initcpio-hook-udev' 'initcpio-install-systemd' @@ -24,6 +24,8 @@ source=("git://github.com/systemd/systemd.git#tag=v$pkgver" 'parabola.conf' 'loader.conf' 'udev-hwdb.hook' + '0001-disable-RestrictAddressFamilies-on-i686.patch' + '0001-Revert-nspawn-try-to-bind-mount-resolved-s-resolv.co.patch' '0001-FSDG-man-Refer-to-the-operating-system-as-GNU-Linux.patch' '0002-FSDG-os-release-Default-to-PRETTY_NAME-GNU-Linux-ins.patch' '0003-FSDG-os-release-Default-to-NAME-GNU-Linux-instead-of.patch' @@ -31,39 +33,72 @@ source=("git://github.com/systemd/systemd.git#tag=v$pkgver" '0005-FSDG-systemd-resolved-Default-to-hostname-gnu-linux-.patch' '0006-FSDG-man-Use-FSDG-operating-systems-as-examples.patch' "https://repo.parabola.nu/other/systemd/splash-parabola.bmp"{,.sig}) -md5sums=('SKIP' - '90ea67a7bb237502094914622a39e281' - '55ea7d81c02d090b65c42a88f1a5a21a' - '1b3aa3a0551b08af9305d33f85b5c2fc' - '36ee74767ac8734dede1cbd0f4f275d7' - '9b9f4a58e4c4009bf5290c5b297600c3' - 'a475a5ed8f03fb0f6b58b4684998d05c' - '92a4bb5e527e1e956743c1ffa622adc7' - '397e2262bf96df3bc1762a3b0bef2f75' - 'e592f6778c12627d46982ddfe0698361' - 'c4c559f9916806f5162ccff3e7c433e8' - '5166fe700ef5991c2da3876206c699fb' - '166ce41b60d4eaa7738486f7aab5ebd8' - 'f8253cd3c0f249591338fbb4c223d249' - 'SKIP') -validpgpkeys=('684D54A189305A9CC95446D36B888913DDB59515') # Márcio Silva +sha512sums=('SKIP' + 'f0d933e8c6064ed830dec54049b0a01e27be87203208f6ae982f10fb4eddc7258cb2919d594cbfb9a33e74c3510cfd682f3416ba8e804387ab87d1a217eb4b73' + '52af734947a768758d5eb3f18e31a1cfec6699eca6fa10e40b90c7f11991509186c0a696e3490af3eaba80064ea4cb93e041579abf05addf072d294300aa4b28' + 'fec639de0d99967ed3e67289eff5ff78fff0c5829d350e73bed536a8391f1daa1d118d72dbdc1f480ffd33fc22b72f4817d0973bd09ec7f182fd26ad87b24355' + '70b3f1d6aaa9cd4b6b34055a587554770c34194100b17b2ef3aaf4f16f68da0865f6b3ae443b3252d395e80efabd412b763259ffb76c902b60e23b6b522e3cc8' + '6c6f579644ea2ebb6b46ee274ab15110718b0de40def8c30173ba8480b045d403f2aedd15b50ad9b96453f4ad56920d1350ff76563755bb9a80b10fa7f64f1d9' + '888ab01bc6e09beb08d7126472c34c9e1aa35ea34e62a09e900ae34c93b1de2fcc988586efd8d0dc962393974f45c77b206d59a86cf53e370f061bf9a1b1a862' + '89f9b2d3918c679ce4f76c2b10dc7fcb7e04f1925a5f92542f06891de2a123a91df7eb67fd4ce71506a8132f5440b3560b7bb667e1c1813944b115c1dfe35e3f' + 'b993a42c5534582631f7b379d54f6abc37e3aaa56ecf869a6d86ff14ae5a52628f4e447b6a30751bc1c14c30cec63a5c6d0aa268362d235ed477b639cac3a219' + '50888d94636427ca97bfa5355226163fb6458f2a60303967cf74a8fd085f3c450d276b7c556fea93da387c6bb6f5ecbdb6d9b2a571b6723f27a41c8fb612d27b' + 'fc8b874279db428a342387147ef6a849c0621eb0326ad5c4eb12c2ceb98b46477ed1e07c076a8b0abae6b323d4d7f4c70d45998c3338fb89903f51b3f653458b' + 'fd928f5d10a5f95bdbab7720b465cbea8b47cf1a376e1ba292c4759d3f1473c80bd4444729dc5b6f6d884e342db7d07a5dad093d345ccccf2c5fb22dfcdacbd8' + '723db0e4980727594c88d2fc92ffde10cf7c5cd05fbd88a31dadb813a3c839c3a92b3e5789f936de356b9f5e2d43d67e95fd02627be53ffa46b3d86dfabc4e5b' + '77161e2f57237ca589d576924ec0877f379047c6fd90ca47cb6686e4f22cc9e2171ae4306bd5a9fd8e707e297b826e0f7df52dcdcb04e99df7ebd0eb45ac89eb' + 'caa5eb7e52b83549bc7d00e343bbb204334b49f2d14005ac1fb592c6f17c6c860edafd88abe619fe54cb0086725385c1f48fd437670a31a08abdac8485ed2073' + 'a50bc85061a9a16d776235099867bc1a17c17dddb74c1ecf5614c849735a9779c5e34e5ddca8ca6af4b59a40f57c08ecf219b98cab09476ddb0f110e6a35e45c' + 'SKIP') +validpgpkeys=( + '63CDA1E5D3FC22B998D20DD6327F26951A015CC4' # Lennart Poettering + '684D54A189305A9CC95446D36B888913DDB59515' # Márcio Silva +) _backports=( - '531ac2b2349da02acc9c382849758e07eb92b020' # If the notification message length is 0, ignore the message - '8523bf7dd514a3a2c6114b7b8fb8f308b4f09fc4' # pid1: process zero-length notification messages again - '9987750e7a4c62e0eb8473603150596ba7c3a015' # pid1: don't return any error in manager_dispatch_notify_fd() - 'bd64d82c1c0e3fe2a5f9b3dd9132d62834f50b2d' # Revert "pid1: reconnect to the console before being re-executed" - 'bd5b9f0a12dd9c1947b11534e99c395ddf44caa9' # systemctl: suppress errors with "show" for nonexistent units and properties + '843d5baf6aad6c53fc00ea8d95d83209a4f92de1' # core: don't use the unified hierarchy for the systemd cgroup yet (#4628) + 'abd67ce74858491565cde157c7b08fda43d3279c' # basic/virt: fix userns check on CONFIG_USER_NS=n kernel (#4651) + '4318abe8d26e969ebdb97744a63ab900233a0185' # build-sys: do not install ctrl-alt-del.target symlink twice + 'd112eae7da77899be245ab52aa1747d4675549f1' # device: Avoid calling unit_free(NULL) in device setup logic (#4748) ) +#_validate_tag() { +# local success fingerprint trusted status tag=v$pkgver +# +# parse_gpg_statusfile /dev/stdin < <(git verify-tag --raw "$tag" 2>&1) +# +# if (( ! success )); then +# error 'failed to validate tag %s\n' "$tag" +# return 1 +# fi +# +# if ! in_array "$fingerprint" "${validpgpkeys[@]}" && (( ! trusted )); then +# error 'unknown or untrusted public key: %s\n' "$fingerprint" +# return 1 +# fi +# +# case $status in +# 'expired') +# warning 'the signature has expired' +# ;; +# 'expiredkey') +# warning 'the key has expired' +# ;; +# esac +# +# return 0 +#} + prepare() { cd "$pkgbase" +# _validate_tag || return + if (( ${#_backports[*]} > 0 )); then git cherry-pick -n "${_backports[@]}" fi - # apply FSDG patches + # apply FSDG and another patches local patchfile for patchfile in "$srcdir"/*.patch; do patch -Np1 -i "$patchfile" @@ -264,7 +299,6 @@ package_nss-resolve() { depends=('glibc' 'libcap') license=('GPL2') - # TODO(dreisner): for v232, this should be install-rootlibLTLIBRARIES. cp -rT -d --no-preserve=ownership,timestamp "$srcdir/dest/$pkgname" "$pkgdir" } diff --git a/libre/systemd/initcpio-install-systemd b/libre/systemd/initcpio-install-systemd index 59c16b7ef..f6d0afdb8 100644 --- a/libre/systemd/initcpio-install-systemd +++ b/libre/systemd/initcpio-install-systemd @@ -185,7 +185,7 @@ EOF help() { cat <<HELPEOF This will install a basic systemd setup in your initramfs, and is meant to -replace the 'base', 'usr', 'udev' and 'timestamp' hooks. Other hooks with runtime +replace the 'base', 'usr', 'udev' and 'resume' hooks. Other hooks with runtime components will need to be ported, and will not work as intended. You also may wish to still include the 'base' hook (before this hook) to ensure that a rescue shell exists on your initramfs. |