I tried SD for the first night and restored my backup on the same night. It's and has several fascinating ideas but has only few problems which are severe and deal breakers for me.

The idea of having a functional build/package manager system is amazing and an operating system around it is every cooler. Creating your entire OS based on a lisp DSL is the dream. I'm a huge lisp fan and I started using with love of , and on my heart but to be honest it wasn't what i expected.

The biggest problem for me was the lack of binary compatibility and the fact that they don't want to be compatible was a instance no for me. You can't use official binaries for and many other free tools.....

Another one is the fact that they enforce you to follow the definition of freedom which is like you CAN'T use those softwares that are not free in our opinion that is against the freedom of will and I don't want that. It's sad to see that this mindset is getting more popular and more extreme among gnu project. That's why I like . You're free to do what you want and nothing is holding you back. These reason made me realize the SD with all the shiny ideas isn't for me.

Going extreme on freedom cases more damage to it.

@lxsameer There’s no damage here. Some folks choose to spend time on things we can control. Guix (System) is free software that means other folks can fork it and create a distro supporting blobs†

Supporting blobs has costs: technical ones like making our system not bootstrappable and not reproducible or social ones like not making any consumer pressure on libre hardware cuz if proprietary stuff is convenient on Ubuntu then consumers are blind to the issue.

† pantherx.org/

@lxsameer If you want basically the same thing as Guix System but not following Free System Distribution Guidelines† then NixOS‡ is the way to go—
it doesn't uses lisp but supports proprietary blobs and firmware.

† gnu.org/distros/free-system-di
‡ nixos.org/

@kmicu hey, yeah i know what you mean, I would've been fine with most of it but the fact that guix hides the gcc package from the user ( the thing that gcc-toolchain is supposed to be the replacement ) forces me to use icecat or other alternatives that i don't like. To me freedome means I should be able to do what ever i want with my system, but guix took that freedom from me....

@kmicu I should be able to run firefox if i want to. I should be able to hack my system how ever i want not the way guix dictates. It's like sacrificing people's freedom in favor of software freedom. Which in my opinion is not great. Guix is an advance system and we should assume that its users are advance as well so it would be good to trust them and let them build their own system the way they want to

@kmicu I really love the idea behind guix and the fact that everything is in lisp but I really want to own my system. I want to be able to run firefox ( it's an example of many other things ). If i can't do these two i can't enjoy my working environment

@lxsameer Some Guix folks run Firefox, others create forks like PantherX. Expecting that other should support problematic software for us it’s like going to a vegan restaurant and saying that the owner limits our freedom to eat whatever we like cuz meat is not on the menu.

Guix (System) is 100% free software it cannot prevent us from doing whatever we want; for example I installed nvidia binary blobs on it and wifi blobs.

@kmicu Totally agree but the thing is it too much effort to run binary blob because binary compatibility is not a goal for guix. It makes it harder for everyone and people are trying to hack their way around it. I have to spend too much time on running a blob. and the gcc stuff is just annoying to me, why hide something from me (the user) I understand the rational behind it but i prefer to leave the choice to user rather that forcing my decision to them.

@lxsameer I understand that inconvenience. Breaking implicit assumption in binaries is necessary to have a reproducible system. That’s by design and that’s the trade‑off.

There are escaping hatches like emulating FHS† or running in containers but those solutions are inconvenient because the primary goal is to have solid immutable and reproducible system. That’s not possible in a traditional way.

Similar design decisions were made by Rich, Nolen et al in Clojure.

† en.wikipedia.org/wiki/Filesyst

@kmicu agree. but i wish as a user I had a easier way around this inconvenience.
Even if that problem didn't exist. the fact that the OS dictates some stuff like (you're not allowed to use this GCC, use that one instead) is annoying. I want my OS to give me the freedom what ever i want to do. doing so isn't breaking any software freedom. Even gives us that level of freedom as well.

Sign in to participate in the conversation
lxsameer's nest

lxsameer's understanding of the world.