Screenshot of QEMU VM showing an ASCII Gentoo Logo + system info

I followed Mental Outlaw’s 2019 guide and followed the official handbook to get up-to-date instructions and tailored instructions for my system, the process took about 4 hours however I did go out for a nice walk while my kernel was compiling. Overall I enjoyed the process and learnt a lot about the Linux kernel while doing it.

I’m planning on installing it to my hardware soon, this was to get a feel for the process in a non-destructive way.

    • khannie@lemmy.world
      link
      fedilink
      English
      arrow-up
      13
      ·
      1 year ago

      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.

      • fraydabson@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        5
        ·
        1 year ago

        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.

      • fartsparkles@sh.itjust.works
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        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.

      • DryTomatoes4@lemm.ee
        link
        fedilink
        arrow-up
        3
        arrow-down
        1
        ·
        edit-2
        1 year ago

        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.

    • floppydisk@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      1 year ago

      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

      • H2207@lemmy.worldOP
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        It is good fun if you’re really into Linux, I practically jumped out my seat when I crossed my fingers, rebooted and GRUB came up with Gentoo listed.

    • auth@lemmy.ml
      link
      fedilink
      arrow-up
      1
      arrow-down
      16
      ·
      1 year ago

      Arch teaches you the most important stuff without wasting too much on time… Not a Gentoo fan

  • MystikIncarnate@lemmy.ca
    link
    fedilink
    English
    arrow-up
    8
    ·
    1 year ago

    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.

  • Carter@feddit.uk
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 year ago

    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.

      • 1984@lemmy.today
        link
        fedilink
        arrow-up
        4
        arrow-down
        1
        ·
        1 year ago

        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.

        • null@slrpnk.net
          link
          fedilink
          arrow-up
          4
          ·
          edit-2
          1 year ago

          Nix has entered the chat.

          And one day I’ll figure out how to use it.

        • phoenix591@lemmy.phoenix591.com
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          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.

            • phoenix591@lemmy.phoenix591.com
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              Heres an example, ebuilds are named package-version.ebuild and that version in the filename is used to define variables (such as $P here which is the name-version) to make new versions as simple as copying the ebuild with the new version in the filename.

              use_enable is used to generate the --enable-(option) or --disable-(option) as set by the user.

              For more info, see the devmanual. They’re nice relatively straightforward bash like PKGBUILDs, but with the repetitious stuff taken out.

              # Copyright 1999-2022 Gentoo Authors
              # Distributed under the terms of the GNU General Public License v2
              
              EAPI=8
              
              DESCRIPTION="GNU charset conversion library for libc which doesn't implement it"
              HOMEPAGE="https://www.gnu.org/software/libiconv/"
              SRC_URI="ftp://ftp.gnu.org/pub/gnu/libiconv/${P}.tar.gz"
              
              LICENSE="LGPL-2+ GPL-3+"
              SLOT="0"
              KEYWORDS="~amd64 ~ppc ~sparc ~x86"
              IUSE="nls"
              
              RDEPEND="!sys-libs/glibc"
              DEPEND="${RDEPEND}"
              
              src_configure() {
              	econf $(use_enable nls)
              }
              
        • jdaxe@infosec.pub
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          Gentoo has overlays which are similar to AUR, I haven’t felt like I’m missing packages compared to when I ran arch

          • 1984@lemmy.today
            link
            fedilink
            arrow-up
            1
            arrow-down
            1
            ·
            1 year ago

            Yeah I did when I was new to Linux, several times. It was an awesome learning experience.

    • Zucca@sopuli.xyz
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      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.

    • Kangie@lemmy.srcfiles.zip
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      Not much. Updates take a bit longer because you’re compiling, although Gentoo now has an official binary package host if you want to skip that step - you’ll only compile things that you’ve changed compile-time features to the extent that they don’t match the binhost now!

      You don’t need to constantly tinker to keep the system running, at least, news is good for major changes, and we have a good ‘config file changed’ system.

      • Zucca@sopuli.xyz
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Gentoo now has an official binary package host

        With some limitations:

        The binhost packages have the USE flags set as in an unmodified 17.1/desktop/plasma/systemd profile (with the exception of USE=bindist). The packages can be used on all amd64 profiles that differ from desktop/plasma/systemd only by USE flag settings. This includes 17.1, 17.1/desktop/*, 17.1/no-multilib, 17.1/systemd, but not anything containing selinux, hardened, developer, musl, or a different profile version such as 17.0.

    • wim@lemmy.sdf.org
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      1 year ago

      Same. Gentoo taught me so much. Wouldn’t run it today, though. Ain’t got time for that.

  • degrix@lemmy.hqueue.dev
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    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.

  • Zucca@sopuli.xyz
    link
    fedilink
    arrow-up
    5
    ·
    1 year ago

    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.

    • Llewellyn@lemm.ee
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      Because I can customize Gentoo to whatever I like

      Can you customise it to support AAA videogames?

      • Zucca@sopuli.xyz
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        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.

  • tony@lemmy.hoyle.me.uk
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    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.

  • spagnod@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    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…

    • Zucca@sopuli.xyz
      link
      fedilink
      arrow-up
      0
      ·
      1 year ago

      I created a bash script which creates a custom initramfs for me every time kernel is updated. 😜 I know, I reinvented the wheel… kinda. My script actually only takes a list of files, directories, modules, firmware files and packs them into a cpio archive. The actual init scripts inside initramfs (for example) are not provided, but left for the user to write or copy from somewhere.

    • Laser@feddit.de
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      Actual USE flags I guess? If you ultimately want these is a different question though

      • Zucca@sopuli.xyz
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        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)

        • Laser@feddit.de
          link
          fedilink
          arrow-up
          3
          ·
          1 year ago

          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.

      • beteljuice@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 year ago

        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

        • Laser@feddit.de
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          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.

          • beteljuice@lemmy.ml
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            Yeah that thread i linked does talk about combinatorial explosion that would result in either a unmaintainable cache size or basically no caching at all of binaries. Your point about premature optimization is good. It makes me think that the seeming ignorance of USE flags by Nix was intentional.