Let us say I want to install a new window manager, for instance sway.
There are two routes to take: Enable it system wide, where you have to deal with less things on your own because most of it is already enabled in the nixpkgs module, or set it up with home-manager where you have to take a few extra steps but have much more customization options.
I am confused on what approach I should take here, clearly not every user on my system should have sway installed by default, so naturally I would say home-manager - but unlike on the system level you have the disadvantage of needing to enable opengl
, the xdg-desktop-portals
, and so on on your own.
There is also the “bug” with swaylock
going on where you would need to set security.pam.services.swaylock = {}
on your own to make it work properly.
To mention some more confusing aspects, the Desktop Environments such as GNOME or KDE Plasma can only be enabled with the system-wide options, there is nothing in home-manager for it. So if you wanted to have Plasma only for the user, that would not work out properly.
Also to mention: Audio. It can only be enabled system wide, not in home-manager.
What I want to say with all of this is: You often cannot really draw a line like you would want to, because often times there is ONLY a system wide option but you would like to do it all in home-manager. In my opinion this causes a lot of confusion.