Everyone should do this at least once
Linux
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
Agreed. It's such a great learning process. I ultimately gave up on Gentoo but learned a lot by using it for about 2 years way back in around 2005.
Linux From Scratch brings a huge leap in understanding too.
Back in like 2011 I was living out of state for college. Had decided to drop out at the time so had limitless free time for a bit. I definitely used that time to compile my own kernel and setup gentoo lol. I haven’t played with gentoo since but it was fun and helped my appreciation for Linux.
I found Gentoo more helpful than LFS because with LFS you compile about 80 packages from source one at a time but you don't learn too much about the packages.
LFS gave me much more awareness of what packages actually come with a Linux install but Gentoo taught me more about configuring and booting a Linux system.
Although I'd definitely recommend both to anyone wanting to learn. I'd do Gentoo first then LFS.
Edit: LFS is also a masterclass in cross compiling so if that's something you're curious about LFS is the way to go.
Linux from Scratch is also an immensely powerful tool for deployment of secure software. Rebuilding the entire infrastructure between releases ensures threat actors can’t stay resident for long if the compromise production systems.
I had considered trying it at one point. Unfortunately one specific user on discord kept telling me to install it to the point of dming me "gentoo" almost every day, at which point I blocked them and vowed never to install gentoo
Fuck that guy. Don't let him influence you. Install gentoo or don't, for your own reasons.
Speaking from personal experience, see you on your old distro in a couple of days!
Congrats! I bet you learned a lot along the way…
I installed Gentoo once. ever. I use Ubuntu now.
This was in the mid 2000's and I went so far as to compile the kernel myself and build out all the packages. I was so exhausted at the end of it all, that I'm pretty sure I put away that system and never looked back. It's quite the achievement, but I don't wish to repeat that experience.
Congrats!
Once you get it set just so, remember it’s ok to … leave it!
Ha
Hahahaha
Hahahhahahhahahahhaha!
Mwha Ha Haaaa!
This is the way
System boots, runs flawlessly.
Hmm
# emerge -deep world
How much maintenance does Gentoo need once installed? I don't mind a complicated install but it's the constant tinkering I can't deal with.
If you've done arch, it's like long arch
Gentoo probably doesn't have all packages. One of the reasons I love Arch is because it almost always has any package in the AUR. It's a lot more work to try and get something installed on Ubuntu related distros. They try to keep up by using snaps and stuff but it's still no comparison. Arch has everything.
Still it's gets a bit boring now since I know it so well, so want to try Gentoo at some point also.
Nix has entered the chat.
And one day I'll figure out how to use it.
one of the reasons I love gentoo is how easy it is to package things for it.
You know how for pkgbuilds you have to explictly write out the whole configure make make install stuff that pretty much every package uses some variation on? Gentoo abstracts that out to libraries (eclasses) that handle that sort of thing for each build system so you can focus down on anything unique to the package, like build system options.
Gentoo has overlays which are similar to AUR, I haven't felt like I'm missing packages compared to when I ran arch
It's pretty maintenance free.
The following will make the experience a bit more seamless:
- use stable packages
- use sys-kernel/gentoo-kernel or syskernel/gentoo-kernel-bin
- use sys-boot/grub or better yet sys-boot/refind which auto-recognizes the latest kernel in your boot directory
I don’t mind a complicated install
After you have "installed" Gentoo there will be quite lot of installing of different programs to build your own customized distro. However if you yse systemd you'd get quite a lot in one strike, since systemd contains a whole lot of the central core components, like system logger (journald). The other route is to use OpenRC and with it sysvinit or openrc-init and choose the rest of the components.
Asking your question (the one I'm replying to) at the Gentoo forums may give you better answers and tips how to build maintenance free setup.
I remember how rewarding and satisfying it was when I finally installed Gentoo for the first time
Same. Gentoo taught me so much. Wouldn't run it today, though. Ain't got time for that.
I remember printing out the Gentoo installation manual in the compsci lab way back in 2004. It was my first Linux distro and have fond memories of tinkering around on it. I remember leaving it a few years later for a cool new distro that was on the rise called Ubuntu. I still think portage is one of the better approaches to package management though.
My first Gentoo install took like a week to get X running. It was my first foray into Linux (Ok, I briefly tried mkLinux).
I learnt the hard way, but I learnt. And I'm still on that same path: Gentoo. Why I don't bother switching? Because I can customize Gentoo to whatever I like, so instead of doing distro hop I just reconfigure things.
Because I can customize Gentoo to whatever I like
Can you customise it to support AAA videogames?
Yeah. Install steam.
Why not?
I don't have much experience on those games. I've bought around ten games from gog. And I specifically selected those which provided Linux native binaries. But there are AAA gamers among Gentoo users.
I did it from stage 1 once.. wasn't a fast computer either. You have to compile the tools to compile the tools. Then compile the base packages, then everything else..
Alas you can't do that any more. Pity as it was fun.
Mazel tov!
I have installed it maybe 5 times now manually. These days I do a script install then mod whatever I need to afterwards. This time I'm experimenting with binaries by converting the whole system to a bin system. It's a good bit quicker and a little easier to manage. The few things I need to configure get done so through source, but most things are fine as a bin package.
I did it once on the first intel MacBook. It compiled for like 14 hours.
Hehe... I installed Gentoo last year and I was thrown in the deepest of deep ends after having to set up a custom initramfs for my LUKS setup... took about a week to get it running...
What is the value proposition of Gentoo over, say, something like NixOS?
Actual USE flags I guess? If you ultimately want these is a different question though
USE flags and profiles.
I have one old laptop where I decided to test some more obscure Gentoo setups. I chose musl as libc and took llvm toolchain to compile stuff. (All experimental)
It's honestly cool stuff, but I don't think a lot of people actually actively want that.
I tried something similar with Exherbo once but couldn't get it to boot after installation, I don't remember the specifics but I tried using libressl instead of openssl.
Interesting, looked at the Gentoo docs to understand USE flags. Nix has similar capabilities, where some packages expose configuration options that apply to the build, but it's not a overtly named feature consistently applies across all packages. It seems that something like USE flags could be implemented rather easily by Nix but was either deemed not necessary or was an oversight. You can still change the build for any package but it might involve introspecting the package definition to figure out what to change so not meant as a first class mechanism like USE flags.
Edit: found this: https://github.com/NixOS/nixpkgs/issues/12877
USE flags have some inherent "issues" or rather downsides that make them non-options for some distributions.
First, they create a much larger number of package variants, simplified 2^(number of USE flags applicable to package). This is fine if you don't want to supply binaries to your users. Second, the gain they bring to the average workstation is rather insignificant today. Users usually want all functionality available and not save 30 kb of RAM and then suddenly have to rebuild world because they find out they're missing a USE flag that they suddenly need. Also, providing any kind of support for a system where the user doesn't run the binaries you provided and maybe even changed dependencies (e.g. libressl instead of openssl) is probably impossible.
It's very cool stuff if you want to build a system very specific to your needs and hardware, and I do believe that NixOS could have profited in some parts from it, but I don't have specific ideas.