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/
Date: Wed, 29 Nov 2017 22:45:17
Message-Id: 1511995241.e9b525629bdc2988587b0890c8466aefaa0ad857.williamh@gentoo
1 commit: e9b525629bdc2988587b0890c8466aefaa0ad857
2 Author: William Hubbs <williamh <AT> gentoo <DOT> org>
3 AuthorDate: Wed Nov 29 22:38:56 2017 +0000
4 Commit: William Hubbs <williamh <AT> gentoo <DOT> org>
5 CommitDate: Wed Nov 29 22:40:41 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9b52562
7
8 sys-apps/openrc: 0.34.11 fast stable for regression bug #639218
9
10 Package-Manager: Portage-2.3.13, Repoman-2.3.3
11 RepoMan-Options: --force
12 Signed-off-by: William Hubbs <williamh <AT> gentoo.org>
13
14 sys-apps/openrc/Manifest | 1 +
15 sys-apps/openrc/openrc-0.34.11.ebuild | 329 ++++++++++++++++++++++++++++++++++
16 2 files changed, 330 insertions(+)
17
18 diff --git a/sys-apps/openrc/Manifest b/sys-apps/openrc/Manifest
19 index ab733857b49..bbf2cf7cc02 100644
20 --- a/sys-apps/openrc/Manifest
21 +++ b/sys-apps/openrc/Manifest
22 @@ -1,3 +1,4 @@
23 DIST openrc-0.28.tar.gz 224228 BLAKE2B 6f4693003aba77148bb5ed3516c1372e3ca67364a25d866fce418ba6a287a8cc0c33534cbe1edcdab32a869f8f8dc72819fb2dffc46375bca1e053fb3acf415b SHA512 a10c293bf4287bcc4ffb9c996cbc1294f979483ea9fb2efb0dd1becee193f49ff114530c078850e8c11cf2c0a812be2e74801352fdbfe313b90cd9af5b8ccf93
24 DIST openrc-0.32.1.tar.gz 223808 BLAKE2B 4aadd36e371de56d5c2b59597ab04c1b004be73e370fa00560b77ab0587ba49fb4a49608aba4ad85ed7279eadf54e023961e25784e3078edeed4891956995f38 SHA512 9cd48978fcd69a6d80b474a06b56550cc8c538d6d7a1cb6f88b90087593eebb8185ee5192ec05be2f87f61de53dbe6ded9058aee7ae8f806bb0d7d7da70f62d8
25 DIST openrc-0.34.10.tar.gz 227909 BLAKE2B 7f9ca169d03c785d7629d227023f947dd3a70a420ff8043ece075924ea5a7d803c78572cef1e5310dbda44c1b905a681301493785137acb9bdbd8a21ccf44093 SHA512 7df66a9e7aeeecb9109e4231e4be4e42cca8e9ad77486cace3a4969af1e4d0bac2522cf832a40990e81e0022598732cd12f07e55f21e576af07144fae538df6f
26 +DIST openrc-0.34.11.tar.gz 228054 BLAKE2B 8d4fdd7de4b3c44df0ccec728b91bd2624582dc2bbdb1fa7892aa61ce0a953a7cf66964f38da888636d895e3c6b776747a4a7fbbdbbbd26029313695f35837fe SHA512 76245d31c6fe9e90e5e2f35ce918b915fc88c231674e0c99dc98b8f3fa120e794900eec9919a0ab029a081b206393246eccb9119a79c90ad6e39325d022928be
27
28 diff --git a/sys-apps/openrc/openrc-0.34.11.ebuild b/sys-apps/openrc/openrc-0.34.11.ebuild
29 new file mode 100644
30 index 00000000000..fd5ba4f6e23
31 --- /dev/null
32 +++ b/sys-apps/openrc/openrc-0.34.11.ebuild
33 @@ -0,0 +1,329 @@
34 +# Copyright 1999-2017 Gentoo Foundation
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI=6
38 +
39 +inherit flag-o-matic pam toolchain-funcs
40 +
41 +DESCRIPTION="OpenRC manages the services, startup and shutdown of a host"
42 +HOMEPAGE="https://github.com/openrc/openrc/"
43 +
44 +if [[ ${PV} == "9999" ]]; then
45 + EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git"
46 + inherit git-r3
47 +else
48 + SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
49 + KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
50 +fi
51 +
52 +LICENSE="BSD-2"
53 +SLOT="0"
54 +IUSE="audit debug ncurses pam newnet prefix +netifrc selinux static-libs
55 + unicode kernel_linux kernel_FreeBSD"
56 +
57 +COMMON_DEPEND="kernel_FreeBSD? ( || ( >=sys-freebsd/freebsd-ubin-9.0_rc sys-process/fuser-bsd ) )
58 + ncurses? ( sys-libs/ncurses:0= )
59 + pam? (
60 + sys-auth/pambase
61 + virtual/pam
62 + )
63 + audit? ( sys-process/audit )
64 + kernel_linux? (
65 + sys-process/psmisc
66 + !<sys-process/procps-3.3.9-r2
67 + )
68 + selinux? (
69 + sys-apps/policycoreutils
70 + >=sys-libs/libselinux-2.6
71 + )
72 + !<sys-apps/baselayout-2.1-r1
73 + !<sys-fs/udev-init-scripts-27"
74 +DEPEND="${COMMON_DEPEND}
75 + virtual/os-headers
76 + ncurses? ( virtual/pkgconfig )"
77 +RDEPEND="${COMMON_DEPEND}
78 + !prefix? (
79 + kernel_linux? (
80 + >=sys-apps/sysvinit-2.86-r6[selinux?]
81 + virtual/tmpfiles
82 + )
83 + kernel_FreeBSD? ( sys-freebsd/freebsd-sbin )
84 + )
85 + selinux? (
86 + >=sec-policy/selinux-base-policy-2.20170204-r4
87 + >=sec-policy/selinux-openrc-2.20170204-r4
88 + )
89 +"
90 +
91 +PDEPEND="netifrc? ( net-misc/netifrc )"
92 +
93 +src_prepare() {
94 + default
95 +
96 + sed -i 's:0444:0644:' mk/sys.mk || die
97 +
98 + if [[ ${PV} == "9999" ]] ; then
99 + local ver="git-${EGIT_VERSION:0:6}"
100 + sed -i "/^GITVER[[:space:]]*=/s:=.*:=${ver}:" mk/gitver.mk || die
101 + fi
102 +}
103 +
104 +src_compile() {
105 + unset LIBDIR #266688
106 +
107 + MAKE_ARGS="${MAKE_ARGS}
108 + LIBNAME=$(get_libdir)
109 + LIBEXECDIR=${EPREFIX}/$(get_libdir)/rc
110 + MKNET=$(usex newnet)
111 + MKSELINUX=$(usex selinux)
112 + MKAUDIT=$(usex audit)
113 + MKPAM=$(usev pam)
114 + MKSTATICLIBS=$(usex static-libs)"
115 +
116 + local brand="Unknown"
117 + if use kernel_linux ; then
118 + MAKE_ARGS="${MAKE_ARGS} OS=Linux"
119 + brand="Linux"
120 + elif use kernel_FreeBSD ; then
121 + MAKE_ARGS="${MAKE_ARGS} OS=FreeBSD"
122 + brand="FreeBSD"
123 + fi
124 + export BRANDING="Gentoo ${brand}"
125 + use prefix && MAKE_ARGS="${MAKE_ARGS} MKPREFIX=yes PREFIX=${EPREFIX}"
126 + export DEBUG=$(usev debug)
127 + export MKTERMCAP=$(usev ncurses)
128 +
129 + tc-export CC AR RANLIB
130 + emake ${MAKE_ARGS}
131 +}
132 +
133 +# set_config <file> <option name> <yes value> <no value> test
134 +# a value of "#" will just comment out the option
135 +set_config() {
136 + local file="${ED}/$1" var=$2 val com
137 + eval "${@:5}" && val=$3 || val=$4
138 + [[ ${val} == "#" ]] && com="#" && val='\2'
139 + sed -i -r -e "/^#?${var}=/{s:=([\"'])?([^ ]*)\1?:=\1${val}\1:;s:^#?:${com}:}" "${file}"
140 +}
141 +
142 +set_config_yes_no() {
143 + set_config "$1" "$2" YES NO "${@:3}"
144 +}
145 +
146 +src_install() {
147 + emake ${MAKE_ARGS} DESTDIR="${D}" install
148 +
149 + # move the shared libs back to /usr so ldscript can install
150 + # more of a minimal set of files
151 + # disabled for now due to #270646
152 + #mv "${ED}"/$(get_libdir)/lib{einfo,rc}* "${ED}"/usr/$(get_libdir)/ || die
153 + #gen_usr_ldscript -a einfo rc
154 + gen_usr_ldscript libeinfo.so
155 + gen_usr_ldscript librc.so
156 +
157 + if ! use kernel_linux; then
158 + keepdir /$(get_libdir)/rc/init.d
159 + fi
160 + keepdir /$(get_libdir)/rc/tmp
161 +
162 + # Backup our default runlevels
163 + dodir /usr/share/"${PN}"
164 + cp -PR "${ED}"/etc/runlevels "${ED}"/usr/share/${PN} || die
165 + rm -rf "${ED}"/etc/runlevels
166 +
167 + # Setup unicode defaults for silly unicode users
168 + set_config_yes_no /etc/rc.conf unicode use unicode
169 +
170 + # Cater to the norm
171 + set_config_yes_no /etc/conf.d/keymaps windowkeys '(' use x86 '||' use amd64 ')'
172 +
173 + # On HPPA, do not run consolefont by default (bug #222889)
174 + if use hppa; then
175 + rm -f "${ED}"/usr/share/openrc/runlevels/boot/consolefont
176 + fi
177 +
178 + # Support for logfile rotation
179 + insinto /etc/logrotate.d
180 + newins "${FILESDIR}"/openrc.logrotate openrc
181 +
182 + # install gentoo pam.d files
183 + newpamd "${FILESDIR}"/start-stop-daemon.pam start-stop-daemon
184 + newpamd "${FILESDIR}"/start-stop-daemon.pam supervise-daemon
185 +
186 + # install documentation
187 + dodoc ChangeLog *.md
188 + if use newnet; then
189 + dodoc README.newnet
190 + fi
191 +}
192 +
193 +add_boot_init() {
194 + local initd=$1
195 + local runlevel=${2:-boot}
196 + # if the initscript is not going to be installed and is not
197 + # currently installed, return
198 + [[ -e "${ED}"/etc/init.d/${initd} || -e "${EROOT}"etc/init.d/${initd} ]] \
199 + || return
200 + [[ -e "${EROOT}"etc/runlevels/${runlevel}/${initd} ]] && return
201 +
202 + # if runlevels dont exist just yet, then create it but still flag
203 + # to pkg_postinst that it needs real setup #277323
204 + if [[ ! -d "${EROOT}"etc/runlevels/${runlevel} ]] ; then
205 + mkdir -p "${EROOT}"etc/runlevels/${runlevel}
206 + touch "${EROOT}"etc/runlevels/.add_boot_init.created
207 + fi
208 +
209 + elog "Auto-adding '${initd}' service to your ${runlevel} runlevel"
210 + ln -snf /etc/init.d/${initd} "${EROOT}"etc/runlevels/${runlevel}/${initd}
211 +}
212 +add_boot_init_mit_config() {
213 + local config=$1 initd=$2
214 + if [[ -e ${EROOT}${config} ]] ; then
215 + if [[ -n $(sed -e 's:#.*::' -e '/^[[:space:]]*$/d' "${EROOT}"${config}) ]] ; then
216 + add_boot_init ${initd}
217 + fi
218 + fi
219 +}
220 +
221 +pkg_preinst() {
222 + local f LIBDIR=$(get_libdir)
223 +
224 + # avoid default thrashing in conf.d files when possible #295406
225 + if [[ -e "${EROOT}"etc/conf.d/hostname ]] ; then
226 + (
227 + unset hostname HOSTNAME
228 + source "${EROOT}"etc/conf.d/hostname
229 + : ${hostname:=${HOSTNAME}}
230 + [[ -n ${hostname} ]] && set_config /etc/conf.d/hostname hostname "${hostname}"
231 + )
232 + fi
233 +
234 + # set default interactive shell to sulogin if it exists
235 + set_config /etc/rc.conf rc_shell /sbin/sulogin "#" test -e /sbin/sulogin
236 +
237 + # termencoding was added in 0.2.1 and needed in boot
238 + has_version ">=sys-apps/openrc-0.2.1" || add_boot_init termencoding
239 +
240 + # swapfiles was added in 0.9.9 and needed in boot (february 2012)
241 + has_version ">=sys-apps/openrc-0.9.9" || add_boot_init swapfiles
242 +
243 + if ! has_version ">=sys-apps/openrc-0.11"; then
244 + add_boot_init sysfs sysinit
245 + fi
246 +
247 + if ! has_version ">=sys-apps/openrc-0.11.3" ; then
248 + migrate_udev_mount_script
249 + add_boot_init tmpfiles.setup boot
250 + fi
251 +
252 + # these were added in 0.12.
253 + if ! has_version ">=sys-apps/openrc-0.12"; then
254 + add_boot_init loopback
255 + add_boot_init tmpfiles.dev sysinit
256 +
257 + # ensure existing /etc/conf.d/net is not removed
258 + # undoes the hack to get around CONFIG_PROTECT in openrc-0.11.8 and earlier
259 + # this needs to stay in openrc ebuilds for a long time. :(
260 + # Added in 0.12.
261 + if [[ -f "${EROOT}"etc/conf.d/net ]]; then
262 + einfo "Modifying conf.d/net to keep it from being removed"
263 + cat <<-EOF >>"${EROOT}"etc/conf.d/net
264 +
265 +# The network scripts are now part of net-misc/netifrc
266 +# In order to avoid sys-apps/${P} from removing this file, this comment was
267 +# added; you can safely remove this comment. Please see
268 +# /usr/share/doc/netifrc*/README* for more information.
269 +EOF
270 + fi
271 + fi
272 + has_version ">=sys-apps/openrc-0.14" || add_boot_init binfmt
273 +
274 + if ! has_version ">=sys-apps/openrc-0.18.3"; then
275 + add_boot_init mtab
276 + if [[ -f "${EROOT}"etc/mtab ]] && [[ ! -L "${EROOT}"etc/mtab ]]; then
277 + ewarn "${EROOT}etc/mtab will be replaced with a"
278 + ewarn "symbolic link to /proc/self/mounts on the next"
279 + ewarn "reboot."
280 + ewarn "Change the setting in ${EROOT}etc/conf.d/mtab"
281 + ewarn "if you do not want this to happen."
282 + fi
283 + fi
284 +}
285 +
286 +# >=OpenRC-0.11.3 requires udev-mount to be in the sysinit runlevel with udev.
287 +migrate_udev_mount_script() {
288 + if [ -e "${EROOT}"etc/runlevels/sysinit/udev -a \
289 + ! -e "${EROOT}"etc/runlevels/sysinit/udev-mount ]; then
290 + add_boot_init udev-mount sysinit
291 + fi
292 + return 0
293 +}
294 +
295 +pkg_postinst() {
296 + local LIBDIR=$(get_libdir)
297 +
298 + # Make our runlevels if they don't exist
299 + if [[ ! -e "${EROOT}"etc/runlevels ]] || [[ -e "${EROOT}"etc/runlevels/.add_boot_init.created ]] ; then
300 + einfo "Copying across default runlevels"
301 + cp -RPp "${EROOT}"usr/share/${PN}/runlevels "${EROOT}"etc
302 + rm -f "${EROOT}"etc/runlevels/.add_boot_init.created
303 + else
304 + if [[ ! -e "${EROOT}"etc/runlevels/sysinit/devfs ]] ; then
305 + mkdir -p "${EROOT}"etc/runlevels/sysinit
306 + cp -RPp "${EROOT}"usr/share/${PN}/runlevels/sysinit/* \
307 + "${EROOT}"etc/runlevels/sysinit
308 + fi
309 + if [[ ! -e "${EROOT}"etc/runlevels/shutdown/mount-ro ]] ; then
310 + mkdir -p "${EROOT}"etc/runlevels/shutdown
311 + cp -RPp "${EROOT}"usr/share/${PN}/runlevels/shutdown/* \
312 + "${EROOT}"etc/runlevels/shutdown
313 + fi
314 + if [[ ! -e "${EROOT}"etc/runlevels/nonetwork/local ]]; then
315 + cp -RPp "${EROOT}"usr/share/${PN}/runlevels/nonetwork \
316 + "${EROOT}"etc/runlevels
317 + fi
318 + fi
319 +
320 + if use hppa; then
321 + elog "Setting the console font does not work on all HPPA consoles."
322 + elog "You can still enable it by running:"
323 + elog "# rc-update add consolefont boot"
324 + fi
325 +
326 + # Handle the conf.d/local.{start,stop} -> local.d transition
327 + if path_exists -o "${EROOT}"etc/conf.d/local.{start,stop} ; then
328 + elog "Moving your ${EROOT}etc/conf.d/local.{start,stop}"
329 + elog "files to ${EROOT}etc/local.d"
330 + mv "${EROOT}"etc/conf.d/local.start "${EROOT}"etc/local.d/baselayout1.start
331 + mv "${EROOT}"etc/conf.d/local.stop "${EROOT}"etc/local.d/baselayout1.stop
332 + chmod +x "${EROOT}"etc/local.d/*{start,stop}
333 + fi
334 +
335 + if use kernel_linux && [[ "${EROOT}" = "/" ]]; then
336 + if ! /$(get_libdir)/rc/sh/migrate-to-run.sh; then
337 + ewarn "The dependency data could not be migrated to /run/openrc."
338 + ewarn "This means you need to reboot your system."
339 + fi
340 + fi
341 +
342 + # update the dependency tree after touching all files #224171
343 + [[ "${EROOT}" = "/" ]] && "${EROOT}/${LIBDIR}"/rc/bin/rc-depend -u
344 +
345 + if ! use newnet && ! use netifrc; then
346 + ewarn "You have emerged OpenRc without network support. This"
347 + ewarn "means you need to SET UP a network manager such as"
348 + ewarn " net-misc/netifrc, net-misc/dhcpcd, net-misc/wicd,"
349 + ewarn "net-misc/NetworkManager, or net-vpn/badvpn."
350 + ewarn "Or, you have the option of emerging openrc with the newnet"
351 + ewarn "use flag and configuring /etc/conf.d/network and"
352 + ewarn "/etc/conf.d/staticroute if you only use static interfaces."
353 + ewarn
354 + fi
355 +
356 + if use newnet && [ ! -e "${EROOT}"etc/runlevels/boot/network ]; then
357 + ewarn "Please add the network service to your boot runlevel"
358 + ewarn "as soon as possible. Not doing so could leave you with a system"
359 + ewarn "without networking."
360 + ewarn
361 + fi
362 +}