And thanks for the nix-darwin comparison. I get it better now.
Thanks for the clarification I was also confused but this makes sense.
And thank you for your work everyone! Iâm very excited for the doors this will open, even if I donât use windows myself. Godspeed!
We have a beachhead, Build a minimized Nix with MinGW by Ericson2314 ¡ Pull Request #8901 ¡ NixOS/nix ¡ GitHub is merged!
With that, the work can hopefully proceed in parallel. To kick things off, Iâve opened issues:
- Rename `SearchPath` ¡ Issue #10539 ¡ NixOS/nix ¡ GitHub
- Implement `setStackSize` on Windows ¡ Issue #10540 ¡ NixOS/nix ¡ GitHub
- Use portable C++ Pseudorandom number generator ¡ Issue #10541 ¡ NixOS/nix ¡ GitHub
- Abstract over `getrusage` ¡ Issue #10542 ¡ NixOS/nix ¡ GitHub
- Implement `updateWindowSize` on windows ¡ Issue #10543 ¡ NixOS/nix ¡ GitHub
- Implement process spawning on Windows ¡ Issue #10544 ¡ NixOS/nix ¡ GitHub
- Implement `PathLocks` on windows ¡ Issue #10545 ¡ NixOS/nix ¡ GitHub
- Run unit tests in Wine in CI ¡ Issue #10547 ¡ NixOS/nix ¡ GitHub
Some of them are quite small and self-contained and would be excellent first issues for new contributers!
wait, wasnât Moby Dick a sperm whale this is great news - is there a âquick startâ for someone having never done it to get what youâve accomplished setup on Windows? I can fumble around in the dark but probably wonât find it. Anyway, very exciting.
@Qknight posted libnix mingw status just before it was merged, which has some instructions for trying things out.
Of course, weâll want to make it easier and better tested next!
Nix is going to eat the world! This is huge!
Thanks for this! I got stuck but will try again soon
so I finally got around to reading chapter 36 and Moby Dick is a âwhite whaleâ indeed and this I found I had to share â
If man will strike, strike through the mask! How can the prisoner reach outside except by thrusting through the wall? To me, the white whale is that wall, shoved near me. Sometimes I think thereâs naught beyond. But 'tis enough. He tasks me; he heaps me; I see in him outrageous strength, with an inscrutable malice sinewing it (p. 267)
Still havenât got nix working in Windows (following Qknight post get an error when I go ahead and :b packages.x86_64-linux.nix-x86_64-w64-mingw32
but no worries. As Ahab says âGod bless yeâ for working on this. Good things are coming
Another thing passing by my mind:
With some luck we can include Nix on ReactOS as a free platform in the foreseeable future!
libnix volth's work summarizes volthâs windows nix port work and some parts of the discussion in this discourse.
libnix fixPath - fixPath
is a tool to modify the path to a certain DLLs (Dynamic Shared Objects) for Microsoft Windows Executables by rewriting parts of the executableâs PE header, when the .fixPath
section is present and indicates support for such rewrite, but without having to realign the PE headers. In concept, it is similar to patchelf but instead of changing search paths, fixPath hard-codes each DLL to a particular filepath.
see fixPath project page:
https://github.com/nixcloud/fixPath
release with prebuilt fixPath.exe tool + test program:
https://github.com/nixcloud/fixPath/releases/tag/v0.1.0
libnix roadmap contains a summary of items we need to get done in order to port a minimal nix to windows and use cargo cross platform to utilize the /nix/store instead of ~/.cargo and target/ folder.
As a completion: nix: init at 2.25.0 by puffnfresh ¡ Pull Request #22499 ¡ msys2/MINGW-packages ¡ GitHub try to port nix to MinGW
has it happened? Nix on Windows feels like
Starbuck is Stubb reversed, and Stubb is Starbuck
I am working on making nix on windows currently we have a working version here: GitHub - nix-windows/nix: Nix, the purely functional package manager and yes itâs old but we are working on making changes to the main nix and make it more upstream. Yes the upstream nix doesnât do much on native, but the nix-windows does (like creating dirvations), But me, @Ericson2314 & @puffnfresh are trying our best to make it available there is a matrix discussion here if you want to join out and help.