Ludovic Courtès <l...@gnu.org> writes:
> Hello, > > YOANN P <yoann_mac_don...@hotmail.com> skribis: > >> I was thinking than "~/.guix-profile/manifest" was a valid manifest file due >> to his name, but it seems not that is the case from the error i've got >> >> https://pastebin.com/Z7h2t5mL >> >> After some search , i've finally understand that the instantiated profile >> couldn't be used as source profile for "guix package -m" etc... due to the >> same words despite use case and is a bit confusing > > I agree it’s a bit confusing. The manual does make it clear that -m > expects source code that evaluates to a manifest object, though. > >> https://gnunet.org/bot/log/guix/2016-05-27#T1040380 >> >> It will be really convenient to only have the instantiate profile to easily >> maintain it in a vcs system. >> >> Despite what ludo said in 2016 on IRC, i didn't see those options yet. >> Did i missed them ? >> If not implemented yet, any news about this feature ? :) > > No news I’m afraid :-) but I’ve opened an issue so we keep track of it: > > https://issues.guix.info/issue/32844 Hi Ludo’, Your bug doesn't capture some other manifest issues ... "~/.guix-profile/manifest" and 'guix package --manifest=FILE' use the same term/filename for markedly different things and the doc is silent on the distinction. While "~/.guix-profile/manifest" may be internal to Guix, users will inevitably trip across it and be confused (as YOANN did here, and I did a year ago). We might avoid confusion and make documentation easier by renaming one of these. Consider ... We are using "~/.guix-profile/manifest" in a way that is consistent with a common use, e.g., shipping manifest, which specifies information not in the associated order and at a level of detail that can only be determined at shipment (e.g. serial number). Our use of manifest in 'guix package --manifest=FILE' is rather less intuitive. In fact this FILE is more like an order than a manifest, IMO. As the doc says, [the manifest] 'FILE must return a “manifest” object, which is roughly a list of packages'. If we were to rename this a "package-list" or "package-spec", this would be more intuitive and self-explanatory (at least to me, an English speaker), and make the doc easier to write/understand. YOANN hit an error when trying to do 'guix package -m ~/.guix-profile/manifest'. Why would one want to do this? Maybe to (re)produce a configuration previously reached by a series of 'guix package -i' operations? In most situations, rather than a "~/.guix-profile/manifest" file, one wants to use a 'guix package --manifest=FILE', since this is more durable over time and easier to maintain (e.g. in SCC). So, IMO, it would be useful to have something like ... guix package --manifest-from-profile -p ~/.guix-profile > FILE ... which returns a "minimally specified" FILE that allows 'guix package --manifest=FILE' to reproduce "~/.guix-profile". - George