runit-2.1.2-r1.ebuild has two definitions of pkg_preinst: 1) This one comes first (so is NOT used): ``` pkg_preinst() { if has_version 'sys-process/runit' && has_version '<sys-process/runit-2.1.2' && [ -d "${EROOT}"etc/runit/runsvdir/all ]; then if [ -e "${EROOT}"etc/sv ]; then mv -f "${EROOT}"etc/sv "${EROOT}"etc/sv.bak || die ewarn "${EROOT}etc/sv was moved to ${EROOT}etc/sv.bak" fi mv "${EROOT}"etc/runit/runsvdir/all "${EROOT}"etc/sv|| die ln -sf "${EROOT}"etc/sv "${EROOT}"etc/runit/runsvdir/all || die cp -a "${EROOT}"etc/runit/runsvdir "${T}" || die touch "${T}"/make_var_service || die fi } ``` 2) This one comes last (so is the one used): ``` pkg_postinst() { if [[ -z $REPLACING_VERSIONS ]]; then default_config elif [[ -n $pre_212 ]]; then migrate_from_211 fi ewarn "To make sure sv works correctly in your currently open" ewarn "shells, please run the following command:" ewarn ewarn "source /etc/profile" ewarn if [ -L "${EROOT}"var/service ]; then ewarn "Once this version of runit is active, please remove the" ewarn "compatibility symbolic link at ${EROOT}var/service" ewarn "The correct path now is ${EROOT}etc/service" ewarn fi if [ -L "${EROOT}"etc/runit/runsvdir/all ]; then ewarn "${EROOT}etc/runit/runsvdir/all has moved to" iewarn "${EROOT}etc/sv." ewarn "Any symbolic links under ${EROOT}etc/runit/runsvdir" ewarn "which point to services through ../all should be updated to" ewarn "point to them through ${EROOT}etc/sv." ewarn "Once that is done, ${EROOT}etc/runit/runsvdir/all should be" ewarn "removed." ewarn fi } ``` Which one is supposed to be used?
(Recommenting as first comment had wrong paste of second definition.) runit-2.1.2-r1.ebuild has two definitions of pkg_preinst: 1) This one comes first (so is NOT used): ``` pkg_preinst() { if has_version 'sys-process/runit' && has_version '<sys-process/runit-2.1.2' && [ -d "${EROOT}"etc/runit/runsvdir/all ]; then if [ -e "${EROOT}"etc/sv ]; then mv -f "${EROOT}"etc/sv "${EROOT}"etc/sv.bak || die ewarn "${EROOT}etc/sv was moved to ${EROOT}etc/sv.bak" fi mv "${EROOT}"etc/runit/runsvdir/all "${EROOT}"etc/sv|| die ln -sf "${EROOT}"etc/sv "${EROOT}"etc/runit/runsvdir/all || die cp -a "${EROOT}"etc/runit/runsvdir "${T}" || die touch "${T}"/make_var_service || die fi } ``` 2) This one comes last (so is the one used): ``` pkg_preinst() { if has_version '<sys-process/runit-2.1.2'; then pre_212=yes fi } ```
ping
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2551d80560ef06307944b0c04ae9677db9ff1d32 commit 2551d80560ef06307944b0c04ae9677db9ff1d32 Author: William Hubbs <williamh@gentoo.org> AuthorDate: 2024-01-12 16:31:09 +0000 Commit: William Hubbs <williamh@gentoo.org> CommitDate: 2024-01-12 16:31:48 +0000 sys-process/runit: remove duplicate pkg_preinst definition Closes: https://bugs.gentoo.org/862615 Signed-off-by: William Hubbs <williamh@gentoo.org> sys-process/runit/runit-2.1.2-r1.ebuild | 17 +---- sys-process/runit/z | 124 ++++++++++++++++++++++++++++++++ 2 files changed, 125 insertions(+), 16 deletions(-)