What’s bloat? You need to have a functional computer.
Bloat is when your computer has anything more than a half functional terminal
A terminal? That’s bloat! Mine is spitting stones in binary, but I think about a more minimal solution these days…
Mine uses atoms instead of stones
Atoms? Do you have infinite resources or something? Real minimalism uses electrons!
Wait till you hear about Quarks. True minimalist knows!
Username checks out 😉
Bloat is when programs that you’ve installed to do something have the gall to use system resources to do the thing you installed them to do.
If you use Gentoo, you really get to feel the sins of the bloat through accumulating compile times.
and then out of fear of reinstalling everything from scratch you go through your system and debloat it like its supposed to be
Truly, Gentoo is the greatest teacher.
Just reinstall it every two months and you’ll never get over 1000 packages
That’s extremely inconvenient. Especially if you have important files you need to backup.
Laughs in separate /home partition
My .config and .local are a huge mess, and yet I invested so long tweaking it and adapting it to my taste that the idea of starting from scratch is daunting.
Stuff that’s helped me so far:
- sudo paccache -r
- ncdu ( you may have to install it first )
- pacman -Qqdt
- Konmari’ing my computer occasionally.
I have this problem with Tubleweed. Installed a few DEs to try them out, but it was easyer to install than remove the same swathe of packages. Now I have multiple file browsers and settings programs :(
Have you tried using snapper to rollback?
I should have, but that was a few weeks ago so now I’m slowly uninstalling unnecessary programs.
That’s why I miss Gentoo so much. Nothing handle packages like Portage does!!
But… The compilation times made me migrate to Fedora…
Buy a new, bigger ssd and start again from scratch. Copy your data from the old disk, then retire it into your NAS to add storage there. Repeat every once in a while, and suddenly your nas is big enough to qualify as a homelab.
💯 This is the way
Just use NixOS. Not minimalist but very organized and feels comfortable
You can use Nix outside of NixOS. Nix + Void has been the mainstay for my machines for the past couple of years.
Right now I have a VM running NixOS, so I can figure things out. What annoys me is that when asked to list all the programs I want to use, I struggle, but installing things on the fly is so much more easier. Nix-env does that, but it doesn’t add it to a /etc/nixos/configuration.nix, does it? Also, I know about home-manager, but I’ve heard it’s extrememly difficult.
No,
nix-env
installs to your user environment, which thenixos-rebuild
command barely touches. It doesn’t touch the global configuration file. In fact you can even manage user accounts imperatively.My approach is the following: try a program using
nix run
(ornix-shell
, depending on the case) and if it does what I want, add it to my configuration andnixos-rebuild test
. It will then be available permanently on next update.What I also do is keep all nix-related files in a git repository under main user control and have the
flake.nix
(if using flakes, otherwiseconfiguration.nix
) soft linked into/etc/nixos
. This also enables rollback on your configuration, not only on the actual system state.I agree that each package takes more time, but OTOH, you save a lot of time and effort in the longer run. Also I don’t really have that high fluctuation of packages that it actually matters.
home-manager
is a bit in a weird spot in my opinion as in it’s not very clear how it should be installed. If it’s a NixOS module, your changes will only be applied during rebuild - which only root can trigger. But if you’re already triggering those as root, you might as well as the packages globally. I generally install globally and configure the options usinghome-manager
.Sounds great, but I don’t like editing a config file every time I want to install an app,.
Alright, if that’s too much of a hassle you shouldn’t switch. I’m unaware how to do all of that in one step on the command line. All I can say is that the last time I added programs to the array was two weeks ago. So the workload is negligible… on the other hand, on Arch, when installing something new that you then decide not to keep, you need to track the dependencies that you no longer need (
pacman -Rs $(pacman -Qqdt)
) if I’m not mistaken.Also, the amount of work saved depends on what you’re installing: let’s say you install OpenSSH on your machine. On NixOS, that’s editing about six lines in my configuration and then rebuilding. On Arch, that’s
- installing OpenSSH (pacman -S openssh)
- Editing /etc/ssh/sshd_config
- Editing your firewall settings (This happens automatically on NixOS)
- Enabling and starting the OpenSSH service (NixOS does this for you)
- Applying your changed firewall rules (again, automatically on NixOS and guaranteed to be correct)
So you have double the configuration files to be edited and triple the commands to be ran, while during all of this, nix actually does the thinking for you (e.g. you change a port in your OpenSSH config -> the firewall configuration is updated automatically).
Sounds neat. I am really considering NixOS, that’s why I’m asking for advice here. It really sounds like a nice and more convenient distro. Sadly, I still haven’t figured out how to make my own builders, even after Nix Pills. Thankfully, programs like crate2nix exist.
Do you want to create your own builder or create derivations?
create derivations
I am here for pingu.
It’s inevitable. Occasional needs come up, so you install stuff and forget you have, or you think, “Well, I won’t remove that because I might need it at some point in the future.” Reinstalling every couple of years is not a bad thing. Just make sure to save your home directory.
Are you hopping between DEs?
I installed SwayFX, but no program wanted to open in Wayland despite XWayland being installed, complaining about “no x server”, even the wayland-native programs. I gave up and went to XFCE4, then back to SwayFX because Wayland magically started workinng.
Ah shit here we go again
reinstalls
Sooo true for me…
What bloat are you talking about here? I’ve never experienced bloating with Arch.
Generally when over time you start installing more and more stuff and you forget to remove it and it feels clunky and bloated.
pacman -Qs, and look through packages you don’t need and delete them. Then you’ll hit a dependency, and another one, and another… and you’ll find out one app requires the gtk3 package so like 20-30 packages are just for it and can’t get deleted
pacman -S python-torch cuda