Honest question.,,,What is the actual point of Gentoo?

So opensuse has been a little weird over the holiday season like it always seems to be, so I decided to have some fun and install gentoo.

Everything actually went fine, and I don't have any complaints with gentoo.

As far as I know, the two main attractions to gentoo are building your own kernel and installing everything from source.

However you are free to compile your own kernel for any other distro out there, and with enough setup, you can build everything from source on any other distro.

I really do not see the point of putting yourself through the pain of installing and micromanaging the system when you could achieve the same results on pretty much any other distro.

I feel like I am either being stupid and I am missing something about gentoo. Or I am making linux harder than it actually is and you can really do what ever you want with any distro. Or both.

What are your thoughts.

1 Like

You are over simplifying it, not so much as to make it harder.

You can also use binary packages in gentoo, but most don't.

If you need a system that is tuned and tweaked in a VERY particular fashion, Gentoo is likely the easiest to do that with.

While compiling from source is a pain in the ass, and time consuming, you have the ability to create a specific configuration with programs that have only what is required.

4 Likes

This isn't actually the main reasons.

Gentoo is one of if not the only distro where the distro developers create it for the users, everything that's put into it is to give the user the freedom and choice to build their system.

I often use it as a comparison to Arch Linux as they are polar opposites in this regard. Arch is a distro made by the Arch developers for Arch developers. Gentoo is a distro made by Gentoo developers for the Gentoo community.

You see this in there work to go out of their way to provide users with options.

One of the major draws to Gentoo is the ability to build very specific to very generic systems, with it comes a whole bunch of tools allowing you to configure and manage your system with relative ease, it has many tools that you just don't really get in other distros that allow for this.

4 Likes

One word: It's fun to tinker.

im guessing you can have the smallest footprint possible with gentoo for your specific application

Its made to allow the user to make what they want from it, it doesn't prevent you from doing things and it wont get in your way either. With this and the other tools at your disposal whether you're a user or a developer creating a project and using Gentoo as a base you have a lot of power to create, customize, and make things exactly the way you want.

With the customizable nature of Gentoo there are some important things it lets you do and the environment creates the ability to do, you can change your c library (check musl, uclibc), use a hardened tool chain, various device managers (udev with systemd, udev with openrc, eudev), various init systems, absolutely everything is up to you. Now that's pretty powerful, it goes back to the thing a lot of linux users value so much - choice.

A lot of other distros are fairly customizable but its not to the same extent, good luck changing from systemd as an example on other distros if you wanted.


Installation can be a bit of a pain, but that's part of the learning and creation process. The end product is yours, and its likely how you want it be quite precisely - at least for me there's a lot of value in that.

After a system is installed, there's less 'micromanaging' then you might think going on. After you set your global USE flags in your make.conf (if desired or needed) that's about it. If you want to keep the default USE flags on packages you can go ahead, but if you want the tune-ability you can set which ones to add/remove within package.use. Then during updates if you don't care about your USE flags you can merely accept the defaults if you're not into tinkering with that, less trouble and managing for you.

But that comes back to the sort of 'point' of Gentoo, if you don't want those things then maybe Gentoo isn't for you if its a lot of work

1 Like

@DeusQain

I think you ultimately answer my question.

I guess where I am coming from is that you can really use any distro to make a completely custom experience if you were so inclined. Its a pain in the butt, but so is gentoo.

Portage is the only thing I can see that makes gentoo gentoo. Its a tool that makes things easier, but its not like its impossible to make some scripts that would do the same job with any other distro. And further more when you edit your portage tree you are already half way to editing your own script anyways. The only thing it really does that a script would not is it ads a dependency solver which is ultimately what I like about portage over the hard nose DIY solution.

I was just hoping there was something more to it. I mean opensuse is special because it has yast. Ubuntu is special because it has a software center. Every main distro has something really special that was intentionally developed for the user. I was really looking to see if gentoo has something really special or if it was just the package manager that was special.

In both your examples you picked their package manager that makes them special.

@100557662 made a good point about customisablility. To keep it simple, There is no distro that has the customisability of Gentoo.

But the package manager is a big part of that, but not just because of the package manager but the tools that surround it. The customisablity is usable because there are a number of support tools available.

Its not impossible to do the same on other distros with your own scripts, but Gentoo makes it easy. And when you get down to things like running different init systems or running special configurations, on other distros you might have to roll your own packages, change system tools or make other major changes which you end up having to support your self. Because Gentoo it source based you can make change to the system easily without needing to maintain large amounts of your own packages.

Zypper is the package manager for opensuse and apt is the package manager for ubuntu.

Yast is a graphical front end for a myriad of different things which includes a GUI for zypper.

Synaptic is the GUI for apt. The ubuntu software center was specially designed to take things one step further which gave ubuntu a unique user experience.

They are supposed to both be example of how a distro tried to go above and beyond to make their distro special. But you are absolutely right in that they both tie into the package manager. But that wasn't how I was looking at them.


And that bit about customizeability is not true. Any and every distro has the exact same capacity and ability.

The difference is that with other distros you have to figure out how to dig deep enough into the system in order to fully control it and gentoo just kind of throws you into it.

Ah, yeah you are correct in that. For comparison. Yast is similar to portage + Gentoo tools/system tools.

OK now we are getting somewhere.

Where the hell are the tools. All I can do is manage packages and edit my portage tree.

To name a couple, portage, gentoolkit, eselect

https://wiki.gentoo.org/wiki/Gentoolkit
https://wiki.gentoo.org/wiki/Project:Eselect/User_guide

Mmmmmmmmkay.

So the reason I do not know about this stuff is because its not a part of the base install.

That is.........interesting. I wonder what else is not part of the base install.

A bunch of stuff probably. The base install is pretty much just enough to get you a fully running system that you can build off of. They could add in additional tools but not everyone wants or needs them for their needs. that said gentoolkit is really the only one not included by default.

memes and /tech/ cred

not everyone is using Linux as a desktop environment.

businesses and startups using off the shelf small form factor electronics can make all sorts of smart devices but there going to have to be very tailored and specific, aswell as hardened.

I would think of the base install like the base install on Arch.

Arch base in itself is almost nothing. You don't even have a display server!

The point of Gentoo is to create a distro that is focused on your own hardware allowing for faster access/startup times and also teaching the user bits and bobs about Linux. Especially compiling, you can get a job where all you do is compile code you know.

It's funny you say this.... Arch was designed with inspiration from Gentoo.

2 Likes

This question could start all kinds of flamewars.

The key advantage is Portage.

What system are you running ? amd64 or ~amd64 ?

if you running a stable install and just use web and light apps, well maybe there isn't a strong argument for any sourced based OS.

  • But if you have running live or GIT version of packages with multiple dependencies. I remember that when I have AMD card to get 3d acc working in kde at the time. I had catalst drivers,mesa,dri2, etc all in git. The main reason I moved from Arch linux to gentoo was to that with time I upgraded them I didn't have to recompile the manually. Portage will just do the all.

  • Also portage support patches, for any package that you require a patch for place it the appropriate directory and while you need to upgrade that package with will detect it and apply that patch automatically.

  • Next on the list - Use flags. I run KDE and I don't like gtk with a few global flag I only the the minmum of package that require it installed and any package that supports both will on complie the KDE stuff, thus making the system leaner.
    Also if you wish to my fundamental change to the system. I remember way HAL was deprecated. You can one use flag and #emerge -auDNv @system @world BOOOM ! you fresh compliant system.

-Slots Portage allow for multiple versions of software by installed and maintain on the same system.

  • Portage supports custom sets, so lets say you can't be arse upgrading you system alot but you work in web development as an example. You set a bunch of packages and ask portage to only upgrades those

  • Portage to excellent reverse dependency support, so if you uninstall a program that effect or might crash you system. revdep-rebuild with check all you libs and make all require linkages are ok and recompile anything that needs fixing.

  • Portage supports binary packages

Portage is just so sophisticated, granted you might not use if all. But maybe there is a argument to say you should look at using it more to get the most out of it.

Anywayz I hope that helped