Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Do profile USE-flags change over time?
View unanswered posts
View posts from last 24 hours

Goto page 1, 2, 3  Next  
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 439

PostPosted: Mon Sep 16, 2024 11:28 am    Post subject: Do profile USE-flags change over time? Reply with quote

Hi folks

I set up two Gentoo machines about two months apart. I used what seemed to me to be identical procedures. I used the same profile in both cases (23.0 desktop/stable) and made the same global USE changes in /etc/portage/make.conf.

And yet...

On one machine, the newer one, 'emerge --info' shows I have USE=qml at the global level, while the earlier one does not. I don't set this flag (so far as I know), so I presume it is some kind of profile default.

This change is a big deal, because the Gentoo official binhost has a binary of qtwebengine that has '-qml', but not one that has 'qml' with my other USE-flag settings (again, so far as I know). I really don't have three days to spend building qtwebengine from source. So I've installed qtwebengine with 'USE=-qml', in the hope that this won't break anything. I have no idea what 'qml' is, so I don't know what the implications are likely to be. But fingers crossed.

My question is: is this change in USE flag explicable? Do the defaults on specific profiles change from time to time, even though the profile version has not? I kind-of thought that if I set up multiple installations with the same profile number and name, they would be identical. Have I made another terrible misjudgement?

BR, Lars.
Back to top
View user's profile Send private message
AndrewAmmerlaan
Developer
Developer


Joined: 25 Jun 2014
Posts: 376
Location: Nijmegen

PostPosted: Mon Sep 16, 2024 11:39 am    Post subject: Re: Do profile USE-flags change over time? Reply with quote

lars_the_bear wrote:

Do the defaults on specific profiles change from time to time, even though the profile version has not?


Sometimes, yes.

Here's the relevant e-mail from the gentoo-dev mailing list for the qml change: https://public-inbox.gentoo.org/gentoo-dev/87ed5r0xkg.fsf@gentoo.org/T/#t
_________________
OS: Gentoo 6.8.10-gentoo-dist, ~amd64, 23.0/desktop/plasma/systemd
MB: MSI Z370-A PRO
CPU: Intel Core i9-9900KS
GPU: Intel Arc A770 16GB & Intel UHD Graphics 630
SSD: Samsung 970 EVO Plus 2 TB
RAM: Crucial Ballistix 32GB DDR4-2400
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 439

PostPosted: Mon Sep 16, 2024 11:54 am    Post subject: Re: Do profile USE-flags change over time? Reply with quote

AndrewAmmerlaan wrote:
lars_the_bear wrote:

Do the defaults on specific profiles change from time to time, even though the profile version has not?


Sometimes, yes.


Thanks. Well, at least I have an explanation. But it's a bit of a blow, to be honest, because I don't seem to have a way to set up machines with identical configuration, unless I set them up at exactly the same time. This means that it's difficult to compile on one machine, and upload the binaries to my binhost, to be used by other installations.

Or am I missing something? Is there some file, or set of files, I can copy from an existing installation to a new one -- presumably early in the set-up -- that will make the installations identical?

BR, Lars.
Back to top
View user's profile Send private message
AndrewAmmerlaan
Developer
Developer


Joined: 25 Jun 2014
Posts: 376
Location: Nijmegen

PostPosted: Mon Sep 16, 2024 11:57 am    Post subject: Reply with quote

Quote:
Or am I missing something? Is there some file, or set of files, I can copy from an existing installation to a new one -- presumably early in the set-up -- that will make the installations identical?


The easiest way to ensure that the configuration is identical is to 'emerge --sync' both machines at the same time. Another way to do it is to copy the contents of /var/db/repos to the second machine.
_________________
OS: Gentoo 6.8.10-gentoo-dist, ~amd64, 23.0/desktop/plasma/systemd
MB: MSI Z370-A PRO
CPU: Intel Core i9-9900KS
GPU: Intel Arc A770 16GB & Intel UHD Graphics 630
SSD: Samsung 970 EVO Plus 2 TB
RAM: Crucial Ballistix 32GB DDR4-2400
Back to top
View user's profile Send private message
Ionen
Developer
Developer


Joined: 06 Dec 2018
Posts: 2800

PostPosted: Mon Sep 16, 2024 12:21 pm    Post subject: Reply with quote

Profile default changes are also rather infrequent (can sometime go years without changes), albeit fwiw base desktop profiles should gain "wayland" soon as a default too (which gnome and plasma profiles already had).
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3341

PostPosted: Mon Sep 16, 2024 12:42 pm    Post subject: Re: Do profile USE-flags change over time? Reply with quote

lars_the_bear wrote:

Thanks. Well, at least I have an explanation. But it's a bit of a blow, to be honest, because I don't seem to have a way to set up machines with identical configuration, unless I set them up at exactly the same time. This means that it's difficult to compile on one machine, and upload the binaries to my binhost, to be used by other installations.

Or am I missing something? Is there some file, or set of files, I can copy from an existing installation to a new one -- presumably early in the set-up -- that will make the installations identical?

BR, Lars.

Profiles are a part of portage tree.
If you sync the older machine, it will update profile information too.
Now, if you happen to get stuck in a side branch of dependency graphs (like e.g. the order of alternative dependencies under a virtual package got changed so the one you have installed is no longer the first choice but won't be replaced because it's already installed), you might consider running emerge -e to switch to the new defaults. It's supposed to do all dependency resolution from scratch, ignoring your local state, which means it will reinstall everything, but that shouldn't take all THAT long if you have binary packages cached.
_________________
Make Computing Fun Again
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 439

PostPosted: Mon Sep 16, 2024 12:53 pm    Post subject: Re: Do profile USE-flags change over time? Reply with quote

szatox wrote:
It's supposed to do all dependency resolution from scratch, ignoring your local state, which means it will reinstall everything, but that shouldn't take all THAT long if you have binary packages cached.


Thanks. But what I've found is that the binary packages I've cached don't have USE flags that match the new profile-default USE flags. So I'm not sure how I can prevent everything being built again.

And, in fact, the new profile defaults don't match the Gentoo official binhost, either, although the previous versions did. Maybe (?) the binhost will be brought into line at some point?

BR, Lars.
Back to top
View user's profile Send private message
AndrewAmmerlaan
Developer
Developer


Joined: 25 Jun 2014
Posts: 376
Location: Nijmegen

PostPosted: Mon Sep 16, 2024 1:30 pm    Post subject: Reply with quote

Quote:
Maybe (?) the binhost will be brought into line at some point?


This will resolve itself automatically, the binhost naturally is a bit behind since it has to build everything first.
_________________
OS: Gentoo 6.8.10-gentoo-dist, ~amd64, 23.0/desktop/plasma/systemd
MB: MSI Z370-A PRO
CPU: Intel Core i9-9900KS
GPU: Intel Arc A770 16GB & Intel UHD Graphics 630
SSD: Samsung 970 EVO Plus 2 TB
RAM: Crucial Ballistix 32GB DDR4-2400
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3341

PostPosted: Mon Sep 16, 2024 1:31 pm    Post subject: Reply with quote

Run this and see how bad it's actually going to be in your case:
Code:
{ emerge -pe @world | tee /dev/stderr | echo -n "Binary packages to install: $( grep '^\[binary' | wc -l ; sleep 1 )" ;}  |& grep -v '^\[binary'

On my system it wants to rebuild like 60 perl packages and reuse 1249 binary packages.

Quote:
But what I've found is that the binary packages I've cached don't have USE flags that match the new profile-default USE flags
Do you have cached packages from your newer system? The old one should be able to reuse them. That would take care of changed use flags.
_________________
Make Computing Fun Again
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 439

PostPosted: Mon Sep 16, 2024 2:13 pm    Post subject: Reply with quote

[quote="szatox"
On my system it wants to rebuild like 60 perl packages and reuse 1249 binary packages.
[/quote]

It's not that many for me. But my point is that I wanted to make the new system like the old one, not the other way around. I spent a lot of time -- weeks to months -- compiling stuff on that old machine, and I was really hoping to be able to reuse all the compiled packages on the new system. I don't even care if that means I end up using older versions, since the versions on my old system work well enough already for my purposes. But, in fact, the biggest problem isn't packages that have newer versions, but packages that have the same versions, but no longer match the profile USE flags.

So, in future, I guess what I need to do for a new installation is to look at the profile USE settings before doing much installation, and then fix them up so they match the USE settings on the host where I built the binaries.

It's not a show-stopper but, honestly, I was completely unprepared to find that profile defaults would change.

BR, Lars.
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3341

PostPosted: Mon Sep 16, 2024 2:33 pm    Post subject: Reply with quote

Hold on. Use flags are declarative. They're either on or off. Emerge does not consider system's history when matching them.
This means that your both systems using the same profile should have the same flags... Unless you're explicitly changing them on one of your machines.

This is different than alternative dependencies in virtual packages.
So, why don't your flags match? Did you change some in make.conf? Did they get auto-unmasked in package.use?
Or do you use an old portage tree on the old machine and a new tree on the new one?
_________________
Make Computing Fun Again
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 439

PostPosted: Mon Sep 16, 2024 2:58 pm    Post subject: Reply with quote

szatox wrote:

This means that your both systems using the same profile should have the same flags... Unless you're explicitly changing them on one of your machines.


Sorry -- I'm completely confused now. The response from @AndrewAmmerlaan suggested that profile defaults do change from time to time. On neither of my machines do I knowingly do anything that would change the value of the 'qml' USE-flag. Both have the same global USE flags in make.conf. Both have the same profile, selected at installation time. Both have the same software, mostly of the same version, or are trending in that direction (because I am trying to make the machines the same). Nevertheless, `emerge --info` shows one machine that has `qml` and one that does not. Also, IIUC, @AndrewAmmerlaan said this was a deliberate change.

If profile-default USE flags do change over time, even infrequently, then that's something I need to take account of when setting up. If they don't, then I don't have any explanation for the behaviour I see.

BR, Lars.
Back to top
View user's profile Send private message
AndrewAmmerlaan
Developer
Developer


Joined: 25 Jun 2014
Posts: 376
Location: Nijmegen

PostPosted: Mon Sep 16, 2024 3:04 pm    Post subject: Reply with quote

lars_the_bear wrote:
szatox wrote:

This means that your both systems using the same profile should have the same flags... Unless you're explicitly changing them on one of your machines.


Sorry -- I'm completely confused now. The response from @AndrewAmmerlaan suggested that profile defaults do change from time to time. On neither of my machines do I knowingly do anything that would change the value of the 'qml' USE-flag. Both have the same global USE flags in make.conf. Both have the same profile, selected at installation time. Both have the same software, mostly of the same version, or are trending in that direction (because I am trying to make the machines the same). Nevertheless, `emerge --info` shows one machine that has `qml` and one that does not. Also, IIUC, @AndrewAmmerlaan said this was a deliberate change.

If profile-default USE flags do change over time, even infrequently, then that's something I need to take account of when setting up. If they don't, then I don't have any explanation for the behaviour I see.

BR, Lars.


The profile defaults do change sometimes, but if both machines are synchronized at the same time then the state of the repository is the same and hence the profile defaults are the same. Your issue occurs because one machine is slightly ahead of the other. You can either globally undo this change (i.e. disable the qml USE flag), or re-sync both machines, build the updates on one machine, then fetch the built binpkgs on the second machine.
_________________
OS: Gentoo 6.8.10-gentoo-dist, ~amd64, 23.0/desktop/plasma/systemd
MB: MSI Z370-A PRO
CPU: Intel Core i9-9900KS
GPU: Intel Arc A770 16GB & Intel UHD Graphics 630
SSD: Samsung 970 EVO Plus 2 TB
RAM: Crucial Ballistix 32GB DDR4-2400
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1128
Location: Richmond Hill, Canada

PostPosted: Mon Sep 16, 2024 3:23 pm    Post subject: Reply with quote

lars_the_bear wrote:
szatox wrote:

This means that your both systems using the same profile should have the same flags... Unless you're explicitly changing them on one of your machines.


Sorry -- I'm completely confused now. The response from @AndrewAmmerlaan suggested that profile defaults do change from time to time. On neither of my machines do I knowingly do anything that would change the value of the 'qml' USE-flag. Both have the same global USE flags in make.conf. Both have the same profile, selected at installation time. Both have the same software, mostly of the same version, or are trending in that direction (because I am trying to make the machines the same). Nevertheless, `emerge --info` shows one machine that has `qml` and one that does not. Also, IIUC, @AndrewAmmerlaan said this was a deliberate change.

If profile-default USE flags do change over time, even infrequently, then that's something I need to take account of when setting up. If they don't, then I don't have any explanation for the behaviour I see.

BR, Lars.


You need to adjust your prescription of Gentoo compare to other binary based distro. Gentoo is a rolling, source based meta distribution. Meaning things always in fluctuation. You need to take this into consideration when you setup you Gentoo environment. Do not depend on default behavior of Gentoo. you need to enforce your configuration. setup USE flags explicitly . Important applications/packages keep a local copy (source code and ebuild).

From your reaction, it seem you miss this point szatox mention that profile is part of Portage tree. so profile content can changes/different over times. There are more than few ways to override profile default values. please have a look at Gentoo wiki: Portage
Back to top
View user's profile Send private message
eschwartz
Developer
Developer


Joined: 29 Oct 2023
Posts: 153

PostPosted: Mon Sep 16, 2024 3:28 pm    Post subject: Re: Do profile USE-flags change over time? Reply with quote

lars_the_bear wrote:
This change is a big deal, because the Gentoo official binhost has a binary of qtwebengine that has '-qml', but not one that has 'qml' with my other USE-flag settings (again, so far as I know). I really don't have three days to spend building qtwebengine from source. So I've installed qtwebengine with 'USE=-qml', in the hope that this won't break anything. I have no idea what 'qml' is, so I don't know what the implications are likely to be. But fingers crossed.


I think this should have just required waiting for the binhost to sync. Currently built editions:

Code:
USE: alsa bindist jumbo-build opengl pulseaudio qml            system-icu vulkan widgets    ( dev-qt/qtwebengine/qtwebengine-6.7.2-3.gpkg.tar )
USE: alsa bindist jumbo-build opengl                           system-icu vulkan widgets    ( dev-qt/qtwebengine/qtwebengine-6.7.2-2.gpkg.tar )
USE: alsa bindist jumbo-build opengl pulseaudio qml screencast system-icu vulkan widgets    ( dev-qt/qtwebengine/qtwebengine-6.7.2-1.gpkg.tar )
USE: alsa bindist jumbo-build opengl            qml            system-icu vulkan widgets    ( dev-qt/qtwebengine/qtwebengine-6.7.2-4.gpkg.tar )


An older build never goes away until that version's ebuild is removed as well. So the profile change in this case would not mean that any qtwebengine builds went away.

In this case there's only one binary build of -qml, the 2nd build, but it is identical to the 4th build modulo the qml flag. Adding USE=qml to the global desktop profile should not cause you to be unable to merge a binpackage.

Binpackage number 4 has a build-id that was built on Thursday so I would definitely expect it to be available by now.

What is the output of `emerge -pv qtwebengine:6` on both machines?
Back to top
View user's profile Send private message
eschwartz
Developer
Developer


Joined: 29 Oct 2023
Posts: 153

PostPosted: Mon Sep 16, 2024 3:40 pm    Post subject: Re: Do profile USE-flags change over time? Reply with quote

lars_the_bear wrote:
AndrewAmmerlaan wrote:
lars_the_bear wrote:

Do the defaults on specific profiles change from time to time, even though the profile version has not?


Sometimes, yes.


Thanks. Well, at least I have an explanation. But it's a bit of a blow, to be honest, because I don't seem to have a way to set up machines with identical configuration, unless I set them up at exactly the same time. This means that it's difficult to compile on one machine, and upload the binaries to my binhost, to be used by other installations.

Or am I missing something? Is there some file, or set of files, I can copy from an existing installation to a new one -- presumably early in the set-up -- that will make the installations identical?

BR, Lars.


Do you use rsync or git to fetch the repository metadata (emerge --sync)?

With git, you can force the repository state to be identical on both machines by manually using `git reset --hard` on both machines to the same commit hash. With both git and rsync, you could define the uri to some custom git/rsync source that you control and keep a stable revision for.

If you just `emerge --sync` without any special configuration on both machines, then one machine could end up having a more recent repository snapshot than the other. This can mean different package versions are available, or it could mean profile default USE flags have changed (default USE flags are "uncommon", they don't happen every day -- but they do happen on occasion and this was one of those times).
Back to top
View user's profile Send private message
sam_
Developer
Developer


Joined: 14 Aug 2020
Posts: 1868

PostPosted: Mon Sep 16, 2024 4:08 pm    Post subject: Reply with quote

And if they're your own binpkgs, not the official ones, you can change the qml default if you really want, ideally temporarily with p.use scoped to version.
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 439

PostPosted: Mon Sep 16, 2024 6:06 pm    Post subject: Reply with quote

Thanks. I don't want to waste anybody's time following this up -- I have worked around the problem (and perhaps if I had waited until the official binhost was updated, there might not even have been a noticeable problem).

I was just surprised, is all. i expected software packages to change after I installed one machine, and I was prepared to have to deal with that. I wasn't at all prepared for profile defaults to change, and that blew my mind.

Quote:

Do not depend on default behavior of Gentoo. you need to enforce your configuration. setup USE flags explicitly


That's the crux of the problem. In this case the change was in a USE flag that I never set or unset, that I don't know the purpose of and the implications of changing which I didn't understand, and still don't. I don't see how I could possibly have set it explicitly, since I didn't even know it existed until today.

It still seems weird to me that something as fundamental as a profile-default USE flag can change without a change in version number. I guess it just goes to show how much about Gentoo I continue to fail to understand :/

BR, Lars.
Back to top
View user's profile Send private message
eschwartz
Developer
Developer


Joined: 29 Oct 2023
Posts: 153

PostPosted: Mon Sep 16, 2024 6:44 pm    Post subject: Reply with quote

lars_the_bear wrote:
That's the crux of the problem. In this case the change was in a USE flag that I never set or unset, that I don't know the purpose of and the implications of changing which I didn't understand, and still don't. I don't see how I could possibly have set it explicitly, since I didn't even know it existed until today.


The "qml" USE flag enables support for a declarative UI design language in the Qt ecosystem. It's pretty uninteresting for the most part as a USE flag. Some packages need it, some don't. If any package needs it, you tend to have to rebuild your entire Qt stack to add support for it. The implications are otherwise basically nonexistent. It's just a real hassle if you decide to install one random GUI application and get faced with a screenful of SLOT conflicts while you try to debug which packages need qml support enabled and which ones don't, then eventually give up and just add USE=qml to your make.conf.

lars_the_bear wrote:

It still seems weird to me that something as fundamental as a profile-default USE flag can change without a change in version number. I guess it just goes to show how much about Gentoo I continue to fail to understand :/


Version numbers are only interesting if users have to manually switch over to them. Which is a hassle. Gentoo does in fact have versioned profiles -- we just recently switched from 17.1 to 23.0, which reflects how long there is between profiles. :)

Usually a profile version change means careful migration instructions, specific make.conf changes you have to make (even possibly changing the CHOST!), carefully upgrading the compiler infrastructure in the right order, followed by the requirement to rebuild every installed package to propagate those changes. It can be handled easily enough by going down a checklist of steps (and the recent 23.0 transition was the first one where the instructions said "you can simplify all the remaining steps by simply reinstalling from the binhost").

It's also a convenient opportunity for making changes to defaults that are controversial or have significant impact, because if you already require people to do a bunch of work, adding in one little bit more is not really noticeable.

It's not generally considered an issue all on its own, that users have to rebuild packages due to the changed USE. That's already something that can be necessary due to much more routine changes to package.use or package.mask inside of profiles.
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3341

PostPosted: Mon Sep 16, 2024 6:57 pm    Post subject: Reply with quote

Quote:
It still seems weird to me that something as fundamental as a profile-default USE flag can change without a change in version number.

And to me, it's weird that it caused an inconsistency on your end.
It is not something that should have bothered you on the grounds of sharing binary packages between your machines, and especially not because one of them is a month older than the other.

USE flags live in the now. It doesn't matter what flags you have had set in the past. Every time you call emerge, it recounts expected use flags and forces packages being built to comply.
It would be best to figure out where does this discrepancy come from, because you're likely doing it wrong. And it might become another problem for you to deal with down the line.
_________________
Make Computing Fun Again
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20360

PostPosted: Tue Sep 17, 2024 4:03 am    Post subject: Reply with quote

lars_the_bear wrote:
It's not that many for me. But my point is that I wanted to make the new system like the old one, not the other way around. I spent a lot of time -- weeks to months -- compiling stuff on that old machine, and I was really hoping to be able to reuse all the compiled packages on the new system. I don't even care if that means I end up using older versions, since the versions on my old system work well enough already for my purposes. But, in fact, the biggest problem isn't packages that have newer versions, but packages that have the same versions, but no longer match the profile USE flags.
I can't find a reference in the Binary package guide, so maybe it is no longer true, but I've seen many references stating the the build host and binary client must use the same repository.

Some use NFS to do that. I use squashfs images of ::gentoo. Part of updating my binary client includes downloading a copy of the squashfs repo image most recently used by the build host.

So on a new system you build "today," try having the new system use the old repo that the build host is using. How old is the build host repo?

EDIT: I create my own squashfs images, but they are also available from Gentoo. See also this thread:

The really simple way to use the portage tree on squashfs ?

I keep meaning to try that but haven't gotten around to it yet.
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
eschwartz
Developer
Developer


Joined: 29 Oct 2023
Posts: 153

PostPosted: Tue Sep 17, 2024 4:12 am    Post subject: Reply with quote

pjp wrote:
I can't find a reference in the Binary package guide, so maybe it is no longer true, but I've seen many references stating the the build host and binary client must use the same repository.


This is not necessary except inasmuch as if they use different repositories, an emerge -uDU @world may attempt to install different versions of packages which aren't available in the binhost.

The consequence of this is, of course, that you don't get those lovely binpackages, thereby defeating the purpose of having a binhost! :) But the gentoo official binhost only updates once a day so that's already an issue. It's not a huge issue because you can just skip updating that package for now, but https://bugs.gentoo.org/922799 asks to make this possible by default.
Back to top
View user's profile Send private message
lars_the_bear
Guru
Guru


Joined: 05 Jun 2024
Posts: 439

PostPosted: Tue Sep 17, 2024 8:33 am    Post subject: Reply with quote

Thank you all for the responses, but I remain completely confused about the best way to proceed.

I've complained repeatedly about the amount of compilation involved in running Gentoo, on ten-year-old laptops. Some packages take literally days to compile, and my choice of global USE flags (particularly -pulseaudio -wayland) means that the Gentoo official binhost is often not of much help.

So I thought I could build all the packages I want on one machine, and use it as a binhost for others. They all have similar hardware and the same USE settings. I really expected this to relieve me of a load of compilation.

And it worked fine, until yesterday, when I tried to install FreeCAD on a machine I was setting up. This required an installation of qtwebengine, which I'd already spent nearly four days building a couple months ago. So I really expected to be able to use my pre-existing binary on this new installation.

But I couldn't, because the binary was built on a system that did not have the 'qml' USE-flag set. My new installation -- based on the same profile and global settings as the old one -- does have this flag set. It wasn't set by me -- @eschwarz confirms that this was a deliberate change in the profile. I worked around the problem by adding USE=-qml to qtwebengine and, although I'm not sure what the implications are, FreeCAD seems to work fine, albeit using a version of qtwebengine from an incompatible set-up. I don't use Qt for anything else than FreeCAD, so I don't really care how broken it is in other respects.

I'm not sure whether what I've seen here -- unexpected profile changes -- is a weird and rare fluke, or something I have to be prepared to deal with on a regular basis. If profile USE flags can change at any time without warning, then the idea of using one machine as a binhost for later installations starts to look unattractive. I really did think this was going to help with my compilation burden, but perhaps not.

I've heard reference to 'stage 4' images and, although I don't fully understand what that entails, perhaps that's what I need rather than just a binhost? But I guess that's not going to help me with reducing the burden of regular updates.

So, in short, I'm still struggling to find a way to use Gentoo effectively on old hardware, and all the ways I try seem to have unforeseen problems. Well, unforeseen by me, anyway.

BR, Lars.
Back to top
View user's profile Send private message
AndrewAmmerlaan
Developer
Developer


Joined: 25 Jun 2014
Posts: 376
Location: Nijmegen

PostPosted: Tue Sep 17, 2024 9:44 am    Post subject: Reply with quote

lars_the_bear wrote:
I worked around the problem by adding USE=-qml to qtwebengine and, although I'm not sure what the implications are, FreeCAD seems to work fine, albeit using a version of qtwebengine from an incompatible set-up. I don't use Qt for anything else than FreeCAD, so I don't really care how broken it is in other respects.


This is fine, if anything does require qml then portage will complain.

Quote:
I'm not sure whether what I've seen here -- unexpected profile changes -- is a weird and rare fluke, or something I have to be prepared to deal with on a regular basis. If profile USE flags can change at any time without warning, then the idea of using one machine as a binhost for later installations starts to look unattractive. I really did think this was going to help with my compilation burden, but perhaps not.


It's not just profile changes, sometimes an individual package also gains a new flag, or changes the default state of a flag. You can still make this work the way you want to (I do this too), it just requires that you not only synchronize /etc/portage between both machines but also /var/db/repos. You can accomplish this either by copying manually /var/db/repos to the target machine (instead of emerge --sync, which will be "too new"), or by using a network file system, or by simply ssh'ing into all machines and emerge --sync'ing them at the same time, or by using git synchronization and checking out a specific commit.
_________________
OS: Gentoo 6.8.10-gentoo-dist, ~amd64, 23.0/desktop/plasma/systemd
MB: MSI Z370-A PRO
CPU: Intel Core i9-9900KS
GPU: Intel Arc A770 16GB & Intel UHD Graphics 630
SSD: Samsung 970 EVO Plus 2 TB
RAM: Crucial Ballistix 32GB DDR4-2400
Back to top
View user's profile Send private message
pietinger
Moderator
Moderator


Joined: 17 Oct 2006
Posts: 4865
Location: Bavaria

PostPosted: Tue Sep 17, 2024 9:56 am    Post subject: Reply with quote

AndrewAmmerlaan wrote:
[...] it just requires that you not only synchronize /etc/portage between both machines but also /var/db/repos. You can accomplish this either by copying manually /var/db/repos to the target machine (instead of emerge --sync, which will be "too new"), or by using a network file system, or by simply ssh'ing into all machines and emerge --sync'ing them at the same time, or by using git synchronization and checking out a specific commit.

... or by using an own rsync server: https://wiki.gentoo.org/wiki/Home_router#Rsync_server
=>
Quote:
For those who run multiple Gentoo boxes on the same LAN, it is wise to prevent every machine running emerge --sync with remote servers. By setting up a local rsync, both personal bandwidth and the Gentoo rsync servers' bandwidth is saved. The process is relatively simple.

_________________
https://wiki.gentoo.org/wiki/User:Pietinger
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Goto page 1, 2, 3  Next
Page 1 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum