-
Notifications
You must be signed in to change notification settings - Fork 23
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
feat: add buildOverrides, and initial moveline-nvim build step #117
base: main
Are you sure you want to change the base?
Conversation
Ok, this looks like I'm going to have to do a bit of work before it builds. I've set it up, but yeah, none of the plugin attributes that are being overridden in When importing from the flake directly, you can consume the working package. But yeah, I think the way that you go about the plugin cleanup might need to be changed to account for the overrides file? For what it's worth, the cleanup command ( |
Regarding the missing lock file: moveline-lib = rustPlatform.buildRustPackage {
inherit (old) src;
inherit (old) version;
pname = "moveline-lib";
cargoHash = "sha256-mA17kKigR5CaZoFY/Do7kJmQCxU8+JJY0uB6FvSM+7I=";
buildInputs = [ final.pkgs.cargo ];
prePatch = ''
cargo generate-lockfile
'';
};
I am not sure what you mean by this. It seems like neovim does not find the plugin, and I am not sure where which files would have to be. buildOverrides = self: super: {
moveline-nvim = super.moveline-nvim.overrideAttrs (old: {
buildInputs = [ final.pkgs.cargo ];
postInstall = let
moveline-lib = rustPlatform.buildRustPackage {
inherit (old) src;
inherit (old) version;
pname = "moveline-lib";
cargoHash = "sha256-mA17kKigR5CaZoFY/Do7kJmQCxU8+JJY0uB6FvSM+7I=";
buildInputs = [ final.pkgs.cargo ];
prePatch = ''
cargo generate-lockfile
'';
postInstall = old.postInstall + ''
mkdir -p $out/deps
mv target/x86_64-unknown-linux-gnu/release/deps $out/deps
'';
};
in ''
mkdir -p lua/moveline
ln -s ${moveline-lib}/lib/libmoveline.so lua/moveline.so
ln -s ${moveline-lib}/deps lua/deps
';
});
# which-key-nvim = super.which-key-nvim.overrideAttrs (old: {
# postInstall = ''
# ls $out
# echo ---
# ls $out/lua/which-key
# exit 1
# '';
# });
}; The which-key is only for comparison |
If you look at the logs of the failed action workflow, it says that the plugins being overridden in the When consuming the plugin normally (importing to my own neovim config), everything works as expected. It's just the update plugins workflow that has issues. I think we'd have to either change how the update workflow works somewhat, but I'm not sure where to start with that. |
The workflow not running is expected. I tried to compile it locally, with the NixNeovimPlugins repo being overwritten. Did you use the config above, or did you just add the plugin package to your NixNeovim config? |
i had to point it to a forked repo here, since the upstream doesn't have a cargo.lock file.
if you'd like me to handle that a different way, let me know