Gentoo Archives: gentoo-commits

From: William Hubbs <williamh@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/openrc/, sys-apps/openrc/files/
Date: Sat, 01 Jan 2022 04:34:45
Message-Id: 1641011674.2dd80a93c9d9d7af24421389bafb5739c38e60b7.williamh@gentoo
1 commit: 2dd80a93c9d9d7af24421389bafb5739c38e60b7
2 Author: William Hubbs <williamh <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 1 04:32:48 2022 +0000
4 Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 1 04:34:34 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2dd80a93
7
8 sys-apps/openrc: remove several broken versions
9
10 Package-Manager: Portage-3.0.28, Repoman-3.0.3
11 Signed-off-by: William Hubbs <williamh <AT> gentoo.org>
12
13 sys-apps/openrc/Manifest | 3 -
14 .../files/openrc-0.44.8-selinux-no-pam.patch | 89 -----------
15 sys-apps/openrc/openrc-0.44.7.ebuild | 165 ---------------------
16 sys-apps/openrc/openrc-0.44.8.ebuild | 163 --------------------
17 sys-apps/openrc/openrc-0.44.9.ebuild | 158 --------------------
18 5 files changed, 578 deletions(-)
19
20 diff --git a/sys-apps/openrc/Manifest b/sys-apps/openrc/Manifest
21 index b20352741246..3fc155f69ea2 100644
22 --- a/sys-apps/openrc/Manifest
23 +++ b/sys-apps/openrc/Manifest
24 @@ -1,5 +1,2 @@
25 DIST openrc-0.43.5.tar.gz 242146 BLAKE2B 993d3895588e8f1383049006834f944faaae0f889d3afcae5bff697db9f26383712f18aba52ce07d835f1d2bbe8ef19ef116ad60141d1eb0650767430d1d9967 SHA512 680c1549a8a37eb3a719f3e026888d045d26c98357d6e6eaf09069a23a001272deaca8cac4a9b8fd79f489c4cfb4fe2c7b5d481d1469798a8f5ec470d0cadbe3
26 DIST openrc-0.44.10.tar.gz 254298 BLAKE2B 3cfecc27b560b8bb60d2104ab3dcf176b98677b65b829fa403ad2eb0e2e8bb0d586d374c336328a07c2f35e3abcb3f897cf5df142540a60fc09883aabd0ac79d SHA512 0e41f5268c6b8c325a6773511ca58c38ba52a1987aa47165794df8a99359bd1bfcb99d30e0d129b9242a2661663234f6f85c92c55c891dbb6c5b8a11d93edea4
27 -DIST openrc-0.44.7.tar.gz 255444 BLAKE2B 8058e1fd8fcce46f53e73b56ec8da5eec9ba0807d657aef4ece2d49056c02a451c41155df96b167ff157863a85d77eb63796715b5191dd1c6c631c8f859d3090 SHA512 c6b3e2e30615d97a5185320a140ced881bc59ba31ea8dff5d80440396166af237826de6ffc7836ec141e305c92176cd9cc3dabff7e42ac0d80e5238513fefdb7
28 -DIST openrc-0.44.8.tar.gz 255668 BLAKE2B 13d023ea3346313ded9f9bff729c296a3317577ddc58cadbe57429833075776a3a3dc52dfd1c9e9721407b747df0f6471a81d12dc79216dc4b75222104208965 SHA512 ee8520b42df2f20cc770b9cc1a82eee4c7cb2e0d2e8b0788f5201e7c5ca864f414e97f679f3c25b808cb3641bc99cd74580dcd9777f4738f43adba65754ae679
29 -DIST openrc-0.44.9.tar.gz 254859 BLAKE2B 467f47e6bb09e0cea4c093f7516979112c2b70fb898a8030ef28ad78a20b89751256d545f21d295e948e791027c5b4b9e8b1cac244d3698161a449cc4bc1b38f SHA512 41488b2e699b1f66f334c4f90021b57a175ae1c9c77464bb747d38907a3a54cc1e48284484577d2f72cde8e4007b03e6529c549f462e8acdba8ffc796ac58239
30
31 diff --git a/sys-apps/openrc/files/openrc-0.44.8-selinux-no-pam.patch b/sys-apps/openrc/files/openrc-0.44.8-selinux-no-pam.patch
32 deleted file mode 100644
33 index 28749433f69f..000000000000
34 --- a/sys-apps/openrc/files/openrc-0.44.8-selinux-no-pam.patch
35 +++ /dev/null
36 @@ -1,89 +0,0 @@
37 -https://github.com/OpenRC/openrc/commit/bd5cdaafadf997c0ab3c4ad362dbdfd7dc6fd987.patch
38 -https://github.com/OpenRC/openrc/commit/f3f0fde861b438c80f99afdd49fe175e9d0a68ca
39 -
40 -From: Sam James <sam@g.o>
41 -Date: Sat, 20 Nov 2021 12:05:56 +0000
42 -Subject: [PATCH] meson: fix pam_misc_dep definition
43 -
44 -X-Gentoo-Bug: 824954
45 -X-Gentoo-Bug-URL: https://bugs.gentoo.org/824954
46 -Fixes: https://github.com/OpenRC/openrc/issues/470
47 -Fixes: https://github.com/OpenRC/openrc/pull/477
48 ---- a/meson.build
49 -+++ b/meson.build
50 -@@ -94,6 +94,7 @@ rc_sbindir = rc_libexecdir / 'sbin'
51 - sbindir = rootprefix / get_option('sbindir')
52 -
53 - selinux_dep = dependency('libselinux', required : get_option('selinux'))
54 -+pam_misc_dep = []
55 - if selinux_dep.found()
56 - cc_selinux_flags = '-DHAVE_SELINUX'
57 - if pam_dep.found() and get_option('pam')
58 -@@ -107,7 +108,6 @@ if selinux_dep.found()
59 - endif
60 - else
61 - cc_selinux_flags = []
62 -- pam_misc_dep = []
63 - endif
64 -
65 - termcap = get_option('termcap')
66 -
67 -From: Sam James <sam@g.o>
68 -Date: Sat, 20 Nov 2021 12:06:37 +0000
69 -Subject: [PATCH] meson: link against libcrypt for SELinux if no PAM
70 -
71 -We use libcrypt's crypt() if we're _not_ using PAM
72 -in the SELinux code (rc-selinux, specifically).
73 -
74 -X-Gentoo-Bug: 824954
75 -X-Gentoo-Bug-URL: https://bugs.gentoo.org/824954
76 -Fixes: https://github.com/openrc/openrc/pull/477
77 ---- a/meson.build
78 -+++ b/meson.build
79 -@@ -93,6 +93,8 @@ rc_bindir = rc_libexecdir / 'bin'
80 - rc_sbindir = rc_libexecdir / 'sbin'
81 - sbindir = rootprefix / get_option('sbindir')
82 -
83 -+crypt_dep = dependency('libcrypt', required : not get_option('pam'))
84 -+
85 - selinux_dep = dependency('libselinux', required : get_option('selinux'))
86 - pam_misc_dep = []
87 - if selinux_dep.found()
88 ---- a/src/rc/meson.build
89 -+++ b/src/rc/meson.build
90 -@@ -50,7 +50,7 @@ executable('openrc-run',
91 - rc_selinux_c, version_h],
92 - c_args : [cc_audit_flags, cc_branding_flags, cc_pam_flags, cc_selinux_flags],
93 - link_with: [libeinfo, librc],
94 -- dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, selinux_dep, util_dep],
95 -+ dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, selinux_dep, util_dep, crypt_dep],
96 - include_directories: [incdir, einfo_incdir, rc_incdir],
97 - install: true,
98 - install_dir: sbindir)
99 -@@ -85,7 +85,7 @@ executable('runscript',
100 - rc_selinux_c, version_h],
101 - c_args : [cc_audit_flags, cc_branding_flags, cc_pam_flags, cc_selinux_flags],
102 - link_with: [libeinfo, librc],
103 -- dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, util_dep, selinux_dep],
104 -+ dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, util_dep, selinux_dep, crypt_dep],
105 - include_directories: [incdir, einfo_incdir, rc_incdir],
106 - install: true,
107 - install_dir: sbindir)
108 -@@ -95,7 +95,7 @@ executable('start-stop-daemon',
109 - rc_selinux_c, usage_c, version_h],
110 - c_args : [cc_audit_flags, cc_branding_flags, cc_pam_flags, cc_selinux_flags],
111 - link_with: [libeinfo, librc],
112 -- dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, util_dep, selinux_dep],
113 -+ dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, util_dep, selinux_dep, crypt_dep],
114 - include_directories: [incdir, einfo_incdir, rc_incdir],
115 - install: true,
116 - install_dir: sbindir)
117 -@@ -169,7 +169,7 @@ executable('checkpath',
118 - c_args : [cc_audit_flags, cc_branding_flags, cc_pam_flags, cc_selinux_flags],
119 - include_directories: [incdir, einfo_incdir, rc_incdir],
120 - link_with: [libeinfo, librc],
121 -- dependencies: [audit_dep, pam_dep, pam_misc_dep, selinux_dep],
122 -+ dependencies: [audit_dep, pam_dep, pam_misc_dep, selinux_dep, crypt_dep],
123 - install: true,
124 - install_dir: rc_bindir)
125 -
126
127 diff --git a/sys-apps/openrc/openrc-0.44.7.ebuild b/sys-apps/openrc/openrc-0.44.7.ebuild
128 deleted file mode 100644
129 index 1fd2f3b212cc..000000000000
130 --- a/sys-apps/openrc/openrc-0.44.7.ebuild
131 +++ /dev/null
132 @@ -1,165 +0,0 @@
133 -# Copyright 1999-2021 Gentoo Authors
134 -# Distributed under the terms of the GNU General Public License v2
135 -
136 -EAPI=7
137 -
138 -inherit flag-o-matic meson pam toolchain-funcs
139 -
140 -DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
141 -HOMEPAGE="https://github.com/openrc/openrc/"
142 -
143 -if [[ ${PV} =~ ^9{4,}$ ]]; then
144 - EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
145 - inherit git-r3
146 -else
147 - SRC_URI="https://github.com/OpenRC/openrc/archive/${PV}.tar.gz -> ${P}.tar.gz"
148 -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
149 -fi
150 -
151 -LICENSE="BSD-2"
152 -SLOT="0"
153 -IUSE="audit bash debug ncurses pam newnet +netifrc selinux sysv-utils unicode"
154 -
155 -COMMON_DEPEND="
156 - ncurses? ( sys-libs/ncurses:0= )
157 - pam? ( sys-libs/pam )
158 - audit? ( sys-process/audit )
159 - sys-process/psmisc
160 - !<sys-process/procps-3.3.9-r2
161 - selinux? (
162 - sys-apps/policycoreutils
163 - >=sys-libs/libselinux-2.6
164 - )
165 - !<sys-apps/baselayout-2.1-r1
166 - !<sys-fs/udev-init-scripts-27"
167 -DEPEND="${COMMON_DEPEND}
168 - virtual/os-headers
169 - ncurses? ( virtual/pkgconfig )"
170 -RDEPEND="${COMMON_DEPEND}
171 - bash? ( app-shells/bash )
172 - !prefix? (
173 - sysv-utils? (
174 - !sys-apps/systemd[sysv-utils(-)]
175 - !sys-apps/sysvinit
176 - )
177 - !sysv-utils? ( >=sys-apps/sysvinit-2.86-r6[selinux?] )
178 - virtual/tmpfiles
179 - )
180 - selinux? (
181 - >=sec-policy/selinux-base-policy-2.20170204-r4
182 - >=sec-policy/selinux-openrc-2.20170204-r4
183 - )
184 - !<app-shells/gentoo-bashcomp-20180302
185 - !<app-shells/gentoo-zsh-completions-20180228
186 -"
187 -
188 -PDEPEND="netifrc? ( net-misc/netifrc )"
189 -
190 -src_configure() {
191 - local emesonargs=(
192 - $(meson_feature audit)
193 - "-Dbranding=\"Gentoo Linux\""
194 - $(meson_use newnet)
195 - -Dos=Linux
196 - $(meson_use pam)
197 - $(meson_feature selinux)
198 - -Drootprefix="${EPREFIX}"
199 - -Dshell=$(usex bash /bin/bash /bin/sh)
200 - $(meson_use sysv-utils sysvinit)
201 - -Dtermcap=$(usev ncurses)
202 - )
203 - # export DEBUG=$(usev debug)
204 - meson_src_configure
205 -}
206 -
207 -# set_config <file> <option name> <yes value> <no value> test
208 -# a value of "#" will just comment out the option
209 -set_config() {
210 - local file="${ED}/$1" var=$2 val com
211 - eval "${@:5}" && val=$3 || val=$4
212 - [[ ${val} == "#" ]] && com="#" && val='\2'
213 - sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
214 -}
215 -
216 -set_config_yes_no() {
217 - set_config "$1" "$2" YES NO "${@:3}"
218 -}
219 -
220 -src_install() {
221 - meson_install
222 -
223 - keepdir /lib/rc/tmp
224 -
225 - # Setup unicode defaults for silly unicode users
226 - set_config_yes_no /etc/rc.conf unicode use unicode
227 -
228 - # Cater to the norm
229 - set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
230 -
231 - # On HPPA, do not run consolefont by default (bug #222889)
232 - if use hppa; then
233 - rm -f "${ED}"/etc/runlevels/boot/consolefont
234 - fi
235 -
236 - # Support for logfile rotation
237 - insinto /etc/logrotate.d
238 - newins "${FILESDIR}"/openrc.logrotate openrc
239 -
240 - if use pam; then
241 - # install gentoo pam.d files
242 - newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
243 - newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
244 - fi
245 -
246 - # install documentation
247 - dodoc ChangeLog *.md
248 -}
249 -
250 -pkg_preinst() {
251 - # avoid default thrashing in conf.d files when possible #295406
252 - if [[ -e "${EROOT}"/etc/conf.d/hostname ]] ; then
253 - (
254 - unset hostname HOSTNAME
255 - source "${EROOT}"/etc/conf.d/hostname
256 - : ${hostname:=${HOSTNAME}}
257 - [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
258 - )
259 - fi
260 -
261 - # set default interactive shell to sulogin if it exists
262 - set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
263 - return 0
264 -}
265 -
266 -pkg_postinst() {
267 - if use hppa; then
268 - elog "Setting the console font does not work on all HPPA consoles."
269 - elog "You can still enable it by running:"
270 - elog "# rc-update add consolefont boot"
271 - fi
272 -
273 - # Added for 0.35.
274 - if [[ ! -h "${EROOT}"/lib ]]; then
275 - if [[ -d "${EROOT}/$(get_libdir)"/rc ]]; then
276 - cp -RPp "${EROOT}/$(get_libdir)/rc" "${EROOT}"/lib
277 - fi
278 - fi
279 -
280 - if ! use newnet && ! use netifrc; then
281 - ewarn "You have emerged OpenRc without network support. This"
282 - ewarn "means you need to SET UP a network manager such as"
283 - ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
284 - ewarn " net-misc/NetworkManager, or net-vpn/badvpn."
285 - ewarn "Or, you have the option of emerging openrc with the newnet"
286 - ewarn "use flag and configuring /etc/conf.d/network and"
287 - ewarn "/etc/conf.d/staticroute if you only use static interfaces."
288 - ewarn
289 - fi
290 -
291 - if use newnet && [ ! -e "${EROOT}"/etc/runlevels/boot/network ]; then
292 - ewarn "Please add the network service to your boot runlevel"
293 - ewarn "as soon as possible. Not doing so could leave you with a system"
294 - ewarn "without networking."
295 - ewarn
296 - fi
297 -}
298
299 diff --git a/sys-apps/openrc/openrc-0.44.8.ebuild b/sys-apps/openrc/openrc-0.44.8.ebuild
300 deleted file mode 100644
301 index 619e1585c366..000000000000
302 --- a/sys-apps/openrc/openrc-0.44.8.ebuild
303 +++ /dev/null
304 @@ -1,163 +0,0 @@
305 -# Copyright 1999-2021 Gentoo Authors
306 -# Distributed under the terms of the GNU General Public License v2
307 -
308 -EAPI=7
309 -
310 -inherit flag-o-matic meson pam toolchain-funcs
311 -
312 -DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
313 -HOMEPAGE="https://github.com/openrc/openrc/"
314 -
315 -if [[ ${PV} =~ ^9{4,}$ ]]; then
316 - EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
317 - inherit git-r3
318 -else
319 - SRC_URI="https://github.com/OpenRC/openrc/archive/${PV}.tar.gz -> ${P}.tar.gz"
320 -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
321 -fi
322 -
323 -LICENSE="BSD-2"
324 -SLOT="0"
325 -IUSE="audit bash debug ncurses pam newnet +netifrc selinux sysv-utils unicode"
326 -
327 -COMMON_DEPEND="
328 - ncurses? ( sys-libs/ncurses:0= )
329 - pam? ( sys-libs/pam )
330 - audit? ( sys-process/audit )
331 - sys-process/psmisc
332 - !<sys-process/procps-3.3.9-r2
333 - selinux? (
334 - sys-apps/policycoreutils
335 - >=sys-libs/libselinux-2.6
336 - )
337 - !<sys-apps/baselayout-2.1-r1
338 - !<sys-fs/udev-init-scripts-27"
339 -DEPEND="${COMMON_DEPEND}
340 - virtual/os-headers
341 - ncurses? ( virtual/pkgconfig )"
342 -RDEPEND="${COMMON_DEPEND}
343 - bash? ( app-shells/bash )
344 - !prefix? (
345 - sysv-utils? (
346 - !sys-apps/systemd[sysv-utils(-)]
347 - !sys-apps/sysvinit
348 - )
349 - !sysv-utils? ( >=sys-apps/sysvinit-2.86-r6[selinux?] )
350 - virtual/tmpfiles
351 - )
352 - selinux? (
353 - >=sec-policy/selinux-base-policy-2.20170204-r4
354 - >=sec-policy/selinux-openrc-2.20170204-r4
355 - )
356 - !<app-shells/gentoo-bashcomp-20180302
357 - !<app-shells/gentoo-zsh-completions-20180228
358 -"
359 -
360 -PDEPEND="netifrc? ( net-misc/netifrc )"
361 -
362 -PATCHES=(
363 - # Backported from master
364 - "${FILESDIR}"/${P}-selinux-no-pam.patch
365 -)
366 -
367 -src_configure() {
368 - local emesonargs=(
369 - $(meson_feature audit)
370 - "-Dbranding=\"Gentoo Linux\""
371 - $(meson_use newnet)
372 - -Dos=Linux
373 - $(meson_use pam)
374 - $(meson_feature selinux)
375 - -Drootprefix="${EPREFIX}"
376 - -Dshell=$(usex bash /bin/bash /bin/sh)
377 - $(meson_use sysv-utils sysvinit)
378 - -Dtermcap=$(usev ncurses)
379 - )
380 - # export DEBUG=$(usev debug)
381 - meson_src_configure
382 -}
383 -
384 -# set_config <file> <option name> <yes value> <no value> test
385 -# a value of "#" will just comment out the option
386 -set_config() {
387 - local file="${ED}/$1" var=$2 val com
388 - eval "${@:5}" && val=$3 || val=$4
389 - [[ ${val} == "#" ]] && com="#" && val='\2'
390 - sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
391 -}
392 -
393 -set_config_yes_no() {
394 - set_config "$1" "$2" YES NO "${@:3}"
395 -}
396 -
397 -src_install() {
398 - meson_install
399 -
400 - keepdir /lib/rc/tmp
401 -
402 - # Setup unicode defaults for silly unicode users
403 - set_config_yes_no /etc/rc.conf unicode use unicode
404 -
405 - # Cater to the norm
406 - set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
407 -
408 - # On HPPA, do not run consolefont by default (bug #222889)
409 - if use hppa; then
410 - rm -f "${ED}"/etc/runlevels/boot/consolefont
411 - fi
412 -
413 - # Support for logfile rotation
414 - insinto /etc/logrotate.d
415 - newins "${FILESDIR}"/openrc.logrotate openrc
416 -
417 - if use pam; then
418 - # install gentoo pam.d files
419 - newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
420 - newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
421 - fi
422 -
423 - # install documentation
424 - dodoc ChangeLog *.md
425 -}
426 -
427 -pkg_preinst() {
428 - # avoid default thrashing in conf.d files when possible #295406
429 - if [[ -e "${EROOT}"/etc/conf.d/hostname ]] ; then
430 - (
431 - unset hostname HOSTNAME
432 - source "${EROOT}"/etc/conf.d/hostname
433 - : ${hostname:=${HOSTNAME}}
434 - [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
435 - )
436 - fi
437 -
438 - # set default interactive shell to sulogin if it exists
439 - set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
440 - return 0
441 -}
442 -
443 -pkg_postinst() {
444 - if use hppa; then
445 - elog "Setting the console font does not work on all HPPA consoles."
446 - elog "You can still enable it by running:"
447 - elog "# rc-update add consolefont boot"
448 - fi
449 -
450 - if ! use newnet && ! use netifrc; then
451 - ewarn "You have emerged OpenRc without network support. This"
452 - ewarn "means you need to SET UP a network manager such as"
453 - ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
454 - ewarn " net-misc/NetworkManager, or net-vpn/badvpn."
455 - ewarn "Or, you have the option of emerging openrc with the newnet"
456 - ewarn "use flag and configuring /etc/conf.d/network and"
457 - ewarn "/etc/conf.d/staticroute if you only use static interfaces."
458 - ewarn
459 - fi
460 -
461 - if use newnet && [ ! -e "${EROOT}"/etc/runlevels/boot/network ]; then
462 - ewarn "Please add the network service to your boot runlevel"
463 - ewarn "as soon as possible. Not doing so could leave you with a system"
464 - ewarn "without networking."
465 - ewarn
466 - fi
467 -}
468
469 diff --git a/sys-apps/openrc/openrc-0.44.9.ebuild b/sys-apps/openrc/openrc-0.44.9.ebuild
470 deleted file mode 100644
471 index 8ced74993f6f..000000000000
472 --- a/sys-apps/openrc/openrc-0.44.9.ebuild
473 +++ /dev/null
474 @@ -1,158 +0,0 @@
475 -# Copyright 1999-2021 Gentoo Authors
476 -# Distributed under the terms of the GNU General Public License v2
477 -
478 -EAPI=7
479 -
480 -inherit flag-o-matic meson pam toolchain-funcs
481 -
482 -DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
483 -HOMEPAGE="https://github.com/openrc/openrc/"
484 -
485 -if [[ ${PV} =~ ^9{4,}$ ]]; then
486 - EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
487 - inherit git-r3
488 -else
489 - SRC_URI="https://github.com/OpenRC/openrc/archive/${PV}.tar.gz -> ${P}.tar.gz"
490 -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
491 -fi
492 -
493 -LICENSE="BSD-2"
494 -SLOT="0"
495 -IUSE="audit bash debug ncurses pam newnet +netifrc selinux sysv-utils unicode"
496 -
497 -COMMON_DEPEND="
498 - ncurses? ( sys-libs/ncurses:0= )
499 - pam? ( sys-libs/pam )
500 - audit? ( sys-process/audit )
501 - sys-process/psmisc
502 - !<sys-process/procps-3.3.9-r2
503 - selinux? (
504 - sys-apps/policycoreutils
505 - >=sys-libs/libselinux-2.6
506 - )
507 - !<sys-apps/baselayout-2.1-r1
508 - !<sys-fs/udev-init-scripts-27"
509 -DEPEND="${COMMON_DEPEND}
510 - virtual/os-headers
511 - ncurses? ( virtual/pkgconfig )"
512 -RDEPEND="${COMMON_DEPEND}
513 - bash? ( app-shells/bash )
514 - !prefix? (
515 - sysv-utils? (
516 - !sys-apps/systemd[sysv-utils(-)]
517 - !sys-apps/sysvinit
518 - )
519 - !sysv-utils? ( >=sys-apps/sysvinit-2.86-r6[selinux?] )
520 - virtual/tmpfiles
521 - )
522 - selinux? (
523 - >=sec-policy/selinux-base-policy-2.20170204-r4
524 - >=sec-policy/selinux-openrc-2.20170204-r4
525 - )
526 - !<app-shells/gentoo-bashcomp-20180302
527 - !<app-shells/gentoo-zsh-completions-20180228
528 -"
529 -
530 -PDEPEND="netifrc? ( net-misc/netifrc )"
531 -
532 -src_configure() {
533 - local emesonargs=(
534 - $(meson_feature audit)
535 - "-Dbranding=\"Gentoo Linux\""
536 - $(meson_use newnet)
537 - -Dos=Linux
538 - $(meson_use pam)
539 - $(meson_feature selinux)
540 - -Drootprefix="${EPREFIX}"
541 - -Dshell=$(usex bash /bin/bash /bin/sh)
542 - $(meson_use sysv-utils sysvinit)
543 - -Dtermcap=$(usev ncurses)
544 - )
545 - # export DEBUG=$(usev debug)
546 - meson_src_configure
547 -}
548 -
549 -# set_config <file> <option name> <yes value> <no value> test
550 -# a value of "#" will just comment out the option
551 -set_config() {
552 - local file="${ED}/$1" var=$2 val com
553 - eval "${@:5}" && val=$3 || val=$4
554 - [[ ${val} == "#" ]] && com="#" && val='\2'
555 - sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
556 -}
557 -
558 -set_config_yes_no() {
559 - set_config "$1" "$2" YES NO "${@:3}"
560 -}
561 -
562 -src_install() {
563 - meson_install
564 -
565 - keepdir /lib/rc/tmp
566 -
567 - # Setup unicode defaults for silly unicode users
568 - set_config_yes_no /etc/rc.conf unicode use unicode
569 -
570 - # Cater to the norm
571 - set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
572 -
573 - # On HPPA, do not run consolefont by default (bug #222889)
574 - if use hppa; then
575 - rm -f "${ED}"/etc/runlevels/boot/consolefont
576 - fi
577 -
578 - # Support for logfile rotation
579 - insinto /etc/logrotate.d
580 - newins "${FILESDIR}"/openrc.logrotate openrc
581 -
582 - if use pam; then
583 - # install gentoo pam.d files
584 - newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
585 - newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
586 - fi
587 -
588 - # install documentation
589 - dodoc ChangeLog *.md
590 -}
591 -
592 -pkg_preinst() {
593 - # avoid default thrashing in conf.d files when possible #295406
594 - if [[ -e "${EROOT}"/etc/conf.d/hostname ]] ; then
595 - (
596 - unset hostname HOSTNAME
597 - source "${EROOT}"/etc/conf.d/hostname
598 - : ${hostname:=${HOSTNAME}}
599 - [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
600 - )
601 - fi
602 -
603 - # set default interactive shell to sulogin if it exists
604 - set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
605 - return 0
606 -}
607 -
608 -pkg_postinst() {
609 - if use hppa; then
610 - elog "Setting the console font does not work on all HPPA consoles."
611 - elog "You can still enable it by running:"
612 - elog "# rc-update add consolefont boot"
613 - fi
614 -
615 - if ! use newnet && ! use netifrc; then
616 - ewarn "You have emerged OpenRc without network support. This"
617 - ewarn "means you need to SET UP a network manager such as"
618 - ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/connman,"
619 - ewarn " net-misc/NetworkManager, or net-vpn/badvpn."
620 - ewarn "Or, you have the option of emerging openrc with the newnet"
621 - ewarn "use flag and configuring /etc/conf.d/network and"
622 - ewarn "/etc/conf.d/staticroute if you only use static interfaces."
623 - ewarn
624 - fi
625 -
626 - if use newnet && [ ! -e "${EROOT}"/etc/runlevels/boot/network ]; then
627 - ewarn "Please add the network service to your boot runlevel"
628 - ewarn "as soon as possible. Not doing so could leave you with a system"
629 - ewarn "without networking."
630 - ewarn
631 - fi
632 -}