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