5 ms·
If only it worked on anything other than Linux.
by brabel 3y ago
If only it worked on anything other than Linux.
- dannymi 3y agoIt works on top of any Linux distribution. So you can for example use WSL2 on Windows with a small Linux distribution and then extract the guix binaries from the website guix.gnu.org onto there, start guix-daemon in there and use guix like that. That said, I care about bootstrappable builds, so I can't recommend using a hypervisor I can't trust (Windows Hyper-V) as a base. That's if you want the development environment. On the other hand, for using guix packs of your software, you don't even need to install guix. Just unpack the pack as-is (or use docker). Note: guix supports cross compilation, so you CAN just use --target=x86_64-w64-mingw32 and it will compile your program for Windows native just fine. The computer that is doing the building needs to be Linux- or Hurd-based, though. Sometimes people come and try to port guix to cygwin or whatever but I have no experience in how far that is. What's your use case?
- cornedor 3y agoAlthough it is not the Guix, Nix supports: x86_64-linux aarch64-linux i686-linux x86_64-darwin aarch64-darwin Perhaps some day this will also be possible for Guix, but I don't think it fits the ideology of Guix since MacOS isn't free (not as in beer).
- Jhsto 3y agoSlight nitpick, Nix does support more architectures, but those are the ones with prebuilt packages. Compiling say 32 bit ARM is quite feasible, takes roughly a day for a full OS image.
- rekado 3y agoGuix builds binaries for - x86_64-linux - i686-linux - aarch64-linux - powerpc64le-linux - i586-gnu
- pxc 3y ago> Perhaps some day this will also be possible for Guix, but I don't think it fits the ideology of Guix since MacOS isn't free (not as in beer). I just wanna note here that the hesitation to invest in macOS support in the Guix development community is technical as well as ideological. macOS is a difficult platform to support for third-party package managers, and developer interest in macOS support is a difficulty within the Nix community, too. There's a lot of breakage on major macOS upgrades as well as some fundamental portability and hermeticity problems on the platform. That said, (as an outsider) I think it would be awesome if Guix ran on macOS, just like it's ultimately a good thing for the world and for GNU that Emacs runs pretty well on macOS.
- pjotrk 3y agoI've had some luck in building it on MacOS with brew, however, the investment of learning MacOS dynamic linker is too costly at the moment, and it seems to be a blocking issue right now
- pxc 3y agoThere seems to be a lot of Mac hackers on HN! Maybe comments like yours will eventually inspire someone with the chops to play around and advance things. It'd certainly make for a good blog post here. :)
- mekeor 3y agoActually Guix System also runs on GNU Hurd. Also one might try porting it on kFreeBSD as well.
- galdor 3y agoThis is the only reason I haven't tried to use Guix. I love the concept, I want to use it, but it does not run on FreeBSD. And I would not invest time in a packaging system that works on my workstation but not on my servers. It is sad to see so many Linux only software, especially when there is no technical reason not to support *BSD.
- xcdzvyn 3y agoI feel this. My love for BSD almost matches my love for Nix, it's unfortunate I have to choose one or the other. I'm aware Nix is closely integrated with SystemD, so availability on BSD will probably never happen (though perhaps you could use the Darwin code as a starting point?), but I'd be curious to know what in particular limits Guix from being ported.
- galdor 3y agoWait it's integrated with SystemD? What is a package management system doing with the init process? I now remember that Guix is a daemon, something that made me really wary at the time; but a SystemdD dependency is something else entirely.
- cmm 3y agoNixOS can be validly viewed as a very fancy Systemd configuration toolkit. If you think about it, ultimately an instance of a modern general-purpose OS is structured as a set of services which are described for and orchestrated by, well, something. In the case of NixOS (not Nix in general!) that something is Systemd (which also happens to be used by all other major Linux distros); in the case of GuixSD that something is GNU Shepherd (which also happens to be used by GNU Hurd)
- turboponyy 3y agoNix isn't, but NixOS is, if I'm not mistaken.
- xcdzvyn 3y ago