Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-apps/portage-mgorny/
Date: Mon, 26 Mar 2018 18:17:33
Message-Id: 1522088243.c45f765e92563d280921522034d26fa9e8fbf02d.mgorny@gentoo
1 commit: c45f765e92563d280921522034d26fa9e8fbf02d
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Mon Mar 26 18:03:47 2018 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Mon Mar 26 18:17:23 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c45f765e
7
8 sys-apps/portage-mgorny: Drop old
9
10 sys-apps/portage-mgorny/Manifest | 3 -
11 .../portage-mgorny/portage-mgorny-2.3.24.1.ebuild | 163 ---------------------
12 .../portage-mgorny/portage-mgorny-2.3.24.2.ebuild | 163 ---------------------
13 .../portage-mgorny/portage-mgorny-2.3.24.3.ebuild | 163 ---------------------
14 4 files changed, 492 deletions(-)
15
16 diff --git a/sys-apps/portage-mgorny/Manifest b/sys-apps/portage-mgorny/Manifest
17 index d06a0ba308c..cebabb865d5 100644
18 --- a/sys-apps/portage-mgorny/Manifest
19 +++ b/sys-apps/portage-mgorny/Manifest
20 @@ -1,4 +1 @@
21 -DIST portage-mgorny-2.3.24.1.tar.gz 1239318 BLAKE2B bfa8418ade600835c90378177bc6cd91f6c17e02c0e05b0829f4ee3b500ce3275fcb76424e19af5618026daa7b79d402aeb0d9f2133e7db09cb8983eeb355427 SHA512 04e3d5ee08f78ba3bb8045c36e7e81b06b7a0aff65a22c82cd2ca6fc0ab9f7b63a49c7eda9048d15fbc9c8d1a898c0d038f7cac2f4daf6d68bb799a9303d74c1
22 -DIST portage-mgorny-2.3.24.2.tar.gz 1239343 BLAKE2B 701c90d333c10976f11910babed4b002cb545561c931d635973cf9b455a247b050b098c61fca0b20a5a8d70d4478a9daddacc826045e74c52d45878260431c93 SHA512 0319a973a26650ce182c0e1f997399f0c3944474ad5c8c2f88b9588ffbf99ccd12bd84e7537f8368f8362a098a72d177fc3c844e2afc086f95094baa27d97b93
23 -DIST portage-mgorny-2.3.24.3.tar.gz 1235966 BLAKE2B 0919ad1c287075cdeaacb3c40b468ba9afd93df59ea3e8caa87300f87e0638e72d3d2791d07764d82147025c407f83f7442d9c4f02b5b8ae7ba8485f54193499 SHA512 dfb2341a512b3db37b7f282d7246d16afb8df9e1c401656022ac72adf35541bd4aa0224974deb581e76174b1bd7c49368c76215dd977168e5da858e9d8b8eda5
24 DIST portage-mgorny-2.3.24.4.tar.gz 1235738 BLAKE2B 4365b4c2ac754b6a09a19598d7e4bddc16575b17dcd3e6dabcbb58ddd905a548da5d7c5a660e8bb8e638e39bf8803869144f08f6ece34775e79dd70f4be6d933 SHA512 ed5f14a457d00951f4af6b76db501f33523b6a19f2983d1b7acaa62f7eee90b8facf834f88d4de2dea26f12b7f373c64771c9f797af6c82578fb45b8db8ef678
25
26 diff --git a/sys-apps/portage-mgorny/portage-mgorny-2.3.24.1.ebuild b/sys-apps/portage-mgorny/portage-mgorny-2.3.24.1.ebuild
27 deleted file mode 100644
28 index 2e245b85af8..00000000000
29 --- a/sys-apps/portage-mgorny/portage-mgorny-2.3.24.1.ebuild
30 +++ /dev/null
31 @@ -1,163 +0,0 @@
32 -# Copyright 1999-2018 Gentoo Foundation
33 -# Distributed under the terms of the GNU General Public License v2
34 -
35 -EAPI=6
36 -
37 -PYTHON_COMPAT=( python{2_7,3_{4,5,6}} pypy )
38 -PYTHON_REQ_USE='bzip2(+),threads(+)'
39 -
40 -inherit distutils-r1
41 -
42 -DESCRIPTION="Fork of Portage focused on cleaning up and useful features"
43 -HOMEPAGE="https://github.com/mgorny/portage"
44 -SRC_URI="https://github.com/mgorny/portage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
45 -S=${WORKDIR}/portage-${PV}
46 -
47 -LICENSE="GPL-2"
48 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
49 -SLOT="0"
50 -IUSE="build +ipc +native-extensions selinux xattr kernel_linux"
51 -
52 -DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
53 - >=app-arch/tar-1.27
54 - >=sys-apps/sed-4.0.5
55 - sys-devel/patch"
56 -RDEPEND="
57 - >=app-arch/tar-1.27
58 - !build? (
59 - >=app-admin/eselect-1.2
60 - app-crypt/gentoo-keys
61 - >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
62 - >=app-portage/gemato-10
63 - app-shells/bash:0[readline]
64 - $(python_gen_cond_dep 'dev-python/pyblake2[${PYTHON_USEDEP}]' \
65 - python{2_7,3_4,3_5} pypy)
66 - >=dev-python/lxml-3.6.0[${PYTHON_USEDEP}]
67 - >=sys-apps/sed-4.0.5
68 - )
69 - elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
70 - elibc_glibc? ( >=sys-apps/sandbox-2.2 )
71 - elibc_musl? ( >=sys-apps/sandbox-2.2 )
72 - elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
73 - >=app-misc/pax-utils-0.1.17
74 - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
75 - xattr? ( kernel_linux? (
76 - >=sys-apps/install-xattr-0.3
77 - $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
78 - python2_7 pypy)
79 - ) )
80 - !app-portage/repoman
81 - !sys-apps/portage"
82 -PDEPEND="
83 - !build? (
84 - >=net-misc/rsync-2.6.4
85 - )"
86 -# NOTE: FEATURES=installsources requires debugedit and rsync
87 -
88 -pkg_pretend() {
89 - if has_version sys-apps/portage; then
90 - ewarn "If you are migrating from sys-apps/portage to sys-apps/portage-mgorny,"
91 - ewarn "please note that Portage will abort upon having to unmerge itself."
92 - ewarn "However, sys-apps/portage-mgorny will already be installed at this"
93 - ewarn "point, so you simply have to restart emerge and it will successfully"
94 - ewarn "clean the old package afterwards."
95 - fi
96 -}
97 -
98 -python_prepare_all() {
99 - distutils-r1_python_prepare_all
100 -
101 - if ! use ipc ; then
102 - einfo "Disabling ipc..."
103 - sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
104 - -i pym/_emerge/AbstractEbuildProcess.py ||
105 - die "failed to patch AbstractEbuildProcess.py"
106 - fi
107 -
108 - if use xattr && use kernel_linux ; then
109 - einfo "Adding FEATURES=xattr to make.globals ..."
110 - echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
111 - || die "failed to append to make.globals"
112 - fi
113 -
114 - if [[ -n ${EPREFIX} ]] ; then
115 - einfo "Setting portage.const.EPREFIX ..."
116 - sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
117 - -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
118 - -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
119 - -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
120 - -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
121 - -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
122 - -i pym/portage/const.py ||
123 - die "Failed to patch portage.const.EPREFIX"
124 -
125 - einfo "Prefixing shebangs ..."
126 - while read -r -d $'\0' ; do
127 - local shebang=$(head -n1 "${REPLY}")
128 - if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
129 - sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "${REPLY}" ||
130 - die "sed failed"
131 - fi
132 - done < <(find . -type f -print0)
133 -
134 - einfo "Adjusting make.globals ..."
135 - sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
136 - -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
137 - -i cnf/make.globals || die "sed failed"
138 -
139 - einfo "Adjusting repos.conf ..."
140 - sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
141 - -e "s|^\(sync-openpgp-key-path = \)\(.*\)|\\1${EPREFIX}\\2|" \
142 - -i cnf/repos.conf || die "sed failed"
143 - if prefix-guest ; then
144 - sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
145 - -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
146 - -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
147 - -i cnf/repos.conf || die "sed failed"
148 - fi
149 -
150 - einfo "Adding FEATURES=force-prefix to make.globals ..."
151 - echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
152 - || die "failed to append to make.globals"
153 - fi
154 -
155 - cd "${S}/cnf" || die
156 - if [[ -f make.conf.example.${ARCH}.diff ]]; then
157 - patch make.conf.example "make.conf.example.${ARCH}.diff" ||
158 - die "Failed to patch make.conf.example"
159 - else
160 - eerror ""
161 - eerror "Portage does not have an arch-specific configuration for this arch."
162 - eerror "Please notify the arch maintainer about this issue. Using generic."
163 - eerror ""
164 - fi
165 -}
166 -
167 -python_configure_all() {
168 - cat >> setup.cfg <<-EOF || die
169 - [build_ext]
170 - portage-ext-modules=$(usex native-extensions true false)
171 - EOF
172 -}
173 -
174 -python_test() {
175 - esetup.py test
176 -}
177 -
178 -python_install() {
179 - distutils-r1_python_install \
180 - --system-prefix="${EPREFIX}/usr" \
181 - --bindir="$(python_get_scriptdir)" \
182 - --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
183 - --sysconfdir="${EPREFIX}/etc" \
184 - "${@}"
185 -
186 - keepdir /var/log/portage/elog
187 -}
188 -
189 -pkg_preinst() {
190 - # This is allowed to fail if the user/group are invalid for prefix users.
191 - if chown portage:portage "${ED%/}"/var/log/portage{,/elog} 2>/dev/null ; then
192 - chmod g+s,ug+rwx "${ED%/}"/var/log/portage{,/elog}
193 - fi
194 -}
195
196 diff --git a/sys-apps/portage-mgorny/portage-mgorny-2.3.24.2.ebuild b/sys-apps/portage-mgorny/portage-mgorny-2.3.24.2.ebuild
197 deleted file mode 100644
198 index eb3315f80c8..00000000000
199 --- a/sys-apps/portage-mgorny/portage-mgorny-2.3.24.2.ebuild
200 +++ /dev/null
201 @@ -1,163 +0,0 @@
202 -# Copyright 1999-2018 Gentoo Foundation
203 -# Distributed under the terms of the GNU General Public License v2
204 -
205 -EAPI=6
206 -
207 -PYTHON_COMPAT=( python{2_7,3_{4,5,6}} pypy )
208 -PYTHON_REQ_USE='bzip2(+),threads(+)'
209 -
210 -inherit distutils-r1
211 -
212 -DESCRIPTION="Fork of Portage focused on cleaning up and useful features"
213 -HOMEPAGE="https://github.com/mgorny/portage"
214 -SRC_URI="https://github.com/mgorny/portage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
215 -S=${WORKDIR}/portage-${PV}
216 -
217 -LICENSE="GPL-2"
218 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
219 -SLOT="0"
220 -IUSE="build +ipc +native-extensions selinux xattr kernel_linux"
221 -
222 -DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
223 - >=app-arch/tar-1.27
224 - >=sys-apps/sed-4.0.5
225 - sys-devel/patch"
226 -RDEPEND="
227 - >=app-arch/tar-1.27
228 - !build? (
229 - >=app-admin/eselect-1.2
230 - app-crypt/openpgp-keys-gentoo-release
231 - >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
232 - >=app-portage/gemato-10
233 - app-shells/bash:0[readline]
234 - $(python_gen_cond_dep 'dev-python/pyblake2[${PYTHON_USEDEP}]' \
235 - python{2_7,3_4,3_5} pypy)
236 - >=dev-python/lxml-3.6.0[${PYTHON_USEDEP}]
237 - >=sys-apps/sed-4.0.5
238 - )
239 - elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
240 - elibc_glibc? ( >=sys-apps/sandbox-2.2 )
241 - elibc_musl? ( >=sys-apps/sandbox-2.2 )
242 - elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
243 - >=app-misc/pax-utils-0.1.17
244 - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
245 - xattr? ( kernel_linux? (
246 - >=sys-apps/install-xattr-0.3
247 - $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
248 - python2_7 pypy)
249 - ) )
250 - !app-portage/repoman
251 - !sys-apps/portage"
252 -PDEPEND="
253 - !build? (
254 - >=net-misc/rsync-2.6.4
255 - )"
256 -# NOTE: FEATURES=installsources requires debugedit and rsync
257 -
258 -pkg_pretend() {
259 - if has_version sys-apps/portage; then
260 - ewarn "If you are migrating from sys-apps/portage to sys-apps/portage-mgorny,"
261 - ewarn "please note that Portage will abort upon having to unmerge itself."
262 - ewarn "However, sys-apps/portage-mgorny will already be installed at this"
263 - ewarn "point, so you simply have to restart emerge and it will successfully"
264 - ewarn "clean the old package afterwards."
265 - fi
266 -}
267 -
268 -python_prepare_all() {
269 - distutils-r1_python_prepare_all
270 -
271 - if ! use ipc ; then
272 - einfo "Disabling ipc..."
273 - sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
274 - -i pym/_emerge/AbstractEbuildProcess.py ||
275 - die "failed to patch AbstractEbuildProcess.py"
276 - fi
277 -
278 - if use xattr && use kernel_linux ; then
279 - einfo "Adding FEATURES=xattr to make.globals ..."
280 - echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
281 - || die "failed to append to make.globals"
282 - fi
283 -
284 - if [[ -n ${EPREFIX} ]] ; then
285 - einfo "Setting portage.const.EPREFIX ..."
286 - sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
287 - -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
288 - -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
289 - -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
290 - -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
291 - -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
292 - -i pym/portage/const.py ||
293 - die "Failed to patch portage.const.EPREFIX"
294 -
295 - einfo "Prefixing shebangs ..."
296 - while read -r -d $'\0' ; do
297 - local shebang=$(head -n1 "${REPLY}")
298 - if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
299 - sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "${REPLY}" ||
300 - die "sed failed"
301 - fi
302 - done < <(find . -type f -print0)
303 -
304 - einfo "Adjusting make.globals ..."
305 - sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
306 - -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
307 - -i cnf/make.globals || die "sed failed"
308 -
309 - einfo "Adjusting repos.conf ..."
310 - sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
311 - -e "s|^\(sync-openpgp-key-path = \)\(.*\)|\\1${EPREFIX}\\2|" \
312 - -i cnf/repos.conf || die "sed failed"
313 - if prefix-guest ; then
314 - sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
315 - -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
316 - -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
317 - -i cnf/repos.conf || die "sed failed"
318 - fi
319 -
320 - einfo "Adding FEATURES=force-prefix to make.globals ..."
321 - echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
322 - || die "failed to append to make.globals"
323 - fi
324 -
325 - cd "${S}/cnf" || die
326 - if [[ -f make.conf.example.${ARCH}.diff ]]; then
327 - patch make.conf.example "make.conf.example.${ARCH}.diff" ||
328 - die "Failed to patch make.conf.example"
329 - else
330 - eerror ""
331 - eerror "Portage does not have an arch-specific configuration for this arch."
332 - eerror "Please notify the arch maintainer about this issue. Using generic."
333 - eerror ""
334 - fi
335 -}
336 -
337 -python_configure_all() {
338 - cat >> setup.cfg <<-EOF || die
339 - [build_ext]
340 - portage-ext-modules=$(usex native-extensions true false)
341 - EOF
342 -}
343 -
344 -python_test() {
345 - esetup.py test
346 -}
347 -
348 -python_install() {
349 - distutils-r1_python_install \
350 - --system-prefix="${EPREFIX}/usr" \
351 - --bindir="$(python_get_scriptdir)" \
352 - --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
353 - --sysconfdir="${EPREFIX}/etc" \
354 - "${@}"
355 -
356 - keepdir /var/log/portage/elog
357 -}
358 -
359 -pkg_preinst() {
360 - # This is allowed to fail if the user/group are invalid for prefix users.
361 - if chown portage:portage "${ED%/}"/var/log/portage{,/elog} 2>/dev/null ; then
362 - chmod g+s,ug+rwx "${ED%/}"/var/log/portage{,/elog}
363 - fi
364 -}
365
366 diff --git a/sys-apps/portage-mgorny/portage-mgorny-2.3.24.3.ebuild b/sys-apps/portage-mgorny/portage-mgorny-2.3.24.3.ebuild
367 deleted file mode 100644
368 index eb3315f80c8..00000000000
369 --- a/sys-apps/portage-mgorny/portage-mgorny-2.3.24.3.ebuild
370 +++ /dev/null
371 @@ -1,163 +0,0 @@
372 -# Copyright 1999-2018 Gentoo Foundation
373 -# Distributed under the terms of the GNU General Public License v2
374 -
375 -EAPI=6
376 -
377 -PYTHON_COMPAT=( python{2_7,3_{4,5,6}} pypy )
378 -PYTHON_REQ_USE='bzip2(+),threads(+)'
379 -
380 -inherit distutils-r1
381 -
382 -DESCRIPTION="Fork of Portage focused on cleaning up and useful features"
383 -HOMEPAGE="https://github.com/mgorny/portage"
384 -SRC_URI="https://github.com/mgorny/portage/archive/v${PV}.tar.gz -> ${P}.tar.gz"
385 -S=${WORKDIR}/portage-${PV}
386 -
387 -LICENSE="GPL-2"
388 -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd"
389 -SLOT="0"
390 -IUSE="build +ipc +native-extensions selinux xattr kernel_linux"
391 -
392 -DEPEND="!build? ( $(python_gen_impl_dep 'ssl(+)') )
393 - >=app-arch/tar-1.27
394 - >=sys-apps/sed-4.0.5
395 - sys-devel/patch"
396 -RDEPEND="
397 - >=app-arch/tar-1.27
398 - !build? (
399 - >=app-admin/eselect-1.2
400 - app-crypt/openpgp-keys-gentoo-release
401 - >=app-crypt/gnupg-2.2.4-r2[ssl(-)]
402 - >=app-portage/gemato-10
403 - app-shells/bash:0[readline]
404 - $(python_gen_cond_dep 'dev-python/pyblake2[${PYTHON_USEDEP}]' \
405 - python{2_7,3_4,3_5} pypy)
406 - >=dev-python/lxml-3.6.0[${PYTHON_USEDEP}]
407 - >=sys-apps/sed-4.0.5
408 - )
409 - elibc_FreeBSD? ( sys-freebsd/freebsd-bin )
410 - elibc_glibc? ( >=sys-apps/sandbox-2.2 )
411 - elibc_musl? ( >=sys-apps/sandbox-2.2 )
412 - elibc_uclibc? ( >=sys-apps/sandbox-2.2 )
413 - >=app-misc/pax-utils-0.1.17
414 - selinux? ( >=sys-libs/libselinux-2.0.94[python,${PYTHON_USEDEP}] )
415 - xattr? ( kernel_linux? (
416 - >=sys-apps/install-xattr-0.3
417 - $(python_gen_cond_dep 'dev-python/pyxattr[${PYTHON_USEDEP}]' \
418 - python2_7 pypy)
419 - ) )
420 - !app-portage/repoman
421 - !sys-apps/portage"
422 -PDEPEND="
423 - !build? (
424 - >=net-misc/rsync-2.6.4
425 - )"
426 -# NOTE: FEATURES=installsources requires debugedit and rsync
427 -
428 -pkg_pretend() {
429 - if has_version sys-apps/portage; then
430 - ewarn "If you are migrating from sys-apps/portage to sys-apps/portage-mgorny,"
431 - ewarn "please note that Portage will abort upon having to unmerge itself."
432 - ewarn "However, sys-apps/portage-mgorny will already be installed at this"
433 - ewarn "point, so you simply have to restart emerge and it will successfully"
434 - ewarn "clean the old package afterwards."
435 - fi
436 -}
437 -
438 -python_prepare_all() {
439 - distutils-r1_python_prepare_all
440 -
441 - if ! use ipc ; then
442 - einfo "Disabling ipc..."
443 - sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \
444 - -i pym/_emerge/AbstractEbuildProcess.py ||
445 - die "failed to patch AbstractEbuildProcess.py"
446 - fi
447 -
448 - if use xattr && use kernel_linux ; then
449 - einfo "Adding FEATURES=xattr to make.globals ..."
450 - echo -e '\nFEATURES="${FEATURES} xattr"' >> cnf/make.globals \
451 - || die "failed to append to make.globals"
452 - fi
453 -
454 - if [[ -n ${EPREFIX} ]] ; then
455 - einfo "Setting portage.const.EPREFIX ..."
456 - sed -e "s|^\(SANDBOX_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/sandbox\"\)|\\1${EPREFIX}\\2|" \
457 - -e "s|^\(FAKEROOT_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/bin/fakeroot\"\)|\\1${EPREFIX}\\2|" \
458 - -e "s|^\(BASH_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/bash\"\)|\\1${EPREFIX}\\2|" \
459 - -e "s|^\(MOVE_BINARY[[:space:]]*=[[:space:]]*\"\)\(/bin/mv\"\)|\\1${EPREFIX}\\2|" \
460 - -e "s|^\(PRELINK_BINARY[[:space:]]*=[[:space:]]*\"\)\(/usr/sbin/prelink\"\)|\\1${EPREFIX}\\2|" \
461 - -e "s|^\(EPREFIX[[:space:]]*=[[:space:]]*\"\).*|\\1${EPREFIX}\"|" \
462 - -i pym/portage/const.py ||
463 - die "Failed to patch portage.const.EPREFIX"
464 -
465 - einfo "Prefixing shebangs ..."
466 - while read -r -d $'\0' ; do
467 - local shebang=$(head -n1 "${REPLY}")
468 - if [[ ${shebang} == "#!"* && ! ${shebang} == "#!${EPREFIX}/"* ]] ; then
469 - sed -i -e "1s:.*:#!${EPREFIX}${shebang:2}:" "${REPLY}" ||
470 - die "sed failed"
471 - fi
472 - done < <(find . -type f -print0)
473 -
474 - einfo "Adjusting make.globals ..."
475 - sed -e "s|\(/usr/portage\)|${EPREFIX}\\1|" \
476 - -e "s|^\(PORTAGE_TMPDIR=\"\)\(/var/tmp\"\)|\\1${EPREFIX}\\2|" \
477 - -i cnf/make.globals || die "sed failed"
478 -
479 - einfo "Adjusting repos.conf ..."
480 - sed -e "s|^\(location = \)\(/usr/portage\)|\\1${EPREFIX}\\2|" \
481 - -e "s|^\(sync-openpgp-key-path = \)\(.*\)|\\1${EPREFIX}\\2|" \
482 - -i cnf/repos.conf || die "sed failed"
483 - if prefix-guest ; then
484 - sed -e "s|^\(main-repo = \).*|\\1gentoo_prefix|" \
485 - -e "s|^\\[gentoo\\]|[gentoo_prefix]|" \
486 - -e "s|^\(sync-uri = \).*|\\1rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix|" \
487 - -i cnf/repos.conf || die "sed failed"
488 - fi
489 -
490 - einfo "Adding FEATURES=force-prefix to make.globals ..."
491 - echo -e '\nFEATURES="${FEATURES} force-prefix"' >> cnf/make.globals \
492 - || die "failed to append to make.globals"
493 - fi
494 -
495 - cd "${S}/cnf" || die
496 - if [[ -f make.conf.example.${ARCH}.diff ]]; then
497 - patch make.conf.example "make.conf.example.${ARCH}.diff" ||
498 - die "Failed to patch make.conf.example"
499 - else
500 - eerror ""
501 - eerror "Portage does not have an arch-specific configuration for this arch."
502 - eerror "Please notify the arch maintainer about this issue. Using generic."
503 - eerror ""
504 - fi
505 -}
506 -
507 -python_configure_all() {
508 - cat >> setup.cfg <<-EOF || die
509 - [build_ext]
510 - portage-ext-modules=$(usex native-extensions true false)
511 - EOF
512 -}
513 -
514 -python_test() {
515 - esetup.py test
516 -}
517 -
518 -python_install() {
519 - distutils-r1_python_install \
520 - --system-prefix="${EPREFIX}/usr" \
521 - --bindir="$(python_get_scriptdir)" \
522 - --portage-bindir="${EPREFIX}/usr/lib/portage/${EPYTHON}" \
523 - --sysconfdir="${EPREFIX}/etc" \
524 - "${@}"
525 -
526 - keepdir /var/log/portage/elog
527 -}
528 -
529 -pkg_preinst() {
530 - # This is allowed to fail if the user/group are invalid for prefix users.
531 - if chown portage:portage "${ED%/}"/var/log/portage{,/elog} 2>/dev/null ; then
532 - chmod g+s,ug+rwx "${ED%/}"/var/log/portage{,/elog}
533 - fi
534 -}