Gentoo Archives: gentoo-commits

From: Mike Gilbert <floppym@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/systemd/
Date: Tue, 24 Nov 2015 16:28:06
Message-Id: 1448382458.064a64bc25f11be6a38b8b491aa77324f732bd99.floppym@gentoo
1 commit: 064a64bc25f11be6a38b8b491aa77324f732bd99
2 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org>
3 AuthorDate: Tue Nov 24 16:27:38 2015 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Tue Nov 24 16:27:38 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=064a64bc
7
8 sys-apps/systemd: Remove old
9
10 Package-Manager: portage-2.2.25_p7
11
12 sys-apps/systemd/Manifest | 4 -
13 sys-apps/systemd/systemd-218-r3.ebuild | 460 -----------------------------
14 sys-apps/systemd/systemd-218-r4.ebuild | 463 -----------------------------
15 sys-apps/systemd/systemd-219_p112.ebuild | 473 ------------------------------
16 sys-apps/systemd/systemd-224-r1.ebuild | 480 -------------------------------
17 sys-apps/systemd/systemd-225.ebuild | 479 ------------------------------
18 sys-apps/systemd/systemd-226.ebuild | 474 ------------------------------
19 7 files changed, 2833 deletions(-)
20
21 diff --git a/sys-apps/systemd/Manifest b/sys-apps/systemd/Manifest
22 index 9a79f06..4d8107e 100644
23 --- a/sys-apps/systemd/Manifest
24 +++ b/sys-apps/systemd/Manifest
25 @@ -1,7 +1,3 @@
26 DIST systemd-218.tar.xz 3782276 SHA256 1b0768b53b6c6d813a93a4b8fe1f80cf53561b09075010a97c7aa08eee3fd59b SHA512 c183cce8532ccb4716b84587c96a626eea390202a5469b9d89c8cee7f703e40d7c584e05f29501d375b8cd2a1409d011de564df16f54e27f66b3c3007a6e5bd4 WHIRLPOOL 4d0bcf3ddfecd3354d9f4ab13851f8da6baf31e89e64d3b1ac671159f16f23597d88cc2525aece2f867c140fc97e80bce086a5af91f84b8095e2503c13995e6d
27 -DIST systemd-219_p112.tar.xz 3944604 SHA256 8394ca0d55b05cb07c2187da8b614f3cb4eacc297c501dd09a31dad18acf28ea SHA512 480526ff45a8588b3a572ccc455d6357208093f5dae858947182f6e9e4595c1f612d1b661eff41f39f5df6ad0dcb6b0a08b08c15125baf1cf07402ac18a5130b WHIRLPOOL cf1ea60dc59a2a3f54cb66d24a529b742bd403f996a9e8f132fd9f9dc551308ee233fec4fec3e8feb7a657ccdd25e56a6e0756633a1c76a9c427588b262558d9
28 -DIST systemd-224.tar.gz 3868075 SHA256 0d7ac1532a57639fbc828f8a5051a090883c6ad2908618a7a13ab386db831bfc SHA512 7717d340c6de11afd589234b7ec8952fe2ffcd05829622bd7ea8e008870c0e3b83eb1eaf20e85ffffa7adafc9c0c0b94fd93784510792109240e22e6b963f198 WHIRLPOOL 645b08ff0c20994b17b8ed585fb0eef682336961d7fedf25031fa4dc89a4d9a2b58c254e0f9baeedcb228435316fdfb562f9fefd21e5a63f94499d2f1040e093
29 -DIST systemd-225.tar.gz 3878442 SHA256 b2f576bb3688e9315f2f49b98e141ac6f964567370e98ebd8fd7332a0a6f9701 SHA512 35b3946509c7b01660da4370d3c51ff0e6a537dadd9dbb0a039c4f7ed552fd4e02ebac6eb8a788f61f1e3ba99444238d959051dd004c174b027729a80368ac19 WHIRLPOOL 47cd3b5690dafdf3c0ef6a9767e947666b1853541f8aefd17eb5c07eee1477daf32f3b249b04327b1c56d8ec430745725383750b97755bb6cf594d354a7ffdf8
30 DIST systemd-226.tar.gz 3914162 SHA256 baff6a938c5579769330d0224280bf1a1ff5920151d7201545fc9880b6326c67 SHA512 565331661e7d144dcdf1505f9a1a70b20a9b904567478593a8fa47ed18f9eb68a9339cf32f117ede994676a84d0cfe3fcedbc9b8d8c964445b741a32271e5584 WHIRLPOOL 9f0d7b761ad84f0bb557a22738d7fcc1b6515340db776790d9199401017747a62c24de214300c1f00fb33f86284f3498cadbece713d6e66a30903475f6bce273
31 DIST systemd-228.tar.gz 4034401 SHA256 dd124ff561a07e6439ed2b3713f38ca914df7747f110ce86deea17b56d245ae6 SHA512 e54f282f550854dc082a4788709905e5767b75d2057e18d749b54821f2e44e0a8d1349b1a9180036cc854ecccaf5ff86b3b1dba4d3c2ce1b1fc766930ea4c0ea WHIRLPOOL 16b28367edc29a74f5b08691839da39a02d55bf5bcdffef55bfb1a2e8065eeecbe22a2b661e2d5f161f008d05baa000aff60d662d65db380d6c3fe0c1380eea1
32 -DIST systemd.conf.m4-v219 1493 SHA256 90ee489b6e34945e5cda27a269e1247644382084f5a145a2df691282007c6768 SHA512 a117c40229af3ba2a0cec4c3db01728c3cab49bb6403fc84cb34f8a09979d98f7a200cd28bf2bbc7a71cbad856edf31190fba30a9d5810c55911746457bbf31a WHIRLPOOL a1604a4fdf5e2d4a4505252859c64d0a3c131b4bb371cff8c75331438f291f138d2732d939947988ab95b040e377412db84fbf6c45866fee028a2aac70e8eb9f
33
34 diff --git a/sys-apps/systemd/systemd-218-r3.ebuild b/sys-apps/systemd/systemd-218-r3.ebuild
35 deleted file mode 100644
36 index a68aa19..0000000
37 --- a/sys-apps/systemd/systemd-218-r3.ebuild
38 +++ /dev/null
39 @@ -1,460 +0,0 @@
40 -# Copyright 1999-2015 Gentoo Foundation
41 -# Distributed under the terms of the GNU General Public License v2
42 -# $Id$
43 -
44 -EAPI=5
45 -
46 -AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
47 -PYTHON_COMPAT=( python{2_7,3_3,3_4} )
48 -inherit autotools-utils bash-completion-r1 linux-info multilib \
49 - multilib-minimal pam python-single-r1 systemd toolchain-funcs udev \
50 - user
51 -
52 -DESCRIPTION="System and service manager for Linux"
53 -HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
54 -SRC_URI="http://www.freedesktop.org/software/systemd/${P}.tar.xz"
55 -
56 -LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
57 -SLOT="0/2"
58 -KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86"
59 -IUSE="acl apparmor audit cryptsetup curl doc elfutils gcrypt gudev http
60 - idn introspection kdbus +kmod +lz4 lzma pam policykit python qrcode +seccomp
61 - selinux ssl sysv-utils terminal test vanilla xkb"
62 -
63 -MINKV="3.8"
64 -
65 -COMMON_DEPEND=">=sys-apps/util-linux-2.25:0=
66 - sys-libs/libcap:0=
67 - !<sys-libs/glibc-2.16
68 - acl? ( sys-apps/acl:0= )
69 - apparmor? ( sys-libs/libapparmor:0= )
70 - audit? ( >=sys-process/audit-2:0= )
71 - cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= )
72 - curl? ( net-misc/curl:0= )
73 - elfutils? ( >=dev-libs/elfutils-0.158:0= )
74 - gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
75 - gudev? ( >=dev-libs/glib-2.34.3:2=[${MULTILIB_USEDEP}] )
76 - http? (
77 - >=net-libs/libmicrohttpd-0.9.33:0=
78 - ssl? ( >=net-libs/gnutls-3.1.4:0= )
79 - )
80 - idn? ( net-dns/libidn:0= )
81 - introspection? ( >=dev-libs/gobject-introspection-1.31.1:0= )
82 - kmod? ( >=sys-apps/kmod-15:0= )
83 - lz4? ( >=app-arch/lz4-0_p119:0=[${MULTILIB_USEDEP}] )
84 - lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
85 - pam? ( virtual/pam:= )
86 - python? ( ${PYTHON_DEPS} )
87 - qrcode? ( media-gfx/qrencode:0= )
88 - seccomp? ( sys-libs/libseccomp:0= )
89 - selinux? ( sys-libs/libselinux:0= )
90 - sysv-utils? (
91 - !sys-apps/systemd-sysv-utils
92 - !sys-apps/sysvinit )
93 - terminal? ( >=dev-libs/libevdev-1.2:0=
94 - >=x11-libs/libxkbcommon-0.5:0=
95 - >=x11-libs/libdrm-2.4:0= )
96 - xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
97 - abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9
98 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
99 -
100 -# baselayout-2.2 has /run
101 -RDEPEND="${COMMON_DEPEND}
102 - >=sys-apps/baselayout-2.2
103 - !sys-auth/nss-myhostname
104 - !sys-fs/eudev
105 - !sys-fs/udev
106 - gudev? ( !dev-libs/libgudev )"
107 -
108 -# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
109 -PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd]
110 - >=sys-apps/hwids-20130717-r1[udev]
111 - >=sys-fs/udev-init-scripts-25
112 - policykit? ( sys-auth/polkit )
113 - !vanilla? ( sys-apps/gentoo-systemd-integration )"
114 -
115 -# Newer linux-headers needed by ia64, bug #480218
116 -DEPEND="${COMMON_DEPEND}
117 - app-arch/xz-utils:0
118 - dev-util/gperf
119 - >=dev-util/intltool-0.50
120 - >=sys-apps/coreutils-8.16
121 - >=sys-devel/binutils-2.23.1
122 - >=sys-devel/gcc-4.6
123 - >=sys-kernel/linux-headers-${MINKV}
124 - ia64? ( >=sys-kernel/linux-headers-3.9 )
125 - virtual/pkgconfig
126 - doc? ( >=dev-util/gtk-doc-1.18 )
127 - python? ( dev-python/lxml[${PYTHON_USEDEP}] )
128 - test? ( >=sys-apps/dbus-1.6.8-r1:0 )"
129 -
130 -PATCHES=( "${FILESDIR}/218-Dont-enable-audit-by-default.patch" )
131 -
132 -pkg_pretend() {
133 - local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
134 - ~DEVPTS_MULTIPLE_INSTANCES ~DEVTMPFS ~DMIID ~EPOLL ~FANOTIFY ~FHANDLE
135 - ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SECCOMP ~SIGNALFD ~SYSFS
136 - ~TIMERFD ~TMPFS_XATTR
137 - ~!FW_LOADER_USER_HELPER ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
138 - ~!SYSFS_DEPRECATED_V2"
139 -
140 - use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
141 - kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG"
142 -
143 - if linux_config_exists; then
144 - local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
145 - if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then
146 - ewarn "It's recommended to set an empty value to the following kernel config option:"
147 - ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
148 - fi
149 - fi
150 -
151 - if [[ ${MERGE_TYPE} != binary ]]; then
152 - if [[ $(gcc-major-version) -lt 4
153 - || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]]
154 - then
155 - eerror "systemd requires at least gcc 4.6 to build. Please switch the active"
156 - eerror "gcc version using gcc-config."
157 - die "systemd requires at least gcc 4.6"
158 - fi
159 - fi
160 -
161 - if [[ ${MERGE_TYPE} != buildonly ]]; then
162 - if kernel_is -lt ${MINKV//./ }; then
163 - ewarn "Kernel version at least ${MINKV} required"
164 - fi
165 -
166 - check_extra_config
167 - fi
168 -}
169 -
170 -pkg_setup() {
171 - use python && python-single-r1_pkg_setup
172 -}
173 -
174 -src_prepare() {
175 - # Bug 463376
176 - sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
177 -
178 - # missing in tarball
179 - cp "${FILESDIR}"/217-systemd-consoled.service.in \
180 - units/user/systemd-consoled.service.in || die
181 -
182 - autotools-utils_src_prepare
183 -}
184 -
185 -src_configure() {
186 - # Keep using the one where the rules were installed.
187 - MY_UDEVDIR=$(get_udevdir)
188 - # Fix systems broken by bug #509454.
189 - [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev
190 -
191 - multilib-minimal_src_configure
192 -}
193 -
194 -multilib_src_configure() {
195 - local myeconfargs=(
196 - # disable -flto since it is an optimization flag
197 - # and makes distcc less effective
198 - cc_cv_CFLAGS__flto=no
199 -
200 - # Workaround for bug 516346
201 - --enable-dependency-tracking
202 -
203 - --disable-maintainer-mode
204 - --localstatedir=/var
205 - --with-pamlibdir=$(getpam_mod_dir)
206 - # avoid bash-completion dep
207 - --with-bashcompletiondir="$(get_bashcompdir)"
208 - # make sure we get /bin:/sbin in $PATH
209 - --enable-split-usr
210 - # For testing.
211 - --with-rootprefix="${ROOTPREFIX-/usr}"
212 - --with-rootlibdir="${ROOTPREFIX-/usr}/$(get_libdir)"
213 - # disable sysv compatibility
214 - --with-sysvinit-path=
215 - --with-sysvrcnd-path=
216 - # no deps
217 - --enable-efi
218 - --enable-ima
219 -
220 - # Optional components/dependencies
221 - $(multilib_native_use_enable acl)
222 - $(multilib_native_use_enable apparmor)
223 - $(multilib_native_use_enable audit)
224 - $(multilib_native_use_enable cryptsetup libcryptsetup)
225 - $(multilib_native_use_enable curl libcurl)
226 - $(multilib_native_use_enable doc gtk-doc)
227 - $(multilib_native_use_enable elfutils)
228 - $(use_enable gcrypt)
229 - $(use_enable gudev)
230 - $(multilib_native_use_enable http microhttpd)
231 - $(usex http $(multilib_native_use_enable ssl gnutls) --disable-gnutls)
232 - $(multilib_native_use_enable idn libidn)
233 - $(multilib_native_use_enable introspection)
234 - $(use_enable kdbus)
235 - $(multilib_native_use_enable kmod)
236 - $(use_enable lz4)
237 - $(use_enable lzma xz)
238 - $(multilib_native_use_enable pam)
239 - $(multilib_native_use_enable policykit polkit)
240 - $(multilib_native_use_with python)
241 - $(multilib_native_use_enable python python-devel)
242 - $(multilib_native_use_enable qrcode qrencode)
243 - $(multilib_native_use_enable seccomp)
244 - $(multilib_native_use_enable selinux)
245 - $(multilib_native_use_enable terminal)
246 - $(multilib_native_use_enable test tests)
247 - $(multilib_native_use_enable test dbus)
248 - $(multilib_native_use_enable xkb xkbcommon)
249 -
250 - # not supported (avoid automagic deps in the future)
251 - --disable-chkconfig
252 -
253 - # hardcode a few paths to spare some deps
254 - QUOTAON=/usr/sbin/quotaon
255 - QUOTACHECK=/usr/sbin/quotacheck
256 -
257 - # dbus paths
258 - --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d"
259 - --with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
260 - --with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services"
261 - --with-dbusinterfacedir="${EPREFIX}/usr/share/dbus-1/interfaces"
262 -
263 - --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
264 - )
265 -
266 - if ! multilib_is_native_abi; then
267 - myeconfargs+=(
268 - MOUNT_{CFLAGS,LIBS}=' '
269 -
270 - ac_cv_search_cap_init=
271 - ac_cv_header_sys_capability_h=yes
272 - )
273 - fi
274 -
275 - # Work around bug 463846.
276 - tc-export CC
277 -
278 - autotools-utils_src_configure
279 -}
280 -
281 -multilib_src_compile() {
282 - local mymakeopts=(
283 - udevlibexecdir="${MY_UDEVDIR}"
284 - )
285 -
286 - if multilib_is_native_abi; then
287 - emake "${mymakeopts[@]}"
288 - else
289 - # prerequisites for gudev
290 - use gudev && emake src/gudev/gudev{enumtypes,marshal}.{c,h}
291 -
292 - echo 'gentoo: $(BUILT_SOURCES)' | \
293 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
294 - echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \
295 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
296 - fi
297 -}
298 -
299 -multilib_src_test() {
300 - multilib_is_native_abi || continue
301 -
302 - default
303 -}
304 -
305 -multilib_src_install() {
306 - local mymakeopts=(
307 - # automake fails with parallel libtool relinking
308 - # https://bugs.gentoo.org/show_bug.cgi?id=491398
309 - -j1
310 -
311 - udevlibexecdir="${MY_UDEVDIR}"
312 - dist_udevhwdb_DATA=
313 - DESTDIR="${D}"
314 - )
315 -
316 - if multilib_is_native_abi; then
317 - emake "${mymakeopts[@]}" install
318 - else
319 - mymakeopts+=(
320 - install-libLTLIBRARIES
321 - install-pkgconfiglibDATA
322 - install-includeHEADERS
323 - # safe to call unconditionally, 'installs' empty list
324 - install-libgudev_includeHEADERS
325 - install-pkgincludeHEADERS
326 - )
327 -
328 - emake "${mymakeopts[@]}"
329 - fi
330 -
331 - # install compat pkg-config files
332 - # Change dbus to >=sys-apps/dbus-1.8.8 if/when this is dropped.
333 - local pcfiles=( src/compat-libs/libsystemd-{daemon,id128,journal,login}.pc )
334 - emake "${mymakeopts[@]}" install-pkgconfiglibDATA \
335 - pkgconfiglib_DATA="${pcfiles[*]}"
336 -}
337 -
338 -multilib_src_install_all() {
339 - prune_libtool_files --modules
340 - einstalldocs
341 -
342 - if use sysv-utils; then
343 - for app in halt poweroff reboot runlevel shutdown telinit; do
344 - dosym "..${ROOTPREFIX-/usr}/bin/systemctl" /sbin/${app}
345 - done
346 - dosym "..${ROOTPREFIX-/usr}/lib/systemd/systemd" /sbin/init
347 - else
348 - # we just keep sysvinit tools, so no need for the mans
349 - rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
350 - || die
351 - rm "${D}"/usr/share/man/man1/init.1 || die
352 - fi
353 -
354 - # Disable storing coredumps in journald, bug #433457
355 - mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die
356 -
357 - # Preserve empty dirs in /etc & /var, bug #437008
358 - keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \
359 - /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd \
360 - /var/log/journal/remote
361 -
362 - # Symlink /etc/sysctl.conf for easy migration.
363 - dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
364 -
365 - # If we install these symlinks, there is no way for the sysadmin to remove them
366 - # permanently.
367 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die
368 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die
369 - rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
370 - rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
371 -}
372 -
373 -migrate_locale() {
374 - local envd_locale_def="${EROOT%/}/etc/env.d/02locale"
375 - local envd_locale=( "${EROOT%/}"/etc/env.d/??locale )
376 - local locale_conf="${EROOT%/}/etc/locale.conf"
377 -
378 - if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
379 - # If locale.conf does not exist...
380 - if [[ -e ${envd_locale} ]]; then
381 - # ...either copy env.d/??locale if there's one
382 - ebegin "Moving ${envd_locale} to ${locale_conf}"
383 - mv "${envd_locale}" "${locale_conf}"
384 - eend ${?} || FAIL=1
385 - else
386 - # ...or create a dummy default
387 - ebegin "Creating ${locale_conf}"
388 - cat > "${locale_conf}" <<-EOF
389 - # This file has been created by the sys-apps/systemd ebuild.
390 - # See locale.conf(5) and localectl(1).
391 -
392 - # LANG=${LANG}
393 - EOF
394 - eend ${?} || FAIL=1
395 - fi
396 - fi
397 -
398 - if [[ ! -L ${envd_locale} ]]; then
399 - # now, if env.d/??locale is not a symlink (to locale.conf)...
400 - if [[ -e ${envd_locale} ]]; then
401 - # ...warn the user that he has duplicate locale settings
402 - ewarn
403 - ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
404 - ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
405 - ewarn "and create the symlink with the following command:"
406 - ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
407 - ewarn
408 - else
409 - # ...or just create the symlink if there's nothing here
410 - ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
411 - ln -n -s ../locale.conf "${envd_locale_def}"
412 - eend ${?} || FAIL=1
413 - fi
414 - fi
415 -}
416 -
417 -migrate_net_name_slot() {
418 - # If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
419 - # do the same for 80-net-setup-link.rules to keep the old behavior
420 - local net_move=no
421 - local net_name_slot_sym=no
422 - local net_rules_path="${EROOT%/}"/etc/udev/rules.d
423 - local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
424 - local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
425 - if [[ -e ${net_setup_link} ]]; then
426 - net_move=no
427 - elif [[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]]; then
428 - net_move=yes
429 - elif [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
430 - net_move=yes
431 - net_name_slot_sym=yes
432 - fi
433 - if [[ ${net_move} == yes ]]; then
434 - ebegin "Copying ${net_name_slot} to ${net_setup_link}"
435 -
436 - if [[ ${net_name_slot_sym} == yes ]]; then
437 - ln -nfs /dev/null "${net_setup_link}"
438 - else
439 - cp "${net_name_slot}" "${net_setup_link}"
440 - fi
441 - eend $? || FAIL=1
442 - fi
443 -}
444 -
445 -pkg_postinst() {
446 - newusergroup() {
447 - enewgroup "$1"
448 - enewuser "$1" -1 -1 -1 "$1"
449 - }
450 -
451 - enewgroup input
452 - enewgroup systemd-journal
453 - newusergroup systemd-bus-proxy
454 - newusergroup systemd-journal-gateway
455 - newusergroup systemd-journal-remote
456 - newusergroup systemd-journal-upload
457 - newusergroup systemd-network
458 - newusergroup systemd-resolve
459 - newusergroup systemd-timesync
460 - use http && newusergroup systemd-journal-gateway
461 -
462 - systemd_update_catalog
463 -
464 - # Keep this here in case the database format changes so it gets updated
465 - # when required. Despite that this file is owned by sys-apps/hwids.
466 - if has_version "sys-apps/hwids[udev]"; then
467 - udevadm hwdb --update --root="${ROOT%/}"
468 - fi
469 -
470 - udev_reload || FAIL=1
471 -
472 - # Bug 465468, make sure locales are respect, and ensure consistency
473 - # between OpenRC & systemd
474 - migrate_locale
475 -
476 - # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules
477 - migrate_net_name_slot
478 -
479 - if [[ ${FAIL} ]]; then
480 - eerror "One of the postinst commands failed. Please check the postinst output"
481 - eerror "for errors. You may need to clean up your system and/or try installing"
482 - eerror "systemd again."
483 - eerror
484 - fi
485 -
486 - if [[ $(readlink "${ROOT}"/etc/resolv.conf) == */run/systemd/network/resolv.conf ]]; then
487 - ewarn "resolv.conf is now generated by systemd-resolved. To use it, enable"
488 - ewarn "systemd-resolved.service, and create a symlink from /etc/resolv.conf"
489 - ewarn "to /run/systemd/resolve/resolv.conf"
490 - ewarn
491 - fi
492 -}
493 -
494 -pkg_prerm() {
495 - # If removing systemd completely, remove the catalog database.
496 - if [[ ! ${REPLACED_BY_VERSION} ]]; then
497 - rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
498 - fi
499 -}
500
501 diff --git a/sys-apps/systemd/systemd-218-r4.ebuild b/sys-apps/systemd/systemd-218-r4.ebuild
502 deleted file mode 100644
503 index 7be421d..0000000
504 --- a/sys-apps/systemd/systemd-218-r4.ebuild
505 +++ /dev/null
506 @@ -1,463 +0,0 @@
507 -# Copyright 1999-2015 Gentoo Foundation
508 -# Distributed under the terms of the GNU General Public License v2
509 -# $Id$
510 -
511 -EAPI=5
512 -
513 -AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
514 -PYTHON_COMPAT=( python{2_7,3_3,3_4} )
515 -inherit autotools-utils bash-completion-r1 linux-info multilib \
516 - multilib-minimal pam python-single-r1 systemd toolchain-funcs udev \
517 - user
518 -
519 -DESCRIPTION="System and service manager for Linux"
520 -HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
521 -SRC_URI="http://www.freedesktop.org/software/systemd/${P}.tar.xz"
522 -
523 -LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
524 -SLOT="0/2"
525 -KEYWORDS="alpha amd64 arm ia64 ppc ppc64 sparc x86"
526 -IUSE="acl apparmor audit cryptsetup curl doc elfutils gcrypt gudev http
527 - idn introspection kdbus +kmod +lz4 lzma pam policykit python qrcode +seccomp
528 - selinux ssl sysv-utils terminal test vanilla xkb"
529 -
530 -MINKV="3.8"
531 -
532 -COMMON_DEPEND=">=sys-apps/util-linux-2.25:0=
533 - sys-libs/libcap:0=
534 - !<sys-libs/glibc-2.16
535 - acl? ( sys-apps/acl:0= )
536 - apparmor? ( sys-libs/libapparmor:0= )
537 - audit? ( >=sys-process/audit-2:0= )
538 - cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= )
539 - curl? ( net-misc/curl:0= )
540 - elfutils? ( >=dev-libs/elfutils-0.158:0= )
541 - gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
542 - gudev? ( >=dev-libs/glib-2.34.3:2=[${MULTILIB_USEDEP}] )
543 - http? (
544 - >=net-libs/libmicrohttpd-0.9.33:0=
545 - ssl? ( >=net-libs/gnutls-3.1.4:0= )
546 - )
547 - idn? ( net-dns/libidn:0= )
548 - introspection? ( >=dev-libs/gobject-introspection-1.31.1:0= )
549 - kmod? ( >=sys-apps/kmod-15:0= )
550 - lz4? ( >=app-arch/lz4-0_p119:0=[${MULTILIB_USEDEP}] )
551 - lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
552 - pam? ( virtual/pam:= )
553 - python? ( ${PYTHON_DEPS} )
554 - qrcode? ( media-gfx/qrencode:0= )
555 - seccomp? ( sys-libs/libseccomp:0= )
556 - selinux? ( sys-libs/libselinux:0= )
557 - sysv-utils? (
558 - !sys-apps/systemd-sysv-utils
559 - !sys-apps/sysvinit )
560 - terminal? ( >=dev-libs/libevdev-1.2:0=
561 - >=x11-libs/libxkbcommon-0.5:0=
562 - >=x11-libs/libdrm-2.4:0= )
563 - xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
564 - abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9
565 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
566 -
567 -# baselayout-2.2 has /run
568 -RDEPEND="${COMMON_DEPEND}
569 - >=sys-apps/baselayout-2.2
570 - !sys-auth/nss-myhostname
571 - !sys-fs/eudev
572 - !sys-fs/udev
573 - gudev? ( !dev-libs/libgudev )"
574 -
575 -# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
576 -PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd]
577 - >=sys-apps/hwids-20130717-r1[udev]
578 - >=sys-fs/udev-init-scripts-25
579 - policykit? ( sys-auth/polkit )
580 - !vanilla? ( sys-apps/gentoo-systemd-integration )"
581 -
582 -# Newer linux-headers needed by ia64, bug #480218
583 -DEPEND="${COMMON_DEPEND}
584 - app-arch/xz-utils:0
585 - dev-util/gperf
586 - >=dev-util/intltool-0.50
587 - >=sys-apps/coreutils-8.16
588 - >=sys-devel/binutils-2.23.1
589 - >=sys-devel/gcc-4.6
590 - >=sys-kernel/linux-headers-${MINKV}
591 - ia64? ( >=sys-kernel/linux-headers-3.9 )
592 - virtual/pkgconfig
593 - doc? ( >=dev-util/gtk-doc-1.18 )
594 - python? ( dev-python/lxml[${PYTHON_USEDEP}] )
595 - test? ( >=sys-apps/dbus-1.6.8-r1:0 )"
596 -
597 -PATCHES=(
598 - "${FILESDIR}/218-Dont-enable-audit-by-default.patch"
599 - "${FILESDIR}/218-noclean-tmp.patch"
600 -)
601 -
602 -pkg_pretend() {
603 - local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
604 - ~DEVPTS_MULTIPLE_INSTANCES ~DEVTMPFS ~DMIID ~EPOLL ~FANOTIFY ~FHANDLE
605 - ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SECCOMP ~SIGNALFD ~SYSFS
606 - ~TIMERFD ~TMPFS_XATTR
607 - ~!FW_LOADER_USER_HELPER ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
608 - ~!SYSFS_DEPRECATED_V2"
609 -
610 - use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
611 - kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG"
612 -
613 - if linux_config_exists; then
614 - local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
615 - if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then
616 - ewarn "It's recommended to set an empty value to the following kernel config option:"
617 - ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
618 - fi
619 - fi
620 -
621 - if [[ ${MERGE_TYPE} != binary ]]; then
622 - if [[ $(gcc-major-version) -lt 4
623 - || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]]
624 - then
625 - eerror "systemd requires at least gcc 4.6 to build. Please switch the active"
626 - eerror "gcc version using gcc-config."
627 - die "systemd requires at least gcc 4.6"
628 - fi
629 - fi
630 -
631 - if [[ ${MERGE_TYPE} != buildonly ]]; then
632 - if kernel_is -lt ${MINKV//./ }; then
633 - ewarn "Kernel version at least ${MINKV} required"
634 - fi
635 -
636 - check_extra_config
637 - fi
638 -}
639 -
640 -pkg_setup() {
641 - use python && python-single-r1_pkg_setup
642 -}
643 -
644 -src_prepare() {
645 - # Bug 463376
646 - sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
647 -
648 - # missing in tarball
649 - cp "${FILESDIR}"/217-systemd-consoled.service.in \
650 - units/user/systemd-consoled.service.in || die
651 -
652 - autotools-utils_src_prepare
653 -}
654 -
655 -src_configure() {
656 - # Keep using the one where the rules were installed.
657 - MY_UDEVDIR=$(get_udevdir)
658 - # Fix systems broken by bug #509454.
659 - [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev
660 -
661 - multilib-minimal_src_configure
662 -}
663 -
664 -multilib_src_configure() {
665 - local myeconfargs=(
666 - # disable -flto since it is an optimization flag
667 - # and makes distcc less effective
668 - cc_cv_CFLAGS__flto=no
669 -
670 - # Workaround for bug 516346
671 - --enable-dependency-tracking
672 -
673 - --disable-maintainer-mode
674 - --localstatedir=/var
675 - --with-pamlibdir=$(getpam_mod_dir)
676 - # avoid bash-completion dep
677 - --with-bashcompletiondir="$(get_bashcompdir)"
678 - # make sure we get /bin:/sbin in $PATH
679 - --enable-split-usr
680 - # For testing.
681 - --with-rootprefix="${ROOTPREFIX-/usr}"
682 - --with-rootlibdir="${ROOTPREFIX-/usr}/$(get_libdir)"
683 - # disable sysv compatibility
684 - --with-sysvinit-path=
685 - --with-sysvrcnd-path=
686 - # no deps
687 - --enable-efi
688 - --enable-ima
689 -
690 - # Optional components/dependencies
691 - $(multilib_native_use_enable acl)
692 - $(multilib_native_use_enable apparmor)
693 - $(multilib_native_use_enable audit)
694 - $(multilib_native_use_enable cryptsetup libcryptsetup)
695 - $(multilib_native_use_enable curl libcurl)
696 - $(multilib_native_use_enable doc gtk-doc)
697 - $(multilib_native_use_enable elfutils)
698 - $(use_enable gcrypt)
699 - $(use_enable gudev)
700 - $(multilib_native_use_enable http microhttpd)
701 - $(usex http $(multilib_native_use_enable ssl gnutls) --disable-gnutls)
702 - $(multilib_native_use_enable idn libidn)
703 - $(multilib_native_use_enable introspection)
704 - $(use_enable kdbus)
705 - $(multilib_native_use_enable kmod)
706 - $(use_enable lz4)
707 - $(use_enable lzma xz)
708 - $(multilib_native_use_enable pam)
709 - $(multilib_native_use_enable policykit polkit)
710 - $(multilib_native_use_with python)
711 - $(multilib_native_use_enable python python-devel)
712 - $(multilib_native_use_enable qrcode qrencode)
713 - $(multilib_native_use_enable seccomp)
714 - $(multilib_native_use_enable selinux)
715 - $(multilib_native_use_enable terminal)
716 - $(multilib_native_use_enable test tests)
717 - $(multilib_native_use_enable test dbus)
718 - $(multilib_native_use_enable xkb xkbcommon)
719 -
720 - # not supported (avoid automagic deps in the future)
721 - --disable-chkconfig
722 -
723 - # hardcode a few paths to spare some deps
724 - QUOTAON=/usr/sbin/quotaon
725 - QUOTACHECK=/usr/sbin/quotacheck
726 -
727 - # dbus paths
728 - --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d"
729 - --with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
730 - --with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services"
731 - --with-dbusinterfacedir="${EPREFIX}/usr/share/dbus-1/interfaces"
732 -
733 - --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
734 - )
735 -
736 - if ! multilib_is_native_abi; then
737 - myeconfargs+=(
738 - MOUNT_{CFLAGS,LIBS}=' '
739 -
740 - ac_cv_search_cap_init=
741 - ac_cv_header_sys_capability_h=yes
742 - )
743 - fi
744 -
745 - # Work around bug 463846.
746 - tc-export CC
747 -
748 - autotools-utils_src_configure
749 -}
750 -
751 -multilib_src_compile() {
752 - local mymakeopts=(
753 - udevlibexecdir="${MY_UDEVDIR}"
754 - )
755 -
756 - if multilib_is_native_abi; then
757 - emake "${mymakeopts[@]}"
758 - else
759 - # prerequisites for gudev
760 - use gudev && emake src/gudev/gudev{enumtypes,marshal}.{c,h}
761 -
762 - echo 'gentoo: $(BUILT_SOURCES)' | \
763 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
764 - echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \
765 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
766 - fi
767 -}
768 -
769 -multilib_src_test() {
770 - multilib_is_native_abi || continue
771 -
772 - default
773 -}
774 -
775 -multilib_src_install() {
776 - local mymakeopts=(
777 - # automake fails with parallel libtool relinking
778 - # https://bugs.gentoo.org/show_bug.cgi?id=491398
779 - -j1
780 -
781 - udevlibexecdir="${MY_UDEVDIR}"
782 - dist_udevhwdb_DATA=
783 - DESTDIR="${D}"
784 - )
785 -
786 - if multilib_is_native_abi; then
787 - emake "${mymakeopts[@]}" install
788 - else
789 - mymakeopts+=(
790 - install-libLTLIBRARIES
791 - install-pkgconfiglibDATA
792 - install-includeHEADERS
793 - # safe to call unconditionally, 'installs' empty list
794 - install-libgudev_includeHEADERS
795 - install-pkgincludeHEADERS
796 - )
797 -
798 - emake "${mymakeopts[@]}"
799 - fi
800 -
801 - # install compat pkg-config files
802 - # Change dbus to >=sys-apps/dbus-1.8.8 if/when this is dropped.
803 - local pcfiles=( src/compat-libs/libsystemd-{daemon,id128,journal,login}.pc )
804 - emake "${mymakeopts[@]}" install-pkgconfiglibDATA \
805 - pkgconfiglib_DATA="${pcfiles[*]}"
806 -}
807 -
808 -multilib_src_install_all() {
809 - prune_libtool_files --modules
810 - einstalldocs
811 -
812 - if use sysv-utils; then
813 - for app in halt poweroff reboot runlevel shutdown telinit; do
814 - dosym "..${ROOTPREFIX-/usr}/bin/systemctl" /sbin/${app}
815 - done
816 - dosym "..${ROOTPREFIX-/usr}/lib/systemd/systemd" /sbin/init
817 - else
818 - # we just keep sysvinit tools, so no need for the mans
819 - rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
820 - || die
821 - rm "${D}"/usr/share/man/man1/init.1 || die
822 - fi
823 -
824 - # Disable storing coredumps in journald, bug #433457
825 - mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die
826 -
827 - # Preserve empty dirs in /etc & /var, bug #437008
828 - keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \
829 - /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd \
830 - /var/log/journal/remote
831 -
832 - # Symlink /etc/sysctl.conf for easy migration.
833 - dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
834 -
835 - # If we install these symlinks, there is no way for the sysadmin to remove them
836 - # permanently.
837 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die
838 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die
839 - rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
840 - rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
841 -}
842 -
843 -migrate_locale() {
844 - local envd_locale_def="${EROOT%/}/etc/env.d/02locale"
845 - local envd_locale=( "${EROOT%/}"/etc/env.d/??locale )
846 - local locale_conf="${EROOT%/}/etc/locale.conf"
847 -
848 - if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
849 - # If locale.conf does not exist...
850 - if [[ -e ${envd_locale} ]]; then
851 - # ...either copy env.d/??locale if there's one
852 - ebegin "Moving ${envd_locale} to ${locale_conf}"
853 - mv "${envd_locale}" "${locale_conf}"
854 - eend ${?} || FAIL=1
855 - else
856 - # ...or create a dummy default
857 - ebegin "Creating ${locale_conf}"
858 - cat > "${locale_conf}" <<-EOF
859 - # This file has been created by the sys-apps/systemd ebuild.
860 - # See locale.conf(5) and localectl(1).
861 -
862 - # LANG=${LANG}
863 - EOF
864 - eend ${?} || FAIL=1
865 - fi
866 - fi
867 -
868 - if [[ ! -L ${envd_locale} ]]; then
869 - # now, if env.d/??locale is not a symlink (to locale.conf)...
870 - if [[ -e ${envd_locale} ]]; then
871 - # ...warn the user that he has duplicate locale settings
872 - ewarn
873 - ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
874 - ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
875 - ewarn "and create the symlink with the following command:"
876 - ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
877 - ewarn
878 - else
879 - # ...or just create the symlink if there's nothing here
880 - ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
881 - ln -n -s ../locale.conf "${envd_locale_def}"
882 - eend ${?} || FAIL=1
883 - fi
884 - fi
885 -}
886 -
887 -migrate_net_name_slot() {
888 - # If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
889 - # do the same for 80-net-setup-link.rules to keep the old behavior
890 - local net_move=no
891 - local net_name_slot_sym=no
892 - local net_rules_path="${EROOT%/}"/etc/udev/rules.d
893 - local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
894 - local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
895 - if [[ -e ${net_setup_link} ]]; then
896 - net_move=no
897 - elif [[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]]; then
898 - net_move=yes
899 - elif [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
900 - net_move=yes
901 - net_name_slot_sym=yes
902 - fi
903 - if [[ ${net_move} == yes ]]; then
904 - ebegin "Copying ${net_name_slot} to ${net_setup_link}"
905 -
906 - if [[ ${net_name_slot_sym} == yes ]]; then
907 - ln -nfs /dev/null "${net_setup_link}"
908 - else
909 - cp "${net_name_slot}" "${net_setup_link}"
910 - fi
911 - eend $? || FAIL=1
912 - fi
913 -}
914 -
915 -pkg_postinst() {
916 - newusergroup() {
917 - enewgroup "$1"
918 - enewuser "$1" -1 -1 -1 "$1"
919 - }
920 -
921 - enewgroup input
922 - enewgroup systemd-journal
923 - newusergroup systemd-bus-proxy
924 - newusergroup systemd-journal-gateway
925 - newusergroup systemd-journal-remote
926 - newusergroup systemd-journal-upload
927 - newusergroup systemd-network
928 - newusergroup systemd-resolve
929 - newusergroup systemd-timesync
930 - use http && newusergroup systemd-journal-gateway
931 -
932 - systemd_update_catalog
933 -
934 - # Keep this here in case the database format changes so it gets updated
935 - # when required. Despite that this file is owned by sys-apps/hwids.
936 - if has_version "sys-apps/hwids[udev]"; then
937 - udevadm hwdb --update --root="${ROOT%/}"
938 - fi
939 -
940 - udev_reload || FAIL=1
941 -
942 - # Bug 465468, make sure locales are respect, and ensure consistency
943 - # between OpenRC & systemd
944 - migrate_locale
945 -
946 - # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules
947 - migrate_net_name_slot
948 -
949 - if [[ ${FAIL} ]]; then
950 - eerror "One of the postinst commands failed. Please check the postinst output"
951 - eerror "for errors. You may need to clean up your system and/or try installing"
952 - eerror "systemd again."
953 - eerror
954 - fi
955 -
956 - if [[ $(readlink "${ROOT}"/etc/resolv.conf) == */run/systemd/network/resolv.conf ]]; then
957 - ewarn "resolv.conf is now generated by systemd-resolved. To use it, enable"
958 - ewarn "systemd-resolved.service, and create a symlink from /etc/resolv.conf"
959 - ewarn "to /run/systemd/resolve/resolv.conf"
960 - ewarn
961 - fi
962 -}
963 -
964 -pkg_prerm() {
965 - # If removing systemd completely, remove the catalog database.
966 - if [[ ! ${REPLACED_BY_VERSION} ]]; then
967 - rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
968 - fi
969 -}
970
971 diff --git a/sys-apps/systemd/systemd-219_p112.ebuild b/sys-apps/systemd/systemd-219_p112.ebuild
972 deleted file mode 100644
973 index 8994505..0000000
974 --- a/sys-apps/systemd/systemd-219_p112.ebuild
975 +++ /dev/null
976 @@ -1,473 +0,0 @@
977 -# Copyright 1999-2015 Gentoo Foundation
978 -# Distributed under the terms of the GNU General Public License v2
979 -# $Id$
980 -
981 -EAPI=5
982 -
983 -AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
984 -PYTHON_COMPAT=( python{2_7,3_3,3_4} )
985 -inherit autotools-utils bash-completion-r1 linux-info multilib \
986 - multilib-minimal pam python-single-r1 systemd toolchain-funcs udev \
987 - user
988 -
989 -DESCRIPTION="System and service manager for Linux"
990 -HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
991 -SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.xz
992 - http://cgit.freedesktop.org/systemd/systemd/plain/tmpfiles.d/systemd.conf.m4?id=v219 -> systemd.conf.m4-v219"
993 -
994 -LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
995 -SLOT="0/2"
996 -KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
997 -IUSE="acl apparmor audit cryptsetup curl doc elfutils gcrypt gudev http
998 - idn importd introspection kdbus +kmod +lz4 lzma nat pam policykit python
999 - qrcode +seccomp selinux ssl sysv-utils terminal test vanilla xkb"
1000 -REQUIRED_USE="importd? ( curl gcrypt lzma )"
1001 -
1002 -MINKV="3.8"
1003 -
1004 -COMMON_DEPEND=">=sys-apps/util-linux-2.25:0=
1005 - sys-libs/libcap:0=
1006 - !<sys-libs/glibc-2.16
1007 - acl? ( sys-apps/acl:0= )
1008 - apparmor? ( sys-libs/libapparmor:0= )
1009 - audit? ( >=sys-process/audit-2:0= )
1010 - cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= )
1011 - curl? ( net-misc/curl:0= )
1012 - elfutils? ( >=dev-libs/elfutils-0.158:0= )
1013 - gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
1014 - gudev? ( >=dev-libs/glib-2.34.3:2=[${MULTILIB_USEDEP}] )
1015 - http? (
1016 - >=net-libs/libmicrohttpd-0.9.33:0=
1017 - ssl? ( >=net-libs/gnutls-3.1.4:0= )
1018 - )
1019 - idn? ( net-dns/libidn:0= )
1020 - importd? (
1021 - app-arch/bzip2:0=
1022 - sys-libs/zlib:0=
1023 - )
1024 - introspection? ( >=dev-libs/gobject-introspection-1.31.1:0= )
1025 - kmod? ( >=sys-apps/kmod-15:0= )
1026 - lz4? ( >=app-arch/lz4-0_p119:0=[${MULTILIB_USEDEP}] )
1027 - lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
1028 - nat? ( net-firewall/iptables:0= )
1029 - pam? ( virtual/pam:= )
1030 - python? ( ${PYTHON_DEPS} )
1031 - qrcode? ( media-gfx/qrencode:0= )
1032 - seccomp? ( sys-libs/libseccomp:0= )
1033 - selinux? ( sys-libs/libselinux:0= )
1034 - sysv-utils? (
1035 - !sys-apps/systemd-sysv-utils
1036 - !sys-apps/sysvinit )
1037 - terminal? ( >=dev-libs/libevdev-1.2:0=
1038 - >=x11-libs/libxkbcommon-0.5:0=
1039 - >=x11-libs/libdrm-2.4:0= )
1040 - xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
1041 - abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9
1042 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
1043 -
1044 -# baselayout-2.2 has /run
1045 -RDEPEND="${COMMON_DEPEND}
1046 - >=sys-apps/baselayout-2.2
1047 - !sys-auth/nss-myhostname
1048 - !sys-fs/eudev
1049 - !sys-fs/udev
1050 - gudev? ( !dev-libs/libgudev )"
1051 -
1052 -# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
1053 -PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd]
1054 - >=sys-apps/hwids-20130717-r1[udev]
1055 - >=sys-fs/udev-init-scripts-25
1056 - policykit? ( sys-auth/polkit )
1057 - !vanilla? ( sys-apps/gentoo-systemd-integration )"
1058 -
1059 -# Newer linux-headers needed by ia64, bug #480218
1060 -DEPEND="${COMMON_DEPEND}
1061 - app-arch/xz-utils:0
1062 - dev-util/gperf
1063 - >=dev-util/intltool-0.50
1064 - >=sys-apps/coreutils-8.16
1065 - >=sys-devel/binutils-2.23.1
1066 - >=sys-devel/gcc-4.6
1067 - >=sys-kernel/linux-headers-${MINKV}
1068 - ia64? ( >=sys-kernel/linux-headers-3.9 )
1069 - virtual/pkgconfig
1070 - doc? ( >=dev-util/gtk-doc-1.18 )
1071 - python? ( dev-python/lxml[${PYTHON_USEDEP}] )
1072 - terminal? ( media-fonts/unifont[utils(+)] )
1073 - test? ( >=sys-apps/dbus-1.6.8-r1:0 )"
1074 -
1075 -PATCHES=( "${FILESDIR}/218-Dont-enable-audit-by-default.patch" )
1076 -S=${WORKDIR}/systemd-219
1077 -
1078 -pkg_pretend() {
1079 - local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
1080 - ~DEVPTS_MULTIPLE_INSTANCES ~DEVTMPFS ~DMIID ~EPOLL ~FANOTIFY ~FHANDLE
1081 - ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SECCOMP ~SIGNALFD ~SYSFS
1082 - ~TIMERFD ~TMPFS_XATTR
1083 - ~!FW_LOADER_USER_HELPER ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
1084 - ~!SYSFS_DEPRECATED_V2"
1085 -
1086 - use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
1087 - kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG"
1088 -
1089 - if linux_config_exists; then
1090 - local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
1091 - if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then
1092 - ewarn "It's recommended to set an empty value to the following kernel config option:"
1093 - ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
1094 - fi
1095 - fi
1096 -
1097 - if [[ ${MERGE_TYPE} != binary ]]; then
1098 - if [[ $(gcc-major-version) -lt 4
1099 - || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]]
1100 - then
1101 - eerror "systemd requires at least gcc 4.6 to build. Please switch the active"
1102 - eerror "gcc version using gcc-config."
1103 - die "systemd requires at least gcc 4.6"
1104 - fi
1105 - fi
1106 -
1107 - if [[ ${MERGE_TYPE} != buildonly ]]; then
1108 - if kernel_is -lt ${MINKV//./ }; then
1109 - ewarn "Kernel version at least ${MINKV} required"
1110 - fi
1111 -
1112 - check_extra_config
1113 - fi
1114 -}
1115 -
1116 -pkg_setup() {
1117 - use python && python-single-r1_pkg_setup
1118 -}
1119 -
1120 -src_unpack() {
1121 - unpack ${P}.tar.xz
1122 - cp "${DISTDIR}/systemd.conf.m4-v219" "${S}/tmpfiles.d/systemd.conf.m4" || die
1123 -}
1124 -
1125 -src_prepare() {
1126 - # Bug 463376
1127 - sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
1128 -
1129 - autotools-utils_src_prepare
1130 -}
1131 -
1132 -src_configure() {
1133 - # Keep using the one where the rules were installed.
1134 - MY_UDEVDIR=$(get_udevdir)
1135 - # Fix systems broken by bug #509454.
1136 - [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev
1137 -
1138 - multilib-minimal_src_configure
1139 -}
1140 -
1141 -multilib_src_configure() {
1142 - local myeconfargs=(
1143 - # disable -flto since it is an optimization flag
1144 - # and makes distcc less effective
1145 - cc_cv_CFLAGS__flto=no
1146 -
1147 - # Workaround for bug 516346
1148 - --enable-dependency-tracking
1149 -
1150 - --disable-maintainer-mode
1151 - --localstatedir=/var
1152 - --with-pamlibdir=$(getpam_mod_dir)
1153 - # avoid bash-completion dep
1154 - --with-bashcompletiondir="$(get_bashcompdir)"
1155 - # make sure we get /bin:/sbin in $PATH
1156 - --enable-split-usr
1157 - # For testing.
1158 - --with-rootprefix="${ROOTPREFIX-/usr}"
1159 - --with-rootlibdir="${ROOTPREFIX-/usr}/$(get_libdir)"
1160 - # disable sysv compatibility
1161 - --with-sysvinit-path=
1162 - --with-sysvrcnd-path=
1163 - # no deps
1164 - --enable-efi
1165 - --enable-ima
1166 -
1167 - # Optional components/dependencies
1168 - $(multilib_native_use_enable acl)
1169 - $(multilib_native_use_enable apparmor)
1170 - $(multilib_native_use_enable audit)
1171 - $(multilib_native_use_enable cryptsetup libcryptsetup)
1172 - $(multilib_native_use_enable curl libcurl)
1173 - $(multilib_native_use_enable doc gtk-doc)
1174 - $(multilib_native_use_enable elfutils)
1175 - $(use_enable gcrypt)
1176 - $(use_enable gudev)
1177 - $(multilib_native_use_enable http microhttpd)
1178 - $(usex http $(multilib_native_use_enable ssl gnutls) --disable-gnutls)
1179 - $(multilib_native_use_enable idn libidn)
1180 - $(multilib_native_use_enable importd)
1181 - $(multilib_native_use_enable importd bzip2)
1182 - $(multilib_native_use_enable importd zlib)
1183 - $(multilib_native_use_enable introspection)
1184 - $(use_enable kdbus)
1185 - $(multilib_native_use_enable kmod)
1186 - $(use_enable lz4)
1187 - $(use_enable lzma xz)
1188 - $(multilib_native_use_enable nat libiptc)
1189 - $(multilib_native_use_enable pam)
1190 - $(multilib_native_use_enable policykit polkit)
1191 - $(multilib_native_use_with python)
1192 - $(multilib_native_use_enable python python-devel)
1193 - $(multilib_native_use_enable qrcode qrencode)
1194 - $(multilib_native_use_enable seccomp)
1195 - $(multilib_native_use_enable selinux)
1196 - $(multilib_native_use_enable terminal)
1197 - $(multilib_native_use_enable test tests)
1198 - $(multilib_native_use_enable test dbus)
1199 - $(multilib_native_use_enable xkb xkbcommon)
1200 -
1201 - # not supported (avoid automagic deps in the future)
1202 - --disable-chkconfig
1203 -
1204 - # hardcode a few paths to spare some deps
1205 - QUOTAON=/usr/sbin/quotaon
1206 - QUOTACHECK=/usr/sbin/quotacheck
1207 -
1208 - # dbus paths
1209 - --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d"
1210 - --with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
1211 - --with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services"
1212 -
1213 - --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
1214 - )
1215 -
1216 - if ! multilib_is_native_abi; then
1217 - myeconfargs+=(
1218 - MOUNT_{CFLAGS,LIBS}=' '
1219 -
1220 - ac_cv_search_cap_init=
1221 - ac_cv_header_sys_capability_h=yes
1222 - )
1223 - fi
1224 -
1225 - # Work around bug 463846.
1226 - tc-export CC
1227 -
1228 - autotools-utils_src_configure
1229 -}
1230 -
1231 -multilib_src_compile() {
1232 - local mymakeopts=(
1233 - udevlibexecdir="${MY_UDEVDIR}"
1234 - )
1235 -
1236 - if multilib_is_native_abi; then
1237 - emake "${mymakeopts[@]}"
1238 - else
1239 - # prerequisites for gudev
1240 - use gudev && emake src/gudev/gudev{enumtypes,marshal}.{c,h}
1241 -
1242 - echo 'gentoo: $(BUILT_SOURCES)' | \
1243 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
1244 - echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \
1245 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
1246 - fi
1247 -}
1248 -
1249 -multilib_src_test() {
1250 - multilib_is_native_abi || continue
1251 -
1252 - default
1253 -}
1254 -
1255 -multilib_src_install() {
1256 - local mymakeopts=(
1257 - # automake fails with parallel libtool relinking
1258 - # https://bugs.gentoo.org/show_bug.cgi?id=491398
1259 - -j1
1260 -
1261 - udevlibexecdir="${MY_UDEVDIR}"
1262 - dist_udevhwdb_DATA=
1263 - DESTDIR="${D}"
1264 - )
1265 -
1266 - if multilib_is_native_abi; then
1267 - emake "${mymakeopts[@]}" install
1268 - else
1269 - mymakeopts+=(
1270 - install-libLTLIBRARIES
1271 - install-pkgconfiglibDATA
1272 - install-includeHEADERS
1273 - # safe to call unconditionally, 'installs' empty list
1274 - install-libgudev_includeHEADERS
1275 - install-pkgincludeHEADERS
1276 - )
1277 -
1278 - emake "${mymakeopts[@]}"
1279 - fi
1280 -
1281 - # install compat pkg-config files
1282 - # Change dbus to >=sys-apps/dbus-1.8.8 if/when this is dropped.
1283 - local pcfiles=( src/compat-libs/libsystemd-{daemon,id128,journal,login}.pc )
1284 - emake "${mymakeopts[@]}" install-pkgconfiglibDATA \
1285 - pkgconfiglib_DATA="${pcfiles[*]}"
1286 -}
1287 -
1288 -multilib_src_install_all() {
1289 - prune_libtool_files --modules
1290 - einstalldocs
1291 -
1292 - if use sysv-utils; then
1293 - for app in halt poweroff reboot runlevel shutdown telinit; do
1294 - dosym "..${ROOTPREFIX-/usr}/bin/systemctl" /sbin/${app}
1295 - done
1296 - dosym "..${ROOTPREFIX-/usr}/lib/systemd/systemd" /sbin/init
1297 - else
1298 - # we just keep sysvinit tools, so no need for the mans
1299 - rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
1300 - || die
1301 - rm "${D}"/usr/share/man/man1/init.1 || die
1302 - fi
1303 -
1304 - # Disable storing coredumps in journald, bug #433457
1305 - mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die
1306 -
1307 - # Preserve empty dirs in /etc & /var, bug #437008
1308 - keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \
1309 - /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd \
1310 - /var/log/journal/remote
1311 -
1312 - # Symlink /etc/sysctl.conf for easy migration.
1313 - dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
1314 -
1315 - # If we install these symlinks, there is no way for the sysadmin to remove them
1316 - # permanently.
1317 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die
1318 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die
1319 - rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
1320 - rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
1321 -}
1322 -
1323 -migrate_locale() {
1324 - local envd_locale_def="${EROOT%/}/etc/env.d/02locale"
1325 - local envd_locale=( "${EROOT%/}"/etc/env.d/??locale )
1326 - local locale_conf="${EROOT%/}/etc/locale.conf"
1327 -
1328 - if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
1329 - # If locale.conf does not exist...
1330 - if [[ -e ${envd_locale} ]]; then
1331 - # ...either copy env.d/??locale if there's one
1332 - ebegin "Moving ${envd_locale} to ${locale_conf}"
1333 - mv "${envd_locale}" "${locale_conf}"
1334 - eend ${?} || FAIL=1
1335 - else
1336 - # ...or create a dummy default
1337 - ebegin "Creating ${locale_conf}"
1338 - cat > "${locale_conf}" <<-EOF
1339 - # This file has been created by the sys-apps/systemd ebuild.
1340 - # See locale.conf(5) and localectl(1).
1341 -
1342 - # LANG=${LANG}
1343 - EOF
1344 - eend ${?} || FAIL=1
1345 - fi
1346 - fi
1347 -
1348 - if [[ ! -L ${envd_locale} ]]; then
1349 - # now, if env.d/??locale is not a symlink (to locale.conf)...
1350 - if [[ -e ${envd_locale} ]]; then
1351 - # ...warn the user that he has duplicate locale settings
1352 - ewarn
1353 - ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
1354 - ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
1355 - ewarn "and create the symlink with the following command:"
1356 - ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
1357 - ewarn
1358 - else
1359 - # ...or just create the symlink if there's nothing here
1360 - ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
1361 - ln -n -s ../locale.conf "${envd_locale_def}"
1362 - eend ${?} || FAIL=1
1363 - fi
1364 - fi
1365 -}
1366 -
1367 -migrate_net_name_slot() {
1368 - # If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
1369 - # do the same for 80-net-setup-link.rules to keep the old behavior
1370 - local net_move=no
1371 - local net_name_slot_sym=no
1372 - local net_rules_path="${EROOT%/}"/etc/udev/rules.d
1373 - local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
1374 - local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
1375 - if [[ -e ${net_setup_link} ]]; then
1376 - net_move=no
1377 - elif [[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]]; then
1378 - net_move=yes
1379 - elif [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
1380 - net_move=yes
1381 - net_name_slot_sym=yes
1382 - fi
1383 - if [[ ${net_move} == yes ]]; then
1384 - ebegin "Copying ${net_name_slot} to ${net_setup_link}"
1385 -
1386 - if [[ ${net_name_slot_sym} == yes ]]; then
1387 - ln -nfs /dev/null "${net_setup_link}"
1388 - else
1389 - cp "${net_name_slot}" "${net_setup_link}"
1390 - fi
1391 - eend $? || FAIL=1
1392 - fi
1393 -}
1394 -
1395 -pkg_postinst() {
1396 - newusergroup() {
1397 - enewgroup "$1"
1398 - enewuser "$1" -1 -1 -1 "$1"
1399 - }
1400 -
1401 - enewgroup input
1402 - enewgroup systemd-journal
1403 - newusergroup systemd-bus-proxy
1404 - newusergroup systemd-journal-gateway
1405 - newusergroup systemd-journal-remote
1406 - newusergroup systemd-journal-upload
1407 - newusergroup systemd-network
1408 - newusergroup systemd-resolve
1409 - newusergroup systemd-timesync
1410 - use http && newusergroup systemd-journal-gateway
1411 -
1412 - systemd_update_catalog
1413 -
1414 - # Keep this here in case the database format changes so it gets updated
1415 - # when required. Despite that this file is owned by sys-apps/hwids.
1416 - if has_version "sys-apps/hwids[udev]"; then
1417 - udevadm hwdb --update --root="${ROOT%/}"
1418 - fi
1419 -
1420 - udev_reload || FAIL=1
1421 -
1422 - # Bug 465468, make sure locales are respect, and ensure consistency
1423 - # between OpenRC & systemd
1424 - migrate_locale
1425 -
1426 - # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules
1427 - migrate_net_name_slot
1428 -
1429 - if [[ ${FAIL} ]]; then
1430 - eerror "One of the postinst commands failed. Please check the postinst output"
1431 - eerror "for errors. You may need to clean up your system and/or try installing"
1432 - eerror "systemd again."
1433 - eerror
1434 - fi
1435 -
1436 - if [[ $(readlink "${ROOT}"/etc/resolv.conf) == */run/systemd/network/resolv.conf ]]; then
1437 - ewarn "resolv.conf is now generated by systemd-resolved. To use it, enable"
1438 - ewarn "systemd-resolved.service, and create a symlink from /etc/resolv.conf"
1439 - ewarn "to /run/systemd/resolve/resolv.conf"
1440 - ewarn
1441 - fi
1442 -}
1443 -
1444 -pkg_prerm() {
1445 - # If removing systemd completely, remove the catalog database.
1446 - if [[ ! ${REPLACED_BY_VERSION} ]]; then
1447 - rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
1448 - fi
1449 -}
1450
1451 diff --git a/sys-apps/systemd/systemd-224-r1.ebuild b/sys-apps/systemd/systemd-224-r1.ebuild
1452 deleted file mode 100644
1453 index 521109e..0000000
1454 --- a/sys-apps/systemd/systemd-224-r1.ebuild
1455 +++ /dev/null
1456 @@ -1,480 +0,0 @@
1457 -# Copyright 1999-2015 Gentoo Foundation
1458 -# Distributed under the terms of the GNU General Public License v2
1459 -# $Id$
1460 -
1461 -EAPI=5
1462 -
1463 -AUTOTOOLS_AUTORECONF=yes
1464 -AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
1465 -
1466 -if [[ ${PV} == 9999 ]]; then
1467 - EGIT_REPO_URI="https://github.com/systemd/systemd.git"
1468 - inherit git-r3
1469 -else
1470 - SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
1471 - KEYWORDS="~amd64 ~arm ~ia64 ~x86"
1472 -fi
1473 -
1474 -inherit autotools-utils bash-completion-r1 linux-info multilib \
1475 - multilib-minimal pam systemd toolchain-funcs udev user
1476 -
1477 -DESCRIPTION="System and service manager for Linux"
1478 -HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
1479 -
1480 -LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
1481 -SLOT="0/2"
1482 -IUSE="acl apparmor audit cryptsetup curl elfutils gcrypt gnuefi http
1483 - idn importd +kdbus +kmod +lz4 lzma nat pam policykit
1484 - qrcode +seccomp selinux ssl sysv-utils test vanilla xkb"
1485 -
1486 -REQUIRED_USE="importd? ( curl gcrypt lzma )"
1487 -
1488 -MINKV="3.8"
1489 -
1490 -COMMON_DEPEND=">=sys-apps/util-linux-2.26:0=[${MULTILIB_USEDEP}]
1491 - sys-libs/libcap:0=[${MULTILIB_USEDEP}]
1492 - !<sys-libs/glibc-2.16
1493 - acl? ( sys-apps/acl:0= )
1494 - apparmor? ( sys-libs/libapparmor:0= )
1495 - audit? ( >=sys-process/audit-2:0= )
1496 - cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= )
1497 - curl? ( net-misc/curl:0= )
1498 - elfutils? ( >=dev-libs/elfutils-0.158:0= )
1499 - gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
1500 - http? (
1501 - >=net-libs/libmicrohttpd-0.9.33:0=
1502 - ssl? ( >=net-libs/gnutls-3.1.4:0= )
1503 - )
1504 - idn? ( net-dns/libidn:0= )
1505 - importd? (
1506 - app-arch/bzip2:0=
1507 - sys-libs/zlib:0=
1508 - )
1509 - kmod? ( >=sys-apps/kmod-15:0= )
1510 - lz4? ( >=app-arch/lz4-0_p119:0=[${MULTILIB_USEDEP}] )
1511 - lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
1512 - nat? ( net-firewall/iptables:0= )
1513 - pam? ( virtual/pam:= )
1514 - qrcode? ( media-gfx/qrencode:0= )
1515 - seccomp? ( sys-libs/libseccomp:0= )
1516 - selinux? ( sys-libs/libselinux:0= )
1517 - sysv-utils? (
1518 - !sys-apps/systemd-sysv-utils
1519 - !sys-apps/sysvinit )
1520 - xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
1521 - abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9
1522 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
1523 -
1524 -# baselayout-2.2 has /run
1525 -RDEPEND="${COMMON_DEPEND}
1526 - >=sys-apps/baselayout-2.2
1527 - !sys-auth/nss-myhostname
1528 - !sys-fs/eudev
1529 - !sys-fs/udev"
1530 -
1531 -# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
1532 -PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd]
1533 - >=sys-apps/hwids-20150417[udev]
1534 - >=sys-fs/udev-init-scripts-25
1535 - policykit? ( sys-auth/polkit )
1536 - !vanilla? ( sys-apps/gentoo-systemd-integration )"
1537 -
1538 -# Newer linux-headers needed by ia64, bug #480218
1539 -DEPEND="${COMMON_DEPEND}
1540 - app-arch/xz-utils:0
1541 - dev-util/gperf
1542 - >=dev-util/intltool-0.50
1543 - >=sys-apps/coreutils-8.16
1544 - >=sys-devel/binutils-2.23.1
1545 - >=sys-devel/gcc-4.6
1546 - >=sys-kernel/linux-headers-${MINKV}
1547 - ia64? ( >=sys-kernel/linux-headers-3.9 )
1548 - virtual/pkgconfig
1549 - gnuefi? ( >=sys-boot/gnu-efi-3.0.2 )
1550 - test? ( >=sys-apps/dbus-1.6.8-r1:0 )"
1551 -
1552 -if [[ -n ${AUTOTOOLS_AUTORECONF} ]]; then
1553 - DEPEND+="
1554 - app-text/docbook-xml-dtd:4.2
1555 - app-text/docbook-xml-dtd:4.5
1556 - app-text/docbook-xsl-stylesheets
1557 - dev-libs/libxslt:0
1558 - >=dev-libs/libgcrypt-1.4.5:0"
1559 -fi
1560 -
1561 -PATCHES=(
1562 - "${FILESDIR}/218-Dont-enable-audit-by-default.patch"
1563 - "${FILESDIR}/224-0001-networkd-fix-neworkd-crash.patch"
1564 - "${FILESDIR}/224-0002-Use-getxpid-syscall-on-alpha-for-raw_getpid.patch"
1565 -)
1566 -
1567 -pkg_pretend() {
1568 - local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
1569 - ~DEVPTS_MULTIPLE_INSTANCES ~DEVTMPFS ~DMIID ~EPOLL ~FANOTIFY ~FHANDLE
1570 - ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SECCOMP ~SIGNALFD ~SYSFS
1571 - ~TIMERFD ~TMPFS_XATTR
1572 - ~!FW_LOADER_USER_HELPER ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
1573 - ~!SYSFS_DEPRECATED_V2"
1574 -
1575 - use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
1576 - kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG"
1577 -
1578 - if linux_config_exists; then
1579 - local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
1580 - if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then
1581 - ewarn "It's recommended to set an empty value to the following kernel config option:"
1582 - ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
1583 - fi
1584 - fi
1585 -
1586 - if [[ ${MERGE_TYPE} != binary ]]; then
1587 - if [[ $(gcc-major-version) -lt 4
1588 - || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]]
1589 - then
1590 - eerror "systemd requires at least gcc 4.6 to build. Please switch the active"
1591 - eerror "gcc version using gcc-config."
1592 - die "systemd requires at least gcc 4.6"
1593 - fi
1594 - fi
1595 -
1596 - if [[ ${MERGE_TYPE} != buildonly ]]; then
1597 - if kernel_is -lt ${MINKV//./ }; then
1598 - ewarn "Kernel version at least ${MINKV} required"
1599 - fi
1600 -
1601 - check_extra_config
1602 - fi
1603 -}
1604 -
1605 -pkg_setup() {
1606 - :
1607 -}
1608 -
1609 -src_unpack() {
1610 - default
1611 - [[ ${PV} != 9999 ]] || git-r3_src_unpack
1612 -}
1613 -
1614 -src_prepare() {
1615 - # Bug 463376
1616 - sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
1617 -
1618 - autotools-utils_src_prepare
1619 -}
1620 -
1621 -src_configure() {
1622 - # Keep using the one where the rules were installed.
1623 - MY_UDEVDIR=$(get_udevdir)
1624 - # Fix systems broken by bug #509454.
1625 - [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev
1626 -
1627 - multilib-minimal_src_configure
1628 -}
1629 -
1630 -multilib_src_configure() {
1631 - local myeconfargs=(
1632 - # disable -flto since it is an optimization flag
1633 - # and makes distcc less effective
1634 - cc_cv_CFLAGS__flto=no
1635 -
1636 - # Workaround for gcc-4.7, bug 554454.
1637 - cc_cv_CFLAGS__Werror_shadow=no
1638 -
1639 - # Workaround for bug 516346
1640 - --enable-dependency-tracking
1641 -
1642 - --disable-maintainer-mode
1643 - --localstatedir=/var
1644 - --with-pamlibdir=$(getpam_mod_dir)
1645 - # avoid bash-completion dep
1646 - --with-bashcompletiondir="$(get_bashcompdir)"
1647 - # make sure we get /bin:/sbin in $PATH
1648 - --enable-split-usr
1649 - # For testing.
1650 - --with-rootprefix="${ROOTPREFIX-/usr}"
1651 - --with-rootlibdir="${ROOTPREFIX-/usr}/$(get_libdir)"
1652 - # disable sysv compatibility
1653 - --with-sysvinit-path=
1654 - --with-sysvrcnd-path=
1655 - # no deps
1656 - --enable-efi
1657 - --enable-ima
1658 - --without-python
1659 -
1660 - # Optional components/dependencies
1661 - $(multilib_native_use_enable acl)
1662 - $(multilib_native_use_enable apparmor)
1663 - $(multilib_native_use_enable audit)
1664 - $(multilib_native_use_enable cryptsetup libcryptsetup)
1665 - $(multilib_native_use_enable curl libcurl)
1666 - $(multilib_native_use_enable elfutils)
1667 - $(use_enable gcrypt)
1668 - $(multilib_native_use_enable gnuefi)
1669 - $(multilib_native_use_enable http microhttpd)
1670 - $(usex http $(multilib_native_use_enable ssl gnutls) --disable-gnutls)
1671 - $(multilib_native_use_enable idn libidn)
1672 - $(multilib_native_use_enable importd)
1673 - $(multilib_native_use_enable importd bzip2)
1674 - $(multilib_native_use_enable importd zlib)
1675 - $(use_enable kdbus)
1676 - $(multilib_native_use_enable kmod)
1677 - $(use_enable lz4)
1678 - $(use_enable lzma xz)
1679 - $(multilib_native_use_enable nat libiptc)
1680 - $(multilib_native_use_enable pam)
1681 - $(multilib_native_use_enable policykit polkit)
1682 - $(multilib_native_use_enable qrcode qrencode)
1683 - $(multilib_native_use_enable seccomp)
1684 - $(multilib_native_use_enable selinux)
1685 - $(multilib_native_use_enable test tests)
1686 - $(multilib_native_use_enable test dbus)
1687 - $(multilib_native_use_enable xkb xkbcommon)
1688 -
1689 - # hardcode a few paths to spare some deps
1690 - QUOTAON=/usr/sbin/quotaon
1691 - QUOTACHECK=/usr/sbin/quotacheck
1692 -
1693 - # TODO: we may need to restrict this to gcc
1694 - EFI_CC="$(tc-getCC)"
1695 -
1696 - # dbus paths
1697 - --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d"
1698 - --with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
1699 - --with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services"
1700 -
1701 - --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
1702 - )
1703 -
1704 - # Work around bug 463846.
1705 - tc-export CC
1706 -
1707 - autotools-utils_src_configure
1708 -}
1709 -
1710 -multilib_src_compile() {
1711 - local mymakeopts=(
1712 - udevlibexecdir="${MY_UDEVDIR}"
1713 - )
1714 -
1715 - if multilib_is_native_abi; then
1716 - emake "${mymakeopts[@]}"
1717 - else
1718 - echo 'gentoo: $(BUILT_SOURCES)' | \
1719 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
1720 - echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \
1721 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
1722 - fi
1723 -}
1724 -
1725 -multilib_src_test() {
1726 - multilib_is_native_abi || continue
1727 -
1728 - default
1729 -}
1730 -
1731 -multilib_src_install() {
1732 - local mymakeopts=(
1733 - # automake fails with parallel libtool relinking
1734 - # https://bugs.gentoo.org/show_bug.cgi?id=491398
1735 - -j1
1736 -
1737 - udevlibexecdir="${MY_UDEVDIR}"
1738 - dist_udevhwdb_DATA=
1739 - DESTDIR="${D}"
1740 - )
1741 -
1742 - if multilib_is_native_abi; then
1743 - emake "${mymakeopts[@]}" install
1744 - else
1745 - mymakeopts+=(
1746 - install-libLTLIBRARIES
1747 - install-pkgconfiglibDATA
1748 - install-includeHEADERS
1749 - # safe to call unconditionally, 'installs' empty list
1750 - install-pkgincludeHEADERS
1751 - )
1752 -
1753 - emake "${mymakeopts[@]}"
1754 - fi
1755 -
1756 - # install compat pkg-config files
1757 - # Change dbus to >=sys-apps/dbus-1.8.8 if/when this is dropped.
1758 - local pcfiles=( src/compat-libs/libsystemd-{daemon,id128,journal,login}.pc )
1759 - emake "${mymakeopts[@]}" install-pkgconfiglibDATA \
1760 - pkgconfiglib_DATA="${pcfiles[*]}"
1761 -}
1762 -
1763 -multilib_src_install_all() {
1764 - prune_libtool_files --modules
1765 - einstalldocs
1766 -
1767 - if use sysv-utils; then
1768 - for app in halt poweroff reboot runlevel shutdown telinit; do
1769 - dosym "..${ROOTPREFIX-/usr}/bin/systemctl" /sbin/${app}
1770 - done
1771 - dosym "..${ROOTPREFIX-/usr}/lib/systemd/systemd" /sbin/init
1772 - else
1773 - # we just keep sysvinit tools, so no need for the mans
1774 - rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
1775 - || die
1776 - rm "${D}"/usr/share/man/man1/init.1 || die
1777 - fi
1778 -
1779 - # Disable storing coredumps in journald, bug #433457
1780 - mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die
1781 -
1782 - # Preserve empty dirs in /etc & /var, bug #437008
1783 - keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \
1784 - /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd \
1785 - /var/log/journal/remote
1786 -
1787 - # Symlink /etc/sysctl.conf for easy migration.
1788 - dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
1789 -
1790 - # If we install these symlinks, there is no way for the sysadmin to remove them
1791 - # permanently.
1792 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die
1793 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die
1794 - rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
1795 - rm -r "${D}"/etc/systemd/system/sockets.target.wants || die
1796 - rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
1797 -}
1798 -
1799 -migrate_locale() {
1800 - local envd_locale_def="${EROOT%/}/etc/env.d/02locale"
1801 - local envd_locale=( "${EROOT%/}"/etc/env.d/??locale )
1802 - local locale_conf="${EROOT%/}/etc/locale.conf"
1803 -
1804 - if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
1805 - # If locale.conf does not exist...
1806 - if [[ -e ${envd_locale} ]]; then
1807 - # ...either copy env.d/??locale if there's one
1808 - ebegin "Moving ${envd_locale} to ${locale_conf}"
1809 - mv "${envd_locale}" "${locale_conf}"
1810 - eend ${?} || FAIL=1
1811 - else
1812 - # ...or create a dummy default
1813 - ebegin "Creating ${locale_conf}"
1814 - cat > "${locale_conf}" <<-EOF
1815 - # This file has been created by the sys-apps/systemd ebuild.
1816 - # See locale.conf(5) and localectl(1).
1817 -
1818 - # LANG=${LANG}
1819 - EOF
1820 - eend ${?} || FAIL=1
1821 - fi
1822 - fi
1823 -
1824 - if [[ ! -L ${envd_locale} ]]; then
1825 - # now, if env.d/??locale is not a symlink (to locale.conf)...
1826 - if [[ -e ${envd_locale} ]]; then
1827 - # ...warn the user that he has duplicate locale settings
1828 - ewarn
1829 - ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
1830 - ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
1831 - ewarn "and create the symlink with the following command:"
1832 - ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
1833 - ewarn
1834 - else
1835 - # ...or just create the symlink if there's nothing here
1836 - ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
1837 - ln -n -s ../locale.conf "${envd_locale_def}"
1838 - eend ${?} || FAIL=1
1839 - fi
1840 - fi
1841 -}
1842 -
1843 -migrate_net_name_slot() {
1844 - # If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
1845 - # do the same for 80-net-setup-link.rules to keep the old behavior
1846 - local net_move=no
1847 - local net_name_slot_sym=no
1848 - local net_rules_path="${EROOT%/}"/etc/udev/rules.d
1849 - local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
1850 - local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
1851 - if [[ -e ${net_setup_link} ]]; then
1852 - net_move=no
1853 - elif [[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]]; then
1854 - net_move=yes
1855 - elif [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
1856 - net_move=yes
1857 - net_name_slot_sym=yes
1858 - fi
1859 - if [[ ${net_move} == yes ]]; then
1860 - ebegin "Copying ${net_name_slot} to ${net_setup_link}"
1861 -
1862 - if [[ ${net_name_slot_sym} == yes ]]; then
1863 - ln -nfs /dev/null "${net_setup_link}"
1864 - else
1865 - cp "${net_name_slot}" "${net_setup_link}"
1866 - fi
1867 - eend $? || FAIL=1
1868 - fi
1869 -}
1870 -
1871 -reenable_unit() {
1872 - if systemctl is-enabled --root="${ROOT}" "$1" &> /dev/null; then
1873 - ebegin "Re-enabling $1"
1874 - systemctl reenable --root="${ROOT}" "$1"
1875 - eend $? || FAIL=1
1876 - fi
1877 -}
1878 -
1879 -pkg_postinst() {
1880 - newusergroup() {
1881 - enewgroup "$1"
1882 - enewuser "$1" -1 -1 -1 "$1"
1883 - }
1884 -
1885 - enewgroup input
1886 - enewgroup systemd-journal
1887 - newusergroup systemd-bus-proxy
1888 - newusergroup systemd-journal-gateway
1889 - newusergroup systemd-journal-remote
1890 - newusergroup systemd-journal-upload
1891 - newusergroup systemd-network
1892 - newusergroup systemd-resolve
1893 - newusergroup systemd-timesync
1894 - use http && newusergroup systemd-journal-gateway
1895 -
1896 - systemd_update_catalog
1897 -
1898 - # Keep this here in case the database format changes so it gets updated
1899 - # when required. Despite that this file is owned by sys-apps/hwids.
1900 - if has_version "sys-apps/hwids[udev]"; then
1901 - udevadm hwdb --update --root="${ROOT%/}"
1902 - fi
1903 -
1904 - udev_reload || FAIL=1
1905 -
1906 - # Bug 465468, make sure locales are respect, and ensure consistency
1907 - # between OpenRC & systemd
1908 - migrate_locale
1909 -
1910 - # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules
1911 - migrate_net_name_slot
1912 -
1913 - # Re-enable systemd-networkd for socket activation
1914 - reenable_unit systemd-networkd.service
1915 -
1916 - if [[ ${FAIL} ]]; then
1917 - eerror "One of the postinst commands failed. Please check the postinst output"
1918 - eerror "for errors. You may need to clean up your system and/or try installing"
1919 - eerror "systemd again."
1920 - eerror
1921 - fi
1922 -
1923 - if [[ $(readlink "${ROOT}"/etc/resolv.conf) == */run/systemd/network/resolv.conf ]]; then
1924 - ewarn "resolv.conf is now generated by systemd-resolved. To use it, enable"
1925 - ewarn "systemd-resolved.service, and create a symlink from /etc/resolv.conf"
1926 - ewarn "to /run/systemd/resolve/resolv.conf"
1927 - ewarn
1928 - fi
1929 -}
1930 -
1931 -pkg_prerm() {
1932 - # If removing systemd completely, remove the catalog database.
1933 - if [[ ! ${REPLACED_BY_VERSION} ]]; then
1934 - rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
1935 - fi
1936 -}
1937
1938 diff --git a/sys-apps/systemd/systemd-225.ebuild b/sys-apps/systemd/systemd-225.ebuild
1939 deleted file mode 100644
1940 index 8e44315..0000000
1941 --- a/sys-apps/systemd/systemd-225.ebuild
1942 +++ /dev/null
1943 @@ -1,479 +0,0 @@
1944 -# Copyright 1999-2015 Gentoo Foundation
1945 -# Distributed under the terms of the GNU General Public License v2
1946 -# $Id$
1947 -
1948 -EAPI=5
1949 -
1950 -AUTOTOOLS_AUTORECONF=yes
1951 -AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
1952 -
1953 -if [[ ${PV} == 9999 ]]; then
1954 - EGIT_REPO_URI="https://github.com/systemd/systemd.git"
1955 - inherit git-r3
1956 -else
1957 - SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
1958 - KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
1959 -fi
1960 -
1961 -inherit autotools-utils bash-completion-r1 linux-info multilib \
1962 - multilib-minimal pam systemd toolchain-funcs udev user
1963 -
1964 -DESCRIPTION="System and service manager for Linux"
1965 -HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
1966 -
1967 -LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
1968 -SLOT="0/2"
1969 -IUSE="acl apparmor audit cryptsetup curl elfutils gcrypt gnuefi http
1970 - idn importd +kdbus +kmod +lz4 lzma nat pam policykit
1971 - qrcode +seccomp selinux ssl sysv-utils test vanilla xkb"
1972 -
1973 -REQUIRED_USE="importd? ( curl gcrypt lzma )"
1974 -
1975 -MINKV="3.8"
1976 -
1977 -COMMON_DEPEND=">=sys-apps/util-linux-2.26:0=[${MULTILIB_USEDEP}]
1978 - sys-libs/libcap:0=[${MULTILIB_USEDEP}]
1979 - !<sys-libs/glibc-2.16
1980 - acl? ( sys-apps/acl:0= )
1981 - apparmor? ( sys-libs/libapparmor:0= )
1982 - audit? ( >=sys-process/audit-2:0= )
1983 - cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= )
1984 - curl? ( net-misc/curl:0= )
1985 - elfutils? ( >=dev-libs/elfutils-0.158:0= )
1986 - gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
1987 - http? (
1988 - >=net-libs/libmicrohttpd-0.9.33:0=
1989 - ssl? ( >=net-libs/gnutls-3.1.4:0= )
1990 - )
1991 - idn? ( net-dns/libidn:0= )
1992 - importd? (
1993 - app-arch/bzip2:0=
1994 - sys-libs/zlib:0=
1995 - )
1996 - kmod? ( >=sys-apps/kmod-15:0= )
1997 - lz4? ( >=app-arch/lz4-0_p119:0=[${MULTILIB_USEDEP}] )
1998 - lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
1999 - nat? ( net-firewall/iptables:0= )
2000 - pam? ( virtual/pam:= )
2001 - qrcode? ( media-gfx/qrencode:0= )
2002 - seccomp? ( sys-libs/libseccomp:0= )
2003 - selinux? ( sys-libs/libselinux:0= )
2004 - sysv-utils? (
2005 - !sys-apps/systemd-sysv-utils
2006 - !sys-apps/sysvinit )
2007 - xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
2008 - abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9
2009 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
2010 -
2011 -# baselayout-2.2 has /run
2012 -RDEPEND="${COMMON_DEPEND}
2013 - >=sys-apps/baselayout-2.2
2014 - !sys-auth/nss-myhostname
2015 - !sys-fs/eudev
2016 - !sys-fs/udev"
2017 -
2018 -# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
2019 -PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd]
2020 - >=sys-apps/hwids-20150417[udev]
2021 - >=sys-fs/udev-init-scripts-25
2022 - policykit? ( sys-auth/polkit )
2023 - !vanilla? ( sys-apps/gentoo-systemd-integration )"
2024 -
2025 -# Newer linux-headers needed by ia64, bug #480218
2026 -DEPEND="${COMMON_DEPEND}
2027 - app-arch/xz-utils:0
2028 - dev-util/gperf
2029 - >=dev-util/intltool-0.50
2030 - >=sys-apps/coreutils-8.16
2031 - >=sys-devel/binutils-2.23.1
2032 - >=sys-devel/gcc-4.6
2033 - >=sys-kernel/linux-headers-${MINKV}
2034 - ia64? ( >=sys-kernel/linux-headers-3.9 )
2035 - virtual/pkgconfig
2036 - gnuefi? ( >=sys-boot/gnu-efi-3.0.2 )
2037 - test? ( >=sys-apps/dbus-1.6.8-r1:0 )"
2038 -
2039 -if [[ -n ${AUTOTOOLS_AUTORECONF} ]]; then
2040 - DEPEND+="
2041 - app-text/docbook-xml-dtd:4.2
2042 - app-text/docbook-xml-dtd:4.5
2043 - app-text/docbook-xsl-stylesheets
2044 - dev-libs/libxslt:0
2045 - >=dev-libs/libgcrypt-1.4.5:0"
2046 -fi
2047 -
2048 -PATCHES=( "${FILESDIR}/218-Dont-enable-audit-by-default.patch" )
2049 -
2050 -pkg_pretend() {
2051 - local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
2052 - ~DEVPTS_MULTIPLE_INSTANCES ~DEVTMPFS ~DMIID ~EPOLL ~FANOTIFY ~FHANDLE
2053 - ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SECCOMP ~SIGNALFD ~SYSFS
2054 - ~TIMERFD ~TMPFS_XATTR
2055 - ~!FW_LOADER_USER_HELPER ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
2056 - ~!SYSFS_DEPRECATED_V2"
2057 -
2058 - use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
2059 - kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG"
2060 -
2061 - if linux_config_exists; then
2062 - local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
2063 - if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then
2064 - ewarn "It's recommended to set an empty value to the following kernel config option:"
2065 - ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
2066 - fi
2067 - fi
2068 -
2069 - if [[ ${MERGE_TYPE} != binary ]]; then
2070 - if [[ $(gcc-major-version) -lt 4
2071 - || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]]
2072 - then
2073 - eerror "systemd requires at least gcc 4.6 to build. Please switch the active"
2074 - eerror "gcc version using gcc-config."
2075 - die "systemd requires at least gcc 4.6"
2076 - fi
2077 - fi
2078 -
2079 - if [[ ${MERGE_TYPE} != buildonly ]]; then
2080 - if kernel_is -lt ${MINKV//./ }; then
2081 - ewarn "Kernel version at least ${MINKV} required"
2082 - fi
2083 -
2084 - check_extra_config
2085 - fi
2086 -}
2087 -
2088 -pkg_setup() {
2089 - :
2090 -}
2091 -
2092 -src_unpack() {
2093 - default
2094 - [[ ${PV} != 9999 ]] || git-r3_src_unpack
2095 -}
2096 -
2097 -src_prepare() {
2098 - # Bug 463376
2099 - sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
2100 -
2101 - autotools-utils_src_prepare
2102 -}
2103 -
2104 -src_configure() {
2105 - # Keep using the one where the rules were installed.
2106 - MY_UDEVDIR=$(get_udevdir)
2107 - # Fix systems broken by bug #509454.
2108 - [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev
2109 -
2110 - # Prevent conflicts with i686 cross toolchain, bug 559726
2111 - tc-export AR CC NM OBJCOPY RANLIB
2112 -
2113 - multilib-minimal_src_configure
2114 -}
2115 -
2116 -multilib_src_configure() {
2117 - local myeconfargs=(
2118 - # disable -flto since it is an optimization flag
2119 - # and makes distcc less effective
2120 - cc_cv_CFLAGS__flto=no
2121 -
2122 - # Workaround for gcc-4.7, bug 554454.
2123 - cc_cv_CFLAGS__Werror_shadow=no
2124 -
2125 - # Workaround for bug 516346
2126 - --enable-dependency-tracking
2127 -
2128 - --disable-maintainer-mode
2129 - --localstatedir=/var
2130 - --with-pamlibdir=$(getpam_mod_dir)
2131 - # avoid bash-completion dep
2132 - --with-bashcompletiondir="$(get_bashcompdir)"
2133 - # make sure we get /bin:/sbin in $PATH
2134 - --enable-split-usr
2135 - # For testing.
2136 - --with-rootprefix="${ROOTPREFIX-/usr}"
2137 - --with-rootlibdir="${ROOTPREFIX-/usr}/$(get_libdir)"
2138 - # disable sysv compatibility
2139 - --with-sysvinit-path=
2140 - --with-sysvrcnd-path=
2141 - # no deps
2142 - --enable-efi
2143 - --enable-ima
2144 - --without-python
2145 -
2146 - # Optional components/dependencies
2147 - $(multilib_native_use_enable acl)
2148 - $(multilib_native_use_enable apparmor)
2149 - $(multilib_native_use_enable audit)
2150 - $(multilib_native_use_enable cryptsetup libcryptsetup)
2151 - $(multilib_native_use_enable curl libcurl)
2152 - $(multilib_native_use_enable elfutils)
2153 - $(use_enable gcrypt)
2154 - $(multilib_native_use_enable gnuefi)
2155 - $(multilib_native_use_enable http microhttpd)
2156 - $(usex http $(multilib_native_use_enable ssl gnutls) --disable-gnutls)
2157 - $(multilib_native_use_enable idn libidn)
2158 - $(multilib_native_use_enable importd)
2159 - $(multilib_native_use_enable importd bzip2)
2160 - $(multilib_native_use_enable importd zlib)
2161 - $(use_enable kdbus)
2162 - $(multilib_native_use_enable kmod)
2163 - $(use_enable lz4)
2164 - $(use_enable lzma xz)
2165 - $(multilib_native_use_enable nat libiptc)
2166 - $(multilib_native_use_enable pam)
2167 - $(multilib_native_use_enable policykit polkit)
2168 - $(multilib_native_use_enable qrcode qrencode)
2169 - $(multilib_native_use_enable seccomp)
2170 - $(multilib_native_use_enable selinux)
2171 - $(multilib_native_use_enable test tests)
2172 - $(multilib_native_use_enable test dbus)
2173 - $(multilib_native_use_enable xkb xkbcommon)
2174 -
2175 - # hardcode a few paths to spare some deps
2176 - QUOTAON=/usr/sbin/quotaon
2177 - QUOTACHECK=/usr/sbin/quotacheck
2178 -
2179 - # TODO: we may need to restrict this to gcc
2180 - EFI_CC="$(tc-getCC)"
2181 -
2182 - # dbus paths
2183 - --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d"
2184 - --with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
2185 - --with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services"
2186 -
2187 - --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
2188 - )
2189 -
2190 - # Work around bug 463846.
2191 - tc-export CC
2192 -
2193 - autotools-utils_src_configure
2194 -}
2195 -
2196 -multilib_src_compile() {
2197 - local mymakeopts=(
2198 - udevlibexecdir="${MY_UDEVDIR}"
2199 - )
2200 -
2201 - if multilib_is_native_abi; then
2202 - emake "${mymakeopts[@]}"
2203 - else
2204 - echo 'gentoo: $(BUILT_SOURCES)' | \
2205 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
2206 - echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \
2207 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
2208 - fi
2209 -}
2210 -
2211 -multilib_src_test() {
2212 - multilib_is_native_abi || continue
2213 -
2214 - default
2215 -}
2216 -
2217 -multilib_src_install() {
2218 - local mymakeopts=(
2219 - # automake fails with parallel libtool relinking
2220 - # https://bugs.gentoo.org/show_bug.cgi?id=491398
2221 - -j1
2222 -
2223 - udevlibexecdir="${MY_UDEVDIR}"
2224 - dist_udevhwdb_DATA=
2225 - DESTDIR="${D}"
2226 - )
2227 -
2228 - if multilib_is_native_abi; then
2229 - emake "${mymakeopts[@]}" install
2230 - else
2231 - mymakeopts+=(
2232 - install-libLTLIBRARIES
2233 - install-pkgconfiglibDATA
2234 - install-includeHEADERS
2235 - # safe to call unconditionally, 'installs' empty list
2236 - install-pkgincludeHEADERS
2237 - )
2238 -
2239 - emake "${mymakeopts[@]}"
2240 - fi
2241 -
2242 - # install compat pkg-config files
2243 - # Change dbus to >=sys-apps/dbus-1.8.8 if/when this is dropped.
2244 - local pcfiles=( src/compat-libs/libsystemd-{daemon,id128,journal,login}.pc )
2245 - emake "${mymakeopts[@]}" install-pkgconfiglibDATA \
2246 - pkgconfiglib_DATA="${pcfiles[*]}"
2247 -}
2248 -
2249 -multilib_src_install_all() {
2250 - prune_libtool_files --modules
2251 - einstalldocs
2252 -
2253 - if use sysv-utils; then
2254 - for app in halt poweroff reboot runlevel shutdown telinit; do
2255 - dosym "..${ROOTPREFIX-/usr}/bin/systemctl" /sbin/${app}
2256 - done
2257 - dosym "..${ROOTPREFIX-/usr}/lib/systemd/systemd" /sbin/init
2258 - else
2259 - # we just keep sysvinit tools, so no need for the mans
2260 - rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
2261 - || die
2262 - rm "${D}"/usr/share/man/man1/init.1 || die
2263 - fi
2264 -
2265 - # Disable storing coredumps in journald, bug #433457
2266 - mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die
2267 -
2268 - # Preserve empty dirs in /etc & /var, bug #437008
2269 - keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \
2270 - /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd \
2271 - /var/log/journal/remote
2272 -
2273 - # Symlink /etc/sysctl.conf for easy migration.
2274 - dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
2275 -
2276 - # If we install these symlinks, there is no way for the sysadmin to remove them
2277 - # permanently.
2278 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die
2279 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die
2280 - rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
2281 - rm -r "${D}"/etc/systemd/system/sockets.target.wants || die
2282 - rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
2283 -}
2284 -
2285 -migrate_locale() {
2286 - local envd_locale_def="${EROOT%/}/etc/env.d/02locale"
2287 - local envd_locale=( "${EROOT%/}"/etc/env.d/??locale )
2288 - local locale_conf="${EROOT%/}/etc/locale.conf"
2289 -
2290 - if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
2291 - # If locale.conf does not exist...
2292 - if [[ -e ${envd_locale} ]]; then
2293 - # ...either copy env.d/??locale if there's one
2294 - ebegin "Moving ${envd_locale} to ${locale_conf}"
2295 - mv "${envd_locale}" "${locale_conf}"
2296 - eend ${?} || FAIL=1
2297 - else
2298 - # ...or create a dummy default
2299 - ebegin "Creating ${locale_conf}"
2300 - cat > "${locale_conf}" <<-EOF
2301 - # This file has been created by the sys-apps/systemd ebuild.
2302 - # See locale.conf(5) and localectl(1).
2303 -
2304 - # LANG=${LANG}
2305 - EOF
2306 - eend ${?} || FAIL=1
2307 - fi
2308 - fi
2309 -
2310 - if [[ ! -L ${envd_locale} ]]; then
2311 - # now, if env.d/??locale is not a symlink (to locale.conf)...
2312 - if [[ -e ${envd_locale} ]]; then
2313 - # ...warn the user that he has duplicate locale settings
2314 - ewarn
2315 - ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
2316 - ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
2317 - ewarn "and create the symlink with the following command:"
2318 - ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
2319 - ewarn
2320 - else
2321 - # ...or just create the symlink if there's nothing here
2322 - ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
2323 - ln -n -s ../locale.conf "${envd_locale_def}"
2324 - eend ${?} || FAIL=1
2325 - fi
2326 - fi
2327 -}
2328 -
2329 -migrate_net_name_slot() {
2330 - # If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
2331 - # do the same for 80-net-setup-link.rules to keep the old behavior
2332 - local net_move=no
2333 - local net_name_slot_sym=no
2334 - local net_rules_path="${EROOT%/}"/etc/udev/rules.d
2335 - local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
2336 - local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
2337 - if [[ -e ${net_setup_link} ]]; then
2338 - net_move=no
2339 - elif [[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]]; then
2340 - net_move=yes
2341 - elif [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
2342 - net_move=yes
2343 - net_name_slot_sym=yes
2344 - fi
2345 - if [[ ${net_move} == yes ]]; then
2346 - ebegin "Copying ${net_name_slot} to ${net_setup_link}"
2347 -
2348 - if [[ ${net_name_slot_sym} == yes ]]; then
2349 - ln -nfs /dev/null "${net_setup_link}"
2350 - else
2351 - cp "${net_name_slot}" "${net_setup_link}"
2352 - fi
2353 - eend $? || FAIL=1
2354 - fi
2355 -}
2356 -
2357 -reenable_unit() {
2358 - if systemctl is-enabled --root="${ROOT}" "$1" &> /dev/null; then
2359 - ebegin "Re-enabling $1"
2360 - systemctl reenable --root="${ROOT}" "$1"
2361 - eend $? || FAIL=1
2362 - fi
2363 -}
2364 -
2365 -pkg_postinst() {
2366 - newusergroup() {
2367 - enewgroup "$1"
2368 - enewuser "$1" -1 -1 -1 "$1"
2369 - }
2370 -
2371 - enewgroup input
2372 - enewgroup systemd-journal
2373 - newusergroup systemd-bus-proxy
2374 - newusergroup systemd-journal-gateway
2375 - newusergroup systemd-journal-remote
2376 - newusergroup systemd-journal-upload
2377 - newusergroup systemd-network
2378 - newusergroup systemd-resolve
2379 - newusergroup systemd-timesync
2380 - use http && newusergroup systemd-journal-gateway
2381 -
2382 - systemd_update_catalog
2383 -
2384 - # Keep this here in case the database format changes so it gets updated
2385 - # when required. Despite that this file is owned by sys-apps/hwids.
2386 - if has_version "sys-apps/hwids[udev]"; then
2387 - udevadm hwdb --update --root="${ROOT%/}"
2388 - fi
2389 -
2390 - udev_reload || FAIL=1
2391 -
2392 - # Bug 465468, make sure locales are respect, and ensure consistency
2393 - # between OpenRC & systemd
2394 - migrate_locale
2395 -
2396 - # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules
2397 - migrate_net_name_slot
2398 -
2399 - # Re-enable systemd-networkd for socket activation
2400 - reenable_unit systemd-networkd.service
2401 -
2402 - if [[ ${FAIL} ]]; then
2403 - eerror "One of the postinst commands failed. Please check the postinst output"
2404 - eerror "for errors. You may need to clean up your system and/or try installing"
2405 - eerror "systemd again."
2406 - eerror
2407 - fi
2408 -
2409 - if [[ $(readlink "${ROOT}"/etc/resolv.conf) == */run/systemd/network/resolv.conf ]]; then
2410 - ewarn "resolv.conf is now generated by systemd-resolved. To use it, enable"
2411 - ewarn "systemd-resolved.service, and create a symlink from /etc/resolv.conf"
2412 - ewarn "to /run/systemd/resolve/resolv.conf"
2413 - ewarn
2414 - fi
2415 -}
2416 -
2417 -pkg_prerm() {
2418 - # If removing systemd completely, remove the catalog database.
2419 - if [[ ! ${REPLACED_BY_VERSION} ]]; then
2420 - rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
2421 - fi
2422 -}
2423
2424 diff --git a/sys-apps/systemd/systemd-226.ebuild b/sys-apps/systemd/systemd-226.ebuild
2425 deleted file mode 100644
2426 index 6068bc6..0000000
2427 --- a/sys-apps/systemd/systemd-226.ebuild
2428 +++ /dev/null
2429 @@ -1,474 +0,0 @@
2430 -# Copyright 1999-2015 Gentoo Foundation
2431 -# Distributed under the terms of the GNU General Public License v2
2432 -# $Id$
2433 -
2434 -EAPI=5
2435 -
2436 -if [[ ${PV} == 9999 ]]; then
2437 - EGIT_REPO_URI="https://github.com/systemd/systemd.git"
2438 - inherit git-r3
2439 -else
2440 - SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
2441 - KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
2442 -fi
2443 -
2444 -inherit autotools bash-completion-r1 linux-info multilib \
2445 - multilib-minimal pam systemd toolchain-funcs udev user
2446 -
2447 -DESCRIPTION="System and service manager for Linux"
2448 -HOMEPAGE="http://www.freedesktop.org/wiki/Software/systemd"
2449 -
2450 -LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
2451 -SLOT="0/2"
2452 -IUSE="acl apparmor audit cryptsetup curl elfutils gcrypt gnuefi http
2453 - idn importd +kdbus +kmod +lz4 lzma nat pam policykit
2454 - qrcode +seccomp selinux ssl sysv-utils test vanilla xkb"
2455 -
2456 -REQUIRED_USE="importd? ( curl gcrypt lzma )"
2457 -
2458 -MINKV="3.11"
2459 -
2460 -COMMON_DEPEND=">=sys-apps/util-linux-2.26:0=[${MULTILIB_USEDEP}]
2461 - sys-libs/libcap:0=[${MULTILIB_USEDEP}]
2462 - !<sys-libs/glibc-2.16
2463 - acl? ( sys-apps/acl:0= )
2464 - apparmor? ( sys-libs/libapparmor:0= )
2465 - audit? ( >=sys-process/audit-2:0= )
2466 - cryptsetup? ( >=sys-fs/cryptsetup-1.6:0= )
2467 - curl? ( net-misc/curl:0= )
2468 - elfutils? ( >=dev-libs/elfutils-0.158:0= )
2469 - gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
2470 - http? (
2471 - >=net-libs/libmicrohttpd-0.9.33:0=
2472 - ssl? ( >=net-libs/gnutls-3.1.4:0= )
2473 - )
2474 - idn? ( net-dns/libidn:0= )
2475 - importd? (
2476 - app-arch/bzip2:0=
2477 - sys-libs/zlib:0=
2478 - )
2479 - kmod? ( >=sys-apps/kmod-15:0= )
2480 - lz4? ( >=app-arch/lz4-0_p119:0=[${MULTILIB_USEDEP}] )
2481 - lzma? ( >=app-arch/xz-utils-5.0.5-r1:0=[${MULTILIB_USEDEP}] )
2482 - nat? ( net-firewall/iptables:0= )
2483 - pam? ( virtual/pam:= )
2484 - qrcode? ( media-gfx/qrencode:0= )
2485 - seccomp? ( sys-libs/libseccomp:0= )
2486 - selinux? ( sys-libs/libselinux:0= )
2487 - sysv-utils? (
2488 - !sys-apps/systemd-sysv-utils
2489 - !sys-apps/sysvinit )
2490 - xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
2491 - abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r9
2492 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )"
2493 -
2494 -# baselayout-2.2 has /run
2495 -RDEPEND="${COMMON_DEPEND}
2496 - >=sys-apps/baselayout-2.2
2497 - !sys-auth/nss-myhostname
2498 - !sys-fs/eudev
2499 - !sys-fs/udev"
2500 -
2501 -# sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
2502 -PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd]
2503 - >=sys-apps/hwids-20150417[udev]
2504 - >=sys-fs/udev-init-scripts-25
2505 - policykit? ( sys-auth/polkit )
2506 - !vanilla? ( sys-apps/gentoo-systemd-integration )"
2507 -
2508 -# Newer linux-headers needed by ia64, bug #480218
2509 -DEPEND="${COMMON_DEPEND}
2510 - app-arch/xz-utils:0
2511 - dev-util/gperf
2512 - >=dev-util/intltool-0.50
2513 - >=sys-apps/coreutils-8.16
2514 - >=sys-devel/binutils-2.23.1
2515 - >=sys-devel/gcc-4.6
2516 - >=sys-kernel/linux-headers-${MINKV}
2517 - virtual/pkgconfig
2518 - gnuefi? ( >=sys-boot/gnu-efi-3.0.2 )
2519 - test? ( >=sys-apps/dbus-1.6.8-r1:0 )
2520 - app-text/docbook-xml-dtd:4.2
2521 - app-text/docbook-xml-dtd:4.5
2522 - app-text/docbook-xsl-stylesheets
2523 - dev-libs/libxslt:0
2524 - >=dev-libs/libgcrypt-1.4.5:0"
2525 -
2526 -pkg_pretend() {
2527 - local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
2528 - ~DEVPTS_MULTIPLE_INSTANCES ~DEVTMPFS ~DMIID ~EPOLL ~FANOTIFY ~FHANDLE
2529 - ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SECCOMP ~SIGNALFD ~SYSFS
2530 - ~TIMERFD ~TMPFS_XATTR
2531 - ~!FW_LOADER_USER_HELPER ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
2532 - ~!SYSFS_DEPRECATED_V2"
2533 -
2534 - use acl && CONFIG_CHECK+=" ~TMPFS_POSIX_ACL"
2535 - kernel_is -lt 3 7 && CONFIG_CHECK+=" ~HOTPLUG"
2536 -
2537 - if linux_config_exists; then
2538 - local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH)
2539 - if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then
2540 - ewarn "It's recommended to set an empty value to the following kernel config option:"
2541 - ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}"
2542 - fi
2543 - fi
2544 -
2545 - if [[ ${MERGE_TYPE} != binary ]]; then
2546 - if [[ $(gcc-major-version) -lt 4
2547 - || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 6 ) ]]
2548 - then
2549 - eerror "systemd requires at least gcc 4.6 to build. Please switch the active"
2550 - eerror "gcc version using gcc-config."
2551 - die "systemd requires at least gcc 4.6"
2552 - fi
2553 - fi
2554 -
2555 - if [[ ${MERGE_TYPE} != buildonly ]]; then
2556 - if kernel_is -lt ${MINKV//./ }; then
2557 - ewarn "Kernel version at least ${MINKV} required"
2558 - fi
2559 -
2560 - check_extra_config
2561 - fi
2562 -}
2563 -
2564 -pkg_setup() {
2565 - :
2566 -}
2567 -
2568 -src_unpack() {
2569 - default
2570 - [[ ${PV} != 9999 ]] || git-r3_src_unpack
2571 -}
2572 -
2573 -src_prepare() {
2574 - # Bug 463376
2575 - sed -i -e 's/GROUP="dialout"/GROUP="uucp"/' rules/*.rules || die
2576 - epatch "${FILESDIR}/218-Dont-enable-audit-by-default.patch"
2577 - epatch_user
2578 - eautoreconf
2579 -}
2580 -
2581 -src_configure() {
2582 - # Keep using the one where the rules were installed.
2583 - MY_UDEVDIR=$(get_udevdir)
2584 - # Fix systems broken by bug #509454.
2585 - [[ ${MY_UDEVDIR} ]] || MY_UDEVDIR=/lib/udev
2586 -
2587 - # Prevent conflicts with i686 cross toolchain, bug 559726
2588 - tc-export AR CC NM OBJCOPY RANLIB
2589 -
2590 - multilib-minimal_src_configure
2591 -}
2592 -
2593 -multilib_src_configure() {
2594 - local myeconfargs=(
2595 - # disable -flto since it is an optimization flag
2596 - # and makes distcc less effective
2597 - cc_cv_CFLAGS__flto=no
2598 -
2599 - # Workaround for gcc-4.7, bug 554454.
2600 - cc_cv_CFLAGS__Werror_shadow=no
2601 -
2602 - # Workaround for bug 516346
2603 - --enable-dependency-tracking
2604 -
2605 - --disable-maintainer-mode
2606 - --localstatedir=/var
2607 - --with-pamlibdir=$(getpam_mod_dir)
2608 - # avoid bash-completion dep
2609 - --with-bashcompletiondir="$(get_bashcompdir)"
2610 - # make sure we get /bin:/sbin in $PATH
2611 - --enable-split-usr
2612 - # For testing.
2613 - --with-rootprefix="${ROOTPREFIX-/usr}"
2614 - --with-rootlibdir="${ROOTPREFIX-/usr}/$(get_libdir)"
2615 - # disable sysv compatibility
2616 - --with-sysvinit-path=
2617 - --with-sysvrcnd-path=
2618 - # no deps
2619 - --enable-efi
2620 - --enable-ima
2621 - --without-python
2622 -
2623 - # Optional components/dependencies
2624 - $(multilib_native_use_enable acl)
2625 - $(multilib_native_use_enable apparmor)
2626 - $(multilib_native_use_enable audit)
2627 - $(multilib_native_use_enable cryptsetup libcryptsetup)
2628 - $(multilib_native_use_enable curl libcurl)
2629 - $(multilib_native_use_enable elfutils)
2630 - $(use_enable gcrypt)
2631 - $(multilib_native_use_enable gnuefi)
2632 - $(multilib_native_use_enable http microhttpd)
2633 - $(usex http $(multilib_native_use_enable ssl gnutls) --disable-gnutls)
2634 - $(multilib_native_use_enable idn libidn)
2635 - $(multilib_native_use_enable importd)
2636 - $(multilib_native_use_enable importd bzip2)
2637 - $(multilib_native_use_enable importd zlib)
2638 - $(use_enable kdbus)
2639 - $(multilib_native_use_enable kmod)
2640 - $(use_enable lz4)
2641 - $(use_enable lzma xz)
2642 - $(multilib_native_use_enable nat libiptc)
2643 - $(multilib_native_use_enable pam)
2644 - $(multilib_native_use_enable policykit polkit)
2645 - $(multilib_native_use_enable qrcode qrencode)
2646 - $(multilib_native_use_enable seccomp)
2647 - $(multilib_native_use_enable selinux)
2648 - $(multilib_native_use_enable test tests)
2649 - $(multilib_native_use_enable test dbus)
2650 - $(multilib_native_use_enable xkb xkbcommon)
2651 -
2652 - # hardcode a few paths to spare some deps
2653 - QUOTAON=/usr/sbin/quotaon
2654 - QUOTACHECK=/usr/sbin/quotacheck
2655 -
2656 - # TODO: we may need to restrict this to gcc
2657 - EFI_CC="$(tc-getCC)"
2658 -
2659 - # dbus paths
2660 - --with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d"
2661 - --with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
2662 - --with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services"
2663 -
2664 - --with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
2665 - )
2666 -
2667 - # Work around bug 463846.
2668 - tc-export CC
2669 -
2670 - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
2671 -}
2672 -
2673 -multilib_src_compile() {
2674 - local mymakeopts=(
2675 - udevlibexecdir="${MY_UDEVDIR}"
2676 - )
2677 -
2678 - if multilib_is_native_abi; then
2679 - emake "${mymakeopts[@]}"
2680 - else
2681 - echo 'gentoo: $(BUILT_SOURCES)' | \
2682 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
2683 - echo 'gentoo: $(lib_LTLIBRARIES) $(pkgconfiglib_DATA)' | \
2684 - emake "${mymakeopts[@]}" -f Makefile -f - gentoo
2685 - fi
2686 -}
2687 -
2688 -multilib_src_test() {
2689 - multilib_is_native_abi || continue
2690 -
2691 - # Needed for bus-related tests
2692 - local -x SANDBOX_WRITE=${SANDBOX_WRITE}
2693 - addwrite /sys/fs/kdbus
2694 -
2695 - default
2696 -}
2697 -
2698 -multilib_src_install() {
2699 - local mymakeopts=(
2700 - # automake fails with parallel libtool relinking
2701 - # https://bugs.gentoo.org/show_bug.cgi?id=491398
2702 - -j1
2703 -
2704 - udevlibexecdir="${MY_UDEVDIR}"
2705 - dist_udevhwdb_DATA=
2706 - DESTDIR="${D}"
2707 - )
2708 -
2709 - if multilib_is_native_abi; then
2710 - emake "${mymakeopts[@]}" install
2711 - else
2712 - mymakeopts+=(
2713 - install-libLTLIBRARIES
2714 - install-pkgconfiglibDATA
2715 - install-includeHEADERS
2716 - # safe to call unconditionally, 'installs' empty list
2717 - install-pkgincludeHEADERS
2718 - )
2719 -
2720 - emake "${mymakeopts[@]}"
2721 - fi
2722 -
2723 - # install compat pkg-config files
2724 - # Change dbus to >=sys-apps/dbus-1.8.8 if/when this is dropped.
2725 - local pcfiles=( src/compat-libs/libsystemd-{daemon,id128,journal,login}.pc )
2726 - emake "${mymakeopts[@]}" install-pkgconfiglibDATA \
2727 - pkgconfiglib_DATA="${pcfiles[*]}"
2728 -}
2729 -
2730 -multilib_src_install_all() {
2731 - prune_libtool_files --modules
2732 - einstalldocs
2733 -
2734 - if use sysv-utils; then
2735 - for app in halt poweroff reboot runlevel shutdown telinit; do
2736 - dosym "..${ROOTPREFIX-/usr}/bin/systemctl" /sbin/${app}
2737 - done
2738 - dosym "..${ROOTPREFIX-/usr}/lib/systemd/systemd" /sbin/init
2739 - else
2740 - # we just keep sysvinit tools, so no need for the mans
2741 - rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
2742 - || die
2743 - rm "${D}"/usr/share/man/man1/init.1 || die
2744 - fi
2745 -
2746 - # Disable storing coredumps in journald, bug #433457
2747 - mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die
2748 -
2749 - # Preserve empty dirs in /etc & /var, bug #437008
2750 - keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \
2751 - /etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd \
2752 - /var/log/journal/remote
2753 -
2754 - # Symlink /etc/sysctl.conf for easy migration.
2755 - dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
2756 -
2757 - # If we install these symlinks, there is no way for the sysadmin to remove them
2758 - # permanently.
2759 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die
2760 - rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die
2761 - rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
2762 - rm -r "${D}"/etc/systemd/system/sockets.target.wants || die
2763 - rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
2764 -}
2765 -
2766 -migrate_locale() {
2767 - local envd_locale_def="${EROOT%/}/etc/env.d/02locale"
2768 - local envd_locale=( "${EROOT%/}"/etc/env.d/??locale )
2769 - local locale_conf="${EROOT%/}/etc/locale.conf"
2770 -
2771 - if [[ ! -L ${locale_conf} && ! -e ${locale_conf} ]]; then
2772 - # If locale.conf does not exist...
2773 - if [[ -e ${envd_locale} ]]; then
2774 - # ...either copy env.d/??locale if there's one
2775 - ebegin "Moving ${envd_locale} to ${locale_conf}"
2776 - mv "${envd_locale}" "${locale_conf}"
2777 - eend ${?} || FAIL=1
2778 - else
2779 - # ...or create a dummy default
2780 - ebegin "Creating ${locale_conf}"
2781 - cat > "${locale_conf}" <<-EOF
2782 - # This file has been created by the sys-apps/systemd ebuild.
2783 - # See locale.conf(5) and localectl(1).
2784 -
2785 - # LANG=${LANG}
2786 - EOF
2787 - eend ${?} || FAIL=1
2788 - fi
2789 - fi
2790 -
2791 - if [[ ! -L ${envd_locale} ]]; then
2792 - # now, if env.d/??locale is not a symlink (to locale.conf)...
2793 - if [[ -e ${envd_locale} ]]; then
2794 - # ...warn the user that he has duplicate locale settings
2795 - ewarn
2796 - ewarn "To ensure consistent behavior, you should replace ${envd_locale}"
2797 - ewarn "with a symlink to ${locale_conf}. Please migrate your settings"
2798 - ewarn "and create the symlink with the following command:"
2799 - ewarn "ln -s -n -f ../locale.conf ${envd_locale}"
2800 - ewarn
2801 - else
2802 - # ...or just create the symlink if there's nothing here
2803 - ebegin "Creating ${envd_locale_def} -> ../locale.conf symlink"
2804 - ln -n -s ../locale.conf "${envd_locale_def}"
2805 - eend ${?} || FAIL=1
2806 - fi
2807 - fi
2808 -}
2809 -
2810 -migrate_net_name_slot() {
2811 - # If user has disabled 80-net-name-slot.rules using a empty file or a symlink to /dev/null,
2812 - # do the same for 80-net-setup-link.rules to keep the old behavior
2813 - local net_move=no
2814 - local net_name_slot_sym=no
2815 - local net_rules_path="${EROOT%/}"/etc/udev/rules.d
2816 - local net_name_slot="${net_rules_path}"/80-net-name-slot.rules
2817 - local net_setup_link="${net_rules_path}"/80-net-setup-link.rules
2818 - if [[ -e ${net_setup_link} ]]; then
2819 - net_move=no
2820 - elif [[ -f ${net_name_slot} && $(sed -e "/^#/d" -e "/^\W*$/d" ${net_name_slot} | wc -l) == 0 ]]; then
2821 - net_move=yes
2822 - elif [[ -L ${net_name_slot} && $(readlink ${net_name_slot}) == /dev/null ]]; then
2823 - net_move=yes
2824 - net_name_slot_sym=yes
2825 - fi
2826 - if [[ ${net_move} == yes ]]; then
2827 - ebegin "Copying ${net_name_slot} to ${net_setup_link}"
2828 -
2829 - if [[ ${net_name_slot_sym} == yes ]]; then
2830 - ln -nfs /dev/null "${net_setup_link}"
2831 - else
2832 - cp "${net_name_slot}" "${net_setup_link}"
2833 - fi
2834 - eend $? || FAIL=1
2835 - fi
2836 -}
2837 -
2838 -reenable_unit() {
2839 - if systemctl is-enabled --root="${ROOT}" "$1" &> /dev/null; then
2840 - ebegin "Re-enabling $1"
2841 - systemctl reenable --root="${ROOT}" "$1"
2842 - eend $? || FAIL=1
2843 - fi
2844 -}
2845 -
2846 -pkg_postinst() {
2847 - newusergroup() {
2848 - enewgroup "$1"
2849 - enewuser "$1" -1 -1 -1 "$1"
2850 - }
2851 -
2852 - enewgroup input
2853 - enewgroup systemd-journal
2854 - newusergroup systemd-bus-proxy
2855 - newusergroup systemd-journal-gateway
2856 - newusergroup systemd-journal-remote
2857 - newusergroup systemd-journal-upload
2858 - newusergroup systemd-network
2859 - newusergroup systemd-resolve
2860 - newusergroup systemd-timesync
2861 - use http && newusergroup systemd-journal-gateway
2862 -
2863 - systemd_update_catalog
2864 -
2865 - # Keep this here in case the database format changes so it gets updated
2866 - # when required. Despite that this file is owned by sys-apps/hwids.
2867 - if has_version "sys-apps/hwids[udev]"; then
2868 - udevadm hwdb --update --root="${ROOT%/}"
2869 - fi
2870 -
2871 - udev_reload || FAIL=1
2872 -
2873 - # Bug 465468, make sure locales are respect, and ensure consistency
2874 - # between OpenRC & systemd
2875 - migrate_locale
2876 -
2877 - # Migrate 80-net-name-slot.rules -> 80-net-setup-link.rules
2878 - migrate_net_name_slot
2879 -
2880 - # Re-enable systemd-networkd for socket activation
2881 - reenable_unit systemd-networkd.service
2882 -
2883 - if [[ ${FAIL} ]]; then
2884 - eerror "One of the postinst commands failed. Please check the postinst output"
2885 - eerror "for errors. You may need to clean up your system and/or try installing"
2886 - eerror "systemd again."
2887 - eerror
2888 - fi
2889 -
2890 - if [[ $(readlink "${ROOT}"/etc/resolv.conf) == */run/systemd/network/resolv.conf ]]; then
2891 - ewarn "resolv.conf is now generated by systemd-resolved. To use it, enable"
2892 - ewarn "systemd-resolved.service, and create a symlink from /etc/resolv.conf"
2893 - ewarn "to /run/systemd/resolve/resolv.conf"
2894 - ewarn
2895 - fi
2896 -}
2897 -
2898 -pkg_prerm() {
2899 - # If removing systemd completely, remove the catalog database.
2900 - if [[ ! ${REPLACED_BY_VERSION} ]]; then
2901 - rm -f -v "${EROOT}"/var/lib/systemd/catalog/database
2902 - fi
2903 -}