diff --git a/src/nix/flake.cc b/src/nix/flake.cc index 5fc3f4166..3cd702254 100644 --- a/src/nix/flake.cc +++ b/src/nix/flake.cc @@ -219,6 +219,8 @@ struct CmdFlakeMetadata : FlakeCommand, MixJSON j["resolvedUrl"] = flake.resolvedRef.to_string(); j["resolved"] = fetchers::attrsToJSON(flake.resolvedRef.toAttrs()); j["url"] = flake.lockedRef.to_string(); // FIXME: rename to lockedUrl + // "locked" is a misnomer - this is the result of the + // attempt to lock. j["locked"] = fetchers::attrsToJSON(flake.lockedRef.toAttrs()); if (auto rev = flake.lockedRef.input.getRev()) j["revision"] = rev->to_string(HashFormat::Base16, false); @@ -235,9 +237,10 @@ struct CmdFlakeMetadata : FlakeCommand, MixJSON logger->cout( ANSI_BOLD "Resolved URL:" ANSI_NORMAL " %s", flake.resolvedRef.to_string()); - logger->cout( - ANSI_BOLD "Locked URL:" ANSI_NORMAL " %s", - flake.lockedRef.to_string()); + if (flake.lockedRef.input.isLocked()) + logger->cout( + ANSI_BOLD "Locked URL:" ANSI_NORMAL " %s", + flake.lockedRef.to_string()); if (flake.description) logger->cout( ANSI_BOLD "Description:" ANSI_NORMAL " %s", diff --git a/src/nix/profile.cc b/src/nix/profile.cc index 2bb29a67b..60ad4b252 100644 --- a/src/nix/profile.cc +++ b/src/nix/profile.cc @@ -650,7 +650,9 @@ struct CmdProfileUpgrade : virtual SourceExprCommand, MixDefaultProfile, MixProf assert(infop); auto & info = *infop; - if (element.source->lockedRef == info.flake.lockedRef) continue; + if (info.flake.lockedRef.input.isLocked() + && element.source->lockedRef == info.flake.lockedRef) + continue; printInfo("upgrading '%s' from flake '%s' to '%s'", element.source->attrPath, element.source->lockedRef, info.flake.lockedRef);