4 ms·
I moved to NixOS and came back to Arch because setting up development environments for general purpose computing felt tricky. I was on a schedule so had to drop
by Gentil 5y ago
I moved to NixOS and came back to Arch because setting up development environments for general purpose computing felt tricky. I was on a schedule so had to drop it. Is it the same for Guix? I don't know why it should be any different. But still asking.
Also, am guessing people will likely have hardware compatibility issues for Guix which isn't a problem for NixOS since they bundle non-free drivers etc.
- podiki 5y agoNot sure what kind of development environments you mean, but one of the great features of Guix (and Nix I think) is to easily provide isolated environments. This can help you control dependencies and other things separately from the main OS. In guix this is as easy as `guix shell some packages` or add a `-D` for development libraries needed for those packages instead. You can then easily reproduce the same environment on another machine.
- Gentil 5y agoSetting web development environments and mobile dev environments or anyway in which different languages are involved. NixOS have some documentation on it. Like I said, this wasn't because they (NixOS and Guix) implement it bad, but because of my time constraints as mentioned before. But it also felt like, apart from learning the new way of using my system which NixOS/Guix works, now I have to work with how to deal with different languages. To me this felt like a big overhead. As a n00b of NixOS (not a n00b on Linux BTW), I have questions like doesn't this mean I will have lesser support on setting up something new development when something new comes along? This honestly have made me take my time on going back to NixOS. Cos I cannot just compile the packages directly like I could in normal Linux distros. Right? Or do correct me I am wrong. Like I said, the time constraints (+ pandemic) have made it hard for me to make time. Maybe you could correct me if I am wrong somewhere and make me understand it better. :)
- kaba0 5y agoFor “tmp-like” codes, I had a folder with debian installed. I could systemd-nspawn into it for a basically zero-overhead “standard” unix system. But for slightly larger projects, creating a package description was always worthy. I especially liked having a shell config where entering a directory automatically put the necessary packages in scope.
- aidenn0 5y agoIt's tricky because both There is more than one way to do it, and many of those ways aren't well documented. Here's what I use: - steam-run lets most binaries targeted at Ubuntu "just work" with no setup. - buildFHSUserEnv lets you work with things that expect a typical /usr /bin /etc tree - For cases where I just need an LD_LIBRARY_PATH and PATH setup, see[1]. This runs an emacs with my development environment. Since it uses buildenv, if I find I'm missing a library, I can add it, and rebuild the environment without starting emacs and it works fine.