public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-user] Where does Portage store what USE flags are required for binhost packages?
@ 2024-12-08 14:57 Dr Rainer Woitok
  2024-12-08 15:24 ` Eli Schwartz
  0 siblings, 1 reply; 4+ messages in thread
From: Dr Rainer Woitok @ 2024-12-08 14:57 UTC (permalink / raw
  To: Gentoo-User

Greetings,

off and on my attempts to coax Portage  into installing a binary package
fail.  Current example: "sys-libs/readline-8.2_p13" was installed as bi-
nary some  weeks ago,  while my current attempts  to install  "sys-libs/
readline-8.2_p13-r1" as binary are ignored, "emerge" insists in install-
ing it as an ebuild.  Same happened with a few more packages.

I downloaded file "Packages" from my binhost mirror which provides quite
some information and helped me specifying  the correct USE flags for se-
veral packages.  But not for all  --  apparently Portage's decicions are
based on different information.

Where should I look?

Sincerely,
  Rainer


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [gentoo-user] Where does Portage store what USE flags are required for binhost packages?
  2024-12-08 14:57 [gentoo-user] Where does Portage store what USE flags are required for binhost packages? Dr Rainer Woitok
@ 2024-12-08 15:24 ` Eli Schwartz
  2024-12-08 17:57   ` Dr Rainer Woitok
  0 siblings, 1 reply; 4+ messages in thread
From: Eli Schwartz @ 2024-12-08 15:24 UTC (permalink / raw
  To: gentoo-user


[-- Attachment #1.1: Type: text/plain, Size: 1596 bytes --]

On 12/8/24 9:57 AM, Dr Rainer Woitok wrote:
> Greetings,
> 
> off and on my attempts to coax Portage  into installing a binary package
> fail.  Current example: "sys-libs/readline-8.2_p13" was installed as bi-
> nary some  weeks ago,  while my current attempts  to install  "sys-libs/
> readline-8.2_p13-r1" as binary are ignored, "emerge" insists in install-
> ing it as an ebuild.  Same happened with a few more packages.
> 
> I downloaded file "Packages" from my binhost mirror which provides quite
> some information and helped me specifying  the correct USE flags for se-
> veral packages.  But not for all  --  apparently Portage's decicions are
> based on different information.
> 
> Where should I look?


There's no subtlety to where USE flags are stored. They are stored in
the Packages file right where you looked. :)

There are other reasons a binpackage might be ineligible. For example,
if dependencies have changed (including build-time dependencies IIRC)
via ebuild / eclass edits, or when an RDEPEND has a subslot binding
dependency and your installed version of the dependency has been
upgraded, the binpackage won't work (and in a world update, you'd see a
red "r" to indicate that one package is forcing another package to rebuild).

By the way you don't need to download the Packages file manually. It
will be in /var/cache/edb/binhost/ using a directory structure based on
your binhost uri. For example, my cached copy is at:

/var/cache/edb/binhost/gentoo.osuosl.org/releases/amd64/binpackages/23.0/x86-64-v3/Packages


-- 
Eli Schwartz

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [gentoo-user] Where does Portage store what USE flags are required for binhost packages?
  2024-12-08 15:24 ` Eli Schwartz
@ 2024-12-08 17:57   ` Dr Rainer Woitok
  2024-12-08 18:13     ` Eli Schwartz
  0 siblings, 1 reply; 4+ messages in thread
From: Dr Rainer Woitok @ 2024-12-08 17:57 UTC (permalink / raw
  To: gentoo-user; +Cc: Eli Schwartz

Eli,

On Sun, 8 Dec 2024 10:24:42 -0500 you wrote:

> ...
> By the way you don't need to download the Packages file manually. It
> will be in /var/cache/edb/binhost/ using a directory structure based on
> your binhost uri.

Great.  Thankyou for this pointer!

But: the file "/var/cache/edb/binhost/**/Packages" has a time stamp from
December 2-nd and differs from the "Packages" file I downloaded manually
yesterday.   So when does Portage sync it?   I ran "emaint sync -A" yes-
terday and then experimented with "emerge --pretend".   But this did not
update file "/var/cache/edb/binhost/**/Packages".

In any case  the differences between these two files  could well explain
my problems.

Sincerely,
  Rainer


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [gentoo-user] Where does Portage store what USE flags are required for binhost packages?
  2024-12-08 17:57   ` Dr Rainer Woitok
@ 2024-12-08 18:13     ` Eli Schwartz
  0 siblings, 0 replies; 4+ messages in thread
From: Eli Schwartz @ 2024-12-08 18:13 UTC (permalink / raw
  To: Dr Rainer Woitok, gentoo-user


[-- Attachment #1.1: Type: text/plain, Size: 1768 bytes --]

On 12/8/24 12:57 PM, Dr Rainer Woitok wrote:
> Eli,
> 
> On Sun, 8 Dec 2024 10:24:42 -0500 you wrote:
> 
>> ...
>> By the way you don't need to download the Packages file manually. It
>> will be in /var/cache/edb/binhost/ using a directory structure based on
>> your binhost uri.
> 
> Great.  Thankyou for this pointer!
> 
> But: the file "/var/cache/edb/binhost/**/Packages" has a time stamp from
> December 2-nd and differs from the "Packages" file I downloaded manually
> yesterday.   So when does Portage sync it?   I ran "emaint sync -A" yes-
> terday and then experimented with "emerge --pretend".   But this did not
> update file "/var/cache/edb/binhost/**/Packages".
> 
> In any case  the differences between these two files  could well explain
> my problems.


It is definitely downloaded by emerge --pretend --getbinpkg.

It is not downloaded by emaint sync.

If neither FEATURES="getbinpkg" nor EMERGE_DEFAULT_OPTS="--getbinpkg"
are set, then you have to manually pass --getbinpkg on the CLI every
time you want binpackages -- correspondingly, it will only download the
Packages file when you manually pass --getbinpkg (as root). In theory,
this should mean you always have a fresh cached index any time you
actually check for binary updates...

It also will check the timestamp to figure out whether to redownload.
The downloaded file will have a new "DOWNLOAD_TIMESTAMP:" field but you
can ignore that specific line. A timestamp of December 2 is definitely
way too old.

...

So the two possibilities I can think of are that:

- you ran --pretend as non-root, so emerge couldn't update the index

- you usually update with -uDU --getbinpkg, and didn't pass --getbinpkg
  with --pretend


-- 
Eli Schwartz

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2024-12-08 18:13 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-08 14:57 [gentoo-user] Where does Portage store what USE flags are required for binhost packages? Dr Rainer Woitok
2024-12-08 15:24 ` Eli Schwartz
2024-12-08 17:57   ` Dr Rainer Woitok
2024-12-08 18:13     ` Eli Schwartz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox