`functionArgs` should give valid results on
functions that have been identified with `lib.isFunction`
instead of erroring out.
(cherry picked from commit cf8e219b7e3c8933d6301175f2611990c5281ae9)
binfmt activation script creates /run/binfmt before mounting /run
when system activation.
To fix it I added dependency to specialfs to binfmt activation
script.
(cherry picked from commit bf227785854c9fd4a14c20db12dd6d3ebaf02981)
Upstream is aware but they don't have a fix yet.
I'm not aware of NixPkgs being used for another platform
affected by this (e.g. ppc64le).
(cherry picked from commit 895ce97eeadded30c897022b1768b645df21501e)
This fixes an evaluation error that's blocking the nixos-unstable
channel (#132328).
(cherry picked from commit b5fab53628e8f080bae24ea1396f72d9d21e1f9b)
Had to do this manually, because this `name`->`pname` "refactoring"
makes automated backports impossible.
Changes: 08450562e5...9c707dc32a
(cherry picked from commit bee0468d7ba37fffc19d509eaffdd49bf30ed9e1)
It seems as since Chromium 92, `chromium` crashes on startup if
`XDG_CONFIG_HOME` points to a read-only (store-)path.
(cherry picked from commit 8c35a69a6ea206204ddfd3116c4497020b9f2724)
Use the `${version}-assembly` artifact, which avoids
having to download it using the release script
(cherry picked from commit 74090eb68a2fd8e0a6ef0000f36a784ed2d27194)
* GCC 10 support.
* clang 10 support.
* SBAT support.
* LUKS2 support.
* Drop small MBR gap support.
* Xen Security Modules (XSM/FLASK) support.
* The lockdown mechanism similar to the Linux kernel one.
* Disable the os-prober by default.
* Many backports of GRUB distros specific patches.
* BootHole and BootHole2 fixes.
* XFS bigtime support.
* ...and tons of other fixes and cleanups...
(cherry picked from commit 963b0a1dbf32b80eb6375973bff48af313c2a7c5)
Before this commit, the `flake` option was typed with `types.unspecified`.
This type get's merged via [`mergeDefaultOption`](ebb592a04c/lib/options.nix (L119-L128)), which has a line
```nix
else if all isFunction list then x: mergeDefaultOption loc (map (f: f x) list)
```
`lib.isFunction` detects an attrs in the shape of `{__functor = ...}` as
a function and hence this line substitutes such attrs with a function
(f: f x).
If now, a flake input has a `__functor` as it's output, this will
coerce the once attrs to a function. This breaks a lot of things later
in the stack, for example a later `lib.filterAttrs seive <LAMBDA>` will
fail for obious reasons.
According to @infinisil, `types.unspecified` is due to deprecation. In
the meantime this PR provides a specific fix for the specific problem
discovered.
(cherry picked from commit ecae25c3ef137d972e909eb0e85960d90481789e)