about summary refs log tree commit diff
path: root/pkgs/test/nixpkgs-check-by-name/src/eval.rs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/test/nixpkgs-check-by-name/src/eval.rs')
-rw-r--r--pkgs/test/nixpkgs-check-by-name/src/eval.rs17
1 files changed, 13 insertions, 4 deletions
diff --git a/pkgs/test/nixpkgs-check-by-name/src/eval.rs b/pkgs/test/nixpkgs-check-by-name/src/eval.rs
index b411a2a3c601..c4dad8257cf9 100644
--- a/pkgs/test/nixpkgs-check-by-name/src/eval.rs
+++ b/pkgs/test/nixpkgs-check-by-name/src/eval.rs
@@ -168,14 +168,23 @@ pub fn check_values(
                         // so the UsesByName ratchet is already as tight as it can be
                         NonAttributeSet => Success(Tight),
                         NonCallPackage => Success(Tight),
-                        // This is an odd case when _internalCallByNamePackageFile is used to define a package.
+                        // This is the case when the `pkgs/by-name`-internal _internalCallByNamePackageFile
+                        // is used for a package outside `pkgs/by-name`
                         CallPackage(CallPackageInfo {
                             call_package_variant: Auto,
                             ..
-                        }) => NixpkgsProblem::InternalCallPackageUsed {
-                            attr_name: attribute_name.clone(),
+                        }) => {
+                            // With the current detection mechanism, this also triggers for aliases
+                            // to pkgs/by-name packages, and there's no good method of
+                            // distinguishing alias vs non-alias.
+                            // Using `config.allowAliases = false` at least currently doesn't work
+                            // because there's nothing preventing people from defining aliases that
+                            // are present even with that disabled.
+                            // In the future we could kind of abuse this behavior to have better
+                            // enforcement of conditional aliases, but for now we just need to not
+                            // give an error.
+                            Success(Tight)
                         }
-                        .into(),
                         // Only derivations can be in pkgs/by-name,
                         // so this attribute doesn't qualify
                         CallPackage(CallPackageInfo {