This is less likely to conflict with a user installed gcc-toolchain, unless
they installed a specific version of it.
* gnu/packages/benchmark.scm (gcc-toolchain*): Use gcc-toolchain-12 instead of
gcc-toolchain.
This manifest makes it easy to test travels from the current revision
back to the revision of a past Guix release.
Suggested by zimoun <zimon.toutoune@gmail.com>.
* etc/time-travel-manifest.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
Fixes <https://issues.guix.gnu.org/56441>.
Reported by zimoun <zimon.toutoune@gmail.com>.
Fixes a bug introduced in 4ff12d1de7cd617b791996ee7ca1240660b4c20e with
version 4 of the manifest format. A new 'guix time-machine' would
create a v4 manifest; when targeting an old revision (v3),
'generate-package-cache' would fail to read that manifest and abort.
Furthermore, an old Guix living in a new profile with a v4 manifest
would be unable to describe itself via (guix describe).
* guix/channels.scm (package-cache-file): Add 'format-version' field to
PROFILE.
(channel-instances->derivation): Pass #:format-version to
'profile-derivation'.
* guix/profiles.scm (%manifest-format-version): New variable.
(manifest->gexp): Add optional 'format-version' parameter.
[optional, entry->gexp]: Honor it.
(profile-derivation): Add #:format-version parameter and honor it.
(<profile>)[format-version]: New field.
(profile-compiler): Honor it.
* guix/build/profiles.scm (manifest-sexp->inputs+search-paths): Support
both versions 3 and 4. Remove unused 'properties' variable.
* tests/profiles.scm ("profile-derivation format version 3"): New test.
Version 2 was introduced in commit
dedb17ad010ee9ef67f3f4f3997dd17f226c8090 (May 2015), which made it into
Guix 0.9.0.
* guix/profiles.scm (find-package): Remove.
(sexp->manifest)[infer-search-paths]: Remove.
Remove clauses for versions 0 and 1.
* gnu/packages/lisp-xyz.scm (sbcl-slime-swank)[arguments]: Patch swank.asd to
store the .fasl in the ASDF registry so that they are found in the
package.
Also patch swank-loader.lisp so that it does not try to remove the .fasl from
the store.
(cl-slime-swank)[arguments]: Revert above patch of the swank.ask so that the
source package does not get bound to the SBCL package.
We would not have to do this if SLIME/Swank used ASDF properly instead of
working around it.
* gnu/packages/lisp-xyz.scm (sbcl-osicat)[source]: Remove unneeded release.sh
file.
This takes the closure size of cl-osicat from 40 MiB down to 0 MiB.
* gnu/packages/lisp-xyz.scm (sbcl-trivial-clipboard)[inputs]: Replace xclip
with xsel.
[arguments]: Adapt reference.
This takes the closure size of cl-trivial-clipboard from 90 MiB down to 78 MiB.
* gnu/packages/lisp-xyz.scm (sbcl-cluffer)[arguments]: Unpatch shell shebangs.
It's only needed to generate the documentation (which we should do at
build-time by the way).
This takes the closure size of cl-cluffer from 40 MiB down to 0 MiB.
* gnu/packages/lisp-xyz.scm (sbcl-clsql)[source]: Delete the 'debian' folder
and all Makefiles.
This takes the closure size from 930 MiB down to 889 MiB.
* gnu/packages/lisp.scm (sbcl)[arguments]: Add phase to do it.
This shrinks SBCL from 167MiB to 150MiB.
Most importantly, this propagates to all sbcl-* packages.