Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 945381 - app-admin/emacs-updater-1.18: EMERGE_DEFAULT_OPTS="--getbinpkg" prevents rebuild from source
Summary: app-admin/emacs-updater-1.18: EMERGE_DEFAULT_OPTS="--getbinpkg" prevents rebu...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: GNU Emacs project
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks:
 
Reported: 2024-11-29 22:27 UTC by opensauce04
Modified: 2024-12-13 12:02 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Output from running `emacs-updater -b -- -pv` (emacs-updater.txt,1.36 KB, text/plain)
2024-11-30 11:46 UTC, opensauce04
Details
Output from running `emerge --info app-admin/emacs-updater` (emacs-updater-info.txt,8.02 KB, text/plain)
2024-12-01 23:25 UTC, opensauce04
Details

Note You need to log in before you can comment on or make changes to this bug.
Description opensauce04 2024-11-29 22:27:47 UTC
I have binpkgs enabled globally on my system and these two packages seem to be stuck built against Emacs 29.4, which is presumably the Emacs version that was present in the environment where these packages were compiled.

Considering that the Emacs version these packages are compiled with is significant, packages such as these probably shouldn't be distributed as binpkgs at all.
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2024-11-29 22:34:42 UTC
We don't have a way to properly handle this right now.

Some notes:
1. See bug 542480.
2. Users can do --buildpkg-exclude/--usepkg-exclude in EMERGE_DEFAULT_OPTS.
3. The incompatibility of Emacs bytecode _with the exception of JIT_ is actually not such a problem, it ends up being stable enough most of the time.
4. See the extensive discussion in bug 735148.
Comment 2 Ulrich Müller gentoo-dev 2024-11-30 11:11:03 UTC
Please attach the output of this command:
$ emacs-updater -b -- -pv
Comment 3 opensauce04 2024-11-30 11:46:13 UTC
Created attachment 912868 [details]
Output from running `emacs-updater -b -- -pv`
Comment 4 Ulrich Müller gentoo-dev 2024-11-30 12:14:20 UTC
This should not happen. Maybe something in your configuration overrides --usepkg-n.

Can you also attach the "emerge --info" output?
Comment 5 Ulrich Müller gentoo-dev 2024-11-30 13:17:04 UTC
(In reply to Ulrich Müller from comment #4)
> Can you also attach the "emerge --info" output?

Sorry, this should have read "emerge --info app-admin/emacs-updater".
Comment 6 opensauce04 2024-12-01 23:25:58 UTC
Created attachment 913012 [details]
Output from running `emerge --info app-admin/emacs-updater`
Comment 7 Ulrich Müller gentoo-dev 2024-12-02 12:50:58 UTC
(In reply to opensauce04 from comment #6)
> Created attachment 913012 [details]
> Output from running `emerge --info app-admin/emacs-updater`

> EMERGE_DEFAULT_OPTS="--getbinpkg --binpkg-respect-use=y --binpkg-changed-deps=y --usepkg-exclude sys-apps/xdg-desktop-portal-gtk"

emacs-updater does "emerge --usepkg=n --oneshot", and it looks like --usepkg=n doesn't override --getbinpkg from EMERGE_DEFAULT_OPTS.

emerge(1) says:

       --getbinpkg [ y | n ], -g
              Using the server and location  defined  in  PORTAGE_BINHOST  (see
              make.conf(5)),  portage  will  download the information from each
              binary package found and it will use  that  information  to  help
              build the dependency list.  This option implies -k.  (Use -gK for
              binary-only merging.)

Since the -k option implies -k/--usepkg, I'd expect --usepkg=n in the command line to countermand it.

CCing Portage team. Is this a Portage bug or a feature?
Comment 8 Ulrich Müller gentoo-dev 2024-12-02 12:52:53 UTC
(In reply to Ulrich Müller from comment #7)
> Since the -k option implies -k/--usepkg, ...

This should of course read "Since the --getbinpkg option implies -k/--usepkg, ..."
Comment 9 Ulrich Müller gentoo-dev 2024-12-07 08:03:19 UTC
https://gitweb.gentoo.org/proj/emacs-tools.git/commit/?h=emacs-updater&id=63e5e0fc544b5fdae32a2634996c868a1fe791a1

commit 63e5e0fc544b5fdae32a2634996c868a1fe791a1
Author: Ulrich Müller <ulm@gentoo.org>
Date:   Sat Dec 7 08:58:47 2024 +0100

    Pass --getbinpkg=n to Portage
    
    * emacs-updater (pm_portage): Pass --getbinpkg=n to Portage.
    Fixes bug 945381.
    
    Bug: https://bugs.gentoo.org/945381
    Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Comment 10 Larry the Git Cow gentoo-dev 2024-12-09 18:37:14 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43c1ad90cf8670eb8348773e2010e22da0604673

commit 43c1ad90cf8670eb8348773e2010e22da0604673
Author:     Ulrich Müller <ulm@gentoo.org>
AuthorDate: 2024-12-09 18:35:41 +0000
Commit:     Ulrich Müller <ulm@gentoo.org>
CommitDate: 2024-12-09 18:37:10 +0000

    app-admin/emacs-updater: add 1.19
    
    Closes: https://bugs.gentoo.org/945381
    Signed-off-by: Ulrich Müller <ulm@gentoo.org>

 app-admin/emacs-updater/Manifest                  |  1 +
 app-admin/emacs-updater/emacs-updater-1.19.ebuild | 37 +++++++++++++++++++++++
 2 files changed, 38 insertions(+)
Comment 11 Ulrich Müller gentoo-dev 2024-12-09 18:46:50 UTC
Thanks for reporting.
Comment 12 opensauce04 2024-12-13 10:16:58 UTC
I emerged emacs-updater 1.19 and tried to run it, and it doesn't seem that this issue has been resolved. The behaviour appears identical to 1.18.
Comment 13 Ulrich Müller gentoo-dev 2024-12-13 11:19:44 UTC
(In reply to opensauce04 from comment #12)
> I emerged emacs-updater 1.19 and tried to run it, and it doesn't seem that
> this issue has been resolved. The behaviour appears identical to 1.18.

Try again with "getbinpkg" removed from your FEATURES.
Comment 14 opensauce04 2024-12-13 11:38:17 UTC
That fixed it, not sure why I had both FEATURES and EMERGE_DEFAULT_OPTS set.

I wonder why the behaviour is different. The [https://wiki.gentoo.org/wiki/Binary_package_guide](binary package guide) on the wiki states that it "equivalent" to just using --getbinpkg. This appears that in some way this is not the case.
Comment 15 opensauce04 2024-12-13 11:44:16 UTC
Please ignore the horrible grammar and link fail in my previous comment, I somehow accidentally sent it before actually checking what I just wrote.

For clarification, I am referring to the FEATURES value in that last sentence.
Comment 16 Ulrich Müller gentoo-dev 2024-12-13 12:02:32 UTC
make.conf(5) says about FEATURES="getbinpkg":
Force emerges to always try to fetch files from the PORTAGE_BINHOST.

AFAICS there is no way to override this with a command line option.

Presumably that wiki page shouldn't recommend setting it in FEATURES.