hi,
neovide (a GUI for neovim GitHub - neovide/neovide: No Nonsense Neovim Client in Rust) has recently been added to nixpkgs.
I would like to build neovide from a git clone using nix-shell -A neovide ~/nixpkgs
. I can achieve this running cargo build
+ patchelf but I would like to use the nix packaging. Iβve tried a couple of things but all fail:
neovide on ξ main via π¦ v1.53.0 via βοΈ IMPURE (neovide-unstable-2021-06-21)
(ins)+ β configurePhase
fixing libtool script ./target/debug/build/sdl2-sys-f6598deb0bca8d71/out/SDL2-2.0.12/build-scripts/ltmain.sh
no configure script, doing nothing
neovide on ξ main via π¦ v1.53.0 via βοΈ IMPURE (neovide-unstable-2021-06-21) took 35s
(ins)β eval "$configurePhase"
trying
(ins)β buildPhase
no Makefile, doing nothing
Executing cargoInstallPostBuildHook
cp: cannot stat 'target/x86_64-unknown-linux-gnu/release/*': No such file or directory
Finished cargoInstallPostBuildHook
neovide on ξ main via π¦ v1.53.0 via βοΈ IMPURE (neovide-unstable-2021-06-21)
(ins)β eval "$buildPhase"
Executing cargoBuildHook
++ env CC_x86_64-unknown-linux-gnu=/nix/store/fdy0bnh3x01rysv3cig42wq3sfcqf0zz-gcc-wrapper-10.3.0/bin/cc CXX_x86_64-unknown-linux-gnu=/nix/store/fdy0bnh3x01rysv3cig42wq3sfcqf0zz-gcc-wrapper-10.3.0/bin/c++ CC_x86_64-unknown-linux-gnu=/nix/store/fdy0bnh3x01rysv3cig42wq3sfcqf0zz-gcc-wrapper-10.3.0/bin/cc CXX_x86_64-unknown-linux-gnu=/nix/store/fdy0bnh3x01rysv3cig42wq3sfcqf0zz-gcc-wrapper-10.3.0/bin/c++ cargo build -j 8 --target x86_64-unknown-linux-gnu --frozen --release
error: failed to get `skia-safe` as a dependency of package `neovide v0.7.0 (/home/teto/neovide)`
Caused by:
attempting to make an HTTP request, but --frozen was specified
Executing cargoInstallPostBuildHook
cp: cannot stat 'target/x86_64-unknown-linux-gnu/release/*': No such file or directory
Finished cargoInstallPostBuildHook
Finished cargoBuildHook
and finally if I try genericBuild I get
neovide on ξ main via π¦ v1.53.0 via βοΈ IMPURE (neovide-unstable-2021-06-21)
(ins)β genericBuild
unpacking sources
unpacking source archive /nix/store/255l92wfjx5hx9k9vmdrvgz9lcspbld8-source
source root is source
Executing cargoSetupPostUnpackHook
unpacking source archive /nix/store/hskwakai3hk4f0b8np9lx7bhiximpd7f-neovide-unstable-2021-06-21-vendor.tar.gz
Finished cargoSetupPostUnpackHook
patching sources
Executing cargoSetupPostPatchHook
Validating consistency between /run/user/1000/source//Cargo.lock and /run/user/1000/neovide-unstable-2021-06-21-vendor.tar.gz/Cargo.lock
/nix/store/bizkvxwm3972081hvjfgirf9w7v5nqkr-diffutils-3.7/bin/diff: /run/user/1000/source//Cargo.lock: No such file or directory
/nix/store/bizkvxwm3972081hvjfgirf9w7v5nqkr-diffutils-3.7/bin/diff: /run/user/1000/neovide-unstable-2021-06-21-vendor.tar.gz/Cargo.lock: No such file or directory
ERROR: Missing Cargo.lock from src. Expected to find it at: /run/user/1000/source//Cargo.lock
Hint: You can use the cargoPatches attribute to add a Cargo.lock manually to the build.
exit
Whatβs the recommended way ? I am not familiar with rust packaging.