What are the pros and cons for desktops ? EDIT : Thanks all. I’ll try Silverblue, bazzite and more.
Been using nixos for a couple months now. It’s nice and I really enjoy having all my configuration in one place and able to be version controlled. The down side being installing and configuring things take a bit more time to read how nix does it. I have it on a laptop that I’ve been playing with and removed it and put rocky for something else but I am 100% confident I can go right back to the way i had it.
So far the cons I’m seeing is installing vscode plugins are a little annoying and setting up to do python development on existing projects not very easy.
Python development shouldn’t be that hard I think. You can just drop a shell.nix
that imports your pyproject.toml
and then you can run nix develop
and have all your dependencies installed seamlessly with poetry2nix.
I’m using neovim so I can’t really help you with vscode, sorry.
Have you tried Erasing your darlings with NixOS?
I’m using Bluefin right now, but I was using bazzite before that. I’d say the biggest benefit is that it’s hard to break permanently. Sure, you can still mess up your home directory pretty bad, but system level stuff is nice and stable. The biggest problem is compatability and software instalation. Flatpak and toolbox/distrobox are nowhere near as good as the documentation makes them out to be. I’d suggest making sure you select a distribution with Nix pre-installed so it’s still possible to install stuff.
(Edit: There is apparently a workaround for the following issue, though I have not tried if yet.) Just be aware that some things are just plain impossible with atomic distos, and you can’t change it. Like the login screen. You can’t change that at all, whether it’s the background or the default zoom level. It’s part of the system packages and can’t be fixed.
The part about changing the login screen seems to be not entirely true. There is also this tool that claims to be able to generate rpm from sddm themes that you then can layer onto your system image. Take this with a grain of salt though, as I haven’t tried either method because I honestly don’t care how my login screen looks.
Like the login screen. You can’t change that at all, whether it’s the background or the default zoom level, it’s part of the system packages and can’t be fixed.
in /etc/fstab (ublue-kinoite, ymmv):
# enable sddm write accesss and therefore good themes
/var/sddm /usr/share/sddm none rbind 0 0
I’ve been trying Bazzite out for a few days, and it’s really neat. Coming from a standard distro, I like the idea that I can install pretty much anything with the combo of Flatpak, AppImages, and Distrobox. I was unable to install DaVinci Resolve on the Fedora Distrobox however, and the lack of Snaps - although I much prefer Flatpaks or AppImages - kinda sucks because it would be nice to have the Snap for Flutter…
Haven’t tried it personally, but this might work: https://github.com/zelikos/davincibox
Basically, instead of creating a fedora distrobox and installing davinci resolve in there, this is a pre built image that has all the dependencies and such ready to go.
I have been trying to understand this for a minute and I can’t seem to understand why you would use it on a personal workstation.
Like it makes sense for servers, and for deploying accross multiple systems in a corporate or public setting, but beyond that it seems like it is just adding unnecessary steps if you try to use it on your personal rig.
Maybe I’ll need to just give in and try it for a week to a month to see the appeal
It’s much harder to break if you’re prone to tinker. And there’s no configuration drift that naturally accumulates over time as you tweak a system, so it always runs like a fresh new installation.
I have learned much more on immutable OS because I’m no longer afraid to tinker around and try new things. I play in distrobox and can completely nuke the container without affecting my whole system.
honestly i feel exactly the opposite, I don’t think it’s really necessary for servers as tools like ansible are already well established in that space. Plus most servers are VMs these days which can be snapshotted easily. Also, lot of these “immutable distros” require a reboot to apply changes which is non ideal in a server, but a non issue for desktop as you can shut it down when you go to sleep.
I run fedora atomic on my desktop and laptop because i never have to worry about my system getting into a broken state, I can always roll back or even spot the problem and fix it before i reboot to apply the change. I know a lot of people say you can accomplish the same thing with btrfs snapshots, but that requires extra thought and effort on my part, where fedora atomic it happens automatically with every update.
Fascinating,
Again I haven’t actually tried it. I went to install fedora kinoite(?) On an extra laptop I have to try it out but apparently the memory isn’t seated correctly, so I will have to fix that real quick.
I also watched The Linux Experiment’s video on it and cleared up some confusion
With immutable distros you can try a silverblue and switch to kinoite with a reboot on an already running system and it will just work and run your flatpaks. The base image it runs does not get corrupted. You cannot make changes (easily) to the base to corrupt it. Your apps and files are just an overlay or mounts on top of the system. Your machine lights on fire, if you have a network backup, it will fire up on any hardware and be the same. It’s much cleaner and allows for easy os switching.
You could theoretically make windows work and be switchable.
Help me understand what I don’t then. Why would anyone wise ever trust someone they don’t know running closed source software of any kind on “their” computer?
I don’t trust that asshole. I know him enough to not trust him let alone make my computer follow his directions. Why use anything but FOSS?
All down votes but no answer. Suckers.
I can’t seem to understand why you would use it on a personal workstation.
Re that specifically.
I’m pretty much immutable across the board on all of my servers and workstations (laptop included). Most my servers are openSUSE Leap Micro and MicroOS. Run MicroOS on the desktop side as well.
Honestly …haven’t had any issues and the maintenance of it is fairly hands off. Few of mine are k8s nodes so that combined with the reboot mgr + transactional-update has been awesome. I spend less time maintaining my homelabs / desktops and eases my focus in just getting work done.
I’ve only had to roll back a couple of times (mainly self-inflicted), so it’s nice having that capability. A lot of this though can be accomplished in a non-immutable world as well.
A note on “MicroOS on the desktop”: The Gnome variant is called OpenSUSE Aeon and the KDE variant OpenSUSE Kalpa. MicroOS branding is used only for server use due the confusing names. Quoting from https://news.opensuse.org/2023/05/31/microos-desktop-has-new-name/
Simply put? The microOS product namespace is getting crowded. And this is leading to a certain amount of confusion, and causing some support issues. At present, amongst the microOS “family” offered are: Server Products openSUSE MicroOS openSUSE Leap Micro SUSE Linux Enterprise Micro Desktop Products openSUSE MicroOS Desktop GNOME openSUSE MicroOS Desktop Plasma And I think we can all agree, when somebody joins a support forum of some sort, be it Matrix/Telegram/forums/IRC/etc, and says “I’m running microOS and I have a problem” then the inevitable question of “Which MicroOS?” has to be asked. And by their very nature, the Desktop offerings are quite different beasts, than the server offerings, and have quite different support needs. And typing out “openSUSE MicroOS Desktop GNOME” is just too darn long, every time you want to tell somebody what’s running on your machine.