1 |
commit: a0e1a91d1b191aca42bee226457008e25660ed89 |
2 |
Author: stefson <herrtimson <AT> yahoo <DOT> de> |
3 |
AuthorDate: Sun Sep 3 11:35:16 2017 +0000 |
4 |
Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Sep 3 20:54:09 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=a0e1a91d |
7 |
|
8 |
sys-apps/portage: bug #617778 is fixed and stablized for all musl arches in portage-2.3.6 |
9 |
|
10 |
Signed-off-by: Anthony G. Basile <blueness <AT> gentoo.org> |
11 |
|
12 |
sys-apps/portage/Manifest | 5 - |
13 |
sys-apps/portage/files/2.3.5-loff_t.patch | 70 -------- |
14 |
sys-apps/portage/files/README.RESCUE | 2 - |
15 |
sys-apps/portage/metadata.xml | 27 --- |
16 |
sys-apps/portage/portage-2.3.5.ebuild | 279 ------------------------------ |
17 |
5 files changed, 383 deletions(-) |
18 |
|
19 |
diff --git a/sys-apps/portage/Manifest b/sys-apps/portage/Manifest |
20 |
deleted file mode 100644 |
21 |
index e43af65..0000000 |
22 |
--- a/sys-apps/portage/Manifest |
23 |
+++ /dev/null |
24 |
@@ -1,5 +0,0 @@ |
25 |
-AUX 2.3.5-loff_t.patch 2569 SHA256 709f0374f9f88cc89f379356ae8bffc6560e240f2157ccab367d0ebc2e523438 SHA512 e944be00cd7bca618202a5f3084624eb110a02edc5d5cac44603c7a9c16132305b13e916578bfd06f6792c978cc78c60282823fc162df7120032c9239880e21f WHIRLPOOL dd638c53a1ecf36b7501bed36eccb8099f581d6a5b4c061015e40dd34cbd4bb58af3c14c18bfcab76a762813b365d5e80e8d298d230a0d29fe7a741449158cb2 |
26 |
-AUX README.RESCUE 137 SHA256 69bea0c755eab59b6b4d90838b8551744f0b0c8eeac170b1cd13a71ee83f9ac4 SHA512 dba0f0d6d4cd140e636cc70dfb7bdb298e2f2fb040bc07b0874cac994bdbabd26bfd9361d85a0f8b9a92a185281e4901606b9e4f563afdc8867341bbe6af1cb0 WHIRLPOOL 713fcc790442999d56e13efaf536fec9954dadeda680b3642d0358311332096ddedf8b55697bd1ca620d84f0dc7d025ff7931e086c74c1f5032be72dca2ff8f5 |
27 |
-DIST portage-2.3.5.tar.bz2 933047 SHA256 9b3282eee8f7f5728a4a71864d6b34315d71d43c52b2b650cf0d8f412c871941 SHA512 c403578caf40d97e8081c203d433b515cb2fdb14cb8b7d2652ed664bd079e65db32b54ce12ff495af6dd5fb468c5a1ef58d335e202ede5355d115049e21a6a35 WHIRLPOOL 25dbb6547d6488cebc1baf093a600e2034e17558306fd55f5502346330a78012e32d3c49dcf0445664c69d4e3e6b2580762417324ccd0bf3aa08575245165a24 |
28 |
-EBUILD portage-2.3.5.ebuild 8633 SHA256 2e353b0fbb3e9e06a84af2f236e85b4e9fe4e204ca22bcb93ff74c367db487f8 SHA512 0fa9d646f5e0e80990b31e9c39fe4b994efdec13530b610da22046eaa6023224dc6f7bec27865d478eb440389632e99a60a8d4f3f9c8eea9d114b2ee1b04f704 WHIRLPOOL 302ad07d96b58b5730ef868079137e184de1428b650182dfb45847a9712023aaa6fa844b77b5cec0c1a8b796c55ffef9e4634a8be57cd1578427427d6b7cc6de |
29 |
-MISC metadata.xml 1147 SHA256 c4832ae64ab0915c65eadca15e4540680d109c21d572464f69e218d14fe6bd8b SHA512 733193cbfc96da31252b5e4109d0b76f797e339c41eda2c1230cc1d5b0e75912177570ed0140218a7a7b85d9b8bc53e8e6931e88810269c499be87af40e6b86c WHIRLPOOL bf901ca7474f9b8358c458edad904f9c0c853187c6dc8ea0bc0c327bded60940c6f8b20f0231d78d86aa7dc5235b23d70c69f7153cca9e375fa271c7c93707b9 |
30 |
|
31 |
diff --git a/sys-apps/portage/files/2.3.5-loff_t.patch b/sys-apps/portage/files/2.3.5-loff_t.patch |
32 |
deleted file mode 100644 |
33 |
index 95a3b86..0000000 |
34 |
--- a/sys-apps/portage/files/2.3.5-loff_t.patch |
35 |
+++ /dev/null |
36 |
@@ -1,70 +0,0 @@ |
37 |
-From 1a7aeb58c4e687e4d4012054b56373f27941a067 Mon Sep 17 00:00:00 2001 |
38 |
-From: Zac Medico <zmedico@g.o> |
39 |
-Date: Sun, 7 May 2017 16:32:19 -0700 |
40 |
-Subject: [PATCH] file_copy: replace loff_t with off_t for portability (bug |
41 |
- 617778) |
42 |
- |
43 |
-The loff_t type is a GNU extension, so use the portable off_t |
44 |
-type instead. Also, enable Large File Support macros in setup.py, |
45 |
-for 64-bit offsets. |
46 |
- |
47 |
-Reported-by: Patrick Steinhardt <ps@×××.im> |
48 |
-X-Gentoo-bug: 617778 |
49 |
-X-Gentoo-bug-url: https://bugs.gentoo.org/show_bug.cgi?id=617778 |
50 |
-Acked-by: Anthony G. Basile <blueness@g.o> |
51 |
-Acked-by: Brian Dolbec <dolsen@g.o> |
52 |
---- |
53 |
- setup.py | 5 ++++- |
54 |
- src/portage_util_file_copy_reflink_linux.c | 6 +++--- |
55 |
- 2 files changed, 7 insertions(+), 4 deletions(-) |
56 |
- |
57 |
-diff --git a/setup.py b/setup.py |
58 |
-index e993177..1ba6f87 100755 |
59 |
---- a/setup.py |
60 |
-+++ b/setup.py |
61 |
-@@ -676,7 +676,10 @@ setup( |
62 |
- ['$sysconfdir/portage/repo.postsync.d', ['cnf/repo.postsync.d/example']], |
63 |
- ], |
64 |
- |
65 |
-- ext_modules = [Extension(name=n, sources=m) for n, m in x_c_helpers.items()], |
66 |
-+ ext_modules = [Extension(name=n, sources=m, |
67 |
-+ extra_compile_args=['-D_FILE_OFFSET_BITS=64', |
68 |
-+ '-D_LARGEFILE_SOURCE', '-D_LARGEFILE64_SOURCE']) |
69 |
-+ for n, m in x_c_helpers.items()], |
70 |
- |
71 |
- cmdclass = { |
72 |
- 'build': x_build, |
73 |
-diff --git a/src/portage_util_file_copy_reflink_linux.c b/src/portage_util_file_copy_reflink_linux.c |
74 |
-index b031d96..2fb17a0 100644 |
75 |
---- a/src/portage_util_file_copy_reflink_linux.c |
76 |
-+++ b/src/portage_util_file_copy_reflink_linux.c |
77 |
-@@ -66,7 +66,7 @@ initreflink_linux(void) |
78 |
- * (errno is set appropriately). |
79 |
- */ |
80 |
- static ssize_t |
81 |
--cfr_wrapper(int fd_out, int fd_in, loff_t *off_out, size_t len) |
82 |
-+cfr_wrapper(int fd_out, int fd_in, off_t *off_out, size_t len) |
83 |
- { |
84 |
- #ifdef __NR_copy_file_range |
85 |
- return syscall(__NR_copy_file_range, fd_in, NULL, fd_out, |
86 |
-@@ -96,7 +96,7 @@ cfr_wrapper(int fd_out, int fd_in, loff_t *off_out, size_t len) |
87 |
- * reaches EOF. |
88 |
- */ |
89 |
- static off_t |
90 |
--do_lseek_data(int fd_out, int fd_in, loff_t *off_out) { |
91 |
-+do_lseek_data(int fd_out, int fd_in, off_t *off_out) { |
92 |
- #ifdef SEEK_DATA |
93 |
- /* Use lseek SEEK_DATA/SEEK_HOLE for sparse file support, |
94 |
- * as suggested in the copy_file_range man page. |
95 |
-@@ -189,7 +189,7 @@ _reflink_linux_file_copy(PyObject *self, PyObject *args) |
96 |
- ssize_t buf_bytes, buf_offset, copyfunc_ret; |
97 |
- struct stat stat_in, stat_out; |
98 |
- char* buf; |
99 |
-- ssize_t (*copyfunc)(int, int, loff_t *, size_t); |
100 |
-+ ssize_t (*copyfunc)(int, int, off_t *, size_t); |
101 |
- |
102 |
- if (!PyArg_ParseTuple(args, "ii", &fd_in, &fd_out)) |
103 |
- return NULL; |
104 |
--- |
105 |
-2.10.2 |
106 |
- |
107 |
|
108 |
diff --git a/sys-apps/portage/files/README.RESCUE b/sys-apps/portage/files/README.RESCUE |
109 |
deleted file mode 100644 |
110 |
index 70c494e..0000000 |
111 |
--- a/sys-apps/portage/files/README.RESCUE |
112 |
+++ /dev/null |
113 |
@@ -1,2 +0,0 @@ |
114 |
-Please see http://www.gentoo.org/proj/en/portage/doc/manually-fixing-portage.xml |
115 |
-for a recovery guide for a broken portage installation. |
116 |
|
117 |
diff --git a/sys-apps/portage/metadata.xml b/sys-apps/portage/metadata.xml |
118 |
deleted file mode 100644 |
119 |
index c662419..0000000 |
120 |
--- a/sys-apps/portage/metadata.xml |
121 |
+++ /dev/null |
122 |
@@ -1,27 +0,0 @@ |
123 |
-<?xml version="1.0" encoding="UTF-8"?> |
124 |
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
125 |
-<pkgmetadata> |
126 |
- <upstream> |
127 |
- <bugs-to>mailto:dev-portage@g.o</bugs-to> |
128 |
- <changelog>https://gitweb.gentoo.org/proj/portage.git/plain/RELEASE-NOTES</changelog> |
129 |
- <doc>https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/Portage</doc> |
130 |
- </upstream> |
131 |
- <maintainer type="project"> |
132 |
- <email>dev-portage@g.o</email> |
133 |
- </maintainer> |
134 |
- <use> |
135 |
- <flag name="epydoc">Build html API documentation with epydoc.</flag> |
136 |
- <flag name="ipc">Use inter-process communication between portage and |
137 |
- running ebuilds. |
138 |
- </flag> |
139 |
- <flag name="native-extensions"> |
140 |
- Compiles native "C" extensions (speedups, instead of using python |
141 |
- backup code). Currently includes libc-locales. |
142 |
- This should only be temporarily disabled for some bootstrapping |
143 |
- operations. Cross-compilation is not supported. |
144 |
- </flag> |
145 |
- <flag name="xattr">Preserve extended attributes (filesystem-stored metadata) |
146 |
- when installing files. Usually only required for hardened systems. |
147 |
- </flag> |
148 |
- </use> |
149 |
-</pkgmetadata> |
150 |
|
151 |
diff --git a/sys-apps/portage/portage-2.3.5.ebuild b/sys-apps/portage/portage-2.3.5.ebuild |
152 |
deleted file mode 100644 |
153 |
index a912c81..0000000 |
154 |
--- a/sys-apps/portage/portage-2.3.5.ebuild |
155 |
+++ /dev/null |
156 |
@@ -1,279 +0,0 @@ |
157 |
-# Copyright 1999-2017 Gentoo Foundation |
158 |
-# Distributed under the terms of the GNU General Public License v2 |
159 |
- |
160 |
-EAPI=5 |
161 |
- |
162 |
-PYTHON_COMPAT=( |
163 |
- pypy |
164 |
- python3_3 python3_4 python3_5 python3_6 |
165 |
- python2_7 |
166 |
-) |
167 |
-PYTHON_REQ_USE='bzip2(+),threads(+)' |
168 |
- |
169 |
-inherit distutils-r1 multilib |
170 |
- |
171 |
-DESCRIPTION="Portage is the package management and distribution system for Gentoo" |
172 |
-HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Portage" |
173 |
- |
174 |
-LICENSE="GPL-2" |
175 |
-KEYWORDS="amd64 arm ~mips ppc x86" |
176 |
-SLOT="0" |
177 |
-IUSE="build doc epydoc +ipc linguas_ru +native-extensions selinux xattr" |
178 |
- |
179 |
-DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') ) |
180 |
- >=app-arch/tar-1.27 |
181 |
- dev-lang/python-exec:2 |
182 |
- >=sys-apps/sed-4.0.5 sys-devel/patch |
183 |
- doc? ( app-text/xmlto ~app-text/docbook-xml-dtd-4.4 ) |
184 |
- epydoc? ( >=dev-python/epydoc-2.0[$(python_gen_usedep 'python2*')] )" |
185 |
-# Require sandbox-2.2 for bug #288863. |
186 |
-# For xattr, we can spawn getfattr and setfattr from sys-apps/attr, but that's |
187 |
-# quite slow, so it's not considered in the dependencies as an alternative to |
188 |
-# to python-3.3 / pyxattr. Also, xattr support is only tested with Linux, so |
189 |
-# for now, don't pull in xattr deps for other kernels. |
190 |
-# For whirlpool hash, require python[ssl] (bug #425046). |
191 |
-# For compgen, require bash[readline] (bug #445576). |
192 |
-RDEPEND=" |
193 |
- >=app-arch/tar-1.27 |
194 |
- dev-lang/python-exec:2 |
195 |
- !build? ( |
196 |
- >=sys-apps/sed-4.0.5 |
197 |
- app-shells/bash:0[readline] |
198 |
- >=app-admin/eselect-1.2 |
199 |
- ) |
200 |
- elibc_FreeBSD? ( sys-freebsd/freebsd-bin ) |
201 |
- elibc_glibc? ( >=sys-apps/sandbox-2.2 ) |
202 |
- elibc_musl? ( >=sys-apps/sandbox-2.2 ) |
203 |
- elibc_uclibc? ( >=sys-apps/sandbox-2.2 ) |
204 |
- >=app-misc/pax-utils-0.1.17 |
205 |
- selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] ) |
206 |
- xattr? ( kernel_linux? ( |
207 |
- >=sys-apps/install-xattr-0.3 |
208 |
- $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \ |
209 |
- python2_7 pypy) |
210 |
- ) ) |
211 |
- !<app-admin/logrotate-3.8.0" |
212 |
-PDEPEND=" |
213 |
- !build? ( |
214 |
- >=net-misc/rsync-2.6.4 |
215 |
- userland_GNU? ( >=sys-apps/coreutils-6.4 ) |
216 |
- )" |
217 |
-# coreutils-6.4 rdep is for date format in emerge-webrsync #164532 |
218 |
-# NOTE: FEATURES=installsources requires debugedit and rsync |
219 |
- |
220 |
-REQUIRED_USE="epydoc? ( $(python_gen_useflags 'python2*') )" |
221 |
- |
222 |
-SRC_ARCHIVES="https://dev.gentoo.org/~dolsen/releases/portage" |
223 |
- |
224 |
-PATCHES=( "${FILESDIR}"/${PV}-loff_t.patch ) |
225 |
- |
226 |
-prefix_src_archives() { |
227 |
- local x y |
228 |
- for x in ${@}; do |
229 |
- for y in ${SRC_ARCHIVES}; do |
230 |
- echo ${y}/${x} |
231 |
- done |
232 |
- done |
233 |
-} |
234 |
- |
235 |
-TARBALL_PV=${PV} |
236 |
-SRC_URI="mirror://gentoo/${PN}-${TARBALL_PV}.tar.bz2 |
237 |
- $(prefix_src_archives ${PN}-${TARBALL_PV}.tar.bz2)" |
238 |
- |
239 |
-pkg_setup() { |
240 |
- use epydoc && DISTUTILS_ALL_SUBPHASE_IMPLS=( python2.7 ) |
241 |
-} |
242 |
- |
243 |
-python_prepare_all() { |
244 |
- distutils-r1_python_prepare_all |
245 |
- |
246 |
- if use native-extensions; then |
247 |
- printf "[build_ext]\nportage-ext-modules=true\n" >> \ |
248 |
- setup.cfg || die |
249 |
- fi |
250 |
- |
251 |
- if ! use ipc ; then |
252 |
- einfo "Disabling ipc..." |
253 |
- sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \ |
254 |
- -i pym/_emerge/AbstractEbuildProcess.py || \ |
255 |
- die "failed to patch AbstractEbuildProcess.py" |
256 |
- fi |
257 |
- |
258 |
- if use xattr && use kernel_linux ; then |
259 |
- einfo "Adding FEATURES=xattr to make.globals ..." |
260 |
- echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \ |
261 |
- || die "failed to append to make.globals" |
262 |
- fi |
263 |
- |
264 |
- if [[ -n ${EPREFIX} ]] ; then |
265 |
- einfo "Setting portage.const.EPREFIX ..." |
266 |
- sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \ |
267 |
- -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \ |
268 |
- -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \ |
269 |
- -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \ |
270 |
- -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \ |
271 |
- -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \ |
272 |
- -i pym/portage/const.py || \ |
273 |
- die "Failed to patch portage.const.EPREFIX" |
274 |
- |
275 |
- einfo "Prefixing shebangs ..." |
276 |
- while read -r -d $'\0' ; do |
277 |
- local shebang=$(head -n1 "$REPLY") |
278 |
- if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then |
279 |
- sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "$REPLY" || \ |
280 |
- die "sed failed" |
281 |
- fi |
282 |
- done < <(find . -type f -print0) |
283 |
- |
284 |
- einfo "Adjusting make.globals ..." |
285 |
- sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \ |
286 |
- -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \ |
287 |
- -i cnf/make.globals || die "sed failed" |
288 |
- |
289 |
- einfo "Adjusting repos.conf ..." |
290 |
- sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \ |
291 |
- -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \ |
292 |
- -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \ |
293 |
- -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \ |
294 |
- -i cnf/repos.conf || die "sed failed" |
295 |
- |
296 |
- einfo "Adding FEATURES=force-prefix to make.globals ..." |
297 |
- echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \ |
298 |
- || die "failed to append to make.globals" |
299 |
- fi |
300 |
- |
301 |
- cd "${S}/cnf" || die |
302 |
- if [ -f "make.conf.example.${ARCH}".diff ]; then |
303 |
- patch make.conf.example "make.conf.example.${ARCH}".diff || \ |
304 |
- die "Failed to patch make.conf.example" |
305 |
- else |
306 |
- eerror "" |
307 |
- eerror "Portage does not have an arch-specific configuration for this arch." |
308 |
- eerror "Please notify the arch maintainer about this issue. Using generic." |
309 |
- eerror "" |
310 |
- fi |
311 |
-} |
312 |
- |
313 |
-python_compile_all() { |
314 |
- local targets=() |
315 |
- use doc && targets+=( docbook ) |
316 |
- use epydoc && targets+=( epydoc ) |
317 |
- |
318 |
- if [[ ${targets[@]} ]]; then |
319 |
- esetup.py "${targets[@]}" |
320 |
- fi |
321 |
-} |
322 |
- |
323 |
-python_test() { |
324 |
- esetup.py test |
325 |
-} |
326 |
- |
327 |
-python_install() { |
328 |
- # Install sbin scripts to bindir for python-exec linking |
329 |
- # they will be relocated in pkg_preinst() |
330 |
- distutils-r1_python_install \ |
331 |
- --system-prefix="${EPREFIX}/usr" \ |
332 |
- --bindir="$(python_get_scriptdir)" \ |
333 |
- --docdir="${EPREFIX}/usr/share/doc/${PF}" \ |
334 |
- --htmldir="${EPREFIX}/usr/share/doc/${PF}/html" \ |
335 |
- --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \ |
336 |
- --sbindir="$(python_get_scriptdir)" \ |
337 |
- --sysconfdir="${EPREFIX}/etc" \ |
338 |
- "${@}" |
339 |
-} |
340 |
- |
341 |
-python_install_all() { |
342 |
- distutils-r1_python_install_all |
343 |
- |
344 |
- local targets=() |
345 |
- use doc && targets+=( install_docbook ) |
346 |
- use epydoc && targets+=( install_epydoc ) |
347 |
- |
348 |
- # install docs |
349 |
- if [[ ${targets[@]} ]]; then |
350 |
- esetup.py "${targets[@]}" |
351 |
- fi |
352 |
- |
353 |
- # Due to distutils/python-exec limitations |
354 |
- # these must be installed to /usr/bin. |
355 |
- local sbin_relocations='archive-conf dispatch-conf emaint env-update etc-update fixpackages regenworld' |
356 |
- einfo "Moving admin scripts to the correct directory" |
357 |
- dodir /usr/sbin |
358 |
- for target in ${sbin_relocations}; do |
359 |
- einfo "Moving /usr/bin/${target} to /usr/sbin/${target}" |
360 |
- mv "${ED}usr/bin/${target}" "${ED}usr/sbin/${target}" || die "sbin scripts move failed!" |
361 |
- done |
362 |
-} |
363 |
- |
364 |
-pkg_preinst() { |
365 |
- # comment out sanity test until it is fixed to work |
366 |
- # with the new PORTAGE_PYM_PATH |
367 |
- #if [[ $ROOT == / ]] ; then |
368 |
- ## Run some minimal tests as a sanity check. |
369 |
- #local test_runner=$(find "${ED}" -name runTests) |
370 |
- #if [[ -n $test_runner && -x $test_runner ]] ; then |
371 |
- #einfo "Running preinst sanity tests..." |
372 |
- #"$test_runner" || die "preinst sanity tests failed" |
373 |
- #fi |
374 |
- #fi |
375 |
- |
376 |
- # elog dir must exist to avoid logrotate error for bug #415911. |
377 |
- # This code runs in preinst in order to bypass the mapping of |
378 |
- # portage:portage to root:root which happens after src_install. |
379 |
- keepdir /var/log/portage/elog |
380 |
- # This is allowed to fail if the user/group are invalid for prefix users. |
381 |
- if chown portage:portage "${ED}"var/log/portage{,/elog} 2>/dev/null ; then |
382 |
- chmod g+s,ug+rwx "${ED}"var/log/portage{,/elog} |
383 |
- fi |
384 |
- |
385 |
- if has_version ">=${CATEGORY}/${PN}-2.3.1" && \ |
386 |
- has_version "<${CATEGORY}/${PN}-2.3.3"; then |
387 |
- SYNC_DEPTH_UPGRADE=true |
388 |
- else |
389 |
- SYNC_DEPTH_UPGRADE=false |
390 |
- fi |
391 |
-} |
392 |
- |
393 |
-get_ownership() { |
394 |
- case ${USERLAND} in |
395 |
- BSD) |
396 |
- stat -f '%Su:%Sg' "${1}" |
397 |
- ;; |
398 |
- *) |
399 |
- stat -c '%U:%G' "${1}" |
400 |
- ;; |
401 |
- esac |
402 |
-} |
403 |
- |
404 |
-new_config_protect() { |
405 |
- # Generate a ._cfg file even if the target file |
406 |
- # does not exist, ensuring that the user will |
407 |
- # notice the config change. |
408 |
- local basename=${1##*/} |
409 |
- local dirname=${1%/*} |
410 |
- local i=0 |
411 |
- while true ; do |
412 |
- local filename=$( |
413 |
- echo -n "${dirname}/._cfg" |
414 |
- printf "%04d" ${i} |
415 |
- echo -n "_${basename}" |
416 |
- ) |
417 |
- [[ -e ${filename} ]] || break |
418 |
- (( i++ )) |
419 |
- done |
420 |
- echo "${filename}" |
421 |
-} |
422 |
- |
423 |
-pkg_postinst() { |
424 |
- if ${SYNC_DEPTH_UPGRADE}; then |
425 |
- ewarn "Please note that this release no longer respects sync-depth for" |
426 |
- ewarn "git repositories. There have been too many problems and" |
427 |
- ewarn "performance issues. See bugs 552814, 559008" |
428 |
- fi |
429 |
- einfo "" |
430 |
- einfo "This release of portage NO LONGER contains the repoman code base." |
431 |
- einfo "Repoman has its own ebuild and release package." |
432 |
- einfo "For repoman functionality please emerge app-portage/repoman" |
433 |
- einfo "Please report any bugs you may encounter." |
434 |
- einfo "" |
435 |
-} |