Age | Commit message (Collapse) | Author |
|
The `platform` field is pointless nesting: it's just stuff that happens
to be defined together, and that should be an implementation detail.
This instead makes `linux-kernel` and `gcc` top level fields in platform
configs. They join `rustc` there [all are optional], which was put there
and not in `platform` in anticipation of a change like this.
`linux-kernel.arch` in particular also becomes `linuxArch`, to match the
other `*Arch`es.
The next step after is this to combine the *specific* machines from
`lib.systems.platforms` with `lib.systems.examples`, keeping just the
"multiplatform" ones for defaulting.
|
|
platforms.nix: Remove now unused kernelMajor
|
|
licenses: Mark unclear GPL licenses explicitly deprecated
|
|
lib/systems/platforms: treat missing cpu version as generic pcBase
|
|
|
|
Since 40e7be1 all ARM platforms that didn't have a parsed cpu version
(e.g. arm-none-eabi) would be handled as armv7l-hf-multiplatform which
did break building arm-trusted-platform packages for some targets (e.g.
rk3399).
Using pcBase as fallback, instead of armv7l-hf-multiplatform,
corresponds with the behaviour we had before 40e7be1.
|
|
|
|
We recently switched to more explicit GPL license names in line
with the SPDX change and GNU Foundation recommendations:
https://www.gnu.org/licenses/identify-licenses-clearly.html
This followed up older change to use the recommended SPDX ID
https://github.com/NixOS/nixpkgs/commit/18a5e8c36b2681f5fc4aecd79f4cc723365d2d94
but using the `-only` variant for these deprecated licenses too
makes it harder to check for them automatically.
Let’s switch to the appropriate SPDX ID again.
|
|
Initrd improvements
|
|
assertions"
|
|
Module-builtin assertions, disabling assertions and submodule assertions
|
|
lib.licenses: add Parity-7.0.0 license
|
|
To avoid name clashes
Co-authored-by: Robert Hensing <robert@roberthensing.nl>
|
|
Previously the .enable option was used to encode the condition as well,
which lead to some oddness:
- In order to encode an assertion, one had to invert it
- To disable a check, one had to mkForce it
By introducing a separate .check option this is solved because:
- It can be used to encode assertions
- Disabling is done separately with .enable option, whose default can be
overridden without a mkForce
|
|
IA64 (Itanium) is something completely different and certainly not
what we want! x86_64 code lives in arch/x86 just like "classic" x86.
|
|
|
|
Describing the string argument as a string is redundant and not needed
to describe what this function does.
|
|
The example refers to a snake_case function name but Nix uses camelCase
function names. This ensures the example is correct for the given
function.
|
|
The As was missing in the examples on this library function. This will
ensure the examples refer to the function they document.
|
|
Platform config improvements
|
|
Cross-compile configuration for reMarkable 2 tablet
|
|
|
|
Honestly this option should probably just be removed
|
|
Previously this option was thought to be necessary to avoid infinite
recursion, but it actually isn't, since the check evaluation isn't fed
back into the module fixed-point.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This implements assertions/warnings supported by the module system directly,
instead of just being a NixOS option (see
nixos/modules/misc/assertions.nix).
This has the following benefits:
- It allows cleanly redoing the user interface. The new
implementation specifically allows disabling assertions or
converting them to warnings instead.
- Assertions/warnings can now be thrown easily from within
submodules, which previously wasn't possible and needed workarounds.
|
|
Initially https://github.com/NixOS/nixpkgs/pull/82897 prevented
non-visible options from being rendered in the manual, but
visible-but-internal options were still being recursed into. This fixes
this, aligning the recurse condition here with the one in
make-options-doc/default.nix
|
|
lib/modules: Make sure to not import module _file's into the store
|
|
|
|
|
|
|
|
We dont have to match on exact strings if we get accessed to `parsed`.
Co-authored-by: Matthew Bauer <mjbauer95@gmail.com>
|
|
|
|
Initial implementation of remarkable1 cross-compile
|
|
This improves performance by ~30-40% for smaller test cases and makes
larger cases where my laptop would OOM pass in seconds.
|
|
|
|
The last use of `kernelMajor` in Nixpkgs was removed in 2018.
Even then, I'm not positive it was actually in an exercised code path.
AFAIUI this is now totally redundant and useless as it really was meant
for the 2.4 -> 2.6 transition.
|
|
It's ugly as hell, but I suppose it is needed to codify how to make
spliced package sets.
|
|
|
|
|
|
|
|
Initial implementation of cross-compilation to Knuth's MMIX
|
|
|
|
|