Summary: | app-eselect/eselect-rust does not create tool symlinks under some conditions | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Georgy Yakovlev <gyakovlev> |
Component: | Current packages | Assignee: | Gentoo Rust Project <rust> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | bugs, herrtimson |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Georgy Yakovlev
![]() ![]() *** Bug 691360 has been marked as a duplicate of this bug. *** adding for reference <Whissi> gyakovlev: Guess we just need to drop "--if-unset" from pkg_postinst <gyakovlev> Whissi: true, if we drop --if-unset it probably will work, but it means find_missing_broken_symlinks() in do_update() is not doing what it should. it checks stale provider file /etc/env.d/rust/last-set which is a copy of previous run. <Whissi> gyakovlev: Well, I think it's doing exactly what it should do. You want something else. Note: last file is managed by eselect, not package. I.e. eselect-rust can't know at this stage that active rust provider gained new symlink targets... <gyakovlev> well, if this file was a symlink it'll auto-update and will trigger the check properly, but making it a symlink will probably require other changes, I haven't really started yet, just reading code. <gyakovlev> Whissi: yeah, found logic error, it will trigger if you remove useflag (as one of tool symlinks will become invalid) <Whissi> The original idea was to record what was set and just check if something we set in the past got broken and restore just that. Looks like we need to expand this check and compare for new (or removed) targets from provider file. <gyakovlev> but it will not trigger if you ADD a new tool <gyakovlev> yep you are correct. same conclusion. it already check removed, just need to check added somehow. *** Bug 700400 has been marked as a duplicate of this bug. *** The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/eselect-rust.git/commit/?id=e6337fe78b77a17b23d7e7db46af7bec32f1c126 commit e6337fe78b77a17b23d7e7db46af7bec32f1c126 Author: Thomas Deutschmann <whissi@gentoo.org> AuthorDate: 2020-04-19 01:06:45 +0000 Commit: Thomas Deutschmann <whissi@gentoo.org> CommitDate: 2020-04-19 01:12:26 +0000 find_missing_broken_symlinks(): add symlinks for new targets This commit will ensure that we will create a new symlink which didn't exist before for a new target, i.e. after re-installing a rust provider with changed USE flags. Bug: https://bugs.gentoo.org/688864 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org> rust.eselect.in | 10 ++++++++++ 1 file changed, 10 insertions(+) The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c29266c46559b09a2cdd2196f576fd81f1bea046 commit c29266c46559b09a2cdd2196f576fd81f1bea046 Author: Thomas Deutschmann <whissi@gentoo.org> AuthorDate: 2020-04-19 01:28:01 +0000 Commit: Thomas Deutschmann <whissi@gentoo.org> CommitDate: 2020-04-19 01:29:08 +0000 app-eselect/eselect-rust: bump to v20200419 Closes: https://bugs.gentoo.org/688864 Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org> app-eselect/eselect-rust/Manifest | 1 + .../eselect-rust/eselect-rust-20200419.ebuild | 32 ++++++++++++++++++++++ 2 files changed, 33 insertions(+) |