Improve Nix wrapper

Signed-off-by: magic_rb <richard@brezak.sk>
This commit is contained in:
magic_rb 2023-10-22 00:34:43 +02:00
parent 0443c69a77
commit 3ad614d4a5
No known key found for this signature in database
GPG key ID: 08D5287CC5DDCA0E

View file

@ -284,31 +284,32 @@
esac esac
done done
${pkgs.lib.getExe pkgs.nixUnstable} "''${new_args[@]}" ( exec -a $0 .nix-unwrapped "''${new_args[@]}" )
post_lock_hash="$(sha256sum flake-secret.lock | cut -f1 -d' ')" post_lock_hash="$(sha256sum flake-secret.lock | cut -f1 -d' ')"
if ! [[ "$pre_lock_hash" == "$post_lock_hash" ]] ; then if ! [[ "$pre_lock_hash" == "$post_lock_hash" ]] ; then
cp flake-secret.lock flake.lock cp flake-secret.lock flake.lock
${pkgs.lib.getExe pkgs.nixUnstable} flake lock --override-input secret path:///var/empty .nix-unwrapped flake lock --override-input secret path:///var/empty
fi fi
''; '';
nix-unwrapped = pkgs.writeShellScriptBin "nix-unwrapped" ''
exec ${pkgs.lib.getExe pkgs.nixUnstable} "$@"
'';
nix-with-wrapper = pkgs.symlinkJoin { nix-with-wrapper = pkgs.symlinkJoin {
name = "nix"; name = "nix";
paths = [ # pkgs.nixUnstable paths = [ pkgs.nixUnstable ];
nix-unwrapped buildInputs = [ pkgs.makeWrapper ];
nix-wrapped ]; postBuild = ''
mv $out/bin/nix $out/bin/.nix-unwrapped
cp ${nix-wrapped}/bin/nix $out/bin/nix
'';
}; };
nixos-rebuild = pkgs.nixos-rebuild.override { nix = nix-with-wrapper; };
in in
pkgs.mkShell { pkgs.mkShell {
nativeBuildInputs = with pkgs; [ nativeBuildInputs = with pkgs; [
(pkgs.writeShellScriptBin "update-secret" '' (pkgs.writeShellScriptBin "update-secret" ''
nix flake lock --update-input secret nix flake lock --update-input secret
'') '')
nil nix-with-wrapper nil nix-with-wrapper nixos-rebuild
nomad consul vault nomad consul vault
haskell.compiler.ghc946 haskell.compiler.ghc946