commit: 128e5981559b7760c537e43574f5936648e236d4
Author: Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 25 14:36:41 2016 +0000
Commit: Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Mon Jul 25 14:38:57 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=128e5981
x11-misc/slim: process ${REPLACING_VERSIONS} as a list
Bug: http://bugs.gentoo.org/589540
Package-Manager: portage-2.2.28
x11-misc/slim/slim-1.3.6-r3.ebuild | 22 +++++++++++++++++++---
x11-misc/slim/slim-1.3.6-r5.ebuild | 22 +++++++++++++++++++---
x11-misc/slim/slim-9999.ebuild | 32 +++++++++++++++++++++++---------
3 files changed, 61 insertions(+), 15 deletions(-)
diff --git a/x11-misc/slim/slim-1.3.6-r3.ebuild
b/x11-misc/slim/slim-1.3.6-r3.ebuild
index 72bfdfb..0fd5038 100644
--- a/x11-misc/slim/slim-1.3.6-r3.ebuild
+++ b/x11-misc/slim/slim-1.3.6-r3.ebuild
@@ -87,15 +87,31 @@ src_install() {
}
pkg_postinst() {
- # note, $REPLACING_VERSIONS will always contain 0 or 1 PV's for slim
- if [[ -z ${REPLACING_VERSIONS} ]]; then
+ # massage ${REPLACING_VERSIONS} to come up with whether or not it's a
new install
+ # or if it's older than 1.3.2-r7
+ # Note - there should only ever be zero or one version as this package
isn't slotted,
+ # so the logic doesn't worry about what happens if there's two, due to
the case where
+ # a previous emerge attempt failed in the middle of qmerge.
+ local rv=none
+ for rv in ${REPLACING_VERSIONS} ; do
+ if version_is_at_least "1.3.2-r7" "${rv}" ; then
+ rv=newer
+ break;
+ fi
+ if version_is_at_least "1.0" "${rv}" ; then
+ rv=older
+ break;
+ fi
+ done
+
+ if [[ ${rv} == none ]]; then
elog
elog "The configuration file is located at /etc/slim.conf."
elog
elog "If you wish ${PN} to start automatically, set
DISPLAYMANAGER=\"${PN}\" "
elog "in /etc/conf.d/xdm and run \"rc-update add xdm default\"."
fi
- if ! version_is_at_least "1.3.2-r7" "${REPLACING_VERSIONS:-1.0}" ; then
+ if [[ ${rv} != newer ]]; then
elog
elog "By default, ${PN} is set up to do proper X session
selection, including ~/.xsession"
elog "support, as well as selection between sessions available
in"
diff --git a/x11-misc/slim/slim-1.3.6-r5.ebuild
b/x11-misc/slim/slim-1.3.6-r5.ebuild
index 7e79bb0..53e9a60 100644
--- a/x11-misc/slim/slim-1.3.6-r5.ebuild
+++ b/x11-misc/slim/slim-1.3.6-r5.ebuild
@@ -90,15 +90,31 @@ src_install() {
}
pkg_postinst() {
- # note, $REPLACING_VERSIONS will always contain 0 or 1 PV's for slim
- if [[ -z ${REPLACING_VERSIONS} ]]; then
+ # massage ${REPLACING_VERSIONS} to come up with whether or not it's a
new install
+ # or if it's older than 1.3.2-r7
+ # Note - there should only ever be zero or one version as this package
isn't slotted,
+ # so the logic doesn't worry about what happens if there's two, due to
the case where
+ # a previous emerge attempt failed in the middle of qmerge.
+ local rv=none
+ for rv in ${REPLACING_VERSIONS} ; do
+ if version_is_at_least "1.3.2-r7" "${rv}" ; then
+ rv=newer
+ break;
+ fi
+ if version_is_at_least "1.0" "${rv}" ; then
+ rv=older
+ break;
+ fi
+ done
+
+ if [[ ${rv} == none ]]; then
elog
elog "The configuration file is located at /etc/slim.conf."
elog
elog "If you wish ${PN} to start automatically, set
DISPLAYMANAGER=\"${PN}\" "
elog "in /etc/conf.d/xdm and run \"rc-update add xdm default\"."
fi
- if ! version_is_at_least "1.3.2-r7" "${REPLACING_VERSIONS:-1.0}" ; then
+ if [[ ${rv} != newer ]]; then
elog
elog "By default, ${PN} is set up to do proper X session
selection, including ~/.xsession"
elog "support, as well as selection between sessions available
in"
diff --git a/x11-misc/slim/slim-9999.ebuild b/x11-misc/slim/slim-9999.ebuild
index 86ea64f..bea6571 100644
--- a/x11-misc/slim/slim-9999.ebuild
+++ b/x11-misc/slim/slim-9999.ebuild
@@ -84,15 +84,31 @@ src_install() {
}
pkg_postinst() {
- # note, $REPLACING_VERSIONS will always contain 0 or 1 PV's for slim
- if [[ -z ${REPLACING_VERSIONS} ]]; then
+ # massage ${REPLACING_VERSIONS} to come up with whether or not it's a
new install
+ # or if it's older than 1.3.2-r7
+ # Note - there should only ever be zero or one version as this package
isn't slotted,
+ # so the logic doesn't worry about what happens if there's two, due to
the case where
+ # a previous emerge attempt failed in the middle of qmerge.
+ local rv=none
+ for rv in ${REPLACING_VERSIONS} ; do
+ if version_is_at_least "1.3.2-r7" "${rv}" ; then
+ rv=newer
+ break;
+ fi
+ if version_is_at_least "1.0" "${rv}" ; then
+ rv=older
+ break;
+ fi
+ done
+
+ if [[ ${rv} == none ]]; then
elog
elog "The configuration file is located at /etc/slim.conf."
elog
elog "If you wish ${PN} to start automatically, set
DISPLAYMANAGER=\"${PN}\" "
elog "in /etc/conf.d/xdm and run \"rc-update add xdm default\"."
fi
- if ! version_is_at_least "1.3.6" "${REPLACING_VERSIONS:-1.0}" ; then
+ if [[ ${rv} != newer ]]; then
elog
elog "By default, ${PN} is set up to provide X session
selection based on the"
elog ".desktop entries in /usr/share/xsessions/ that are
installed by each"
@@ -109,12 +125,10 @@ pkg_postinst() {
elog "/usr/share/doc/${PF} and change your login_cmd in
/etc/slim.conf"
elog "accordingly."
elog
- if ! version_is_at_least "1.3.2-r7"
"${REPLACING_VERSIONS:-1.4}" ; then
- ewarn "Please note that slim supports consolekit
directly. Please do not use any "
- ewarn "old work-arounds (including calls to
'ck-launch-session' in xinitrc scripts)"
- ewarn "and enable USE=\"consolekit\" instead."
- ewarn
- fi
+ ewarn "Please note that slim supports consolekit directly.
Please do not use any "
+ ewarn "old work-arounds (including calls to 'ck-launch-session'
in xinitrc scripts)"
+ ewarn "and enable USE=\"consolekit\" instead."
+ ewarn
fi
if ! use pam; then
elog "You have merged ${PN} without USE=\"pam\", this will
cause ${PN} to fall back to"