Fixes <https://bugs.gnu.org/48778>.
A side effect of
c47f3fc13562d82edfd2d47342574154c452843a is that
(@ (guix describe) current-profile) provides the correct answer when the
'guix' package is installed in a profile. Consequently, the 'guix'
package installed in /run/current-system/profile (for instance) would
end up loading all the .scm files in that directory.
* guix/describe.scm (current-channel-entries): Remove ENTRY if it lacks
the 'source' property.
"Return manifest entries corresponding to extra channels--i.e., not the
'guix' channel."
(remove (lambda (entry)
- (string=? (manifest-entry-name entry) "guix"))
+ (or (string=? (manifest-entry-name entry) "guix")
+
+ ;; If ENTRY lacks the 'source' property, it's not an entry
+ ;; from 'guix pull'. See <https://bugs.gnu.org/48778>.
+ (not (assq 'source (manifest-entry-properties entry)))))
(current-profile-entries))))
(define current-channels