Guix as a standalone OS
I have been tinkering with Guix on a T9 install some months ago, I am now left wondering what differences there might currently be between Guix as a standalone OS and Trisquel-cum-Guix, apart from the available package versions? I get that Trisquel is tailored for general user friendly installation and may cover a larger perimeter of user cases but Guix now seems to provide most of what many users are expecting from an OS.
For instance, can we expect external devices that can be used with Trisquel, to also be working with Guix, or does it somehow depend on choices made by their respective maintainers? I would have thought that there might remain some differences since Trisquel is taking its own kernel deblobbing path [1] while Guix is using the Linux-libre kernel (based on a more recent version of vanilla Linux).
Soon merrier times will come when I should get an opportunity to install Guix in standalone mode without compromising my daily computing.
[1] https://trisquel.info/en/wiki/how-trisquel-made says:
"We start with the kernel from the Ubuntu repositories (rather than the latest vanilla version, to assure compatibility with the rest of the system), including the modifications done by Ubuntu in the form of a huge patch. We then apply the Linux-libre deblob script for the matching version, and as a final step, the latest Linux-libre script, modified to allow it to be run against older kernels. This step double-checks the code, and also adds the latest Linux-libre features to the package."
I have no idea whether that huge Ubuntu patch might provide some extra stuff which might survive the linux-libre deblobbing scripts, or whether the more recent version of Linux on which Linux-libre is based makes it the one with extra hardware support anyway.
> the one with extra hardware support
If any.
I have never used Guix. Anyway, as far as I know, the GNU Guix System is rolling release, whereas Trisquel is extremely stable (released every two years, with much time to plan the upgrade). That makes a significant difference. Applied to the kernel in particular, it certainly gives Guix an edge regarding the support of recent hardware. On the other hand, stability has value: I believe most users do not want to have software they work with significantly change overnight. Sure you can rollback, but that requires additional system administration time. Plus the time to learn (once) how to mess with Guix, which is not really user-friendly, as far as I know.
> rolling release
> not really user-friendly
Thanks for the reminders. Hence the more recommendable combination of Trisquel-cum-Guix for most Trisquel user cases where Guix would bring fresher versions for selected applications, I guess.
I'll gladly stick with Trisquel for a while.
EDIT: I am still exploring Guix as a standalone OS, but this would be off-topic here.
I want to setup several services that a number of people will rely on, then I am rather scared by the "version change" operation once every two year that will affect them all at the same time.
Guix seems to allow having different software environment for different users. I thought it could be helpful to run different services as different users and then (non-kernel) software upgrades should only affect one service and roll back per service would be possible without affecting anything else than the concerned service, should any issue be detected.
But maybe this is using a sledgehammer to crack a nut? (and this is a lot of system administration time I guess).
> But maybe this is using a sledgehammer to crack a nut?
No, it would be more like using a nutcracker to crack a nut, as the situation you described is the type of situation Guix was designed to handle.
> and this is a lot of system administration time I guess.
I wouldn't think so. Package management is fairly simple once you get Guix set up.
I am not sure whether the Trisquel "version change" operation (system upgrade) would have any adverse affect on any of your users. It is my experience that upgrading Trisquel is a rather smooth operation (although of course not exactly instant, as one might guess) provided you are not relying too heavily on PPAs. Even then, it is not hellishly tricky. I currently use no PPA, so I cannot be sure how tricky it can get.
Andy is right in that using Guix will not make your admin life much more difficult, generally. However, it is hard to tell what extra features it would actually provide compared to a Trisquel system if users have no specific need for more recent versions of any application/service they use than the ones that come by default with Trisquel.
I would think that the choice between the two options really depends on the specifics of the apps and services you want your users to be provided with. I would personally keep Trisquel by default and only go for Guix if I foresee specific hurdles when upgrading. As MB mentioned, you will have plenty of time to prepare for upgrade anyway, the image for the next version being available quite long before it becomes official release and the version it supersedes being supported for quite some time too (that has to be checked against the Ubuntu version it is based on, of course).
I have a feeling that in your case the roll back flexibility afforded by Guix might be like an extra roof airbag which would come with that bleeding edge sports car. If I have no specific reason to swap it, I would rather keep my (Trisquel) family friendly car. And possibly add that extra airbag (Trisquel+Guix) if someone asks for it. If what you are actually looking for is a double-decker or a hauler, then of course I cannot tell.
Guix is not FHS-compliant. If I was to use it as a main OS, I would feel lost not being able to find things in their usual places...
As long as You only install packages from its repository, everything should work well together. Not sure if this is still going to be the case when You try to install some third-party programs or compile something yourself. Perhaps there's someone else who knows more about this and could educate us?