pub2nix.readPubspecLock: Add `packagePath` convenience attribute

authored by

hacker1024 and committed by
FlafyDev
bea71b1f dbc05b2c

+8 -2
+8 -2
pkgs/build-support/dart/pub2nix/pubspec-lock.nix
··· 74 mkSdkDependencySource = name: details: 75 (sdkSourceBuilders.${details.description} or (throw "No SDK source builder has been given for ${details.description}!")) name; 76 77 dependencySources = lib.filterAttrs (name: src: src != null) (builtins.mapAttrs 78 - (name: details: ({ 79 "hosted" = mkHostedDependencySource; 80 "git" = mkGitDependencySource; 81 "path" = mkPathDependencySource; 82 "sdk" = mkSdkDependencySource; 83 - }.${details.source} name) details) 84 pubspecLock.packages); 85 in 86 {
··· 74 mkSdkDependencySource = name: details: 75 (sdkSourceBuilders.${details.description} or (throw "No SDK source builder has been given for ${details.description}!")) name; 76 77 + addDependencySourceUtils = dependencySource: dependencySource.overrideAttrs ({ passthru, ... }: { 78 + passthru = passthru // { 79 + packagePath = dependencySource + "/${dependencySource.packageRoot}"; 80 + }; 81 + }); 82 + 83 dependencySources = lib.filterAttrs (name: src: src != null) (builtins.mapAttrs 84 + (name: details: addDependencySourceUtils (({ 85 "hosted" = mkHostedDependencySource; 86 "git" = mkGitDependencySource; 87 "path" = mkPathDependencySource; 88 "sdk" = mkSdkDependencySource; 89 + }.${details.source} name) details)) 90 pubspecLock.packages); 91 in 92 {