diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-08-02 19:14:55 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-08-02 19:14:55 +0100 |
commit | b24bd25253fe093f722ab576d29fdc41d04cb1ee (patch) | |
tree | 0fcf2afd9f852c4d4c291cf8afaa2c244d598105 /sys-apps/systemd | |
parent | 121ed4eec41fbf03e1998d09eede1bf449da63b9 (diff) |
gentoo resync : 02.08.2019
Diffstat (limited to 'sys-apps/systemd')
-rw-r--r-- | sys-apps/systemd/Manifest | 9 | ||||
-rw-r--r-- | sys-apps/systemd/files/243-rc1-analyze.patch | 125 | ||||
-rw-r--r-- | sys-apps/systemd/systemd-242-r6.ebuild | 50 | ||||
-rw-r--r-- | sys-apps/systemd/systemd-243_rc1.ebuild (renamed from sys-apps/systemd/systemd-241-r4.ebuild) | 141 | ||||
-rw-r--r-- | sys-apps/systemd/systemd-9999.ebuild | 68 |
5 files changed, 253 insertions, 140 deletions
diff --git a/sys-apps/systemd/Manifest b/sys-apps/systemd/Manifest index 450fe874dbe2..864c14fa24d0 100644 --- a/sys-apps/systemd/Manifest +++ b/sys-apps/systemd/Manifest @@ -7,6 +7,7 @@ AUX 242-networkd-ipv6-token.patch 6525 BLAKE2B 4bbf64154f96419df91caf03f827f37bf AUX 242-rdrand-ryzen.patch 16177 BLAKE2B 7d1d3709098a233ba58727788b77c30025c0497fff9abb1df007e21160da3f93a7e9d14b0eeb7e6855bbe5fa93abfeda118156cbba355fc2976c83debcbb91d4 SHA512 38d00535a118b060accb8ed4e87681bab5e547270ef7e0abcdcf4766367e22761ffc35d0db7c829e86e0ad45f13cf4c761e71cfdfc70c2675056ef217c85618d AUX 242-socket-util-flush-accept.patch 2123 BLAKE2B 74bfbe440ae548b96d90b41ac45c440b21a63c61ae75a9d2b725d2bdec74a03aeca7b673a656821eb925e6740d6728a41d0dc30275287a92519b47d9c477c487 SHA512 7dd0daa70de4ee264d0b3dfe6f80b5e0c563e5bb5255ca2a92f26c4a993fca178f275f85c9048305b82b258d41c9bcbb28d74f9e2b6c2a0e77748464890cb907 AUX 242-wireguard-listenport.patch 1598 BLAKE2B 3266fe600db530ebb5b8eb726822daf14ee87292b035c09a1eb9a46638cc2dc3b8a3f11dd74684a79f3e521d3999b6b8c3a641f8f7475a5d45706567e00d26f6 SHA512 69e047000eb5ed36850bcbc6b8ef37a646b60a642a07a68547624e81aa6e49c77b848745ca4daad883151ddcaee9e7957ea6430f5a0c0c67ffc7887778f536e9 +AUX 243-rc1-analyze.patch 5053 BLAKE2B 5c2a5b320193406c7850762f51c007f94ba3ecba088539ac53f66a8e8af9c8c69b2e778b9d83776878505dc53a011321489b0259516e51ef27be576401d19a11 SHA512 49ce62b19e58b512997ad4c4d70f5f29c089890c502899a1bb930d9b69df00d7bed1d4e7e4a901cb1404df64add99037c04d962c95a05b0ac3b4e70a7023be7d AUX CVE-2019-6454/0001-Refuse-dbus-message-paths-longer-than-BUS_PATH_SIZE_.patch 1848 BLAKE2B 348c35881ce039f92d8fc8dc8c87af2efa95696afbe79ad8fc4e01129524bdf28b529ab86ec611d08446e589176c0678018d94d8c5fc068c65ab4eb429746cf9 SHA512 693afe328ebc20d34cbf07c632a8da90ee293147e793a599a4d2aac6f757738bfab93048a2f8ed6e68d16f865e9b4112e737c692ad01c7d4946f8c430714161d AUX CVE-2019-6454/0002-Allocate-temporary-strings-to-hold-dbus-paths-on-the.patch 6660 BLAKE2B 45acb2595245a5cbd10c2a9c7ffa2db0c4bd5b03ef8dc25eb51fc35dd51a49b3acd18bf4cf8db7f639e7a4e61592f3ce0bcb031bf27b0bf3ae6fc96c74445f77 SHA512 7c082ab4effc36543bab08700b84a3ccddfba5d5e87b324d6b935d75f5debb7a5f7be1c2e21208e8d1715f5d40619c8f775629acdde40d3c7b2f406b5c6d9460 AUX gentoo-Dont-enable-audit-by-default.patch 1027 BLAKE2B 9193a409db4e5c1dec6f6b66ee6e0a4cc1ada49d41ab758c788cf12534fffb67bd7370b8558a6af56572d7f2b73cf47db255fef105e56362c15f0a426f80b256 SHA512 44e512d8bbadbc5714192896a3ba262e460af034846e4e9b9832b4143fff772e2734e655316fd88d1ef386509bd234c195dce2087348f220836b3bf4f26790e0 @@ -14,9 +15,9 @@ AUX gentoo-generator-path-r1.patch 1037 BLAKE2B 5eb80521a6726c9b4693f9b0f56d3e68 AUX gentoo-systemd-user-pam.patch 443 BLAKE2B fad5c24f35666313efbf1e33640320058022fe17acff869a80104ed87ce0ad7ebaa1498915f8e933985e9c2d66d77172eb21ab480fc4fa857e0e5b985735831a SHA512 0a47368b1b38995a4193492e3add5c716c063366a9bc53dec03b7cb59b524da644033e095344da6e15e01dc84d8f5b335e7510442eeaba26e06918403fed0e5c AUX gentoo-uucp-group-r1.patch 562 BLAKE2B 98b629d9b20e4fedfb017864dca1346aa1766d606583d12930e0375a43b10871cfdafabacdaa5f3d70ed8e8f4256b66a61369f459419931e80f57a13cd9f953a SHA512 27a3f0a037494326674e9098eab96199d2dbbd84dfa94a7dd23df0bf7fc632d1ddb21643288e71cc64109342bbcfcc4d77add07348d70633ec1da7cdf2253dc9 AUX nsswitch.conf 734 BLAKE2B 5f5a7821a84f6c8aa31fe9a68c29a1a0f24be578d427a623f14a9ef795e7da481f226efe5511d92932b5edf5638fa719808a0c3a0b8fd340799dd6bcb703a0a1 SHA512 dcbd51dacaaebdff32edb3840cc7b9b47b6521009b8786690e3673a2e78bc60bfd8e591b1048c5d452117c6659b9917ae2864462f5057cc39b704b0130522e60 -DIST systemd-241.tar.gz 7640538 BLAKE2B 69d7196fee0d0ad06ea8d7c78b0299cc17517ecce3ca4c0b1181a3fbb13bc2627629156785051e2ff427dcc21414f7a078724c6409ebaa431618e4799ebcd50a SHA512 a7757574590e8aa37e1291ea0b2c5eb03a8d8062fe9462fa5b0bf50830c933e2b301d106c70d904f94afc0aa8e43a8acfd11926dfa25b1b89174580e491e545e DIST systemd-242.tar.gz 7831435 BLAKE2B 288e65d0a8e133ef5885689eb16118a83d93c730e342da63115cea0892fc999104c3a4856c83f3e7ef909ba2f3311146730b05ee02d84cc0400851ccbdcd54cd SHA512 578f68a3c8f2d454198fc04ff8d943abcfb390531d57f9603d185857f7afa7f4dc641dafecf49ce50fe22f5837b252b181400891e8efd4459fd4f69bb4283cb4 -EBUILD systemd-241-r4.ebuild 14021 BLAKE2B 7a0014e7f02b50ceb4f9f415151d0b08e1ede30198878e5cacd53e7bf92004e91e1a2cda881c54b6ae2be01a461e6e4dea466981e0a936c485e222b84a562ece SHA512 d9fabf0ec0241798a68b8dbed4c3d228fa856f5f911e4b66aaa7fa7fa0e1a8576c36f55fd2adff11a97cb3e73ea9859d3e91a1562cb32e15c9c4bbc884b95256 -EBUILD systemd-242-r6.ebuild 13930 BLAKE2B 501db4acaa27994de0b9f2a6f426b9504182c55e63e7c23357a37c347fdfbda6198de5031fc8d9a0c4a4f97cc6ffb6eee2739fbf08b3f505d48337d6ac78d5b6 SHA512 b6d503bde38f2ea5f508a67cd7e004df49f09fa90f231d21eda13aad5f1ffcee5f4f7c17f8b7592c11266758a6c25a8e96d28448d9a3c83f9a18359921d36559 -EBUILD systemd-9999.ebuild 13642 BLAKE2B a9118840d6af75bb76094c91ae8ad93ed29ed516daf4a9bd34894a349dad5b3bd70fa5f4e670fb8267a263add1cf9e77d6f21bb5ea66caa69f455bf3e84f9bed SHA512 2c94c375ae8c765707f1e310dc7c984da60c615f0bc5ab84edb8edde4a558ae80be53f118c6ab7e18df94d02d4d76daedb35345263630e4af7cf3e97729c96e9 +DIST systemd-243-rc1.tar.gz 8209533 BLAKE2B 6f28d839563104b488bfe030483bf1b24c3d01cedb59ffa655f03a37d7c636c2daef34ca9d13b9fbe848b131d21920138583c63a049c1747f7e569c68384c0bf SHA512 6626d7fd5781578d01a30c0d2647a293668d0819f2f85ce78a6aaf62ae1aa4b2c687cf237ca833c5befbc00321a344ff5ca56747cedc6ce00cd0f51c71dd25ff +EBUILD systemd-242-r6.ebuild 13863 BLAKE2B 0b99239d3a55dd85c3d337a12c91c49bf38eaf3f1a1aff4f3d1d7f90056c4a1559cb8a835cf1fa97ac7bbc3257298d34d09967f034a14f60d5c2cca2fea918d8 SHA512 e3bd2ab3986d99bca4ddafb3a831b389ed2dd728060388f401a4ea5e79adde28d2236aba6388788edacdfdcab7f023346a5ed157e9018b480c6db64cd47d9d45 +EBUILD systemd-243_rc1.ebuild 13399 BLAKE2B 30e2142f4098c9917f9f60e34fdaa05521856be9ac632dc9618cb69364352e02e3a85014561c71ee1664ac10c8c0a426e01b28e69fafb65a52b5b531b0348bbd SHA512 b20984a072a32b2f13a6ec9f251ba8218fdd785a3df6f117851d3a7e671be336409830366c1eeb035291a7b64216c41789fc5b1dee65ef00f37e52940b2377b9 +EBUILD systemd-9999.ebuild 13361 BLAKE2B fa7a0b0eb157fbe5132044cbf865dbbdb2e53396b0bec5a065c5248124c965b52c4bcdf9efa210b5f634a830f118462bbca5bd7be932ad459efc4b0179d7ba85 SHA512 7505f7d9803ac956fab47c13f75a686ef8797580b0d5f525cd21aa70696bdee6b10a49ae8bf78538f81012635e9854586428f19e4c3d57945db301c086c4c2e4 MISC metadata.xml 2035 BLAKE2B e38c5ee2b2db699ff926aab596d880804b57650ca3fc8627d92f0188249070b445263c3fa82b8a08b0aafa9d7a295790299928e34ae87e327f1f5665a2380beb SHA512 73083a03ae004e5c6d85747a122d715e14a2e81776a2e5d12e82621d10a51ece1d183f302df8eab3cf3a0192e5348a79145aebf56f4eec1e5b2ca82f4a6ebd00 diff --git a/sys-apps/systemd/files/243-rc1-analyze.patch b/sys-apps/systemd/files/243-rc1-analyze.patch new file mode 100644 index 000000000000..e38b51eb1210 --- /dev/null +++ b/sys-apps/systemd/files/243-rc1-analyze.patch @@ -0,0 +1,125 @@ +From 417b82e1c341946d277383471f2972b7227061ff Mon Sep 17 00:00:00 2001 +From: Mike Gilbert <floppym@gentoo.org> +Date: Tue, 30 Jul 2019 14:51:38 -0400 +Subject: [PATCH] analyze: declare dump_exit_status outside of HAVE_SECCOMP + block + +Fixes: 76ed04d936f757763c32db5dbaaebd8b13785d7b +Closes: https://github.com/systemd/systemd/issues/13230 +--- + src/analyze/analyze.c | 92 +++++++++++++++++++++---------------------- + 1 file changed, 46 insertions(+), 46 deletions(-) + +diff --git a/src/analyze/analyze.c b/src/analyze/analyze.c +index f62879371d..4d81026084 100644 +--- a/src/analyze/analyze.c ++++ b/src/analyze/analyze.c +@@ -1608,6 +1608,52 @@ static int dump_unit_paths(int argc, char *argv[], void *userdata) { + return 0; + } + ++static int dump_exit_status(int argc, char *argv[], void *userdata) { ++ _cleanup_(table_unrefp) Table *table = NULL; ++ int r; ++ ++ table = table_new("name", "status", "class"); ++ if (!table) ++ return log_oom(); ++ ++ r = table_set_align_percent(table, table_get_cell(table, 0, 1), 100); ++ if (r < 0) ++ return log_error_errno(r, "Failed to right-align status: %m"); ++ ++ if (strv_isempty(strv_skip(argv, 1))) ++ for (size_t i = 0; i < ELEMENTSOF(exit_status_mappings); i++) { ++ if (!exit_status_mappings[i].name) ++ continue; ++ ++ r = table_add_many(table, ++ TABLE_STRING, exit_status_mappings[i].name, ++ TABLE_INT, (int) i, ++ TABLE_STRING, exit_status_class(i)); ++ if (r < 0) ++ return r; ++ } ++ else ++ for (int i = 1; i < argc; i++) { ++ int status; ++ ++ status = exit_status_from_string(argv[i]); ++ if (status < 0) ++ return log_error_errno(r, "Invalid exit status \"%s\": %m", argv[i]); ++ ++ assert(status >= 0 && (size_t) status < ELEMENTSOF(exit_status_mappings)); ++ r = table_add_many(table, ++ TABLE_STRING, exit_status_mappings[status].name ?: "-", ++ TABLE_INT, status, ++ TABLE_STRING, exit_status_class(status) ?: "-"); ++ if (r < 0) ++ return r; ++ } ++ ++ (void) pager_open(arg_pager_flags); ++ ++ return table_print(table, NULL); ++} ++ + #if HAVE_SECCOMP + + static int load_kernel_syscalls(Set **ret) { +@@ -1685,52 +1731,6 @@ static void dump_syscall_filter(const SyscallFilterSet *set) { + printf(" %s%s%s\n", syscall[0] == '@' ? ansi_underline() : "", syscall, ansi_normal()); + } + +-static int dump_exit_status(int argc, char *argv[], void *userdata) { +- _cleanup_(table_unrefp) Table *table = NULL; +- int r; +- +- table = table_new("name", "status", "class"); +- if (!table) +- return log_oom(); +- +- r = table_set_align_percent(table, table_get_cell(table, 0, 1), 100); +- if (r < 0) +- return log_error_errno(r, "Failed to right-align status: %m"); +- +- if (strv_isempty(strv_skip(argv, 1))) +- for (size_t i = 0; i < ELEMENTSOF(exit_status_mappings); i++) { +- if (!exit_status_mappings[i].name) +- continue; +- +- r = table_add_many(table, +- TABLE_STRING, exit_status_mappings[i].name, +- TABLE_INT, (int) i, +- TABLE_STRING, exit_status_class(i)); +- if (r < 0) +- return r; +- } +- else +- for (int i = 1; i < argc; i++) { +- int status; +- +- status = exit_status_from_string(argv[i]); +- if (status < 0) +- return log_error_errno(r, "Invalid exit status \"%s\": %m", argv[i]); +- +- assert(status >= 0 && (size_t) status < ELEMENTSOF(exit_status_mappings)); +- r = table_add_many(table, +- TABLE_STRING, exit_status_mappings[status].name ?: "-", +- TABLE_INT, status, +- TABLE_STRING, exit_status_class(status) ?: "-"); +- if (r < 0) +- return r; +- } +- +- (void) pager_open(arg_pager_flags); +- +- return table_print(table, NULL); +-} +- + static int dump_syscall_filters(int argc, char *argv[], void *userdata) { + bool first = true; + +-- +2.22.0 + diff --git a/sys-apps/systemd/systemd-242-r6.ebuild b/sys-apps/systemd/systemd-242-r6.ebuild index 9ac1d4cb4722..eb97107359b6 100644 --- a/sys-apps/systemd/systemd-242-r6.ebuild +++ b/sys-apps/systemd/systemd-242-r6.ebuild @@ -11,12 +11,12 @@ else MY_P=${PN}-${MY_PV} S=${WORKDIR}/${MY_P} SRC_URI="https://github.com/systemd/systemd/archive/v${MY_PV}/${MY_P}.tar.gz" - KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ~ppc ~ppc64 sparc x86" + KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 sparc x86" fi PYTHON_COMPAT=( python{3_5,3_6,3_7} ) -inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev user +inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev DESCRIPTION="System and service manager for Linux" HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd" @@ -72,6 +72,26 @@ DEPEND="${COMMON_DEPEND} # baselayout-2.2 has /run RDEPEND="${COMMON_DEPEND} + acct-group/adm + acct-group/wheel + acct-group/kmem + acct-group/tty + acct-group/utmp + acct-group/audio + acct-group/cdrom + acct-group/dialout + acct-group/disk + acct-group/input + acct-group/kvm + acct-group/render + acct-group/tape + acct-group/video + acct-group/systemd-journal + acct-user/systemd-journal-remote + acct-user/systemd-coredump + acct-user/systemd-network + acct-user/systemd-resolve + acct-user/systemd-timesync >=sys-apps/baselayout-2.2 selinux? ( sec-policy/selinux-base-policy[systemd] ) sysv-utils? ( !sys-apps/sysvinit ) @@ -85,7 +105,8 @@ RDEPEND="${COMMON_DEPEND} !sys-auth/nss-myhostname !<sys-kernel/dracut-044 !sys-fs/eudev - !sys-fs/udev" + !sys-fs/udev +" # sys-apps/dbus: the daemon only (+ build-time lib dep for tests) PDEPEND=">=sys-apps/dbus-1.9.8[systemd] @@ -180,7 +201,6 @@ src_prepare() { PATCHES+=( "${FILESDIR}/gentoo-Dont-enable-audit-by-default.patch" "${FILESDIR}/gentoo-systemd-user-pam.patch" - "${FILESDIR}/gentoo-uucp-group-r1.patch" "${FILESDIR}/gentoo-generator-path-r1.patch" ) fi @@ -261,11 +281,10 @@ multilib_src_configure() { -Dselinux=$(meson_multilib_native_use selinux) -Ddbus=$(meson_multilib_native_use test) -Dxkbcommon=$(meson_multilib_native_use xkb) - # hardcode a few paths to spare some deps - -Dkill-path=/bin/kill -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org" # Breaks screen, tmux, etc. -Ddefault-kill-user-processes=false + -Dcreate-log-dirs=false # multilib options -Dbacklight=$(meson_multilib) @@ -350,7 +369,7 @@ multilib_src_install_all() { keepdir /usr/lib/{binfmt.d,modules-load.d} keepdir /usr/lib/systemd/user-generators keepdir /var/lib/systemd - rm -rf "${ED}"/var/log || die + keepdir /var/log/journal # Symlink /etc/sysctl.conf for easy migration. dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf @@ -426,23 +445,6 @@ pkg_preinst() { } pkg_postinst() { - newusergroup() { - enewgroup "$1" - enewuser "$1" -1 -1 -1 "$1" - } - - enewgroup input - enewgroup kvm 78 - enewgroup render - enewgroup systemd-journal - 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 diff --git a/sys-apps/systemd/systemd-241-r4.ebuild b/sys-apps/systemd/systemd-243_rc1.ebuild index 1ace2cf3dc3b..3f4f5a43b843 100644 --- a/sys-apps/systemd/systemd-241-r4.ebuild +++ b/sys-apps/systemd/systemd-243_rc1.ebuild @@ -11,19 +11,19 @@ else MY_P=${PN}-${MY_PV} S=${WORKDIR}/${MY_P} SRC_URI="https://github.com/systemd/systemd/archive/v${MY_PV}/${MY_P}.tar.gz" - KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 sparc x86" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" fi PYTHON_COMPAT=( python{3_5,3_6,3_7} ) -inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev user +inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev 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 +resolvconf +seccomp selinux split-usr ssl +sysv-utils test vanilla xkb" +IUSE="acl apparmor audit build cryptsetup curl dns-over-tls elfutils +gcrypt gnuefi http idn importd +kmod +lz4 lzma nat pam pcre policykit qrcode +resolvconf +seccomp selinux split-usr +sysv-utils test vanilla xkb" REQUIRED_USE="importd? ( curl gcrypt lzma )" RESTRICT="!test? ( test )" @@ -38,16 +38,14 @@ COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}] audit? ( >=sys-process/audit-2:0= ) cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= ) curl? ( net-misc/curl:0= ) + dns-over-tls? ( >=net-libs/gnutls-3.5.3: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:= ) + >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] + >=net-libs/gnutls-3.1.4:0= ) + idn? ( net-dns/libidn2:= ) importd? ( app-arch/bzip2:0= sys-libs/zlib:0= @@ -63,8 +61,34 @@ COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}] selinux? ( sys-libs/libselinux:0= ) xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )" +# Newer linux-headers needed by ia64, bug #480218 +DEPEND="${COMMON_DEPEND} + >=sys-kernel/linux-headers-${MINKV} + gnuefi? ( >=sys-boot/gnu-efi-3.0.2 ) +" + # baselayout-2.2 has /run RDEPEND="${COMMON_DEPEND} + acct-group/adm + acct-group/wheel + acct-group/kmem + acct-group/tty + acct-group/utmp + acct-group/audio + acct-group/cdrom + acct-group/dialout + acct-group/disk + acct-group/input + acct-group/kvm + acct-group/render + acct-group/tape + acct-group/video + acct-group/systemd-journal + acct-user/systemd-journal-remote + acct-user/systemd-coredump + acct-user/systemd-network + acct-user/systemd-resolve + acct-user/systemd-timesync >=sys-apps/baselayout-2.2 selinux? ( sec-policy/selinux-base-policy[systemd] ) sysv-utils? ( !sys-apps/sysvinit ) @@ -78,7 +102,8 @@ RDEPEND="${COMMON_DEPEND} !sys-auth/nss-myhostname !<sys-kernel/dracut-044 !sys-fs/eudev - !sys-fs/udev" + !sys-fs/udev +" # sys-apps/dbus: the daemon only (+ build-time lib dep for tests) PDEPEND=">=sys-apps/dbus-1.9.8[systemd] @@ -87,12 +112,6 @@ PDEPEND=">=sys-apps/dbus-1.9.8[systemd] policykit? ( sys-auth/polkit ) !vanilla? ( sys-apps/gentoo-systemd-integration )" -# Newer linux-headers needed by ia64, bug #480218 -DEPEND=" - >=sys-kernel/linux-headers-${MINKV} - gnuefi? ( >=sys-boot/gnu-efi-3.0.2 ) -" - BDEPEND=" app-arch/xz-utils:0 dev-util/gperf @@ -166,21 +185,13 @@ src_prepare() { # Add local patches here PATCHES+=( - "${FILESDIR}"/CVE-2019-6454/0001-Refuse-dbus-message-paths-longer-than-BUS_PATH_SIZE_.patch - "${FILESDIR}"/CVE-2019-6454/0002-Allocate-temporary-strings-to-hold-dbus-paths-on-the.patch - "${FILESDIR}"/241-version-dep.patch - "${FILESDIR}"/242-gcc-9.patch - "${FILESDIR}"/242-file-max.patch - "${FILESDIR}"/241-wrapper-msan-unpoinson.patch - "${FILESDIR}"/242-rdrand-ryzen.patch - "${FILESDIR}"/242-networkd-ipv6-token.patch + "${FILESDIR}"/243-rc1-analyze.patch ) if ! use vanilla; then PATCHES+=( "${FILESDIR}/gentoo-Dont-enable-audit-by-default.patch" "${FILESDIR}/gentoo-systemd-user-pam.patch" - "${FILESDIR}/gentoo-uucp-group-r1.patch" "${FILESDIR}/gentoo-generator-path-r1.patch" ) fi @@ -240,12 +251,13 @@ multilib_src_configure() { -Daudit=$(meson_multilib_native_use audit) -Dlibcryptsetup=$(meson_multilib_native_use cryptsetup) -Dlibcurl=$(meson_multilib_native_use curl) + -Ddns-over-tls=$(meson_multilib_native_use dns-over-tls) -Delfutils=$(meson_multilib_native_use elfutils) -Dgcrypt=$(meson_use gcrypt) -Dgnu-efi=$(meson_multilib_native_use gnuefi) - -Defi-libdir="${EPREFIX}/usr/$(get_libdir)" + -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)" -Dmicrohttpd=$(meson_multilib_native_use http) - $(usex http -Dgnutls=$(meson_multilib_native_use ssl) -Dgnutls=false) + -Didn=$(meson_multilib_native_use idn) -Dimportd=$(meson_multilib_native_use importd) -Dbzip2=$(meson_multilib_native_use importd) -Dzlib=$(meson_multilib_native_use importd) @@ -259,14 +271,12 @@ multilib_src_configure() { -Dqrencode=$(meson_multilib_native_use qrcode) -Dseccomp=$(meson_multilib_native_use seccomp) -Dselinux=$(meson_multilib_native_use selinux) - #-Dtests=$(meson_multilib_native_use test) -Ddbus=$(meson_multilib_native_use test) -Dxkbcommon=$(meson_multilib_native_use xkb) - # hardcode a few paths to spare some deps - -Dkill-path=/bin/kill -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org" # Breaks screen, tmux, etc. -Ddefault-kill-user-processes=false + -Dcreate-log-dirs=false # multilib options -Dbacklight=$(meson_multilib) @@ -291,18 +301,6 @@ multilib_src_configure() { -Dvconsole=$(meson_multilib) ) - if multilib_is_native_abi && use idn; then - myconf+=( - -Dlibidn2=$(usex libidn2 true false) - -Dlibidn=$(usex libidn2 false true) - ) - else - myconf+=( - -Dlibidn2=false - -Dlibidn=false - ) - fi - meson_src_configure "${myconf[@]}" } @@ -344,23 +342,18 @@ multilib_src_install_all() { # Preserve empty dirs in /etc & /var, bug #437008 keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d} - keepdir /etc/systemd/{ntp-units.d,user} /var/lib/systemd + keepdir /etc/kernel/install.d + keepdir /etc/systemd/{network,user} keepdir /etc/udev/{hwdb.d,rules.d} - keepdir /var/log/journal/remote + keepdir "${rootprefix}"/lib/systemd/{system-sleep,system-shutdown} + keepdir /usr/lib/{binfmt.d,modules-load.d} + keepdir /usr/lib/systemd/user-generators + keepdir /var/lib/systemd + keepdir /var/log/journal # Symlink /etc/sysctl.conf for easy migration. dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf - # If we install these symlinks, there is no way for the sysadmin to remove them - # permanently. - rm -f "${ED}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die - rm -f "${ED}"/etc/systemd/system/dbus-org.freedesktop.network1.service || die - rm -f "${ED}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die - rm -f "${ED}"/etc/systemd/system/dbus-org.freedesktop.resolve1.service || die - rm -fr "${ED}"/etc/systemd/system/network-online.target.wants || die - rm -fr "${ED}"/etc/systemd/system/sockets.target.wants || die - rm -fr "${ED}"/etc/systemd/system/sysinit.target.wants || die - local udevdir=/lib/udev use split-usr || udevdir=/usr/lib/udev @@ -417,25 +410,21 @@ migrate_locale() { 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 +save_enabled_units() { + ENABLED_UNITS=() + type systemctl &>/dev/null || return + for x; do + if systemctl --quiet --root="${ROOT:-/}" is-enabled "${x}"; then + ENABLED_UNITS+=( "${x}" ) + fi + done +} +pkg_preinst() { + save_enabled_units {machines,remote-{cryptsetup,fs}}.target getty@tty1.service +} + +pkg_postinst() { systemd_update_catalog # Keep this here in case the database format changes so it gets updated @@ -452,6 +441,14 @@ pkg_postinst() { systemd_reenable systemd-networkd.service systemd-resolved.service + if [[ ${ENABLED_UNITS[@]} ]]; then + systemctl --root="${ROOT:-/}" enable "${ENABLED_UNITS[@]}" + fi + + if [[ -L ${EROOT}/var/lib/systemd/timesync ]]; then + rm "${EROOT}/var/lib/systemd/timesync" + fi + if [[ -z ${ROOT} && -d /run/systemd/system ]]; then ebegin "Reexecuting system manager" systemctl daemon-reexec diff --git a/sys-apps/systemd/systemd-9999.ebuild b/sys-apps/systemd/systemd-9999.ebuild index e0fd800a5e9c..a2bb8171bab6 100644 --- a/sys-apps/systemd/systemd-9999.ebuild +++ b/sys-apps/systemd/systemd-9999.ebuild @@ -16,14 +16,14 @@ fi PYTHON_COMPAT=( python{3_5,3_6,3_7} ) -inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev user +inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev 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 dns-over-tls elfutils +gcrypt gnuefi http idn importd +kmod libidn2 +lz4 lzma nat pam pcre policykit qrcode +resolvconf +seccomp selinux split-usr +sysv-utils test vanilla xkb" +IUSE="acl apparmor audit build cryptsetup curl dns-over-tls elfutils +gcrypt gnuefi http idn importd +kmod +lz4 lzma nat pam pcre policykit qrcode +resolvconf +seccomp selinux split-usr +sysv-utils test vanilla xkb" REQUIRED_USE="importd? ( curl gcrypt lzma )" RESTRICT="!test? ( test )" @@ -45,10 +45,7 @@ COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}] >=net-libs/libmicrohttpd-0.9.33:0=[epoll(+)] >=net-libs/gnutls-3.1.4:0= ) - idn? ( - libidn2? ( net-dns/libidn2:= ) - !libidn2? ( net-dns/libidn:= ) - ) + idn? ( net-dns/libidn2:= ) importd? ( app-arch/bzip2:0= sys-libs/zlib:0= @@ -72,6 +69,26 @@ DEPEND="${COMMON_DEPEND} # baselayout-2.2 has /run RDEPEND="${COMMON_DEPEND} + acct-group/adm + acct-group/wheel + acct-group/kmem + acct-group/tty + acct-group/utmp + acct-group/audio + acct-group/cdrom + acct-group/dialout + acct-group/disk + acct-group/input + acct-group/kvm + acct-group/render + acct-group/tape + acct-group/video + acct-group/systemd-journal + acct-user/systemd-journal-remote + acct-user/systemd-coredump + acct-user/systemd-network + acct-user/systemd-resolve + acct-user/systemd-timesync >=sys-apps/baselayout-2.2 selinux? ( sec-policy/selinux-base-policy[systemd] ) sysv-utils? ( !sys-apps/sysvinit ) @@ -85,7 +102,8 @@ RDEPEND="${COMMON_DEPEND} !sys-auth/nss-myhostname !<sys-kernel/dracut-044 !sys-fs/eudev - !sys-fs/udev" + !sys-fs/udev +" # sys-apps/dbus: the daemon only (+ build-time lib dep for tests) PDEPEND=">=sys-apps/dbus-1.9.8[systemd] @@ -173,7 +191,6 @@ src_prepare() { PATCHES+=( "${FILESDIR}/gentoo-Dont-enable-audit-by-default.patch" "${FILESDIR}/gentoo-systemd-user-pam.patch" - "${FILESDIR}/gentoo-uucp-group-r1.patch" "${FILESDIR}/gentoo-generator-path-r1.patch" ) fi @@ -239,6 +256,7 @@ multilib_src_configure() { -Dgnu-efi=$(meson_multilib_native_use gnuefi) -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)" -Dmicrohttpd=$(meson_multilib_native_use http) + -Didn=$(meson_multilib_native_use idn) -Dimportd=$(meson_multilib_native_use importd) -Dbzip2=$(meson_multilib_native_use importd) -Dzlib=$(meson_multilib_native_use importd) @@ -254,11 +272,10 @@ multilib_src_configure() { -Dselinux=$(meson_multilib_native_use selinux) -Ddbus=$(meson_multilib_native_use test) -Dxkbcommon=$(meson_multilib_native_use xkb) - # hardcode a few paths to spare some deps - -Dkill-path=/bin/kill -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org" # Breaks screen, tmux, etc. -Ddefault-kill-user-processes=false + -Dcreate-log-dirs=false # multilib options -Dbacklight=$(meson_multilib) @@ -283,18 +300,6 @@ multilib_src_configure() { -Dvconsole=$(meson_multilib) ) - if multilib_is_native_abi && use idn; then - myconf+=( - -Dlibidn2=$(usex libidn2 true false) - -Dlibidn=$(usex libidn2 false true) - ) - else - myconf+=( - -Dlibidn2=false - -Dlibidn=false - ) - fi - meson_src_configure "${myconf[@]}" } @@ -343,7 +348,7 @@ multilib_src_install_all() { keepdir /usr/lib/{binfmt.d,modules-load.d} keepdir /usr/lib/systemd/user-generators keepdir /var/lib/systemd - rm -rf "${ED}"/var/log || die + keepdir /var/log/journal # Symlink /etc/sysctl.conf for easy migration. dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf @@ -419,23 +424,6 @@ pkg_preinst() { } pkg_postinst() { - newusergroup() { - enewgroup "$1" - enewuser "$1" -1 -1 -1 "$1" - } - - enewgroup input - enewgroup kvm 78 - enewgroup render - enewgroup systemd-journal - 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 |