Hi. Im trying to update a package called uefi-run with a custom version that I modified. So far everything was going good until I needed to update cargoHash.
Shell.nix
{ pkgs ? import <nixpkgs> { overlays = [
(import ./QEMU/overlay.nix)
(self: super: {
uefi-run = super.uefi-run.overrideAttrs (oldAttrs: {
src = self.fetchFromGitHub {
owner = "dje4321";
repo = "uefi-run";
rev = "ed0e5ebfcf0c1b3d11e35996be2e3de070118105";
sha256 = "3VxvH0fZclEp5h08RiPzblghwHbsNnXRjRWrgKZguUw=";
};
version = "0.6.1";
cargoHash = "sha256-G3UAX9IDh+xlbnQHIYD5krn/vZJLOeqy/MS8A/b8+2o=";
});
})
];
}}:
pkgs.mkShell {
packages = [ pkgs.patched-qemu pkgs.uefi-run pkgs.lldb pkgs.gdb ];
shellHook = ''
export PS1='\[\e[38;5;39;1m\]\u\[\e[0m\]@\[\e[38;5;196m\]\h\[\e[0m\]:\[\e[38;5;46;4m\]\w \[\e[0m\][$?]\$ '
clear
'';
# nativeBuildInputs is usually what you want -- tools you need to run
nativeBuildInputs = with pkgs.buildPackages; [ rustup ];
}
When building I get this error saying to set cargoHash to an empty value to get the correct hash. However, regardless of what I do, I get the same error back saying to set cargoHash to an empty value.
Am I just missing something obvious here?
Here is the specific error im getting from nix-shell
ERROR: cargoHash or cargoSha256 is out of date
Cargo.lock is not the same in /build/uefi-run-0.6.0-vendor.tar.gz
To fix the issue:
1. Set cargoHash/cargoSha256 to an empty string: `cargoHash = "";`
2. Build the derivation and wait for it to fail with a hash mismatch
3. Copy the "got: sha256-..." value back into the cargoHash field
You should have: cargoHash = "sha256-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX=";
error: builder for '/nix/store/kqy5qavdiq6iy768l04n7wp7378pyrkv-uefi-run-0.6.1.drv' failed with exit code 1;
last 10 log lines:
> ERROR: cargoHash or cargoSha256 is out of date
>
> Cargo.lock is not the same in /build/uefi-run-0.6.0-vendor.tar.gz
>
> To fix the issue:
> 1. Set cargoHash/cargoSha256 to an empty string: `cargoHash = "";`
> 2. Build the derivation and wait for it to fail with a hash mismatch
> 3. Copy the "got: sha256-..." value back into the cargoHash field
> You should have: cargoHash = "sha256-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX=";
>