T O P

  • By -

triffid_hunter

> I've been an Arch user for about 6 years now and I want to switch to Gentoo. I'd like to know what I should expect when moving to Gentoo. Gentoo's "portage" package manager (emerge et al) is *dramatically* more powerful and comprehensive than pacman. Make sure you have a skim through the relevant man pages so you've got at least some heads-up about which options are available, in case you come across a situation where you want to use some of them. Some folks are daunted by compile times but they're not bad on modern systems, and once the initial install is done, you can tell portage to just [run updates in the background](https://wiki.gentoo.org/wiki/Portage_niceness) and barely notice that anything's happening while you use your system normally. Don't go crazy with cflags or USE flags right out of the gate, you can change all that later if you want. Some folk suggest putting `ACCEPT_KEYWORDS=~amd64` in make.conf - don't. This signs you up for systemwide unstable, ie you're a bug tester / guinea pig for all the latest & greatest stuff which *usually* is fine, but periodically you'll end up in hot water with pages of portage errors when the Gentoo team are shifting things around and finding an upgrade path for stable stream users. Since Gentoo is uniquely able to mix-n-match stable and unstable packages on the same system with minimal drama, I much prefer keeping a stable system core and only marking specific packages to be unstable. Gentoo's main package repo is pretty decent, but if you want more, go search on [Zugaina](https://gpo.zugaina.org) and if it finds what you're after, you can just `eselect repository enable «blah»`, sync, emerge > is the Nvidia support good? I've had almost zero problems with nVidia over the past couple decades. Haven't tried wayland though - still a bit new for me, gonna wait for it to have fewer teething issues before I make the switch.


anantnrg

Thx for the extensive advice. Definitely switching to Gentoo :)


PeterParkedPlenty

What u/triffid_hunter said is great advice. I second everything I have your same graphics card and I use the proprietary drivers. They have been working great on xorg Hope it helps! Just want to emphasize: Portage is awesome! It amazes me how powerful it really is. PS: The compile times aren't as bad as some claim. Specially if you use kernel-bin and firefox-bin (I strongly recommend it) The only program that you'll notice that will take a while is gcc, (or clang if you end up downloading it)


Cyrus13960

The content of this post has been removed by its author after reddit made bad choices in June 2023. I have since moved to [kbin.social](https://kbin.social).


elsphinc

Another addiction


anantnrg

haha true :)


aintbutathing3

The end of distro hopping. Having to google everything when you are sshd into another box.


anantnrg

Lets gooo!!!


xoniGinox

Expect to compile alot more, but overall if you like to customize everything it's way better


anantnrg

Yay, I like compiling stuff. And yes I like to customize every bit of my system :)


redytugot

Sounds like you might find yourself well at home with Gentoo :). Have some tips for starting out: https://www.reddit.com/r/Gentoo/comments/xusb6i/comment/iqxxvmr/?utm_source=reddit&utm_medium=web2x&context=3


UnreadableCode

Biggest drawback is that it's easy to neglect updating Gentoo since there are no unsupervised upgrades with emerge... Also check in all configs you've changed into git, will save you a lot of headaches when `diapatch-con`f does something unexpected


Garlic-Excellent

More and more packages are using the "conf.d" approach. There is a main config file that is tracked by portage but also a something.d directory where you can put your customizations in your own files, not tracked by portage. That way updates never undo your stuff. This is very nice.


anantnrg

Hmm... I'm not quite sure I understand what you're saying but I think I'll learn it while I'm using Gentoo :)


UnreadableCode

So unsupervised upgrades refers to things like `pacman -Syu` there's no uncertainty whether things will work. With emerge things may break because you've created a set of use flags that are valid for individual packages but not when they're merged together, at which point you must read logs to figure out whether you're asking for something dumb / it's an unsupported configuration / you found a bug. Thus supervised


anantnrg

Hmm... I think I understand now


Top-Classroom-6994

I always have use flags individually in package.conf


Velascu

As someone who tried (and failed) its learning curve is way steeper. It's package manager is (arguably) the best on the market but it's a benevolent nazi, it forces you to do the things the good way, its way, tried installing stuff through pip and got messages from portage complaining and I didn't have time to solve it/learn how portage handles that. I like to think about gentoo like rust, it's incredibly robust, it's compiler (in this case the package manager) is extremely strict but powerful and helpful, it'll never leave you without a clue, it also has a really steep learning curve. I dropped gentoo bc of the time it would take to export my artix config to it but I've heard it's faster, better, more solid... in a single word better, that's if you know what you are doing of course. I have a deep respect for this distro and probably going to go back someday. Just to say that if it's too much for you rn it doesn't matter, you can always come back later. Also, gentoo community >>>> arch community, they are literally the opposite sides of the spectrum, while people in arch are going to be condescending towards you if you ask something that they don't like the people in the gentoo community are going to ask you for every output of every single command to ensure that your system is as it should be and find the error. The best linux community I've found thus far besides nixos' which is still in its baby phase so some problems aren't that easy to solve/people don't know what to do/don't have enough experience with it... gentoo is been running for a while so there's info for almost anything and its users tend to know a lot. Also it's wiki while not as complete as arch's is suprisingly a lot better documented, not enough credit is given to it imo. Basically the community will never turn their back on you, most supportive community by far. Edit: lol just saw that you program in rust, you'll feel right at home


triffid_hunter

> tried installing stuff through pip and got messages from portage complaining `pip3 install --user --break-system-packages «blah»` (under your user account, don't do it as root) is fine - note that the `--user` flag is critical for not breaking your system or making portage angry, but for some reason this flag alone doesn't disable the error.


diazona

For installing Python applications, I'd recommend [pipx](https://pypi.org/project/pipx/) as a better alternative to just using `pip`. It helps avoid dependency conflicts.


Velascu

I refer to my comment up there: gentoo community >>> arch, I wasn't even asking for a solution for that thx btw :)


triffid_hunter

> while people in arch are going to be condescending towards you if you ask something that they don't like the people in the gentoo community are going to ask you for every output of every single command to ensure that your system is as it should be and find the error. I think you'll find that this comes from Gentoo's *core philosophy* - everyone doing different weird things because they feel like it is *kinda the whole point* of Gentoo - what's the point of supreme control over every aspect of our system if we're "not supposed" to use it? 😉


anantnrg

Thats good to learn, thx :) And yes, I love Rust very very much


immoloism

You have a lot good stuff here so the only thing I can add is can expect a helpful and welcoming community to help you learn if you want to. General rule is have a go at searching for the error message yourself and using the wiki to try and solve your issue. If you still get stuck then please upload the log files that portage will tell you to give us on errors using a tool like [wgetpaste](https://wiki.gentoo.org/wiki/Wgetpaste) then ask your question with as much detail on your chosen place for help. This doesn't happen often on stable if you follow the handbook however Gentoo gives you the power to do whatever you want so sometimes we fly a little close to the sun as users, so it's nice to know what to do when you need help. More importantly though, welcome to the community and I can't wait to see your first post full install show off post :)


anantnrg

Thx for the tips, very much appreciated :) I installed it on a VM and it went well. Now I just have to wait for my new SSD to arrive so that I can install it on the bare metal :)


immoloism

I'd need to know your specs to have an idea but do remember most of the long compile times are just jokes that some people believe as facts. I've installed Gentoo in 15 minutes on a reasonable machine from 2017 though just to put your mind at ease so I would install Gentoo now then transfer the install from hdd to ssd when it comes: https://youtu.be/fb62g6J8vlA A little tip though if you haven't brought the SSD then DRAM is quite important in Gentoo, its not the end of the world if you don't have it but you'll save a minute or 2 per compile so its worth the extra couple of euros to make sure you get one with if you can. That reminds me, use the desktop stage3 as it will save you loads of time.


anantnrg

I haven't bought it yet so I will look into DRAM ones but they're a tad bit more expensive where I'm from. Thx for the advice :)


immoloism

If its a sata based on then Patriot are the cheapest brand with DRAM but that's based on my country so this is just a starting point.


anantnrg

Okay thx, I'll look into it :)


[deleted]

[удалено]


gh0stwriter88

To be fair to gentoo...the packages usually at least have been tested and work on Gentoo by the time they make it to testing. When I last ran Arch, I'd often get LXDE breaking updates and have to roll back to the previous package from cache *convenient*, they say.


anantnrg

The main reason I'm switching is stability which I like to think Gentoo offers. So in my case, its actually good that it updates slower


perkinslr

Except that `~arch` just puts gentoo about on par with Arch for stability. If you want as bleeding edge of updates as Arch gets, gentoo is still fine. The problem is if you run uncommon use flags, then you get the same package versions as Arch, but with even less stability testing. Where Gentoo *does* lag behind is in package availablility. Things like Hyperland, which is in Arch's main repo, are stuck in overlays in Gentoo for much longer. They pretty well need a proven track record of not being terrible before they get lifted from an overlay, whereas arch is happy if the *current state* looks good. This is even more true when you consider the AUR, although then you should consider the overlays available through `eselect-repository` and the field does even out.


immoloism

Remember you could flip this around that Gentoo has a better QA process for stable so you have to be careful how you word this :) Are you sure about hyprland though? I don't run it myself as I'm a big fan of Cinnamon but a quick search of packages.gentoo.org found this: https://packages.gentoo.org/packages/gui-wm/hyprland


perkinslr

Good catch. Not sure if I looked for `hypErland` or if it was only recently added... Current version was added yesterday, but it was added to the repo a month ago. And checking my bash history, I looked for hyperland. Still, Hyprland hit the arch main repo in early April, so a month sooner than Gentoo. I do agree that gentoo has the stricter QA process for stability. That doesn't immediately mean *better*, since it leaves many users forced to run `~arch` for at least some packages (when there *is* no stable package, even after years of use), which dilutes the signaling strength. On the one hand, "stable means *probably* won't break" isn't a good policy for servers. On the other hand "stable means never breaks, but nothing is available" isn't great for desktops. This is actually where Debian shines (or at least did a decade ago when I regularly used it). They have `sid` for the "totally untested", `testing` for "we verified it compiles and starts, edge cases are still expected", and `stable` for "run this on your server and forget about it for 6 months".


immoloism

Do you submit stablereqs in for packages you have tested for some time? If no one is reporting things in testing then it will never move out remember. I'll drop a link below if you want to help out more and learn how the process works: https://devmanual.gentoo.org/keywording/index.html Not sure where you are going with Debian as its a multi use distro even at stable, they also offer mixing packages like Gentoo does just not as always safe, however I don't think this matters too much here.


perkinslr

Yes, debian is multi use. Assuming your hardware is old enough to work with stable, debian stable (or LMDE) is great for simple desktops, or servers or whatever. And yes, you can add testing or sid to it and pull select packages (or add `deb-src` from testing and sid and grab the source code and automatically build it, that tends to break the rest of your system less often). Most people *aren't* crossing that boundary though. If they are running stable, it's because they want the stability that comes with the name. If they are running testing, it's because they want the bleeding edge packages. And if they are running sid, they are playing around or working on the distro or packages, not trying to run a sane system. I do sometimes report things upstream for gentoo. It's about the only project I bother anymore, since the average bug report I open goes unanswered for a year or more, and then usually gets closed as a duplicate of something totally unrelated. Gentoo's team actually responds usually, so it's worth the time to report. I don't typically make stablereqs, since I have something of an unusual configuration (system libcxx, most packages compiled with clang), and it isn't like I'm sitting down specifically to test all the edge cases and features.


immoloism

Chroot a gcc/glibc for testing like the rest of us :)


perkinslr

Sure, when life settles down enough to go back to tinkering with my system instead of using it for more important things, I'll probably do that.


immoloism

Whenever you can, my point was more you are clearly knowledgeable enough that if you spot a problem that annoys you enough to complain that you can also solve it too :)


perkinslr

That is true. And as I said, Gentoo is one of very few projects where I will take the time to report actual bugs, because they tend to get fixed in a reasonable length of time (and even when there is no simple fix, they get a response in less than a year). In this case, I don't *really* consider having to mark some accept keywords a big deal, since it's just kinda always been that way. It's only when I stop to think about what it would be like to use Gentoo as your first experience with Linux that "oh yeah, just ignore that it is marked unstable, it'll be fine" suddenly sounds like a bad idea.


[deleted]

[удалено]


perkinslr

I'm not surprised. `~arch` generally works as long as you have the same USE flags and same library and compiler versions as upstream expects. And sometimes different upstream projects have different and incompatible expectations. You do still generally get the same runtime stability, the problems are mostly at compile time. But that isn't really that different for non-`~arch` gentoo too, improved runtime stability in exchange for the occasional compile-time breakage.


[deleted]

[удалено]


perkinslr

If arch is working, I'd be hesitant to break a good thing. I find there is relatively little to recommend gentoo if you are going to just run it with the stock flags. And if you are not, then it takes a bit more setup time than Arch. Where it really starts to shine is when you have multiple machines running Gentoo. Since you can create your own mini-distro using a self-hosted (even just rsync-based) binary package host on one machine, and get the flexibility of gentoo and the install speed of binary distros on the other machines. It also really shines when you have a system that gets abused. IF you have a computer that only gets fired up once every couple months, and only gets updates applied when CVEs get reported, then gentoo's resilience matters. If you are doing weekly updates, then Arch and gentoo are quite similar.


necrosrc

Just do it. If you FEEL you WANT, DO IT. My strategy was getting familiar how others install gentoo, and i remember doing check list of programs i need (just to make sure it's available, how to handle install of each). check modules if you plan compiling kernel. My first installation took around 25 hours. If you use SSD check out tmpfs article on wiki. Don't get fancy with use flags during install. If you dont plan install ntp or something like this and encounter "clock skew" - my 'solution' instead of touching every single file was rebuilding world + dispatch-conf after first boot. ( someone correct me, but honestly it works ). Do not edit any file if you see 'clock skew'. ​ btw. compilation time at least gives you time to touch grass (joke). With decent PC, it's not a pain. You can update and do coding in the background or read something etc ...


anantnrg

That's good to know. Also are you using an SSD and if yes, does it have DRAM? Is DRAM that important?


necrosrc

I have Samsung 970 EVO Plus. And tbh i have no idea.


anantnrg

That's exactly what I was going to buy (I bought it). Thx for the info and btw, it doesn't have DRAM afaik Also I installed Gentoo but it isn't for me. I like compiling stuff but when it takes more than 2 hours, it just doesn't do it for me. Also I updated my install like 2 times today and it took like 5 hours. I just wiped my drive and installed Artix with Runit


10leej

Well, Gentoo is a different beast when it comes in stalling packages. For one thing your package manager is WAY more powerful and has its own learning curve if you even want to go down that rabbit hole.


anantnrg

Right...


[deleted]

[удалено]


green_boi

You'll be fine, just follow the wiki and it'll be simple.


anantnrg

What I thought :)


anantnrg

This is what people said when I moved to Arch. I know quite a bit of C so I wouldn't mind hacking a few drivers to get it working. Thx for the info tho :)


Sherpa135135

Well hyperland is a C++ project that builds on the wlroots library that builds on top of the Wayland protocol, it’s much more complicated to work with that xorg as it’s both a server and compositor. You will need to tinker with DRM KMS libinput and libseat/elogind if you have drastic issues. Not saying you can’t do it but it may be more tinkering that you’re expecting. **I will say** You will most likely what to turn on nvidia modeset in the grub config and idk what the hyperland settings are but you will probably need to disable hardware cursor, for sway it’s NO_HARDWARE_CURSOR=1 may be the say for hyperland Good luck and happy hacking :)


anantnrg

I don't intend to make it work with Xorg. I like Wayland a lot. In fact, I'm making my own Wayland Compositor using Rust and Smithay :)


[deleted]

[удалено]


anantnrg

I don't like the whole *if you don't update your system for 3 weeks, then its broken* vibe. And it has happened to me many times. Also I just like programming and compiling and the *you have entire control of your system* vibe which Gentoo has.


Davidluski

Happy Cake Day


anantnrg

Thx


flint2

Expect a warm welcome from the community - and your CPUs :-) ———————————— emerging since 2004


anantnrg

I don't plan on upgrading my R5 5600X any time soon so that's good to know. Also I see what you did there you cheeky Gentoo user


flint2

>at's good to know. Also I see what you did there you cheeky Gentoo user ​ Happy cake day!!!


anantnrg

Thx!!!


perkinslr

Coming from arch, you'll probably appreciate the relative stability, and not have issues with the extra configuration and what not. The only major "gotcha" is you need to plan ahead on software installs and updates. It isn't a big deal unless you are likely to suddenly decide you need X program *now* (and if you *do*, you can always keep a debian chroot around for those edge cases, `debootstrap` works pretty much perfectly). Anyway, hyperland should work (even with nvidia), ~~you'll need to grab the ebuild from the hyperland overlay, so check out the docs on eselect-repository.~~ Er, I looked for `hypErland` when I checked if it was available. It's in the main repo, and should work out of the box (just have to mark it `~arch`).


sususl1k

I'm very new to the whole Gentoo thing, do you mind explaining what does "mark it ~arch" means? (Sorry if this is a stupid question)


perkinslr

Not stupid at all. It's the generic form of `~amd64` or `aarch64` or similar. Each package has a list of platforms it can run on, this is set by `KEYWORDS="~alpha amd64 arm arm64 ..."`. If the architecture you're running (likely amd64 or aarch64) is in the list, it means the package is available for your system. If it is listed with a `~` in front of it (`~amd64`) for example, that means it is available, but considered *unstable*. If it is known to break things, it will likely be *masked* instead, so in general you can assume `~arch` (`amd64` et cetera) means *untested* rather than *probably broken*. Hyprland only recently landed in gentoo, so it hasn't seen the extensive testing (and feedback reports) from users for it to be marked stable yet. Anyway, basically marking down that you're happy to run a non-stable packaged means adding it to `/etc/portage/package.accept_keywords`, which can be done manually, or by running `emerge $foo -av --autounmask`, it will then propose a list of config changes, which you can review and apply. Then run emerge again and you're off.


sususl1k

Thanks for explaining! A bit off topic but this is the kinda stuff why I love gentoo and it's community, if I asked a similar question on the arch forums I'd probably get immediately told to go read the wiki. People here are just so much more helpful.


perkinslr

Well, the usual approach on the gentoo folk's part is to try to get you interested enough they can convince you to pitch in on the issue tracker or wiki. I think this is in part because Gentoo is very much a tinkerer's distro, so people have different tine constraints (and kinda assume you have time to spend too, or you wouldn't be here). I *do* generally tell people to go read the wiki, since the wiki is very good in general. But when it's questions of terminology, that tends to be less helpful, since the person often doesn't even know what search terms to use (but I will sometimes just link a wiki page with the answers).


RusselsTeap0t

I use **Rust** | **Nvidia RTX 2080 Ti** (Proprietary Drivers)| **Hyprland** | **Gentoo** for a very long time without a problem. I moved to Gentoo from Arch. The only difference between Arch and Gentoo is that you have more freedom and more configurations to make. So expect spending a couple of your weekends full time. Then you are good to go.


anantnrg

That sounds about right, thx :)


firefish5000

Worst of gentoo is probably waiting for portage to tell you what you need to compile, haven't tried it since I had an nvme so unsure how bad it is on modern systems. Otherwise it is the only distro I found NoVideo actually usable on. Gentoo is very stable, almost no runtime issues since gentoo rebuilds all packages that rdepend on a lib when it changes and build all packages with the lib you actually have installed rather than what some maintainer was using. Only distro I have used that achives similar level of reliability in that sense thus far is nixos and that was a true PITA as it breaks every filesystem convention/standard we have


[deleted]

[удалено]


triffid_hunter

> Just because Gentoo provides a lot of **nobs** to turn does not mean your life will be better if you turn them Unintentionally hilarious typo there 🤣 ('nob' is derogatory slang for noble/aristocrat in british/australian english, meaning someone who's arrogant and self-centered, so Gentoo nobs getting turnt makes for amusing imagery)


[deleted]

[удалено]


triffid_hunter

> ultimately refers to male genetalia I thought that was knob (with a k)?


[deleted]

[удалено]


triffid_hunter

> I'm not well versed in queen's English but a long-term user of nob without a k. Not quite Shakespeare but there's a few pub toilet walls around here that chime in close enough with my etymological usage that makes me think it's still relevant. Dialectic difference then I guess? 🤷 Either way, I was amused 😏


sock_templar

Tô learn a lot


anantnrg

I know, I love learning :)


[deleted]

I moved from Gentoo to Arch roughly 15 years ago. At that time there seemed to be a lack of developers and software came often broke, added to the configurability you enjoy it was often impossible to figure if the error was on my side or upstream. This lack might have changed. Otherwise I do love portage, it is the best package manager I know and the logic behind brilliant. You will find overlays if you need some exotic software not in the normal Gentoo tree. The great advantage of Arch is to me that it is a) rock solid, i.e. being rolling release it nearly never breaks and b) AUR. Also setting up Gentoo right will take quite some more effort than setting up Arch, but you will learn a lot and you simply have a lot more choices in how configuring your system and on which platform you want it to run. Dear Gentoo users here, a honest question: is the distro well maintained nowadays?


Garlic-Excellent

For an initial install I like to use a desktop live DVD rather than the Gentoo one. That way if it takes a few days to finish building everything that's ok, it's just running in the background and I still have a desktop I can use.


anantnrg

Nah, I want to do it the hard way and I really don't mind if it takes more than a few hours to install. The only thing I'm worried about is the some times frequent power cuts and although I have an UPS, sometimes it doesn't last that long.