I want to, but none work properly. KMail is broken on NixOS, Evolution doesn’t work well with KDE, and Thunderbird was just a broken mess last time I used it a few years ago when I was distro-hopping. Email is really not that important to me anymore either. Check it on the removedter or before bed and that’s it.
There was also a problem with it no syncing calendars or something. Can’t remember which issue I had there. Maybe it’s all fixed now since Qt6, but that’s to be released in the next stable version I think.
Huh, I haven’t encountered any of these (adding address book works for me too, the last comment on that post seems to have a solution if it doesn’t for you) and I’ve used KMail on NixOS for probably about as long as that first issue existed. Weird.
Not at all, given we’re running probably significantly different configurations. With the same configuration we’d get the same results, and NixOS never claimed to eliminate what is essentially packaging bugs related to runtime dependencies. KDE stuff (and especially anything Akonadi-related) right now needs a lot of plugin path environment variable mess to work with NixOS’s file structure because it loads a bunch of stuff at runtime from other packages, which can break in strange ways like this if you don’t add a specific package to your system packages for example, it’s definitely not ideal the way it is right now but it’s also pretty hard to get right.
That is clearly talking about build-time dependencies and the build process given the context (maybe the word “work” here is misleading though, also because some packages don’t even have parts that can “work” or “not work” like wallpaper packages). It is impossible to automatically ensure all runtime dependencies are met, because that would require analyzing what the program actually does. I can write you any number of Nix packages that will only run on my computer (simplest case is because they load a file from a path from my user directory or something), but the thing that Nix ensures is that you can reproduce the package contents on your system as well.
That said, in a lot of cases, nixpkgs does actually (manually) patch runtime dependencies to use store paths which sets up that dependency relation, but with KDE PIM stuff this would lead to dependency cycles if done the typical way, for example KMail depends on Akonadi to build, but Akonadi loads plugin files from KMail when it is installed. This is not something you can do, so to resolve that cycle, you need another package which depends on both and links them together so they can see each other at runtime. Right now the entire NixOS configuration (or rather, whatever the environment.systemPackages option affects) assumes the role of this third package, but it would be nice if was done in in a more self-contained way, so that you could also reasonably use this stuff outside of NixOS.
NixOS is just another attempt at changing the way fundamental things are done so one day they can introduce some orchestration / repository / xyz payed solution. Yet another step in the commoditization of software development.
I want to, but none work properly. KMail is broken on NixOS, Evolution doesn’t work well with KDE, and Thunderbird was just a broken mess last time I used it a few years ago when I was distro-hopping. Email is really not that important to me anymore either. Check it on the removedter or before bed and that’s it.
Anti Commercial-AI license
I use KMail on NixOS (though, still the Qt 5 version) and it works for me. What’s the problem with it?
There was also a problem with it no syncing calendars or something. Can’t remember which issue I had there. Maybe it’s all fixed now since Qt6, but that’s to be released in the next stable version I think.
Anti Commercial-AI license
Huh, I haven’t encountered any of these (adding address book works for me too, the last comment on that post seems to have a solution if it doesn’t for you) and I’ve used KMail on NixOS for probably about as long as that first issue existed. Weird.
Gone are the illusions of NixOS’s purity and banishment of “works on my computer”.
Anti Commercial-AI license
Not at all, given we’re running probably significantly different configurations. With the same configuration we’d get the same results, and NixOS never claimed to eliminate what is essentially packaging bugs related to runtime dependencies. KDE stuff (and especially anything Akonadi-related) right now needs a lot of plugin path environment variable mess to work with NixOS’s file structure because it loads a bunch of stuff at runtime from other packages, which can break in strange ways like this if you don’t add a specific package to your system packages for example, it’s definitely not ideal the way it is right now but it’s also pretty hard to get right.
The same argument can be made for any OS. Same packages, same hardware, same configuration, and probably it would be the same.
https://nixos.org/
I saw the work k900 and other contributors put into KDE and Qt stuff. It’s admirable. I’m not saying it’s their fault things are the way they are.
Anti Commercial-AI license
Only if we’re talking about 1:1 disk image clones or installing stuff on a fresh system.
That is clearly talking about build-time dependencies and the build process given the context (maybe the word “work” here is misleading though, also because some packages don’t even have parts that can “work” or “not work” like wallpaper packages). It is impossible to automatically ensure all runtime dependencies are met, because that would require analyzing what the program actually does. I can write you any number of Nix packages that will only run on my computer (simplest case is because they load a file from a path from my user directory or something), but the thing that Nix ensures is that you can reproduce the package contents on your system as well.
That said, in a lot of cases, nixpkgs does actually (manually) patch runtime dependencies to use store paths which sets up that dependency relation, but with KDE PIM stuff this would lead to dependency cycles if done the typical way, for example KMail depends on Akonadi to build, but Akonadi loads plugin files from KMail when it is installed. This is not something you can do, so to resolve that cycle, you need another package which depends on both and links them together so they can see each other at runtime. Right now the entire NixOS configuration (or rather, whatever the environment.systemPackages option affects) assumes the role of this third package, but it would be nice if was done in in a more self-contained way, so that you could also reasonably use this stuff outside of NixOS.
NixOS is just another attempt at changing the way fundamental things are done so one day they can introduce some orchestration / repository / xyz payed solution. Yet another step in the commoditization of software development.
Thunderbird works great for me on both Arch and NixOS, maybe give it a try again?
I might, thanks. If it works for one person on nix, there’s a good chance it’ll work for others.
Anti Commercial-AI license