HN user

notme43

22 karma
Posts0
Comments11
View on HN
No posts found.

Spyware aside - I think about data breaches, even if my phone is "secure/compliant".

Scenario: Your account gets compromised somehow. It's signed in to your personal phone. Company data gets leaked or ransomed.

Your phone and its contents are now evidence.

Why Gentoo? 2 months ago

They solve some of the same problems. I wanted to say the project is not focused on being stateful or reproducible, and it isn't, but honestly all the tools are there if you want to craft your install like that. Portage is reminiscent of BSD ports, and features like USE flags are where it really shines. It's designed to be super flexible. Roll your own distro basically.

Not even a Mac user and have been legitimately considering a move like this.

My desktop and Thinkpad run Gentoo. A NAS I have at home is the build host. I am a business software consultant, and a common thread in all of my interactions is: I need to be prepared. If I'm fiddling with "hang on my mic doesn't work" or "i need to reboot", I look silly.

An onsite visit might be in an executive board room, or a closet in the back of a warehouse with a TV from 2007 and a VGA connector.

If I need software installed quick, like Zoom or something, Flatpak gets me 95% there. Yes, I could use Ubuntu or something normal, but I like portage and long for the day I can use FreeBSD seriously on the desktop.

So enter Chromebooks, which come with portage, can use Flatpak, and the OS is basically just a web browser. Plus, I don't have to wrestle with SELinux, or any of the other nitty gritty stuff that gets in the way of real work™. It's either a PWA or an Android app, and it just works.

Yes - still use emerge on the Thinkpad like I would on the host, like emerge -avuDN @world and such. This is the wiki article [1] I used to set up most the portage side of things, it covers NFS as well.

I use NFS to mount the container's /etc/portage to /mnt/portage and symlink the files to the Thinkpad's /etc/portage so I can cherry pick what I want to keep in sync with the build container. Don't have to mess with repos.conf either because portage will look to /var/cache/binpkgs by default.

make.conf is a directory on both machines and has files like 01-common-flags.conf and 02-binhost-flags.conf. The Thinkpad has 01-common-flags.conf and 03-target-flags.conf with EMERGE_DEFAULT_OPTS="--with-bdeps=n --usepkgonly" set, so running emerge -avuDN on the Thinkpad will only update with binaries from the mounted /var/cache/binpkgs. I keep the software in sync by using /etc/portage/sets instead of the world file. Then all the package.* dirs are symlinks as well.

The Thinkpad binhost is a znver3, so the build container has CFLAGS="--march=x86-64-v3 --mtune=alderlake" set. There's some SIMD extensions that two don't have in common and it has to build code that runs on both machines, otherwise you could use the target architecture in --march. Using the --mtune option in my case apparently sets the L2 cache size of the produced code to that of the Intel chip.

Systemd-nspawn containers are super easy to spin up, as you basically install Gentoo from stage3 and it works like a chroot but with a full init. I run updates irregularly, there's still some manual effort for maintenance, but it's mostly just kicking off emerge and letting it build in a tmux session.

[1] https://wiki.gentoo.org/wiki/Binary_package_guide

Been using Gentoo since 2004 on all my machines. They won me over after I started playing around with their Unreal Tournament demo ISO.

The game changer for me was using my NAS as a build host for all my machines. It has enough memory and cores to compile on 32 threads. But a full install from a stage3 on my ageing Thinkpad X13 or SBCs would fry the poor things and just isn't feasible to maintain.

I have systemd-nspawn containers for the different microarchitectures and mount their /var/cache/binpkgs and /etc/portage dirs over NFS on the target machines. The Thinkpad can now do an empty tree emerge in like an hour and leaving out the bdeps cuts down on about 150 packages.

Despite being focused on OpenRC, I have had the most pleasant experience with systemd on Gentoo over all the other distros I've tried.

I can't speak to their use case but why not use Gentoo? Portage solves a lot of these problems with slotting or by letting you roll your own ebuilds with a local repo. It seems cleaner and less effort, unless you need/like the Ubuntu userland.

I've noticed that performance of Firefox on Linux can vary quite a bit from distro to distro. Mozilla uses aggressive compile, link time, and profile guided optimizations in the default Firefox binary they distribute, whereas distributions like Debian compile with very safe options and little optimizations enabled. You can see these with about:buildconfig. It's such a big difference sometimes that it makes sense why they previously branded unofficial releases as Pale Moon.