From 028af7c17dacf56953cafd8a19aaecd12edf7921 Mon Sep 17 00:00:00 2001 From: Hans Joachim Kliemeck Date: Tue, 14 Oct 2025 18:59:25 +0200 Subject: [PATCH] stdenv: pURL review suggestions - replace merge --- pkgs/build-support/fetchgit/default.nix | 17 ++++++---- pkgs/build-support/fetchgithub/default.nix | 37 ++++++++++++---------- 2 files changed, 30 insertions(+), 24 deletions(-) diff --git a/pkgs/build-support/fetchgit/default.nix b/pkgs/build-support/fetchgit/default.nix index 581cd1c9a19c..05abacef8d80 100644 --- a/pkgs/build-support/fetchgit/default.nix +++ b/pkgs/build-support/fetchgit/default.nix @@ -187,13 +187,16 @@ lib.makeOverridable ( inherit preferLocalBuild allowedRequisites; - meta = lib.recursiveUpdate { - identifiers.purlParts = { - type = "generic"; - # https://github.com/package-url/purl-spec/blob/18fd3e395dda53c00bc8b11fe481666dc7b3807a/types-doc/generic-definition.md - spec = "${name}?vcs_url=${url}@${(lib.revOrTag rev tag)}"; - }; - } meta; + meta = meta // { + identifiers = { + purlParts = { + type = "generic"; + # https://github.com/package-url/purl-spec/blob/18fd3e395dda53c00bc8b11fe481666dc7b3807a/types-doc/generic-definition.md + spec = "${name}?vcs_url=${url}@${(lib.revOrTag rev tag)}"; + }; + } + // meta.identifiers or { }; + }; passthru = { gitRepoUrl = url; diff --git a/pkgs/build-support/fetchgithub/default.nix b/pkgs/build-support/fetchgithub/default.nix index 07c4c393ed88..a19a0a5a3cab 100644 --- a/pkgs/build-support/fetchgithub/default.nix +++ b/pkgs/build-support/fetchgithub/default.nix @@ -42,28 +42,31 @@ lib.makeOverridable ( builtins.unsafeGetAttrPos "rev" args ); baseUrl = "https://${githubBase}/${owner}/${repo}"; - newMeta = lib.recursiveUpdate ( - { + newMeta = + meta + // { homepage = meta.homepage or baseUrl; - identifiers.purlParts = - if githubBase == "github.com" then - { - type = "github"; - # https://github.com/package-url/purl-spec/blob/18fd3e395dda53c00bc8b11fe481666dc7b3807a/types-doc/github-definition.md - spec = "${owner}/${repo}@${(lib.revOrTag rev tag)}"; - } - else - { - type = "generic"; - # https://github.com/package-url/purl-spec/blob/18fd3e395dda53c00bc8b11fe481666dc7b3807a/types-doc/generic-definition.md - spec = "${repo}?vcs_url=https://${githubBase}/${owner}/${repo}@${(lib.revOrTag rev tag)}"; - }; + identifiers = { + purlParts = + if githubBase == "github.com" then + { + type = "github"; + # https://github.com/package-url/purl-spec/blob/18fd3e395dda53c00bc8b11fe481666dc7b3807a/types-doc/github-definition.md + spec = "${owner}/${repo}@${(lib.revOrTag rev tag)}"; + } + else + { + type = "generic"; + # https://github.com/package-url/purl-spec/blob/18fd3e395dda53c00bc8b11fe481666dc7b3807a/types-doc/generic-definition.md + spec = "${repo}?vcs_url=https://${githubBase}/${owner}/${repo}@${(lib.revOrTag rev tag)}"; + }; + } + // meta.identifiers or { }; } // lib.optionalAttrs (position != null) { # to indicate where derivation originates, similar to make-derivation.nix's mkDerivation position = "${position.file}:${toString position.line}"; - } - ) meta; + }; passthruAttrs = removeAttrs args [ "owner"