Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Gentoo to build other distros
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Gentoo Chat
View previous topic :: View next topic  
Author Message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Mon Aug 21, 2023 10:19 am    Post subject: Gentoo to build other distros Reply with quote

Currently most distros are redoing a lot of the work to build packages. I think we can deduplicate a lot of work by having a central repository of build scripts. It so happens that that is exactly what Gentoo is.
If we can get other distros to build their distros using Gentoo, we would get a lot of extra ebuild maintainers. We would get more bug reports. Everyone would benefit from everyone else’s work. And we might even be able to get the original package developers to make ebuilds.
It would be a big up front investment to make the necessary modifications to Gentoo, but the reward will be huge. I really think this is worth pursuing.

I think the best distro to start with would be Arch, since it is the biggest distro closest to Gentoo. I’m not sure what this would entail, but I guess we would have to start by supporting pacman, and related configuration tools and files.
We would need to way to mark a package version as the preferred version for a distro, in much the same way we mark packages as stable for an architecture. I’m thinking some sort of configuration file for each distro, like debian-stable etc.

I haven’t used flatpak much, so I’m not sure exactly how it works, but I think that is also a “distro” worth prioritising. Arguably flatpak is here to stay, so it is better to integrate it than fight it.

One problem might be that the Gentoo repo will grow huge, so splitting it up in some way might be a good idea. That might be difficult since there is a lot of overlap in dependencies. I’m thinking maybe something like “views” in SQL.
Back to top
View user's profile Send private message
pietinger
Moderator
Moderator


Joined: 17 Oct 2006
Posts: 4167
Location: Bavaria

PostPosted: Mon Aug 21, 2023 10:23 am    Post subject: Reply with quote

minkanjin,

maybe you are interested in this wiki article: https://wiki.gentoo.org/wiki/Distributions_based_on_Gentoo

See -> Chromium OS ... ;-)
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Mon Aug 21, 2023 10:30 am    Post subject: Reply with quote

Partly. I believe most of those are distros that are based on gentoo. So the end user still interacts with gentoo. I'm indeed thinking of something like ChromeOS where the end user doesn't see any gentoo, they merely use packages that the distro maintainers built. Gentoo is only used to build the packages by the distro maintainers.
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Mon Aug 21, 2023 10:36 am    Post subject: Reply with quote

We can probably draw on some of the work that ChromiumOS has done
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54266
Location: 56N 3W

PostPosted: Mon Aug 21, 2023 10:55 am    Post subject: Reply with quote

minkanjin,

Write a set called debian and put it into /etc/portage/sets
Make a debian profile

Then
Code:
emerge @debian


That's a little tongue in cheek but the theory is sound :)
You can even save binary packages.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Fri Sep 01, 2023 7:52 pm    Post subject: Reply with quote

Yeah. On the surface it seems like it should really be that simple. Just build the package and put it in an archive.
I expect there is some sort of catch, because it's never that simple. But this is the idea I have
Back to top
View user's profile Send private message
pietinger
Moderator
Moderator


Joined: 17 Oct 2006
Posts: 4167
Location: Bavaria

PostPosted: Fri Sep 01, 2023 8:51 pm    Post subject: Reply with quote

A first step could be to find out the configuration of the debian kernel and especially the distribution specific patches compared to a vanilla kernel from Linus. After that you could find out the changes of the default configurations (and of course the patches again) of all used programs. After that, this can be effortlessly rebuilt via newly created ebuilds and you have a Debian built.
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Sun Oct 08, 2023 8:43 am    Post subject: Reply with quote

Some distros split development packages from the normal packages, so we probably need a mechanism for that
Back to top
View user's profile Send private message
mrbassie
l33t
l33t


Joined: 31 May 2013
Posts: 773
Location: over here

PostPosted: Tue Oct 10, 2023 5:15 pm    Post subject: Reply with quote

minkanjin wrote:
Some distros split development packages from the normal packages, so we probably need a mechanism for that


The equivalent of some sort of hedge, accumulation of thorn, thicket, hardy grass? Or canal, trench, dry-stone-above-ground-non-trench?
_________________
Bus conductors learned to code.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21643

PostPosted: Tue Oct 10, 2023 5:36 pm    Post subject: Reply with quote

mrbassie wrote:
minkanjin wrote:
Some distros split development packages from the normal packages, so we probably need a mechanism for that


The equivalent of some sort of hedge, accumulation of thorn, thicket, hardy grass? Or canal, trench, dry-stone-above-ground-non-trench?
What are you trying to say here? minkanjin made a reasonable comment about requirements for this project. I cannot infer from your response how your post could be read as a solution or as a hint toward the solution.
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3140

PostPosted: Tue Oct 10, 2023 7:05 pm    Post subject: Reply with quote

Quote:
Currently most distros are redoing a lot of the work to build packages. I think we can deduplicate a lot of work by having a central repository of build scripts. It so happens that that is exactly what Gentoo is.
If we can get other distros to build their distros using Gentoo, we would get a lot of extra ebuild maintainers. We would get more bug reports. Everyone would benefit from everyone else’s work. And we might even be able to get the original package developers to make ebuilds.
It would be a big up front investment to make the necessary modifications to Gentoo, but the reward will be huge. I really think this is worth pursuing.

Alright, so before we get into technical details, I have an awful question:
Why would any other distribution want to use Gentoo as their development platform instead of their own platform?


> Currently most distros are redoing a lot of the work to build packages
It probably is true.

> I think we can deduplicate a lot of work by having a central repository of build scripts
This also is probably true.

> If we can get other distros to build their distros using Gentoo, we would get a lot of extra ebuild maintainers. We would get more bug reports.
This is definitely true. It would be amazing for Gentoo. However:
> Everyone would benefit from everyone else’s work.
How exactly does it benefit everyone else than Gentoo, and how would it benefit the pioneers?

There are at least 3 big problems:
1) critical mass / network effect - you don't benefit from using this solution, you benefit from everyone else already using it. There is nothing to benefit from unless a lot of _other_ people already contribute.
2) inertia - already existing distributions already work. Even if they could benefit from switching over, it's a lot of effort, a lot of confusion, learning new tools instead of developing projects and so on, and a lot of people reconsidering their options because you're messing up with their process.
3) additional complexity, forever - Instead of 1 converged system you now have 2 related systems, which means the complexity you're dealing with increased 3 times. Why would you do that to yourself?

You're making a sales pitch, so you really need to focus on reasons for your target to buy. Helping you out is not even an insufficient reason; it completely misses the mark.
Back to top
View user's profile Send private message
mrbassie
l33t
l33t


Joined: 31 May 2013
Posts: 773
Location: over here

PostPosted: Wed Oct 11, 2023 4:38 pm    Post subject: Reply with quote

Hu wrote:
mrbassie wrote:
minkanjin wrote:
Some distros split development packages from the normal packages, so we probably need a mechanism for that


The equivalent of some sort of hedge, accumulation of thorn, thicket, hardy grass? Or canal, trench, dry-stone-above-ground-non-trench?
What are you trying to say here? minkanjin made a reasonable comment about requirements for this project. I cannot infer from your response how your post could be read as a solution or as a hint toward the solution.


A barrier if you will
_________________
Bus conductors learned to code.
Back to top
View user's profile Send private message
fpemud
Guru
Guru


Joined: 15 Feb 2012
Posts: 349

PostPosted: Thu Oct 12, 2023 3:06 am    Post subject: Reply with quote

NeddySeagoon wrote:
minkanjin,

Write a set called debian and put it into /etc/portage/sets
Make a debian profile

Then
Code:
emerge @debian


That's a little tongue in cheek but the theory is sound :)
You can even save binary packages.


Additionally, we should consider implementing an "ungentoo" script to eliminate all Gentoo files.
Upon successful execution, the system will be transformed into a Debian operating system. :lol:
Will the Debian team accept this new procedure? :wink:
Back to top
View user's profile Send private message
flysideways
Guru
Guru


Joined: 29 Jan 2005
Posts: 437

PostPosted: Thu Oct 12, 2023 11:17 pm    Post subject: Reply with quote

I'd be happy if I could just bend Catalyst to my will.
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Fri Oct 13, 2023 2:03 pm    Post subject: Reply with quote

szatox, like I said: this will be a big upfront investment, and the benefits will probably only show in the long term.
Yes, you only benefit if someone else is using this system. The goal (long term) is to get many distros onboard.
Yes, there is going to be growth pains involved. Many will be hesitant to join just because of that. It is indeed a problem, and I'm hoping the long term benefits will make it worth it.
Nay sayers who don't get it is also going to be a problem.
I'm not so sure it will be more complex. Complexity doesn't always increase exponentially, sometimes it increases logarithmicly.

The problem I'm worried about is that the rolling release distros are going to end up doing most of the work. That will require some politics to fix.
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Fri Oct 13, 2023 2:08 pm    Post subject: Reply with quote

An alternative to ungentoo script is to build it into a separate root. But I think an ungentoo script will be simpler.
I guess a lot of packages will have distro specific modifications, so we might need build-for-specific-distro scripts. That might make things complex.
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Fri Oct 13, 2023 2:12 pm    Post subject: Reply with quote

I didn't know about Catalyst. Is that a tool that can maybe be extended for the job?
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3140

PostPosted: Fri Oct 13, 2023 4:54 pm    Post subject: Reply with quote

Ok, so why would any other distribution want to use Gentoo as their development platform instead of their own platform? Why would already established, independent distributions want to become Gentoo's derivatives?

I can tell you why they wouldn't want that:
Doing so diverts developers' effort from something they care about towards something they don't.
Yes, reducing the amount of redundant work could kinda grow the pie, but all contributors' slices would still get smaller.

BTW, I just remembered something that complicates matters even more:
Funtoo would be a better choice than Gentoo for this use case.


Catalyst is mostly used for building stage3 tarballs. It uses ebuilds from portage, not creates them. Maybe you could add features like "buildrpm", "builddeb", and "build-all-in-one-tgz" to emerge, to complement already existing "buildpkg".
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Sat Oct 14, 2023 11:54 am    Post subject: Reply with quote

Currently every distro is building every package from scratch every time. Effectively everyone is writing "ebuilds" from scratch for everything. Sharing those "ebuilds" so everyone wouldn't have to redo that work would reduce their workload. I don't really understand why you don't see a reduction in workload as a selling point.
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3140

PostPosted: Sat Oct 14, 2023 12:18 pm    Post subject: Reply with quote

Quote:
I don't really understand why you don't see a reduction in workload as a selling point.
Oh, I do see it as a selling point. I don't disagree with you on the matter of inefficiency. I do not see it as the _buying_ point though.
Let me flip the script on you:
Funtoo is objectively better suited to be a universal build platform for binary distributions than Gentoo. Why do you not want to use it instead?

Hint: the answer is already in my previous post.
Back to top
View user's profile Send private message
minkanjin
n00b
n00b


Joined: 29 Jan 2017
Posts: 42

PostPosted: Sat Oct 14, 2023 1:31 pm    Post subject: Reply with quote

If Funtoo is the better option, then let it be Funtoo.
I'm not very familiar with Funtoo, so I don't know what opinions to share concerning this idea in that context.
One possible problem is that Funtoo is less popular than Gentoo, so less workforce. Which means that making that "initial investment" will be a lot harder. So either we need to port the Funtoo features to Gentoo, or we need to transfer devs to Funtoo.

From what I see on wikipedia, Funtoo has kits, which sounds like the "SQL views" idea I gave earlier. So that might be something worth looking at.
Wikipedia also says no systemd support. Not sure if that statement is up to date, but that will be a deal breaker for most distros.
Back to top
View user's profile Send private message
pjp
Administrator
Administrator


Joined: 16 Apr 2002
Posts: 20067

PostPosted: Sun Oct 15, 2023 6:29 am    Post subject: Reply with quote

szatox wrote:
Quote:
I don't really understand why you don't see a reduction in workload as a selling point.
Oh, I do see it as a selling point. I don't disagree with you on the matter of inefficiency. I do not see it as the _buying_ point though.
Let me flip the script on you:
Funtoo is objectively better suited to be a universal build platform for binary distributions than Gentoo. Why do you not want to use it instead?

Hint: the answer is already in my previous post.
You've made the claim, but have not explained why others should believe it is objectively better.

Putting effort into making ebuilds frees developer time to focus on the distro parts. Additionally, emerge is not a good tool for easy installation of binary only packages, so distros would still need their own solution for that.

My only objection to Funtoo is that it seems even more of a niche than Gentoo, being a "hobby" project of a small team / limited resources. Relying on such a project in the manner you suggest seems unwise. Of course, if more people used it, then more resources might be available. But then that seems more like becoming Funtoo. Admittedly I have no idea why you think it is objectively better to use Funtoo to build a distro that isn't Funtoo.
_________________
Quis separabit? Quo animo?
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54266
Location: 56N 3W

PostPosted: Sun Oct 15, 2023 12:07 pm    Post subject: Reply with quote

minkanjin,

Catalyst is used to build all Gentoo binary release media.
Minimal ISOs, stage 3, LiveDVDs ...

-- edit --

It's been done once.
A long time ago, Google used Gentoo to build ChromeOS. They have sice moved away from using Gentoo.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
pingtoo
l33t
l33t


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

PostPosted: Sun Oct 15, 2023 2:51 pm    Post subject: Reply with quote

minkanjin,

I think all ideas are great, so your idea in principle are sound, may be you want to start do something to attract people outside of Gentoo community for discussion.

I think no one in Gentoo community will object have more contributors, but to start doing something from scratch require some effort and usually a little bit something tangible will help more people to follow.

On the other thread that bring out Puppy Linux which I think it match your idea in principle, it have multiple Linux distributions flavours. I recommend you have a look at its history page and think about how you want to structure your project and think about scope of your project (i.e. which distro flavour to begin and what other distros should be in project scope)
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3140

PostPosted: Mon Oct 16, 2023 5:06 pm    Post subject: Reply with quote

pjp wrote:
You've made the claim, but have not explained why others should believe it is objectively better.
Partially because it was a simple fairness test. I intended to make the OP uncomfortable enough to realize why redirecting attention from other distributions to Universal Build Platform Gentoo would not be seen as beneficial by anyone outside Gentoo. Too bad, it didn't work.

Quote:

My only objection to Funtoo is that it seems even more of a niche than Gentoo, being a "hobby" project of a small team / limited resources. Relying on such a project in the manner you suggest seems unwise. Of course, if more people used it, then more resources might be available. But then that seems more like becoming Funtoo. Admittedly I have no idea why you think it is objectively better to use Funtoo to build a distro that isn't Funtoo.

I don't think it's better to use Funtoo for building a distro that isn't Funtoo, just like I don't think it's better to use Gentoo to build a distro that is not Gentoo.
On top of that, an already independent distro has no business becoming dependent on anyone else. Giving up control to receive additional complexity is just a bad deal.

This said, Funtoo encourages collaboration more; attempts to have groups of people with common use cases maintain respective profiles instead of individual admins maintaining individual machines on ad-hoc basis. "Do not set custom use flags, report a profile bug instead".
Blurring the lines between users and developers provides more manpower to the common cause; it would be much easier to run Funtoo Debian than szatox Debian, pjp Debian and minkanjin Debian.
Not that any of those would ever happen anyway. Maybe - just maybe - BloatPack Debian could be feasible. But flatpack and snapstore already exist, what's the point of making Lindows crowd bigger after package managers have already been invented?
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
Goto page 1, 2  Next
Page 1 of 2

 
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