On all architectures that are not classical 32-bit architectures (amd64, arm64 etc) after migrating to "SYMLINK_LIB=no / 17.1 profiles" all kind of VDR scripts stop seeing VDR plugins. Affected packages: app-eselect/eselect-vdr media-tv/gentoo-vdr-scripts Cause: packages use hard-coded plugins' path - /usr/lib/vdr/plugins VERY DIRTY HACK (amd64 architecture): ln -sf /usr/lib64/vdr /usr/lib/ Just some observations: - packages are created by Gentoo VDR Project team (AKA upstream) - packages not touched about two years - it looks Gentoo VDR Project is dead (their Web page not updated since 2016) I will try to create patches but I need to know what is right portable way to detect correct library path from shell. Sorry for not providing any environment / log files. I have problem on at least three AMD64 computers with different profiles. I do not know from which one I should provide such information.
For package media-tv/gentoo-vdr-scripts hardcoded dir fixed in 2.7.5.1 (available for testing branch) Instead symlink, you also can to change value $plugindir to "$(pkg-config --variable=libdir vdr)" in /usr/share/eselect/modules/vdr-plugin.eselect and rebuild media-tv/gentoo-vdr-scripts with ~amd64 keyword.
will fixed in next few days, but it could quit be longer, as we depend in the new ebuild version to acct-user/vdr acct-group/vdr the new group/user ebuilds has to discus on #dev-gentoo ML at first to apply a fixed group/user id.
Created attachment 595998 [details] with all the needs for proxying
Created attachment 596000 [details] gentoo-vdr-scripts-2.8.ebuild Attached ebuild (sources) will fix all problems with /usr/lib /usr/lib64 Note: this ebuild will still use the user.eclass as we need a fast fix for the QA problem plz. ignore the blocking bugs acct-user/vdr acct-group/vdr this commit will also fix https://bugs.gentoo.org/show_bug.cgi?id=298785 https://bugs.gentoo.org/show_bug.cgi?id=646518
@ Joonas as profil 17.1 breaks this package, i CC'd you direct to this bug as we talk'd before please read my comment on top of this for commit
Comment on attachment 596000 [details] gentoo-vdr-scripts-2.8.ebuild ># Copyright 1999-2016 Gentoo Foundation Update the copyright header here. ># Distributed under the terms of the GNU General Public License v2 > >EAPI=7 > >inherit user > >DESCRIPTION="Scripts necessary for use of vdr as a set-top-box" >HOMEPAGE="https://www.gentoo.org/" Is this correct? >SRC_URI="http://vdr.websitec.de/download/${PN}/${P}.tar.bz2" > >LICENSE="GPL-2" >SLOT="0" >KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86" >IUSE="nvram" > >RDEPEND="nvram? ( sys-power/nvram-wakeup ) Please sort accordingly to proxy-maints styling standards, so unconditional deps before conditional ones. Ie just move this to bottom. > app-admin/sudo > sys-process/wait_on_pid" > >VDR_HOME=/var/vdr > >pkg_setup() { > enewgroup vdr > > # Add user vdr to these groups: > # video - accessing dvb-devices > # audio - playing sound when using software-devices > # cdrom - playing dvds/audio-cds ... > enewuser vdr -1 /bin/bash "${VDR_HOME}" vdr,video,audio,cdrom >} > >src_install() { > local DOCS=( README* TODO ChangeLog ) You can make this global and below RDEPEND, but looks like it's not even needed since einstalldocs (called by default) should catch these on its own. > > default > > # create necessary directories > diropts -ovdr -gvdr > keepdir "${VDR_HOME}" > > local kd > for kd in shutdown-data merged-config-files dvd-images; do > keepdir "${VDR_HOME}/${kd}" > done I don't see any benefit with this for loop. By just typing "keepdir dirs" you get even less lines than you do with this for loop, and it's a lot more cleaner what's happening here. >} > >pkg_preinst() { > local PLUGINS_NEW=0 > if [[ -f "${EROOT}"/etc/conf.d/vdr.plugins ]]; then > PLUGINS_NEW=$(grep -v '^#' "${EROOT}"/etc/conf.d/vdr.plugins |grep -v '^$'|wc -l) From this line below, all the external commands need to die. I'm not sure how to correctly do it with this bracket section, but most likely just add a subcommand inside subcommand. These are the new QA standards. > fi > if [[ ${PLUGINS_NEW} > 0 ]]; then > cp "${EROOT}"/etc/conf.d/vdr.plugins "${ED}"/etc/conf.d/vdr.plugins Here. > else > einfo "Migrating PLUGINS setting from /etc/conf.d/vdr to /etc/conf.d/vdr.plugins" > local PLUGIN > for PLUGIN in $(source "${EROOT}"/etc/conf.d/vdr;echo $PLUGINS); do > echo ${PLUGIN} >> "${ED}"/etc/conf.d/vdr.plugins Here. > done > fi >} > >pkg_postinst() { > elog "${CATEGORY}/${PN} supports an init script" > elog "to start a X server" > elog "Please refer for detailed info to" > elog "/usr/share/doc/${PF} README.x11-setup\n" Missing a / here? > > if use nvram; then > elog "nvram wakeup is optional." > elog "To make use of it emerge sys-power/nvram-wakeup.\n" Doesn't USE="nvram" already pull it? Actually looks like it has no function in the ebuild, so you should remove the USE flag. https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Policies#USE-Controlled_Optional_RDEPENDs > fi > > elog "Plugins which should be used are set via its" > elog "own config-file called /etc/conf.d/vdr.plugins" > elog "or enabled via the frontend eselect vdr-plugin.\n" > > if [[ -f "${EROOT}"/etc/conf.d/vdr.dvdswitch ]] && > grep -q ^DVDSWITCH_BURNSPEED= "${EROOT}"/etc/conf.d/vdr.dvdswitch Back to || die. > then > ewarn "You are setting DVDSWITCH_BURNSPEED in /etc/conf.d/vdr.dvdswitch" > ewarn "This no longer has any effect, please use" > ewarn "VDR_DVDBURNSPEED in /etc/conf.d/vdr.cd-dvd" > fi > > elog "systemd is supported by ${CATEGORY}/${PN}" > elog "This are described in the README.systemd file" > elog "in /usr/share/doc/${PF}" >} > >VDRSUDOENTRY="vdr ALL=NOPASSWD:/usr/share/vdr/bin/vdrshutdown-really.sh" > >pkg_config() { > if grep -q /usr/share/vdr/bin/vdrshutdown-really.sh "${EROOT}"/etc/sudoers; then Most likely here. > > einfo "Removing depricated entry from /etc/sudoers:" > einfo "- ${VDRSUDOENTRY}" > > cd "${T}" Here. > cat >sudoedit-vdr.sh <<-SUDOEDITOR Somewhere here. > #!/bin/bash > sed -i \${1} -e '/\/usr\/share\/vdr\/bin\/vdrshutdown-really.sh *$/d' > > SUDOEDITOR > chmod a+x sudoedit-vdr.sh Here. > > VISUAL="${T}"/sudoedit-vdr.sh visudo -f "${EROOT}"/etc/sudoers || die "visudo failed" Like this! :) > > einfo "Edited /etc/sudoers" > fi >}
Im not sure if you can utilize /etc/sudoers.d better here.
>>DESCRIPTION="Scripts necessary for use of vdr as a set-top-box" >>HOMEPAGE="https://www.gentoo.org/" >Is this correct? not shure, as the gentoo-vdr-scripts are hosted by gentoo.org somewhere in the git we could change this to: HOMEPAGE="https://wiki.gentoo.org/wiki/Project:VDR" there is no description about the script set, but there is a notification about that the gentoo-vdr-scripts are a part from gentoo vdr project. or we use HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage" what is your suggestion?
Created attachment 596498 [details] fixed ebuild what i have done: - fixed minor issues about missing trailing slashes - removed nvram use flag removed sys-power/nvram-wakeup for support of this, im added a message in pkg_postinst() - removed pkg_config() visudo handling complete this should already done by previus gentoo-vdr-scripts versionen new users will not complain about this now, we have a backup warning in pkg_postinst() for users the still use a very old version of gentoo-vdr-scripts - removed the unneeded local DOCS routine - simplified the .keepdir in the local kd routine - removed pkg_preinstall() complete, as the migration is still done in previous versions of gentoo-vdr-scripts repoman complains about migration from user to GLEP81 this needs at first the depenend packages in the tree when it is establish, we will fix it so fast as possible for your HOMEPAGE question iam added in the ebuild 2 lines HOMEPAGE="https://wiki.gentoo.org/wiki/Project:VDR" HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage" please remove one of this on your needs i will not complain about the rights managment in this case ;) thx for your review and support
Created attachment 596500 [details] removed DOCS grr, DOCS was still in the ebuild fixed
After reading this wonderful mess, I checked the difference between gentoo-vdr-scripts-2.7.5.1.tar.bz2 and gentoo-vdr-scripts-2.8.tar.bz2 - there is NO difference, no code changes. So why should next ebuild be named "gentoo-vdr-scripts-2.8" ? IMHO "gentoo-vdr-scripts-2.7.5.1-r1" is sufficient.
(In reply to Martin Dummer from comment #11) > After reading this wonderful mess, I checked the difference between > gentoo-vdr-scripts-2.7.5.1.tar.bz2 and gentoo-vdr-scripts-2.8.tar.bz2 - > there is NO difference, no code changes. > > So why should next ebuild be named "gentoo-vdr-scripts-2.8" ? > > IMHO "gentoo-vdr-scripts-2.7.5.1-r1" is sufficient. thx martin for review this, i was going in the trap of the integrated compressing file for the sources. this works, if i noticed afterwards, only if i call it direct in the git. The sources are compressed now by hand and includes all the changes from myself. PN = 2.8 is correct now. thx for reporting this...
(In reply to Joerg Bornkessel from comment #12) > (In reply to Martin Dummer from comment #11) > > After reading this wonderful mess, I checked the difference between > > gentoo-vdr-scripts-2.7.5.1.tar.bz2 and gentoo-vdr-scripts-2.8.tar.bz2 - > > there is NO difference, no code changes. > > > > So why should next ebuild be named "gentoo-vdr-scripts-2.8" ? > > > > IMHO "gentoo-vdr-scripts-2.7.5.1-r1" is sufficient. > > thx martin for review this, > i was going in the trap of the integrated compressing file for the sources. > this works, if i noticed afterwards, only if i call it direct in the git. > > The sources are compressed now by hand and includes all the changes from > myself. > > PN = 2.8 is correct now. PV i meant ;) > > thx for reporting this...
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=832251698a5928764e2aeb6486cbb07f82a42944 commit 832251698a5928764e2aeb6486cbb07f82a42944 Author: Joerg Bornkessel <hd_brummy@gentoo.org> AuthorDate: 2019-12-15 01:05:14 +0000 Commit: Joerg Bornkessel <hd_brummy@gentoo.org> CommitDate: 2019-12-15 01:05:14 +0000 media-tv/gentoo-vdr-scripts: bump to 2.8 this bump will fix: SYMLINK_LIB=no / 17.1 profiles break VDR plugins fails to shutdown pc for sleep shuts the vdr down even if nvram-wakup fails disabled login for user vdr ebuild cleanup cleanup old Bug: https://bugs.gentoo.org/688174 Bug: https://bugs.gentoo.org/646518 Bug: https://bugs.gentoo.org/298785 Closes: https://bugs.gentoo.org/688174 Closes: https://bugs.gentoo.org/646518 Closes: https://bugs.gentoo.org/298785 Package-Manager: Portage-2.3.81, Repoman-2.3.18 Signed-off-by: Joerg Bornkessel <hd_brummy@gentoo.org> media-tv/gentoo-vdr-scripts/Manifest | 6 +- .../gentoo-vdr-scripts-2.0.0.ebuild | 130 -------------------- .../gentoo-vdr-scripts-2.5.ebuild | 133 -------------------- .../gentoo-vdr-scripts-2.7.2.ebuild | 135 --------------------- .../gentoo-vdr-scripts-2.7.5.ebuild | 130 -------------------- .../gentoo-vdr-scripts-2.7.ebuild | 135 --------------------- .../gentoo-vdr-scripts-2.8.ebuild | 82 +++++++++++++ 7 files changed, 83 insertions(+), 668 deletions(-) Additionally, it has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=832251698a5928764e2aeb6486cbb07f82a42944 commit 832251698a5928764e2aeb6486cbb07f82a42944 Author: Joerg Bornkessel <hd_brummy@gentoo.org> AuthorDate: 2019-12-15 01:05:14 +0000 Commit: Joerg Bornkessel <hd_brummy@gentoo.org> CommitDate: 2019-12-15 01:05:14 +0000 media-tv/gentoo-vdr-scripts: bump to 2.8 this bump will fix: SYMLINK_LIB=no / 17.1 profiles break VDR plugins fails to shutdown pc for sleep shuts the vdr down even if nvram-wakup fails disabled login for user vdr ebuild cleanup cleanup old Bug: https://bugs.gentoo.org/688174 Bug: https://bugs.gentoo.org/646518 Bug: https://bugs.gentoo.org/298785 Closes: https://bugs.gentoo.org/688174 Closes: https://bugs.gentoo.org/646518 Closes: https://bugs.gentoo.org/298785 Package-Manager: Portage-2.3.81, Repoman-2.3.18 Signed-off-by: Joerg Bornkessel <hd_brummy@gentoo.org> media-tv/gentoo-vdr-scripts/Manifest | 6 +- .../gentoo-vdr-scripts-2.0.0.ebuild | 130 -------------------- .../gentoo-vdr-scripts-2.5.ebuild | 133 -------------------- .../gentoo-vdr-scripts-2.7.2.ebuild | 135 --------------------- .../gentoo-vdr-scripts-2.7.5.ebuild | 130 -------------------- .../gentoo-vdr-scripts-2.7.ebuild | 135 --------------------- .../gentoo-vdr-scripts-2.8.ebuild | 82 +++++++++++++ 7 files changed, 83 insertions(+), 668 deletions(-)