From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-eselect/eselect-python/
Date: Tue, 17 Nov 2015 20:39:20 +0000 (UTC) [thread overview]
Message-ID: <1447792749.aae084d8e670a9f001cbcf486c34097ebedbb2b1.mgorny@gentoo> (raw)
commit: aae084d8e670a9f001cbcf486c34097ebedbb2b1
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 17 20:32:36 2015 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov 17 20:39:09 2015 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aae084d8
app-eselect/eselect-python: Preserve previous python[23] selection
.../eselect-python/eselect-python-20151117.ebuild | 37 ++++++++++++++++++----
.../eselect-python/eselect-python-99999999.ebuild | 37 ++++++++++++++++++----
2 files changed, 62 insertions(+), 12 deletions(-)
diff --git a/app-eselect/eselect-python/eselect-python-20151117.ebuild b/app-eselect/eselect-python/eselect-python-20151117.ebuild
index 9968e7f..86e9a3c 100644
--- a/app-eselect/eselect-python/eselect-python-20151117.ebuild
+++ b/app-eselect/eselect-python/eselect-python-20151117.ebuild
@@ -40,14 +40,39 @@ src_install() {
done
}
+pkg_preinst() {
+ local py
+
+ # Copy python[23] selection from the old format (symlink)
+ for py in 2 3; do
+ # default to none
+ declare -g "PREV_PYTHON${py}"=
+
+ if [[ -L ${EROOT}/usr/bin/python${py} ]]; then
+ local target=$(readlink "${EROOT}/usr/bin/python${py}")
+
+ # check if it's actually old eselect symlink
+ if [[ ${target} == python?.? ]]; then
+ declare -g "PREV_PYTHON${py}=${target}"
+ fi
+ fi
+ done
+}
+
pkg_postinst() {
+ local py
+
if has_version 'dev-lang/python'; then
eselect python update --if-unset
fi
- if has_version '=dev-lang/python-2*'; then
- eselect python update --python2 --if-unset
- fi
- if has_version '=dev-lang/python-3*'; then
- eselect python update --python3 --if-unset
- fi
+
+ for py in 2 3; do
+ local pyvar=PREV_PYTHON${py}
+ if [[ -n ${!pyvar} ]]; then
+ einfo "Setting Python${py} to ${!pyvar}"
+ eselect python set "--python${py}" "${!pyvar}"
+ elif has_version "=dev-lang/python-${py}*"; then
+ eselect python update "--python${py}" --if-unset
+ fi
+ done
}
diff --git a/app-eselect/eselect-python/eselect-python-99999999.ebuild b/app-eselect/eselect-python/eselect-python-99999999.ebuild
index 9968e7f..86e9a3c 100644
--- a/app-eselect/eselect-python/eselect-python-99999999.ebuild
+++ b/app-eselect/eselect-python/eselect-python-99999999.ebuild
@@ -40,14 +40,39 @@ src_install() {
done
}
+pkg_preinst() {
+ local py
+
+ # Copy python[23] selection from the old format (symlink)
+ for py in 2 3; do
+ # default to none
+ declare -g "PREV_PYTHON${py}"=
+
+ if [[ -L ${EROOT}/usr/bin/python${py} ]]; then
+ local target=$(readlink "${EROOT}/usr/bin/python${py}")
+
+ # check if it's actually old eselect symlink
+ if [[ ${target} == python?.? ]]; then
+ declare -g "PREV_PYTHON${py}=${target}"
+ fi
+ fi
+ done
+}
+
pkg_postinst() {
+ local py
+
if has_version 'dev-lang/python'; then
eselect python update --if-unset
fi
- if has_version '=dev-lang/python-2*'; then
- eselect python update --python2 --if-unset
- fi
- if has_version '=dev-lang/python-3*'; then
- eselect python update --python3 --if-unset
- fi
+
+ for py in 2 3; do
+ local pyvar=PREV_PYTHON${py}
+ if [[ -n ${!pyvar} ]]; then
+ einfo "Setting Python${py} to ${!pyvar}"
+ eselect python set "--python${py}" "${!pyvar}"
+ elif has_version "=dev-lang/python-${py}*"; then
+ eselect python update "--python${py}" --if-unset
+ fi
+ done
}
next reply other threads:[~2015-11-17 20:39 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-17 20:39 Michał Górny [this message]
-- strict thread matches above, loose matches on Subject: below --
2015-11-17 22:44 [gentoo-commits] repo/gentoo:master commit in: app-eselect/eselect-python/ Michał Górny
2015-11-25 12:37 Michał Górny
2015-12-18 22:01 Michał Górny
2016-01-11 16:00 Michał Górny
2016-02-06 9:58 Michał Górny
2016-02-06 9:58 Michał Górny
2016-02-06 9:58 Michał Górny
2016-02-07 18:51 Michał Górny
2016-02-23 22:20 Michał Górny
2016-02-25 20:29 Michał Górny
2016-02-25 20:29 Michał Górny
2016-02-28 17:14 Michał Górny
2016-02-28 17:46 Michał Górny
2016-05-24 20:06 Markus Meier
2016-05-26 12:50 Tobias Klausmann
2016-06-10 13:53 Agostino Sarubbo
2016-08-03 15:49 Mike Gilbert
2016-10-02 9:01 Jeroen Roovers
2016-11-24 16:35 Mike Gilbert
2017-01-11 3:03 Aaron Bauman
2017-01-17 20:38 Mike Frysinger
2017-01-22 14:26 Manuel Rüger
2017-01-23 18:27 Tobias Klausmann
2017-01-26 17:08 Jeroen Roovers
2017-01-29 14:49 Fabian Groffen
2017-02-17 6:01 Markus Meier
2017-12-04 17:47 Michał Górny
2017-12-04 17:47 Michał Górny
2018-04-16 19:15 Mikle Kolyada
2018-09-13 21:22 Patrice Clement
2019-04-17 12:27 Michał Górny
2019-05-04 10:35 Andreas K. Hüttel
2020-02-16 21:14 Thomas Deutschmann
2020-02-17 11:45 Agostino Sarubbo
2020-02-17 11:47 Agostino Sarubbo
2020-02-17 11:53 Agostino Sarubbo
2020-02-17 12:09 Agostino Sarubbo
2020-02-17 12:13 Agostino Sarubbo
2020-02-17 12:17 Agostino Sarubbo
2020-02-20 18:47 Sergei Trofimovich
2020-02-24 11:31 Agostino Sarubbo
2020-03-07 15:11 Michał Górny
2020-03-07 15:45 Michał Górny
2020-07-19 20:23 Patrick McLean
2020-07-19 20:23 Patrick McLean
2020-09-18 7:23 Michał Górny
2020-09-18 10:07 Agostino Sarubbo
2020-12-27 13:49 Fabian Groffen
2021-01-06 13:12 Fabian Groffen
2022-05-02 19:43 Michał Górny
2022-10-01 1:02 Sam James
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1447792749.aae084d8e670a9f001cbcf486c34097ebedbb2b1.mgorny@gentoo \
--to=mgorny@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox