From f78108598211053d41752a83e0345441bb9014ae Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 11 Feb 2018 16:09:52 +0000 Subject: gentoo resync : 11.02.2018 --- sys-apps/systemd/Manifest | 5 +- .../files/237-0001-networkctl-display-type.patch | 266 +++++++++++++ sys-apps/systemd/systemd-236-r5.ebuild | 2 +- sys-apps/systemd/systemd-237-r1.ebuild | 439 -------------------- sys-apps/systemd/systemd-237-r2.ebuild | 440 +++++++++++++++++++++ 5 files changed, 710 insertions(+), 442 deletions(-) create mode 100644 sys-apps/systemd/files/237-0001-networkctl-display-type.patch delete mode 100644 sys-apps/systemd/systemd-237-r1.ebuild create mode 100644 sys-apps/systemd/systemd-237-r2.ebuild (limited to 'sys-apps/systemd') diff --git a/sys-apps/systemd/Manifest b/sys-apps/systemd/Manifest index 79f0c8241e13..2b3a679021a9 100644 --- a/sys-apps/systemd/Manifest +++ b/sys-apps/systemd/Manifest @@ -1,5 +1,6 @@ AUX 235-0001-test-skip-hwdb-and-sysv-generator-if-the-features-ar.patch 1280 BLAKE2B 019ad0113d58d2833b582ac269ecbf4e51c6b46d3a3ba84357cf135ddbf34829e7e98c9c376b4b9bf717be5fefed8cea517f2cc4e9aefee08807185f1057dfbb SHA512 70dd0b3ed7926fc2406aae8fc592ba7bbbf9bdd94151d3045d94683921f2921dbe8184f7184e4e5a9cd4bf1556ddb93f20f741df3bead3c664f4c71757e75376 AUX 235-0002-networkd-Don-t-stop-networkd-if-CONFIG_FIB_RULES-n-i.patch 2620 BLAKE2B ec6e9cb15160b91c54bf714229785c081044727e5d9e6f5ecfffa0df4ce84e4e71227f177aced29d24f3a26c7b118aba3ed1073fa2353cd7a44c509658f20dce SHA512 52bf63183930872c44c0dc53a616c75a4ae37ffedfcf34b2b5e400994b334d311b2afcadd75e91dd6c37a88cab71e30d2d6690261a980ea5dfc056b67d7e2e78 +AUX 237-0001-networkctl-display-type.patch 9575 BLAKE2B 17b42e55d7f9eb2452d2826bb62a8b2ee4f6655d686c21a0f6471629aef06f171427baa79a24eff910ff8c3dc0a7612fa48fc6df1f4de2c586852e1eb4498c85 SHA512 8378a1c153e92d3fad084c57badfa9bf13faab5e9e6319ab3be387b1c609cce5fcc481776365da2cfabde7c9f7c9f4fe24e280b53c76d5813eceeec800d173f0 AUX CVE-2017-15908.patch 1371 BLAKE2B ccb735919864347108366e33466d2daa5599825e8efcef29ad2139c20070443a6c2c6cb008ba018ea64a37f7046e366f42d45698d6c82aee19d38ca9f2b489d9 SHA512 e3ca9cb44981a7a5d80a7ca63d6c9249e42dc5af1290ecfd472ec377db4ac372a18c3a3b6a99e1b7cfa322f7c00f0a755c916f67273b0b1e0a0e37957035aba9 AUX gentoo-Dont-enable-audit-by-default.patch 1027 BLAKE2B 9193a409db4e5c1dec6f6b66ee6e0a4cc1ada49d41ab758c788cf12534fffb67bd7370b8558a6af56572d7f2b73cf47db255fef105e56362c15f0a426f80b256 SHA512 44e512d8bbadbc5714192896a3ba262e460af034846e4e9b9832b4143fff772e2734e655316fd88d1ef386509bd234c195dce2087348f220836b3bf4f26790e0 AUX gentoo-generator-path.patch 1046 BLAKE2B 648d1fff6874135267647ff6ffb52ddd9e991af64fb2b41909246c173e55709c49edd6e47245d566457ba9f55bf6d758ed837ff740f58004f2790b5565f8e462 SHA512 e9999afbf4d2d8a9e828d81dd0b54e2c2ba556e9778a4954dac3da885a15bc6dcc718f7e119c352eb2efd090e410735395ec20ce2eb3c84a481570bc8b5f66b3 @@ -15,7 +16,7 @@ DIST systemd-236-patches-2.tar.gz 54737 BLAKE2B bce5f9e234c975a2b6e474ca2a0c2c82 DIST systemd-236.tar.gz 6759035 BLAKE2B 0fc26bd67fb6cc3b0565c763fc26e38186c4b05c3d38652b73a2189dfbfb46382dba239f7f6f889eec57ad1d8f69d4098745c8f4ca16a707aa23b7771f2328f3 SHA512 1a9672960e03e05c09e41fb8cfe9b0f25e867fd43f37f8371515ddddfdbd4270afd746a6da733f6d1d3b2cc43db1ecc7a9f2245f2dac2ec233db74e9e70e4f6d DIST systemd-237.tar.gz 6871350 BLAKE2B 4734a110a297fbbd6679bced6302fcdca55ab5d4207905e8dee9f5545f1de841d5adeaa4fd89961b9e63709d04b5c862b8bc81481311cf8e72ee327e459c9d91 SHA512 15ef4b92815a6dd9a6c51672dbc00fd7cd0f08068ef0cbeaca574f68d330b28bc67ba1946f24f75ef3d9e7b63843a73eea700db54688061dbf5c9f8470394c3b EBUILD systemd-233-r6.ebuild 13593 BLAKE2B 82e15d7171054d46049bc9a50a8482bc1ebbe7bb53af2ad1b6ee594582f30cb561c6d2e18226f4401c605cf9bcd53290128c7be441cfa6cd60470e313144009d SHA512 53b2e092bc48bc8d2899d9869e77049e9ce0cc6178ac63bb830544ec0a69a3ba5ba29a82a5ba76ab19dd4ce8997b9ae5ffeb3698780fe086ed5a632ff386c1d3 -EBUILD systemd-236-r5.ebuild 13011 BLAKE2B fbd20030e965404f742538f6feb6e71476f6b9855b04ee11b097d5a675387fe5723c4d40a20def29b8c8688a3e3f69c9cb3d8908088e3df584d87fce667207ab SHA512 dd7c182df9ec7c3a2e7290b633e0cea06eb9076737b07637fbc9b54e6360376c5a48fd6fed5559e77efa433ea31c56110de1ba27614e8829b6c6fcd817702525 -EBUILD systemd-237-r1.ebuild 13020 BLAKE2B 9b514d8b1e871d19a2588c268390258516fee6458821c18fe86cd3397a03b532c3c3c3fb3eb63f1287ab1a372f0b57062c0462d4037329c4df9ca976e73b914c SHA512 7f011b2a72812d167303f8e9ab4fd24a32acaf1ec5a1175abf46fe9b4b4bb1311dc87ecb408c93414e8904e8428851de801e4511134994be6c1df3e47c5e4207 +EBUILD systemd-236-r5.ebuild 13010 BLAKE2B 8619b8ed7a03823b3150036c67185d2fada5ea19bac4cf8b24baa15f7411c8988bb885df6946c6ae5fd20f1defb4dd2562e3dc73af9cc865c5dc42c76c16b2aa SHA512 2ba1fc26dc8db03da3f1f315643b081a998675125e7e7fa2a44071f0cc7dab4c2087a4e8fc83edde25481f6feea955ccb34c2f2c59182a27987061ead617018b +EBUILD systemd-237-r2.ebuild 13075 BLAKE2B 0d3fd9b59f27ef8e228f7f7f0bf6086f5f04aeadc61b5f4a2ad0b954a0476b7347757817492e3f7365ef7a4602529e30481b3d9a87587f9ed2aabcc43601148c SHA512 f19050b05beefa5581ec53aba7d7965ee6d2daa938ee0a35f6804e881685733766b12cc6f34000831c7903d47e0e6f6a184708ce3d3bc4fff07f7d528ea72824 EBUILD systemd-9999.ebuild 13020 BLAKE2B 9b514d8b1e871d19a2588c268390258516fee6458821c18fe86cd3397a03b532c3c3c3fb3eb63f1287ab1a372f0b57062c0462d4037329c4df9ca976e73b914c SHA512 7f011b2a72812d167303f8e9ab4fd24a32acaf1ec5a1175abf46fe9b4b4bb1311dc87ecb408c93414e8904e8428851de801e4511134994be6c1df3e47c5e4207 MISC metadata.xml 2032 BLAKE2B a554cb3dc21d5c5a5a4227f05f4a91054080999d23022051252f3461fb9c4398112fa1c96982205b4e1709de00ae395706ac46b86ae44610ecf85ededc3ceca7 SHA512 1c97f2c573c63a63d2ed78820d891d9593c5d8636574270c4306dc3c8ce739e52f6829e7e219cc2744acd7f3e2362e340b7c2406923f1aaf9adebc785cdb6544 diff --git a/sys-apps/systemd/files/237-0001-networkctl-display-type.patch b/sys-apps/systemd/files/237-0001-networkctl-display-type.patch new file mode 100644 index 000000000000..e29cf2206aa2 --- /dev/null +++ b/sys-apps/systemd/files/237-0001-networkctl-display-type.patch @@ -0,0 +1,266 @@ +From a18461bc7d446f8e130e9276de4397d00059267f Mon Sep 17 00:00:00 2001 +From: "Jason A. Donenfeld" +Date: Mon, 29 Jan 2018 20:58:24 +0100 +Subject: [PATCH 1/4] networkd: display wireguard devtype + +It's not useful to simply show "none", when we have more interesting +information to display. + +Signed-off-by: Jason A. Donenfeld +--- + src/network/networkctl.c | 22 +++++++++++++++------- + 1 file changed, 15 insertions(+), 7 deletions(-) + +diff --git a/src/network/networkctl.c b/src/network/networkctl.c +index 59ce098cd1..6ce00dff6d 100644 +--- a/src/network/networkctl.c ++++ b/src/network/networkctl.c +@@ -62,18 +62,26 @@ static int link_get_type_string(unsigned short iftype, sd_device *d, char **ret) + + assert(ret); + +- if (iftype == ARPHRD_ETHER && d) { ++ if (d) { + const char *devtype = NULL, *id = NULL; ++ ++ (void) sd_device_get_devtype(d, &devtype); ++ + /* WLANs have iftype ARPHRD_ETHER, but we want + * to show a more useful type string for + * them */ ++ if (iftype == ARPHRD_ETHER) { ++ if (streq_ptr(devtype, "wlan")) ++ id = "wlan"; ++ else if (streq_ptr(devtype, "wwan")) ++ id = "wwan"; ++ } + +- (void) sd_device_get_devtype(d, &devtype); +- +- if (streq_ptr(devtype, "wlan")) +- id = "wlan"; +- else if (streq_ptr(devtype, "wwan")) +- id = "wwan"; ++ /* Likewise, WireGuard has iftype ARPHRD_NONE, ++ * since it's layer 3, but we of course want ++ * something more useful than that. */ ++ if (iftype == ARPHRD_NONE && streq_ptr(devtype, "wireguard")) ++ id = "wireguard"; + + if (id) { + p = strdup(id); + +From f119082e7a1ccfbf50c30a99819b6e303cdf09a1 Mon Sep 17 00:00:00 2001 +From: "Jason A. Donenfeld" +Date: Mon, 29 Jan 2018 21:01:46 +0100 +Subject: [PATCH 2/4] networkd: simplify and display all devtypes + +Every place the kernel actually calls SET_NETDEV_DEVTYPE, it's adding a +piece of information that looks useful and relevant for us to use. So +let's use it when it's there. + +The previous matching based on the corresponding ARPHRD didn't really +make much sense. The more sensible logic for getting a textual +representation of the link type is to see if the kernel supplies a +devtype. If it does, great. If not, then we can fall back on the ARPHRD, +as before. + +Signed-off-by: Jason A. Donenfeld +--- + src/network/networkctl.c | 23 +++-------------------- + 1 file changed, 3 insertions(+), 20 deletions(-) + +diff --git a/src/network/networkctl.c b/src/network/networkctl.c +index 6ce00dff6d..8a08304240 100644 +--- a/src/network/networkctl.c ++++ b/src/network/networkctl.c +@@ -63,28 +63,11 @@ static int link_get_type_string(unsigned short iftype, sd_device *d, char **ret) + assert(ret); + + if (d) { +- const char *devtype = NULL, *id = NULL; ++ const char *devtype = NULL; + + (void) sd_device_get_devtype(d, &devtype); +- +- /* WLANs have iftype ARPHRD_ETHER, but we want +- * to show a more useful type string for +- * them */ +- if (iftype == ARPHRD_ETHER) { +- if (streq_ptr(devtype, "wlan")) +- id = "wlan"; +- else if (streq_ptr(devtype, "wwan")) +- id = "wwan"; +- } +- +- /* Likewise, WireGuard has iftype ARPHRD_NONE, +- * since it's layer 3, but we of course want +- * something more useful than that. */ +- if (iftype == ARPHRD_NONE && streq_ptr(devtype, "wireguard")) +- id = "wireguard"; +- +- if (id) { +- p = strdup(id); ++ if (!isempty(devtype)) { ++ p = strdup(devtype); + if (!p) + return -ENOMEM; + + +From fdce7817b9a27a370c01b7dd9da6a84fcae1038e Mon Sep 17 00:00:00 2001 +From: "Jason A. Donenfeld" +Date: Mon, 29 Jan 2018 21:05:36 +0100 +Subject: [PATCH 3/4] networkd: clean up link_get_type_string + +The return value is always ignored, so get rid of it. + +Signed-off-by: Jason A. Donenfeld +--- + src/network/networkctl.c | 16 +++++++--------- + 1 file changed, 7 insertions(+), 9 deletions(-) + +diff --git a/src/network/networkctl.c b/src/network/networkctl.c +index 8a08304240..7b33e0db17 100644 +--- a/src/network/networkctl.c ++++ b/src/network/networkctl.c +@@ -56,7 +56,7 @@ static bool arg_no_pager = false; + static bool arg_legend = true; + static bool arg_all = false; + +-static int link_get_type_string(unsigned short iftype, sd_device *d, char **ret) { ++static void link_get_type_string(unsigned short iftype, sd_device *d, char **ret) { + const char *t; + char *p; + +@@ -69,27 +69,25 @@ static int link_get_type_string(unsigned short iftype, sd_device *d, char **ret) + if (!isempty(devtype)) { + p = strdup(devtype); + if (!p) +- return -ENOMEM; ++ return; + + *ret = p; +- return 1; ++ return; + } + } + + t = arphrd_to_name(iftype); + if (!t) { + *ret = NULL; +- return 0; ++ return; + } + + p = strdup(t); + if (!p) +- return -ENOMEM; ++ return; + + ascii_strlower(p); + *ret = p; +- +- return 0; + } + + static void operational_state_to_color(const char *state, const char **on, const char **off) { +@@ -314,7 +312,7 @@ static int list_links(int argc, char *argv[], void *userdata) { + xsprintf(devid, "n%i", links[i].ifindex); + (void) sd_device_new_from_device_id(&d, devid); + +- (void) link_get_type_string(links[i].iftype, d, &t); ++ link_get_type_string(links[i].iftype, d, &t); + + printf("%3i %-16s %-18s %s%-11s%s %s%-10s%s\n", + links[i].ifindex, links[i].name, strna(t), +@@ -807,7 +805,7 @@ static int link_status_one( + (void) sd_device_get_property_value(d, "ID_MODEL", &model); + } + +- (void) link_get_type_string(info->iftype, d, &t); ++ link_get_type_string(info->iftype, d, &t); + + (void) sd_network_link_get_network_file(info->ifindex, &network); + + +From b55822c349d3e0559c1efc7475fd0f74cf086453 Mon Sep 17 00:00:00 2001 +From: "Jason A. Donenfeld" +Date: Mon, 29 Jan 2018 21:08:39 +0100 +Subject: [PATCH 4/4] networkd: clean up link_get_type_string returns + +It's cleaner and more consistent to actually return what we were +planning on returning. + +Signed-off-by: Jason A. Donenfeld +--- + src/network/networkctl.c | 28 +++++++++------------------- + 1 file changed, 9 insertions(+), 19 deletions(-) + +diff --git a/src/network/networkctl.c b/src/network/networkctl.c +index 7b33e0db17..14d8ecb03f 100644 +--- a/src/network/networkctl.c ++++ b/src/network/networkctl.c +@@ -56,38 +56,28 @@ static bool arg_no_pager = false; + static bool arg_legend = true; + static bool arg_all = false; + +-static void link_get_type_string(unsigned short iftype, sd_device *d, char **ret) { ++static char *link_get_type_string(unsigned short iftype, sd_device *d) { + const char *t; + char *p; + +- assert(ret); +- + if (d) { + const char *devtype = NULL; + + (void) sd_device_get_devtype(d, &devtype); +- if (!isempty(devtype)) { +- p = strdup(devtype); +- if (!p) +- return; +- +- *ret = p; +- return; +- } ++ if (!isempty(devtype)) ++ return strdup(devtype); + } + + t = arphrd_to_name(iftype); +- if (!t) { +- *ret = NULL; +- return; +- } ++ if (!t) ++ return NULL; + + p = strdup(t); + if (!p) +- return; ++ return NULL; + + ascii_strlower(p); +- *ret = p; ++ return p; + } + + static void operational_state_to_color(const char *state, const char **on, const char **off) { +@@ -312,7 +302,7 @@ static int list_links(int argc, char *argv[], void *userdata) { + xsprintf(devid, "n%i", links[i].ifindex); + (void) sd_device_new_from_device_id(&d, devid); + +- link_get_type_string(links[i].iftype, d, &t); ++ t = link_get_type_string(links[i].iftype, d); + + printf("%3i %-16s %-18s %s%-11s%s %s%-10s%s\n", + links[i].ifindex, links[i].name, strna(t), +@@ -805,7 +795,7 @@ static int link_status_one( + (void) sd_device_get_property_value(d, "ID_MODEL", &model); + } + +- link_get_type_string(info->iftype, d, &t); ++ t = link_get_type_string(info->iftype, d); + + (void) sd_network_link_get_network_file(info->ifindex, &network); + diff --git a/sys-apps/systemd/systemd-236-r5.ebuild b/sys-apps/systemd/systemd-236-r5.ebuild index c4083d365b11..013dfccd14c0 100644 --- a/sys-apps/systemd/systemd-236-r5.ebuild +++ b/sys-apps/systemd/systemd-236-r5.ebuild @@ -9,7 +9,7 @@ if [[ ${PV} == 9999 ]]; then else SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> ${P}.tar.gz https://dev.gentoo.org/~floppym/dist/${P}-patches-2.tar.gz" - KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 x86" + KEYWORDS="~alpha amd64 ~arm ~arm64 ia64 ~ppc ~ppc64 x86" fi PYTHON_COMPAT=( python{3_4,3_5,3_6} ) diff --git a/sys-apps/systemd/systemd-237-r1.ebuild b/sys-apps/systemd/systemd-237-r1.ebuild deleted file mode 100644 index 97ed32eebe70..000000000000 --- a/sys-apps/systemd/systemd-237-r1.ebuild +++ /dev/null @@ -1,439 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/systemd/systemd.git" - inherit git-r3 -else - SRC_URI="https://github.com/systemd/systemd/archive/v${PV}/${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86" -fi - -PYTHON_COMPAT=( python{3_4,3_5,3_6} ) - -inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev user - -DESCRIPTION="System and service manager for Linux" -HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd" - -LICENSE="GPL-2 LGPL-2.1 MIT public-domain" -SLOT="0/2" -IUSE="acl apparmor audit build cryptsetup curl elfutils +gcrypt gnuefi http idn importd +kmod libidn2 +lz4 lzma nat pam pcre policykit qrcode +seccomp selinux ssl +sysv-utils test usrmerge vanilla xkb" - -REQUIRED_USE="importd? ( curl gcrypt lzma )" -RESTRICT="!test? ( test )" - -MINKV="3.11" - -COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}] - sys-libs/libcap:0=[${MULTILIB_USEDEP}] - !=sys-process/audit-2:0= ) - cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= ) - curl? ( net-misc/curl:0= ) - elfutils? ( >=dev-libs/elfutils-0.158:0= ) - gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] ) - http? ( - >=net-libs/libmicrohttpd-0.9.33:0= - ssl? ( >=net-libs/gnutls-3.1.4:0= ) - ) - idn? ( - libidn2? ( net-dns/libidn2 ) - !libidn2? ( net-dns/libidn ) - ) - importd? ( - app-arch/bzip2:0= - sys-libs/zlib:0= - ) - kmod? ( >=sys-apps/kmod-15:0= ) - lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] ) - lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] ) - nat? ( net-firewall/iptables:0= ) - pam? ( virtual/pam:=[${MULTILIB_USEDEP}] ) - pcre? ( dev-libs/libpcre2 ) - qrcode? ( media-gfx/qrencode:0= ) - seccomp? ( >=sys-libs/libseccomp-2.3.1:0= ) - selinux? ( sys-libs/libselinux:0= ) - xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= ) - abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )" - -# baselayout-2.2 has /run -RDEPEND="${COMMON_DEPEND} - >=sys-apps/baselayout-2.2 - selinux? ( sec-policy/selinux-base-policy[systemd] ) - sysv-utils? ( !sys-apps/sysvinit ) - !sysv-utils? ( sys-apps/sysvinit ) - !build? ( || ( - sys-apps/util-linux[kill(-)] - sys-process/procps[kill(+)] - sys-apps/coreutils[kill(-)] - ) ) - !sys-auth/nss-myhostname - ! "${locale_conf}" <<-EOF - # This file has been created by the sys-apps/systemd ebuild. - # See locale.conf(5) and localectl(1). - - # LANG=${LANG} - EOF - eend ${?} || FAIL=1 - fi - fi - - if [[ ! -L ${envd_locale} ]]; then - # now, if env.d/??locale is not a symlink (to locale.conf)... - if [[ -e ${envd_locale} ]]; then - # ...warn the user that he has duplicate locale settings - ewarn - ewarn "To ensure consistent behavior, you should replace ${envd_locale}" - ewarn "with a symlink to ${locale_conf}. Please migrate your settings" - ewarn "and create the symlink with the following command:" - ewarn "ln -s -n -f ../locale.conf ${envd_locale}" - ewarn - else - # ...or just create the symlink if there's nothing here - ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink" - ln -n -s ../locale.conf "${envd_locale_def}" - eend ${?} || FAIL=1 - fi - fi -} - -pkg_postinst() { - newusergroup() { - enewgroup "$1" - enewuser "$1" -1 -1 -1 "$1" - } - - enewgroup input - enewgroup kvm 78 - enewgroup render - enewgroup systemd-journal - newusergroup systemd-bus-proxy - newusergroup systemd-coredump - newusergroup systemd-journal-gateway - newusergroup systemd-journal-remote - newusergroup systemd-journal-upload - newusergroup systemd-network - newusergroup systemd-resolve - newusergroup systemd-timesync - - systemd_update_catalog - - # Keep this here in case the database format changes so it gets updated - # when required. Despite that this file is owned by sys-apps/hwids. - if has_version "sys-apps/hwids[udev]"; then - udevadm hwdb --update --root="${EROOT%/}" - fi - - udev_reload || FAIL=1 - - # Bug 465468, make sure locales are respect, and ensure consistency - # between OpenRC & systemd - migrate_locale - - systemd_reenable systemd-networkd.service systemd-resolved.service - - if [[ ${FAIL} ]]; then - eerror "One of the postinst commands failed. Please check the postinst output" - eerror "for errors. You may need to clean up your system and/or try installing" - eerror "systemd again." - eerror - fi -} - -pkg_prerm() { - # If removing systemd completely, remove the catalog database. - if [[ ! ${REPLACED_BY_VERSION} ]]; then - rm -f -v "${EROOT}"/var/lib/systemd/catalog/database - fi -} diff --git a/sys-apps/systemd/systemd-237-r2.ebuild b/sys-apps/systemd/systemd-237-r2.ebuild new file mode 100644 index 000000000000..71abd1c33595 --- /dev/null +++ b/sys-apps/systemd/systemd-237-r2.ebuild @@ -0,0 +1,440 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +if [[ ${PV} == 9999 ]]; then + EGIT_REPO_URI="https://github.com/systemd/systemd.git" + inherit git-r3 +else + SRC_URI="https://github.com/systemd/systemd/archive/v${PV}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86" +fi + +PYTHON_COMPAT=( python{3_4,3_5,3_6} ) + +inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev user + +DESCRIPTION="System and service manager for Linux" +HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd" + +LICENSE="GPL-2 LGPL-2.1 MIT public-domain" +SLOT="0/2" +IUSE="acl apparmor audit build cryptsetup curl elfutils +gcrypt gnuefi http idn importd +kmod libidn2 +lz4 lzma nat pam pcre policykit qrcode +seccomp selinux ssl +sysv-utils test usrmerge vanilla xkb" + +REQUIRED_USE="importd? ( curl gcrypt lzma )" +RESTRICT="!test? ( test )" + +MINKV="3.11" + +COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}] + sys-libs/libcap:0=[${MULTILIB_USEDEP}] + !=sys-process/audit-2:0= ) + cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= ) + curl? ( net-misc/curl:0= ) + elfutils? ( >=dev-libs/elfutils-0.158:0= ) + gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] ) + http? ( + >=net-libs/libmicrohttpd-0.9.33:0= + ssl? ( >=net-libs/gnutls-3.1.4:0= ) + ) + idn? ( + libidn2? ( net-dns/libidn2 ) + !libidn2? ( net-dns/libidn ) + ) + importd? ( + app-arch/bzip2:0= + sys-libs/zlib:0= + ) + kmod? ( >=sys-apps/kmod-15:0= ) + lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] ) + lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] ) + nat? ( net-firewall/iptables:0= ) + pam? ( virtual/pam:=[${MULTILIB_USEDEP}] ) + pcre? ( dev-libs/libpcre2 ) + qrcode? ( media-gfx/qrencode:0= ) + seccomp? ( >=sys-libs/libseccomp-2.3.1:0= ) + selinux? ( sys-libs/libselinux:0= ) + xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= ) + abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9 + !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )" + +# baselayout-2.2 has /run +RDEPEND="${COMMON_DEPEND} + >=sys-apps/baselayout-2.2 + selinux? ( sec-policy/selinux-base-policy[systemd] ) + sysv-utils? ( !sys-apps/sysvinit ) + !sysv-utils? ( sys-apps/sysvinit ) + !build? ( || ( + sys-apps/util-linux[kill(-)] + sys-process/procps[kill(+)] + sys-apps/coreutils[kill(-)] + ) ) + !sys-auth/nss-myhostname + ! "${locale_conf}" <<-EOF + # This file has been created by the sys-apps/systemd ebuild. + # See locale.conf(5) and localectl(1). + + # LANG=${LANG} + EOF + eend ${?} || FAIL=1 + fi + fi + + if [[ ! -L ${envd_locale} ]]; then + # now, if env.d/??locale is not a symlink (to locale.conf)... + if [[ -e ${envd_locale} ]]; then + # ...warn the user that he has duplicate locale settings + ewarn + ewarn "To ensure consistent behavior, you should replace ${envd_locale}" + ewarn "with a symlink to ${locale_conf}. Please migrate your settings" + ewarn "and create the symlink with the following command:" + ewarn "ln -s -n -f ../locale.conf ${envd_locale}" + ewarn + else + # ...or just create the symlink if there's nothing here + ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink" + ln -n -s ../locale.conf "${envd_locale_def}" + eend ${?} || FAIL=1 + fi + fi +} + +pkg_postinst() { + newusergroup() { + enewgroup "$1" + enewuser "$1" -1 -1 -1 "$1" + } + + enewgroup input + enewgroup kvm 78 + enewgroup render + enewgroup systemd-journal + newusergroup systemd-bus-proxy + newusergroup systemd-coredump + newusergroup systemd-journal-gateway + newusergroup systemd-journal-remote + newusergroup systemd-journal-upload + newusergroup systemd-network + newusergroup systemd-resolve + newusergroup systemd-timesync + + systemd_update_catalog + + # Keep this here in case the database format changes so it gets updated + # when required. Despite that this file is owned by sys-apps/hwids. + if has_version "sys-apps/hwids[udev]"; then + udevadm hwdb --update --root="${EROOT%/}" + fi + + udev_reload || FAIL=1 + + # Bug 465468, make sure locales are respect, and ensure consistency + # between OpenRC & systemd + migrate_locale + + systemd_reenable systemd-networkd.service systemd-resolved.service + + if [[ ${FAIL} ]]; then + eerror "One of the postinst commands failed. Please check the postinst output" + eerror "for errors. You may need to clean up your system and/or try installing" + eerror "systemd again." + eerror + fi +} + +pkg_prerm() { + # If removing systemd completely, remove the catalog database. + if [[ ! ${REPLACED_BY_VERSION} ]]; then + rm -f -v "${EROOT}"/var/lib/systemd/catalog/database + fi +} -- cgit v1.2.3