Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Ideas for Portage:/profiles
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
pingtoo
Veteran
Veteran


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

PostPosted: Thu Oct 17, 2024 12:38 pm    Post subject: Ideas for Portage:/profiles Reply with quote

This is to some extents continue of this topic thread. I open this new because what I want to discuses is not direct related to that topic subject.

I am hoping ideas gathered here one day can be include into Gentoo.

The reason I think we need this is because current ::gentoo:/profiles area is not a well known. other than ebuild developer not to many user care of understand what profile can do or cause.

So let me introduce my first idea, It is more of concept than specific way of doing thing. I am thinking "constrain". What I mean is that current Gentoo is defined as rolling release and things change every days/hours. This is great and we have been enjoy this freedom for long time. However in the event that related to the qt6/wayland changes, I start wonder if it could be good to have way to keep static for a defined time frame so user have choice. Should one wish to move in slower pace than current Gentoo speed they have way to do so.

I need to step out for a bit. I just want to throw it out for your thoughts for now. I will come back later to complete/explain what I have in mind.

Thank you for your attention!

Edit: subject line. (I realize ::gentoo is too specific for Gentoo developer team. Switch to Portage for the software in general)
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


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

PostPosted: Thu Oct 17, 2024 1:45 pm    Post subject: Reply with quote

Continue from my previous post.

I understood that /etc/profile can serve the purpose (constrain) to some degree. However my idea is to come up a mechanism like ::gentoo:/profiles such that is can be distributed, not limit to just on per machine basis.

In my wild thinking using profile constrain concept one can create a debian profile that mimic the real debian distributions or redhat profile for Redhat derivative.

Another idea of using profile naming is mark a "milestone"? (if "version" is not a good description). I imagine if the qt6/wayland disagreement portrait in the other thread would have landed in a "milestone" it would have reduce (or eliminate) the entire "discussion".

What else can we use profile for?

Do you think profile should carry a overlay indicator? like the way ebuild have version/slot/overlay.
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20453

PostPosted: Sat Oct 19, 2024 4:00 am    Post subject: Reply with quote

In the referenced thread, asturm posted a link to the Gentoo wiki Profile document. You really should read it, carefully.
https://wiki.gentoo.org/wiki/Profile_%28Portage%29

Once you understand the basics, regarding your ideas, pay attention to these sections of that document:

4 Profiles for developers and power users
4.2 Combining profiles
4.3 Creating custom profiles

In case that document doesn't mention it, the normal profiles typically used are within the ::gentoo ebuild repository. Specifically (by default) at /var/db/repos/gentoo/profiles/.

If you create an overlay, it may also have profiles. For example, I have the pentoo overlay available (the "default" profiles are from ::gentoo:
Code:
$ eselect profile list |tail
  [74]  default/linux/amd64/23.0/split-usr/musl/llvm (exp)
  [75]  default/linux/amd64/23.0/split-usr/musl/hardened (exp)
  [76]  default/linux/amd64/23.0/split-usr/musl/hardened/selinux (exp)
  [77]  pentoo:pentoo/hardened/linux/amd64_r1 (stable)
  [78]  pentoo:pentoo/hardened/linux/amd64_r1/binary (stable)
  [79]  pentoo:pentoo/hardened/linux/amd64_r1/bleeding_edge (dev)
  [80]  pentoo:pentoo/hardened/linux/amd64/23.0/split-usr/ (exp)
  [81]  pentoo:pentoo/hardened/linux/amd64/23.0/split-usr/bleeding_edge (exp)
  [82]  pentoo:pentoo/hardened/linux/amd64/23.0/ (exp)
  [83]  pentoo:pentoo/hardened/linux/amd64/23.0/bleeding_edge (exp)
So whether or not you can create a "constrain"ed profile has more to do with the ability (time and people resources) to maintain ebuilds that follow the requirements set by the "constrain"t.

It isn't simply about a profile not having qt6 or wayland in them. The ebuilds will also need to support the rolling release versions that necessarily add those USE flags.

Or, you have to maintain extra ebuilds, such as foo-5.9[qt5] and foo-6.1[qt6]. And when qt5 is dropped, a forced profile updated would be required.

To summarize: It is neither as easy nor as simple as it may first appear.


For the record, I'm in favor of some sort of "slower" release cycle and at one time had hoped to see the following become available:
GLEP 19: Gentoo Stable Portage Tree
https://www.gentoo.org/glep/glep-0019.html
(proposed in 2004, eventually withdrawn)
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
bstaletic
Guru
Guru


Joined: 05 Apr 2014
Posts: 350

PostPosted: Sat Oct 19, 2024 4:30 am    Post subject: Reply with quote

@pingtoo
I'm unsure if your insistence on qt6 coming with a new profile should be taken as an example, or if "a qt6 profile" is a specific point to be addressed.
Either way, profile migration from 17.1 to 23.0 was done because the compilers were reconfigured to use RELRO and BIND_NOW by default.
From 13.0 to 17.0 it was Position Independent Code.
Those are changes that affect almost everyone. At the very least everyone not already on a hardened profile.
By contrast, I couldn't care less what is happening with Qt libraries/applications - I have none on my system.

My point is that new profiles are introduced very sparingly and carefully.
A new profile every time Qt has a major release would be a lot more busywork for users.
Where do we draw the line? Do new python versions deserve new profiles? Do new perl or ruby versions deserve new profiles?
The sys-kernel/gentoo-kernel has recently started depending on perl during build. Is that worthy of a new profile?

Personally, I like the conservative approach that is employed currently.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo Chat All times are GMT
Page 1 of 1

 
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