Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

luaPackages.luv: cleanup build #80528

Closed
wants to merge 11 commits into from
Closed

Conversation

doronbehar
Copy link
Contributor

@doronbehar doronbehar commented Feb 19, 2020

Motivation for this change
Things done
  • Remove passthru of libluv which was always too confusing IMO - I think I understand the original motivation behind that but I don't think it's worth the maintenance / confusion burden it introduced.
  • Make luaPackages.compat53 install it's c-api files luv needs in order to build cleanly.
  • Tested Neovim builds and runs.
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS - Darwin users please see the TODOs I've left.
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

ccing people involved in #79870 :

Use github source tarball and use cmakeFlags instead of hacky sed to
CMakeLists.txt.
Mark TODO for darwin checks I can't perform myself.
@doronbehar doronbehar changed the title luaPackages.luv cleanup build luaPackages.luv: cleanup build Feb 19, 2020
@ofborg ofborg bot added the 6.topic: lua label Feb 19, 2020
@ofborg ofborg bot requested review from Ma27 and manveru February 19, 2020 12:13
Copy link
Contributor

@jokogr jokogr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for the effort!

It works as expected in a Linux environment.

@rnhmjoj
Copy link
Contributor

rnhmjoj commented Feb 19, 2020

@GrahamcOfBorg build neovim

Copy link
Contributor

@rnhmjoj rnhmjoj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The darwin build is broken: libluv.dylib not found.

@doronbehar
Copy link
Contributor Author

Note: Although #79870 was closed by @bjornfor , I doubt that it builds on Darwin as expected. nix-build -A luajit.pkgs.luv.libluv still fails for me on latest master:

these derivations will be built:
  /nix/store/9snxwz16ahc0rbdw4xkwhncgs3cgxv4a-luajit-2.1.0-beta3-luv-1.34.1-1.drv
building '/nix/store/9snxwz16ahc0rbdw4xkwhncgs3cgxv4a-luajit-2.1.0-beta3-luv-1.34.1-1.drv'...
unpacking sources
unpacking source archive /nix/store/f0az73f8fi7fp7cz55iapzwr0wh1kd93-luv-1.34.1-1.src.rock

Done. You may now enter directory
luv-1.34.1-1/luv-1.34.1-1
and type 'luarocks make' to build.
source root is ./luv-1.34.1-1/luv-1.34.1-1
setting SOURCE_DATE_EPOCH to timestamp 1579323846 of file ./luv-1.34.1-1/luv-1.34.1-1/src/work.c
patching sources
configuring
building
patching script interpreter paths in .
./deps/lua-compat-5.3/tests/test.lua: interpreter directive changed from "/usr/bin/env lua" to "/nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/bin/lua"
installing

luv 1.34.1-1 depends on lua >= 5.1 (5.1-1 provided by VM)
Warning: unmatched variable LUA_LIBDIR
-- The C compiler identification is GNU 9.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /nix/store/1kn7fi3hhi33jms3113riyzwyn2yqpqd-gcc-wrapper-9.2.0/bin/gcc
-- Check for working C compiler: /nix/store/1kn7fi3hhi33jms3113riyzwyn2yqpqd-gcc-wrapper-9.2.0/bin/gcc
-- Check for working C compiler: /nix/store/1kn7fi3hhi33jms3113riyzwyn2yqpqd-gcc-wrapper-9.2.0/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Found LIBUV: /nix/store/w89ndqsb7ig22mw5hk7k7zfvxmhx44xb-libuv-1.34.2/lib/libuv.so
-- Lua: using information from luarocks
-- LUA_LIBDIR:
-- LUA_INCDIR: /nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/include/luajit-2.1
-- LUA: /nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/bin/luajit
-- Lua library: LUA_LIBRARIES-NOTFOUND
-- Configuring done
-- Generating done
-- Build files have been written to: /build/luv-1.34.1-1/luv-1.34.1-1/build.luarocks
Scanning dependencies of target luv
[ 50%] Building C object CMakeFiles/luv.dir/src/luv.c.o
[100%] Linking C shared library libluv.so
[100%] Built target luv
[100%] Built target luv
Install the project...
-- Install configuration: ""
-- Installing: /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/luv-1.34.1-1-rocks/luv/1.34.1-1/lib/libluv.so.1.34.1
-- Installing: /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/luv-1.34.1-1-rocks/luv/1.34.1-1/lib/libluv.so.1
-- Installing: /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/luv-1.34.1-1-rocks/luv/1.34.1-1/lib/libluv.so
-- Installing: /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/luv-1.34.1-1-rocks/luv/1.34.1-1/lib/pkgconfig/libluv.pc
-- Installing: /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/include/luv/luv.h
-- Installing: /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/include/luv/util.h
-- Installing: /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/include/luv/lhandle.h
-- Installing: /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/include/luv/lreq.h
cp: cannot stat '/nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/luv-1.34.1-1-rocks/luv/1.34.1-1/lib/libluv.so': No such file or directory

Error: Failed copying /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/luv-1.34.1-1-rocks/luv/1.34.1-1/lib/libluv.so to /nix/store/f0a65c2fw8l24yb7y21h0bizzlq4iww7-luajit-2.1.0-beta3-luv-1.34.1-1/lib/lua/5.1/libluv.so
builder for '/nix/store/9snxwz16ahc0rbdw4xkwhncgs3cgxv4a-luajit-2.1.0-beta3-luv-1.34.1-1.drv' failed with exit code 1
error: build of '/nix/store/9snxwz16ahc0rbdw4xkwhncgs3cgxv4a-luajit-2.1.0-beta3-luv-1.34.1-1.drv' failed

Just as before. Hence I think this PR is still relevant. It's just that I can't fiddle around with the darwin specific build changes we need to set in order for Neovim to build on Darwin. Help will be appreciated.

@rvolosatovs
Copy link
Member

This PR fixed the build for me on NixOS using latest nixos-unstable. I ran into #79870

@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/why-does-gconf-depends-on-python2/5995/5

evanjs added a commit to evanjs/nixos_cfg that referenced this pull request Feb 23, 2020
use neovim from stable channel until
NixOS/nixpkgs#80528 is merged
pkgs/applications/editors/neovim/default.nix Outdated Show resolved Hide resolved
pkgs/development/lua-modules/overrides.nix Outdated Show resolved Hide resolved
pkgs/development/lua-modules/overrides.nix Outdated Show resolved Hide resolved
@doronbehar
Copy link
Contributor Author

@thefloweringash Thanks a lot for your help!

Everything should be ready now for a Darwin build test by @GrahamcOfBorg .

@teto
Copy link
Member

teto commented Feb 24, 2020

Just to sum up the bigpicture issues:

  • luv either installs the module or the include directory but not both (which in my tests seem to be problematic here). Would be nice to have someone send a PR upstream (like a new target rather than have all checks depend on BUILD_MODULE).
  • the lua infrastructure doesn't play well with cmake build based packages. It seemed possible to pass flags to cmake via luarocks but in the end it isn't thus I've opened cmake build system doesnt take variables from LUAROCKS_CONFIG luarocks/luarocks#1160

Previously we had a luv lua module that contained an alternative luv built via cmake, here we just have a luv.

@teto
Copy link
Member

teto commented Feb 24, 2020

@GrahamcOfBorg build neovim

@ofborg ofborg bot requested a review from vcunat February 25, 2020 07:12
@teto teto mentioned this pull request Feb 25, 2020
10 tasks
@@ -99,6 +99,51 @@ with self; {

luarocks-nix = callPackage ../development/tools/misc/luarocks/luarocks-nix.nix { };

luv = pkgs.stdenv.mkDerivation rec {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this doesn't appear as a lua module anymore, thus installation of luaPackages.nvim-client fails. You can add toLuaModule() but it triggers another issue. Also it doesn't seem to install lua files anymore does it ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

btw I've created this luvit/luv#457

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

do you need luarocks 3.3.1 ? I've reverted the luarocks bump in my fork, maybe we could do likewise until we find a better fix like the one mentioned in my luv issue.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 for catching that @teto (neovim builds fine because doCheck = false by default). After a while trying to debug this - I've finally realized that the BUILD_MODULE cmake flag is what's so problematic - they either install it as a module without headers (which is good only for native Lua packages) or they install everything (which is suitable for neovim). This very issue is what created the original motivation for the libluv and luv different derivations ! I've failed to understand that earlier..

Let's wait for their response for my luvit/luv#458 (comment) .

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To be fair, there is also the problem that the current nixpkgs lua infrastructure doesn't work with cmake based project, I've worked quite a bit on it yesterday and found some issues with luarocks . I think I could solve it via creating a cmake wrapper but meanwhile I've proceeded to upload some unrelated changes I had in my fork #81067 . I don't have the space to run a nixpkgs-review on it (trying to buy a new SSD) but it should be ok overall.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

luv should make sure that SHAREDLIBS_INSTALL_INC_DIR is not empty, it should be possible to define it with the existing variables.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree. I'm working on a fix for luv's CMakeLists right now, feel free to open an issue first there and explain the issue.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@teto while investigating the issue with luv's CMakeLists, I've come to the conclusion that luarocks make sets too many cmake variables, and I don't think we can stop it from doing it. Here's the list of them extracted out of a nix-build -A luajit.pkgs.luv while NIX_DEBUG = 2; was set in luv's derivation:

-G"Unix Makefiles"
-DCMAKE_MODULE_LINKER_FLAGS="-shared"
-DLIBDIR="/nix/store/5wf8zrgpp199pmbbgyvkp7hc484pzrbs-luajit-2.1.0-beta3-luv-1.34.2-0/luv-1.34.2-0-rocks/luv/1.34.2-0/lib"
-DLUA_INCDIR="/nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/include/luajit-2.1"
-DLUA_LIBDIR=""
-DLUA="/nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/bin/luajit"
-DCMAKE_LIBRARY_PATH="/nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/lib:/nix/store/w89ndqsb7ig22mw5hk7k7zfvxmhx44xb-libuv-1.34.2/lib:/nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/lib:/nix/store/w89ndqsb7ig22mw5hk7k7zfvxmhx44xb-libuv-1.34.2/lib"
-DCMAKE_INCLUDE_PATH="/nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/include:/nix/store/w89ndqsb7ig22mw5hk7k7zfvxmhx44xb-libuv-1.34.2/include:/nix/store/1m8vh1byjnjmjkpdidcqc37cykgsqjap-luajit-2.1.0-beta3/include:/nix/store/w89ndqsb7ig22mw5hk7k7zfvxmhx44xb-libuv-1.34.2/include"
-DLUADIR="/nix/store/5wf8zrgpp199pmbbgyvkp7hc484pzrbs-luajit-2.1.0-beta3-luv-1.34.2-0/luv-1.34"

There are a couple of troubles with this:

  1. LIBDIR is set to some distant path inside $out and not just $out/lib.
  2. LUA_LIBDIR is empty.

In my opinion, (1) is severe and unfixable - it's hard-coded inside luarocks make. I think luarocks make can't even imagine itself running a cmake command that will imply installing files in a $prefix/lib instead of $prefix/${rockname-version}-rocks/${rockname}/${version}/lib. Even if we'll fix the original issue cp error this PR was written for, I doubt that neovim will be able to find pkg-config files for luv inside the standard ${luv}/lib path.

I'm not sure what's the effects of (2) but I don't like it either.

This is very messy indeed, most likely because luarocks doesn't expect packages that provide headers and shared libraries someone (or a project like neovim) would expect to find in the standard locations. And I think I realize now that according to this behavior, the original design of luv's CMakeLists files chose to make the BUILD_MODULE and BUILD_SHARED_LIBS colliding.

While writing this, I think perhaps we should provide a libluv package in lua-packages.nix that will use stdenv.mkDerivation and that will be used by neovim along with another luv package that we'll only override, just as before.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've tried my idea and I think it's the most elegant solution to the issue. Especially considering luarocks lack of support for installing arbitrary files to a $prefix, as explained above. I've pushed the final fix for this.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

having to maintain the same package twice because its build system cant find where to install files does not seem elegant + it will keep being a headache; better fix it now that we have everything in mind. As for the cmake call via luarocks; it s not a problem; you can override the parameters via environment variables or patch the luv rockspec. We better open an issue on luv. I am busy tomorrow but will try to do at least saturday.

Timothy- pushed a commit to luvitred/luv that referenced this pull request Apr 17, 2020
@amckinlay
Copy link

HI, I just tried to install neovim with nix-darwin and I am getting the same build error:

...
[100%] Building C object src/nvim/CMakeFiles/nvim.dir/xdiff/xprepare.c.o
make[2]: *** No rule to make target '/nix/store/nyf0qhx47vad558rcv8bskfkdvs9wwav-luajit-2.1.0-beta3-luv-1.34.1-1/lib/lua/5.1/libluv.dylib', needed by 'bin/nvim'.  Stop.
make[2]: *** Waiting for unfinished jobs....
[100%] Building C object src/nvim/CMakeFiles/nvim.dir/xdiff/xutils.c.o
make[1]: *** [CMakeFiles/Makefile2:5012: src/nvim/CMakeFiles/nvim.dir/all] Error 2
make: *** [Makefile:152: all] Error 2
builder for '/nix/store/bpxyw4r1h2wklcwc6kiisq2n9cps67k9-neovim-unwrapped-0.4.3.drv' failed with exit code 2
cannot build derivation '/nix/store/84wks6big9cg91xw8pym4j6kbig22i5s-neovim-0.4.3.drv': 1 dependencies couldn't be built
error: build of '/nix/store/84wks6big9cg91xw8pym4j6kbig22i5s-neovim-0.4.3.drv' failed

As neovim is one of the first packages a user might install after installing nix, shouldn't this be fixed ASAP?

@LnL7
Copy link
Member

LnL7 commented May 24, 2020

That has been fixed quite some time ago by the reverts.

@doronbehar
Copy link
Contributor Author

doronbehar commented May 24, 2020

That has been fixed quite some time ago by the reverts.

This is evidence that a Darwin user is still encountering this issue, which is troubling but I have no idea why is that.

@amckinlay I'm sorry to hear about your experience, but unfortunately this issue is a nasty one which I think most of the involved consider it "upstream's fault". The discussions and comments above should explain it more thoroughly, but basically, we are stuck because of: luarocks/luarocks#509 and/or luarocks/luarocks#339 . Note that we are also stuck with Luarocks 3.2.1 because updating it will break Neovim for all of us. See luarocks/luarocks#1155 .

Even if we'd try to solve this without waiting for upstream, a cleaner fix (then this PR) is orthogonal to some other big changes to Nixpkgs:

And more... 😞

@LnL7
Copy link
Member

LnL7 commented May 25, 2020

This is evidence that a Darwin user is still encountering this issue, which is troubling but I have no idea why is that.

@doronbehar No my revert was for the darwin side. https://hydra.nixos.org/job/nixpkgs/trunk/neovim.x86_64-darwin
As I mentioned in the pr, currently we can't update luv or luarocks, updating either will break one of the platforms.

@amckinlay I would suggest ask a question on irc or discourse, I suspect you've not updated your channel (eg. multi-user) but this is not the right place for debugging that.

@amckinlay
Copy link

@LnL7 @doronbehar Okay, it was fixed. For some reason all my channels were missing so my sudo nix-channel --updates haven't been doing anything for a while. :(

@stale
Copy link

stale bot commented Jun 7, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jun 7, 2021
@teto teto mentioned this pull request Oct 16, 2021
7 tasks
rev = version;
sha256 = "0iq272n7p0wkll4a7d880qyhdp65582cwc3b2zzrirpli93x3v87";
};
disabled = (luaOlder "5.1");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
disabled = (luaOlder "5.1");
disabled = luaOlder "5.1";

@stale stale bot removed 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md labels Oct 16, 2021
# So we can be sure no internal dependency is used from the repo and that
# everything is provided by us
postUnpack = ''
rm -rf deps
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
rm -rf deps
rm -r deps

Comment on lines +147 to +148
NIX_LDFLAGS = pkgs.lib.optionalString pkgs.stdenv.isDarwin
(if isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
NIX_LDFLAGS = pkgs.lib.optionalString pkgs.stdenv.isDarwin
(if isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua");
NIX_LDFLAGS = pkgs.lib.optionalString pkgs.stdenv.isDarwin (if isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua");

(if isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua");
propagatedBuildInputs = [ lua ];

meta = with stdenv.lib; {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
meta = with stdenv.lib; {
meta = with lib; {

Comment on lines +154 to +156
license = {
fullName = "Apache 2.0";
};
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
license = {
fullName = "Apache 2.0";
};
license = licenses.asl20;

Comment on lines +295 to +296
NIX_LDFLAGS = pkgs.lib.optionalString pkgs.stdenv.isDarwin
(if isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
NIX_LDFLAGS = pkgs.lib.optionalString pkgs.stdenv.isDarwin
(if isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua");
NIX_LDFLAGS = pkgs.lib.optionalString pkgs.stdenv.isDarwin (if isLuaJIT then "-lluajit-${lua.luaversion}" else "-llua");

Comment on lines +278 to +285
rm -rf deps
''
# See the following issues:
# - https://github.com/luarocks/luarocks/issues/1160
# - https://github.com/luarocks/luarocks/issues/509
# - https://github.com/luarocks/luarocks/issues/339
+ ''
sed -i 's,\(option(WITH_SHARED_LIBUV.*\)OFF,\1ON,' CMakeLists.txt
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
rm -rf deps
''
# See the following issues:
# - https://github.com/luarocks/luarocks/issues/1160
# - https://github.com/luarocks/luarocks/issues/509
# - https://github.com/luarocks/luarocks/issues/339
+ ''
sed -i 's,\(option(WITH_SHARED_LIBUV.*\)OFF,\1ON,' CMakeLists.txt
rm -r deps
# See the following issues:
# - https://github.com/luarocks/luarocks/issues/1160
# - https://github.com/luarocks/luarocks/issues/509
# - https://github.com/luarocks/luarocks/issues/339
sed -i 's,\(option(WITH_SHARED_LIBUV.*\)OFF,\1ON,' CMakeLists.txt

7c6f434c added a commit to 7c6f434c/nixpkgs that referenced this pull request Oct 16, 2021
This reverts commit eec90bc.

See discussion in:
  NixOS#141718
  NixOS#80528
@7c6f434c 7c6f434c mentioned this pull request Oct 16, 2021
12 tasks
jordanisaacs pushed a commit to jordanisaacs/nixpkgs that referenced this pull request Oct 26, 2021
This reverts commit eec90bc.

See discussion in:
  NixOS#141718
  NixOS#80528
@teto teto mentioned this pull request Mar 29, 2022
13 tasks
@doronbehar doronbehar deleted the improve-neovim branch March 2, 2023 10:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Neovim failing to build on Darwin and Darwin Hydra?