Change:
Steps to reproduce the behavior: Observed: Full checkPhase log (copied from Garnix): Add any other context about the problem here. <!-- Please @ people who are in the list of the offending package or module. If in doubt, check for whoever last touched something. --- system: host os: multi-user?: sandbox: version: nixpkgs: Add a :+1: [reaction] to [issues you find important]. [reaction]: [issues you find important]:
The checkPhase still fails with this PR applied, but it is a different error: Error: While creating /homeless- Caused by: Permission denied (os error 13)
Thanks for the report (I thought I rebuilt it successfully before I opened the PR). Now should be ready now (the failing test is skipped, and an upstream issue was created).

Discussion:
{ stdenv , fetchFromGitLab <del> , fetchpatch </del> , lib , darwin , nettle

rustPlatform.buildRustPackage rec { pname = "sequoia-sq"; <del> version = "0.34.0"; </del> <ins> version = "0.37.0"; </ins> src = fetchFromGitLab { owner = "sequoia-pgp"; repo = "sequoia-sq"; rev = "v${version}"; <del> hash = "sha256-voFektWZnkmIQzI7s5nKzVVWQtEhzk2GKtxX926RtxU="; </del> <ins> hash = "sha256-D22ECJvbGbnyvusWXfU5F1aLF/ETuMyhAStT5HPWR2U="; </ins> }; <del> patches = [ # Fixes test failing on Darwin, see: # https://gitlab.com/sequoia-pgp/sequoia-sq/-/issues/211 (fetchpatch { url = "https://gitlab.com/sequoia-pgp/sequoia-sq/-/commit/21221a935e0d058ed269ae6c8f45c5fa7ea0d598.patch"; hash = "sha256-ZjTl3EumeFwMJUl+qMpX+P2maYz4Ow/Tn9KwYbHDbes="; }) ]; cargoHash = "sha256-3ncBpRi0v6g6wwPkSASDwt0d8cOOAUv9BwZaYvnif1U="; </del> <ins> cargoHash = "sha256-jFpqZKyRCMkMtOezsYJy3Fy1WXUPyn709wZxuwKlSYI="; </ins> nativeBuildInputs = [ pkg-config

nettle ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ Security SystemConfiguration ]); <del> # Sometimes, tests fail on CI (ofborg) & hydra without this </del> checkFlags = [ <del> # doctest for sequoia-ipc fail for some reason "--skip=macros::assert_send_and_sync" "--skip=macros::time_it" </del> <ins> # https://gitlab.com/sequoia-pgp/sequoia-sq/-/issues/297 "--skip=sq_autocrypt_import" </ins> ]; <ins> # Needed for tests to be able to create a ~/.local/share/sequoia directory preCheck = '' export HOME=$(mktemp -d) ''; </ins> env.ASSET_OUT_DIR = "/tmp/"; doCheck = true;

passthru.updateScript = nix-update-script { }; <del> meta = with lib; { </del> <ins> meta = { </ins> description = "Cool new OpenPGP implementation"; homepage = "https://sequoia-pgp.org/"; changelog = "https://gitlab.com/sequoia-pgp/sequoia-sq/-/blob/v${version}/NEWS"; <del> license = licenses.gpl2Plus; maintainers = with maintainers; [ minijackson doronbehar ]; </del> <ins> license = lib.licenses.gpl2Plus; maintainers = with lib.maintainers; [ minijackson doronbehar ]; </ins> mainProgram = "sq"; }; }

}: rustPlatform.buildRustPackage rec { pname = "sequoia-wot"; <del> version = "0.11.0"; </del> <ins> version = "0.12.0"; </ins> src = fetchFromGitLab { owner = "sequoia-pgp"; repo = "sequoia-wot"; rev = "v${version}"; <del> hash = "sha256-qSf2uESsMGUEvAiRefpwxHKyizbq5Sst3SpjKaMIWTQ="; </del> <ins> hash = "sha256-Xbj1XLZQxyEYf/+R5e6EJMmL0C5ohfwZMZPVK5PwmUU="; </ins> }; <del> cargoHash = "sha256-vGseKdHqyncScS57UF3SR3EVdUGKVMue8fnRftefSY0="; </del> <ins> cargoHash = "sha256-BidSKnsIEEEU8UarbhqALcp44L0pes6O4m2mSEL1r4Q="; </ins> nativeBuildInputs = [ pkg-config

target/*/release/build/sequoia-wot-*/out/sq-wot-path.1 ''; <del> meta = with lib; { </del> <ins> meta = { </ins> description = "Rust CLI tool for authenticating bindings and exploring a web of trust"; homepage = "https://gitlab.com/sequoia-pgp/sequoia-wot"; <del> license = licenses.gpl2Only; maintainers = with maintainers; [ Cryolitia ]; </del> <ins> license = lib.licenses.gpl2Only; maintainers = with lib.maintainers; [ doronbehar Cryolitia ]; </ins> mainProgram = "sq-wot"; }; }

passthru.updateScript = nix-update-script { }; <del> meta = with lib; { </del> <ins> meta = { </ins> description = "Implementation of the Stateless OpenPGP Command Line Interface using Sequoia"; homepage = "https://docs.sequoia-pgp.org/sqop/"; <del> license = licenses.gpl2Plus; maintainers = with maintainers; [ doronbehar ]; </del> <ins> license = lib.licenses.gpl2Plus; maintainers = with lib.maintainers; [ doronbehar ]; </ins> mainProgram = "sqop"; }; }

rustPlatform.buildRustPackage rec { pname = "sequoia-sqv"; <del> version = "1.1.0"; </del> <ins> version = "1.2.1"; </ins> src = fetchFromGitLab { owner = "sequoia-pgp"; repo = "sequoia-sqv"; rev = "v${version}"; <del> hash = "sha256-KoB9YnPNE2aB5MW5G9r6Bk+1QnANVSKA2dp3ufSJ44M="; </del> <ins> hash = "sha256-frGukJDsxq+BWLPC/4imfc42lDKVF8BPIQQDazaLaQ0="; </ins> }; <del> cargoPatches = [ ./Cargo.lock.patch ]; cargoHash = "sha256-E6tNOc3omg6yLwCP+MdyBF/HmFTBFCiXd5r+jflfs4k="; </del> <ins> cargoHash = "sha256-1h1nXtXMTwL8ICxWTV8My0IdE+6w0L7xXZD012Cv5U8="; </ins> nativeBuildInputs = [ pkg-config

buildInputs = [ nettle ]; <del> # Otherwise, the shell completion files are not built cargoBuildFlags = [ "--package" "sequoia-sqv" ]; # Use a predictable target directory, to access it when installing shell # completion files. preBuild = '' export CARGO_TARGET_DIR="$(pwd)/target" ''; </del> <ins> # Install shell completion files and manual pages. Unfortunatly it is hard to # predict the paths to all of these files generated during the build, and it # is impossible to control these using `$OUT_DIR` or alike, as implied by # upstream's `build.rs`. This is a general Rust issue also discussed in # https://github.com/rust-lang/cargo/issues/9661, also discussed upstream at: # https://gitlab.com/sequoia-pgp/sequoia-wot/-/issues/56 </ins> postInstall = '' <ins> installManPage target/*/release/build/*/out/man-pages/sqv.1 </ins> installShellCompletion --cmd sqv  <del> --zsh target/_sqv  --bash target/sqv.bash  --fish target/sqv.fish </del> <ins> --zsh target/*/release/build/*/out/shell-completions/_sqv  --bash target/*/release/build/*/out/shell-completions/sqv.bash  --fish target/*/release/build/*/out/shell-completions/sqv.fish </ins> ''; doCheck = true; passthru.updateScript = nix-update-script { }; <del> meta = with lib; { </del> <ins> meta = { </ins> description = "Command-line OpenPGP signature verification tool"; homepage = "https://docs.sequoia-pgp.org/sqv/"; <del> license = licenses.gpl2Plus; maintainers = with maintainers; [ doronbehar ]; </del> <ins> license = lib.licenses.gpl2Plus; maintainers = with lib.maintainers; [ doronbehar ]; </ins> mainProgram = "sqv"; }; }