Gentoo Archives: gentoo-commits

From: "Roy Marples (uberlord)" <uberlord@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sys-apps/baselayout: ChangeLog baselayout-2.0.0_rc6.ebuild
Date: Wed, 31 Oct 2007 23:26:36
Message-Id: E1InMx8-0002iV-40@stork.gentoo.org
1 uberlord 07/10/31 23:26:26
2
3 Modified: ChangeLog
4 Added: baselayout-2.0.0_rc6.ebuild
5 Log:
6 rc6 fixed a few things and introduces a logger daemon and a new posix array structure as discussed on -dev.
7 (Portage version: 2.1.3.16)
8
9 Revision Changes Path
10 1.441 sys-apps/baselayout/ChangeLog
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayout/ChangeLog?rev=1.441&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayout/ChangeLog?rev=1.441&content-type=text/plain
14 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayout/ChangeLog?r1=1.440&r2=1.441
15
16 Index: ChangeLog
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/sys-apps/baselayout/ChangeLog,v
19 retrieving revision 1.440
20 retrieving revision 1.441
21 diff -u -r1.440 -r1.441
22 --- ChangeLog 22 Oct 2007 20:45:13 -0000 1.440
23 +++ ChangeLog 31 Oct 2007 23:26:25 -0000 1.441
24 @@ -1,10 +1,17 @@
25 # ChangeLog for sys-apps/baselayout
26 # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
27 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/baselayout/ChangeLog,v 1.440 2007/10/22 20:45:13 uberlord Exp $
28 +# $Header: /var/cvsroot/gentoo-x86/sys-apps/baselayout/ChangeLog,v 1.441 2007/10/31 23:26:25 uberlord Exp $
29
30 # See the rc-scripts ChangeLog in subversion for release info:
31 # http://sources.gentoo.org/viewcvs.py/*checkout*/baselayout/trunk/ChangeLog
32
33 +*baselayout-2.0.0_rc6 (31 Oct 2007)
34 +
35 + 31 Oct 2007; Roy Marples <uberlord@g.o>
36 + +baselayout-2.0.0_rc6.ebuild:
37 + rc6 fixed a few things and introduces a logger daemon and a new posix array
38 + structure as discussed on -dev.
39 +
40 22 Oct 2007; Roy Marples <uberlord@g.o>
41 baselayout-2.0.0_rc5.ebuild:
42 Fix upgrade/downgrade paths.
43
44
45
46 1.1 sys-apps/baselayout/baselayout-2.0.0_rc6.ebuild
47
48 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayout/baselayout-2.0.0_rc6.ebuild?rev=1.1&view=markup
49 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/sys-apps/baselayout/baselayout-2.0.0_rc6.ebuild?rev=1.1&content-type=text/plain
50
51 Index: baselayout-2.0.0_rc6.ebuild
52 ===================================================================
53 # Copyright 1999-2007 Gentoo Foundation
54 # Distributed under the terms of the GNU General Public License v2
55 # $Header: /var/cvsroot/gentoo-x86/sys-apps/baselayout/baselayout-2.0.0_rc6.ebuild,v 1.1 2007/10/31 23:26:25 uberlord Exp $
56
57 inherit flag-o-matic eutils toolchain-funcs multilib
58
59 DESCRIPTION="Filesystem baselayout and init scripts"
60 HOMEPAGE="http://www.gentoo.org/"
61 SRC_URI="mirror://gentoo/${P}.tar.bz2
62 http://dev.gentoo.org/~uberlord/baselayout/${P}.tar.bz2"
63
64 LICENSE="GPL-2"
65 SLOT="0"
66 KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
67 IUSE="bootstrap build pam static unicode kernel_linux kernel_FreeBSD"
68
69 RDEPEND="virtual/init
70 !build? (
71 !bootstrap? (
72 kernel_linux? ( >=sys-apps/coreutils-5.2.1 )
73 kernel_FreeBSD? ( sys-process/fuser-bsd )
74 )
75 )
76 pam? ( virtual/pam )
77 !<net-misc/dhcpcd-2.0.0"
78 DEPEND="virtual/os-headers"
79 PDEPEND="virtual/init
80 !build? ( !bootstrap? (
81 kernel_linux? ( >=sys-apps/module-init-tools-3.2.2-r2 sys-apps/makedev )
82 ) )"
83
84 PROVIDE="virtual/baselayout"
85
86 src_unpack() {
87 unpack ${A}
88 cd "${S}"
89
90 # Setup unicode defaults for silly unicode users
91 if use unicode ; then
92 sed -i -e '/^UNICODE=/s:no:yes:' etc/rc.conf
93 fi
94 }
95
96 make_opts() {
97 local libdir="lib"
98 [ "${SYMLINK_LIB}" = "yes" ] && libdir=$(get_abi_LIBDIR "${DEFAULT_ABI}")
99 local opts="${opts} LIB=${libdir}"
100
101 if use kernel_linux; then
102 opts="${opts} OS=Linux"
103 else
104 opts="${opts} OS=BSD"
105 fi
106 use pam && opts="${opts} PAM=pam"
107
108 echo "${opts}"
109 }
110
111 src_compile() {
112 use static && append-ldflags -static
113 emake $(make_opts) ARCH=$(tc-arch) CC=$(tc-getCC) || die
114 }
115
116 pkg_preinst() {
117 # Move our makefiles to a temporay location
118 mv "${D}"/usr/share/baselayout/{Makefile,default.mk,runlevels}* "${T}"
119
120 # We need to install directories and maybe some dev nodes when building
121 # stages, but they cannot be in CONTENTS.
122 # Also, we cannot reference $S as binpkg will break so we do this.
123 if use build || use bootstrap ; then
124 local libdirs="$(get_all_libdirs)" dir=
125 # Create our multilib dirs - the Makefile has no knowledge of this
126 : ${libdirs:=lib} # it isn't that we don't trust multilib.eclass...
127 for dir in ${libdirs}; do
128 mkdir -p "${ROOT}${dir}"
129 touch "${ROOT}${dir}"/.keep
130 mkdir -p "${ROOT}usr/${dir}"
131 touch "${ROOT}usr/${dir}"/.keep
132 mkdir -p "${ROOT}usr/local/${dir}"
133 touch "${ROOT}usr/local/${dir}"/.keep
134 done
135
136 # Ugly compatibility with stupid ebuilds and old profiles symlinks
137 if [ "${SYMLINK_LIB}" = "yes" ] ; then
138 rm -r "${ROOT}"/{lib,usr/lib,usr/local/lib} 2>/dev/null
139 local lib=$(get_abi_LIBDIR ${DEFAULT_ABI})
140 ln -s "${lib}" "${ROOT}lib"
141 ln -s "${lib}" "${ROOT}usr/lib"
142 ln -s "${lib}" "${ROOT}usr/local/lib"
143 fi
144
145 emake -C "${T}" $(make_opts) DESTDIR="${ROOT}" layout || die "failed to layout filesystem"
146 fi
147 }
148
149 src_install() {
150 emake $(make_opts) DESTDIR="${D}" install || die
151 dodoc ChangeLog COPYRIGHT
152
153 # Should this belong in another ebuild? Like say binutils?
154 # List all the multilib libdirs in /etc/env/04multilib (only if they're
155 # actually different from the normal
156 if has_multilib_profile || [ $(get_libdir) != "lib" -o -n "${CONF_MULTILIBDIR}" ]; then
157 local libdirs="$(get_all_libdirs)" libdirs_env= dir=
158 : ${libdirs:=lib} # it isn't that we don't trust multilib.eclass...
159 for dir in ${libdirs}; do
160 libdirs_env=${libdirs_env:+$libdirs_env:}/${dir}:/usr/${dir}:/usr/local/${dir}
161 done
162
163 # Special-case uglyness... For people updating from lib32 -> lib amd64
164 # profiles, keep lib32 in the search path while it's around
165 if has_multilib_profile && [ -d "${ROOT}"lib32 -o -d "${ROOT}"lib32 ] && ! hasq lib32 ${libdirs}; then
166 libdirs_env="${libdirs_env}:/lib32:/usr/lib32:/usr/local/lib32"
167 fi
168 echo "LDPATH=\"${libdirs_env}\"" > "${T}"/04multilib
169 doenvd "${T}"/04multilib
170 fi
171
172 # rc-scripts version for testing of features that *should* be present
173 echo "Gentoo Base System release ${PV}" > "${D}"/etc/gentoo-release
174
175 # Remove the installed runlevels, as we don't know about $ROOT yet
176 rm -rf "${D}/etc/runlevels"
177
178 # Copy the make files to /usr/share/baselayout so we can re-use them in
179 # postinst, otherwise binpkg will break.
180 insinto /usr/share/baselayout
181 doins -r Makefile default.mk runlevels*
182
183 gen_usr_ldscript libeinfo.so librc.so
184 }
185
186 pkg_postinst() {
187 # Make our runlevels if they don't exist
188 if [ ! -e "${ROOT}"etc/runlevels ]; then
189 einfo "Making default runlevels"
190 make -C "${T}" $(make_opts) DESTDIR="${ROOT}" runlevels_install >/dev/null
191 fi
192
193 # We installed some files to /usr/share/baselayout instead of /etc to stop
194 # (1) overwriting the user's settings
195 # (2) screwing things up when attempting to merge files
196 # (3) accidentally packaging up personal files with quickpkg
197 # If they don't exist then we install them
198 for x in master.passwd passwd shadow group fstab ; do
199 [ -e "${ROOT}etc/${x}" ] && continue
200 [ -e "${ROOT}usr/share/baselayout/${x}" ] || continue
201 cp -p "${ROOT}usr/share/baselayout/${x}" "${ROOT}"etc
202 done
203
204 # We need to copy svcdir if upgrading
205 if has_version "<sys-apps/${PN}-1.13.0_alpha" ; then
206 (
207 . "${ROOT}etc/conf.d/rc"
208 svcdir="${svcdir:-/var/lib/init.d}"
209 einfo "Moving state from ${ROOT}${svcdir} to ${ROOT}lib/rc/init.d"
210 cp -RPp "${ROOT}${svcdir}"/* "${ROOT}"lib/rc/init.d
211 rm -rf "${ROOT}"lib/rc/init.d/daemons \
212 "${ROOT}"lib/rc/init.d/console
213 umount "${ROOT}${svcdir}" 2>/dev/null
214 rm -rf "${ROOT}${svcdir}"
215 )
216 elif has_version "<sys-apps/${PN}-2.0.0_rc5" ; then
217 if [ -d "${ROOT}"lib/rcscripts/init.d ] ; then
218 einfo "Moving state from ${ROOT}lib/rcscripts/init.d to ${ROOT}lib/rc/init.d"
219 cp -RPp "${ROOT}"lib/rcscripts/init.d/* "${ROOT}"lib/rc/init.d
220 umount "${ROOT}lib/rcscripts/init.d" 2>/dev/null
221 rm -rf "${ROOT}"lib/rcscripts/init.d
222 [ -d "${ROOT}"lib/rcscripts/console ] && \
223 mv "${ROOT}"lib/rcscripts/console "${ROOT}"lib/rc
224 fi
225 fi
226
227 if [ "${ROOT}" = / ] && ! use build && ! use bootstrap; then
228 /$(get_libdir)/rc/bin/rc-depend --update
229 fi
230
231 # This is also written in src_install (so it's in CONTENTS), but
232 # write it here so that the new version is immediately in the file
233 # (without waiting for the user to do etc-update)
234 rm -f "${ROOT}"/etc/._cfg????_gentoo-release
235 local release="${PV}"
236 [ "${PR}" != r0 ] && release="${release}-${PR}"
237 echo "Gentoo Base System release ${release}" > "${ROOT}"/etc/gentoo-release
238
239 echo
240 einfo "Please be sure to update all pending '._cfg*' files in /etc,"
241 einfo "else things might break at your next reboot! You can use 'etc-update'"
242 einfo "to accomplish this:"
243 einfo
244 einfo " # etc-update"
245
246 echo
247 ewarn "WARNING: The way we contruct posix shell arrays has changed in rc6"
248 elog "You are advised to read the new method in /etc/conf.d/net.example"
249
250 local lo="net.lo0"
251 use kernel_linux && lo="net.lo"
252 for f in "${ROOT}"etc/init.d/net.*; do
253 [ -L "${f}" -o "${f}" = "${ROOT}etc/init.d/${lo}" ] && continue
254 echo
255 einfo "WARNING: You have older net.* files in ${ROOT}etc/init.d/"
256 einfo "They need to be converted to symlinks to ${lo}. If you haven't"
257 einfo "made personal changes to those files, you can update with the"
258 einfo "following command:"
259 einfo
260 einfo " /bin/ls ${ROOT}etc/init.d/net.* | grep -v '/${lo}$' | xargs -n1 ln -sfvn ${lo}"
261 break
262 done
263
264 # whine about users that lack passwords #193541
265 if [ -e "${ROOT}"/etc/shadow ]; then
266 local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${ROOT}"/etc/shadow)
267 if [ -n "${bad_users}" ] ; then
268 echo
269 ewarn "The following users lack passwords!"
270 ewarn ${bad_users}
271 fi
272 fi
273 }
274
275 # Handle our downgraders
276 # We should remove this when <1.13 has been removed from the tree
277 pkg_postrm() {
278 # Remove dir if downgrading
279 if has_version "<sys-apps/${PN}-1.13.0_alpha" ; then
280 (
281 . "${ROOT}etc/conf.d/rc"
282 svcdir="${svcdir:-/var/lib/init.d}"
283 einfo "Moving state from ${ROOT}lib/rc/init.d to ${ROOT}${svcdir}"
284 mkdir -p "${ROOT}${svcdir}"
285 cp -RPp "${ROOT}lib/rc/init.d"/* "${ROOT}${svcdir}"
286 rm -rf "${ROOT}${svcdir}"/daemons
287 umount "${ROOT}lib/rc/init.d" 2>/dev/null
288 rm -rf "${ROOT}lib/rc/init.d" "${ROOT}lib/rc/console"
289 rmdir "${ROOT}lib/rc" 2>/dev/null
290 )
291 elif has_version "<sys-apps/${PN}-2.0.0_rc5" ; then
292 einfo "Moving state from ${ROOT}lib/rc/init.d to ${ROOT}lib/rcscripts/init.d"
293 mkdir -p "${ROOT}"lib/rcscripts/init.d
294 cp -RPp "${ROOT}"lib/rc/init.d/* "${ROOT}"lib/rcscripts/init.d
295 umount "${ROOT}"lib/rc/init.d 2>/dev/null
296 rm -rf "${ROOT}"lib/rc/init.d
297 [ -d "${ROOT}"/lib/rc/console ] && \
298 mv "${ROOT}"lib/rc/console "${ROOT}"lib/rcscripts
299 rmdir "${ROOT}"lib/rc 2>/dev/null
300 fi
301 }
302
303
304
305 --
306 gentoo-commits@g.o mailing list