This "un-breaks" sage while also updating it to 8.0.
It compiles sage with its dependencies as one big pile, which is not
the best approach but definately better than nothing for now.
To be able to shrink the huge output pile a little, it also splits
docs from the rest of the output.
This file doesn't evaluate in 32-bit versions of Nix because the integer
type is a signed 32-bit integer there, so 4294967296 causes an 'invalid
integer' error. I see no other way around than commenting this out :(
(s32 could be made to work by tweaking the expressions a bit, but didn't
do that for now since it'd be asymmetric to have s32 but no u32).
For a while now, the only thing the 'uboot' attribute does is to tell
whether to add ubootTools to kernel/initrd builds. That can be
determined with platform.kernelTarget == "uImage" just as well.
Before:
<x> is not a integer between 0 and 100 (inclusively).
(notice that “a” is wrong, it should be “an”)
Now:
<x> is not of type `integer between 0 and 100 (inclusively)'.
This sounds a bit more formal, but circumvents the grammatical problems.
Multi-word type descriptions are also easier to see.
The `make regression` line was failing because the expression was
downloading a core-system-only, no-libraries source tarball. I
switched to using fetchFromGitHub, which downloads the full source
code -- the core system as well as the "community books",
i.e. libraries -- but the libraries unfortunately do not build yet
because they have more dependencies than the core system, and they
also run into some impurity problems during the build process.
This commit changes the ACL2 package so that at least the user will
obtain the latest version of the core system, even though they won't
get the community books. In a later commit I hope to fix this; it
will require either changes to ACL2 itself, or a patch to be applied
to ACL2 in nixpkgs.
ACL2 7.4 has no trouble building on the current version of SBCL in
nixpkgs, so I let it do so instead of using the ancient SBCL version
1.2.0 from 2014.
I also added myself as a maintainer to this package, since I'm an
active contributor to the ACL2 project and am interested in seeing it
working on Nix.