Commit Graph

4234 Commits

Author SHA1 Message Date
K900
940db5766a
Revert "lib.filesystem.packagesFromDirectoryRecursive: refactor (#359941)"
This reverts commit 8a59b79070.
2024-12-02 10:21:52 +03:00
nicoo
8a59b79070
lib.filesystem.packagesFromDirectoryRecursive: refactor (#359941)
No functional changes.

- Centralize the logic classifying files/directories of interest, instead of
  being spread between `directoryEntryIsPackage` and `directoryEntryToAttrPair`.
- Replace a composition of `mapAttrs'` and `filterAttrs` with `concatMapAttrs`.
- Simplify future improvements, such as creating nested scopes for subdirs,
  or ignoring unsupported files.
2024-12-01 10:07:46 +00:00
Philip Taron
9396352fba
lib/systems: elaborate properly with non-matching system / config / parsed args (#351608) 2024-11-29 15:48:15 -08:00
John Ericson
07f8638828
freebsd: Add support for aarch64 (#358053) 2024-11-26 20:39:38 -05:00
Philip Taron
01fdad87c4
stdenv: add Silvermont support, remove incorrect AES support (#355127) 2024-11-25 10:50:35 -08:00
Wolfgang Walther
af10dd2014
lib/customisation: remove overrideScope'
Let's follow through on the comment.
2024-11-24 21:09:32 +01:00
Emily
49d9ef16b1
treewide: remove deprecations up until 24.11 (#356732) 2024-11-24 19:46:12 +00:00
Silvan Mosberger
b234fd831a
lib.types.defaultTypeMerge: refactor functor.{payload,wrapped} merging (#350906) 2024-11-24 11:44:56 +01:00
Artemis Tosini
2b02a18ef7
freebsd: Add support for aarch64
Add a new `aarch64-freebsd` double and example system,
then fix include and libc to work.
This is enough to build packages like `hello`,
either static or dynamic.

This is useful for testing nix FreeBSD on a Raspberry Pi.
2024-11-24 03:03:28 +00:00
Wolfgang Walther
73df63f8ef
lib/options: remove mdDoc
Following through on message itself.
2024-11-22 18:30:11 +01:00
seth
4d874d59e2
lib.systems.examples: set rust.rustcTarget for ucrtAarch64
Closes https://github.com/NixOS/nixpkgs/issues/357751
2024-11-21 04:56:45 -05:00
Jörg Thalheim
6d2d99ef57
Parallel GH actions workflow for Nixpkgs eval (#356023) 2024-11-20 19:49:18 +01:00
Silvan Mosberger
fbbe972898 Parallel GH actions workflow for Nixpkgs eval
Motivated by ofborg struggling [1] and its evaluations taking too long,
inspired by Jörg's initial PR [2]
and Adam's previous attempt to parallelise Nixpkgs evaluation [3],
this PR contains initial work to relief ofborg from its evaluation duty
by using GitHub Actions to evaluate Nixpkgs.

For now this doesn't take care of all of what ofborg does, such as
requesting appropriate reviewers or labeling mass rebuilds, but this can
be follow-up work.

[1]: https://discourse.nixos.org/t/infrastructure-announcement-the-future-of-ofborg-your-help-needed/56025?u=infinisil
[2]: https://github.com/NixOS/nixpkgs/pull/352808
[3]: https://github.com/NixOS/nixpkgs/pull/269403

Co-Authored-By: Jörg Thalheim <joerg@thalheim.io>
Co-Authored-By: Adam Joseph <adam@westernsemico.com>
2024-11-20 10:35:56 +01:00
Johannes Kirschbauer
b978799f71
lib.types.defaultTypeMerge: refactor functor.{payload,wrapped} merging 2024-11-19 08:58:38 +01:00
jopejoe1
18d463bbd5
lib/licenses: add missing spdxId and remove urls from licenses that have a spdxId (#340360) 2024-11-15 10:33:31 +01:00
Tristan Ross
90fcf3aa7e
25.05 is Warbler 2024-11-14 09:10:54 -08:00
github-actions[bot]
b3a71c7e0d
Merge master into staging-next 2024-11-13 18:04:17 +00:00
qbisi
8487e692fd lib/licenses: add bsd3Lbnl 2024-11-13 01:16:30 +08:00
chn
d954930a4f stdenv: add Silvermont support, remove incorrect AES support 2024-11-11 12:29:55 +08:00
github-actions[bot]
24e5e7f5fc
Merge master into staging-next 2024-11-10 06:04:29 +00:00
Winter
f0000fe56d
lib/minver: bump to 2.3.17 (#354586) 2024-11-09 21:32:02 -05:00
github-actions[bot]
f3327c0d2a
Merge master into staging-next 2024-11-09 00:13:55 +00:00
Valentin Gagarin
317f7f1a4c docs: make sample code valid Nix expressions 2024-11-08 22:38:34 +01:00
Martin Weinelt
086bfa2385
lib/minver: bump to 2.3.17
The first version that supports zstd compression, to create the option
to eventually switch compression for the binary cache.

It was released one year ago on 2023-11-03 and first shipped in NixOS
23.11.
2024-11-08 22:23:29 +01:00
K900
a3600c0788 Merge remote-tracking branch 'origin/master' into staging-next 2024-11-07 21:06:37 +03:00
seth
b5bf8e3fc7
lib.systems.examples: add aarch64-w64-mingw32 2024-11-06 17:22:52 -05:00
seth
205faabfeb
lib.systems.doubles: add aarch64-windows double 2024-11-06 17:22:52 -05:00
jopejoe1
568bb8c275 lib/licenses: remove urls from licenses that have a spdxId
if the licenses have a spdxId the url get auto-generated from it.
2024-11-06 22:33:03 +01:00
jopejoe1
bafae5bf43 lib/licenses: set spdx for Ubuntu font license 2024-11-06 22:31:55 +01:00
github-actions[bot]
7bea7cacca
Merge staging-next into staging 2024-11-04 18:04:50 +00:00
Florian Brandes
8f55121f7f
lib/licenses.nix: add tost
this adds the license for OpenUSD which is explained
here https://forum.aousd.org/t/upcoming-openusd-license-update/1561

Signed-off-by: Florian Brandes <florian.brandes@posteo.de>
2024-11-04 06:09:37 +01:00
Wolfgang Walther
3c21a5c9d6
lib/systems: elaborate properly with non-matching system / config / parsed args
When elaborating a system with both "config" and "system" arguments
given, they might not match the parsed results.  Example:

elaborate {
  config = "i686-unknown-linux-gnu";
  system = "x86_64-linux";
}

This would result in a parsed system for i686, because the config
argument is preferred.  But since "// args //" comes after system has
been inferred from parsed, it is overwritten again.  This results in
config and parsed all pointing to i686, while system still tells the
story of x86_64.

Inconsistent arguments can also be given when passing "parsed" directly.
This happened in stage.nix for the various package sets.

The solution is simple: One of the three arguments needs to be treated
as the ultimate source of truth.  "system" can already be losslessly
extracted from "parsed".  However, "config" currently can not, for
example for various -mingw32 cases.  Thus everything must be derived
from "config".

To do so, "system" and "parsed" arguments are made non-overrideable for
systems.elaborate.  This means, that "system" will be used to parse when
"config" is not given - and "parsed" will be ignored entirely.

The systemToAttrs helper is exposed on lib.systems, because it's useful
to deal with top-level localSystem / crossSystem arguments elsewhere.
2024-11-03 17:38:19 +01:00
github-actions[bot]
5605fc7044
Merge staging-next into staging 2024-11-02 00:14:22 +00:00
Emily
2d6cb731db
lib/licenses: mark watcom as non‐Free (#352608) 2024-11-01 23:19:09 +00:00
github-actions[bot]
e4e28b07ad
Merge staging-next into staging 2024-11-01 12:06:22 +00:00
Silvan Mosberger
5690833b4f
lib: improve filterAttrs (#345547) 2024-11-01 11:54:20 +01:00
Robert Hensing
1de8e07216 lib: refactor filterAttrs
`filter` is a primop which is designed for this task, and it saves
the allocation of some singleton lists here.
2024-10-31 16:30:07 +01:00
Emily
f465662a11 lib/licenses: mark watcom as non‐Free 2024-10-31 14:38:09 +00:00
github-actions[bot]
835a356a66
Merge staging-next into staging 2024-10-28 00:15:41 +00:00
h7x4
cabfffd882
fcitx5-mozc: 2.26.4220.102 -> 2.30.5544.102 (#346680) 2024-10-27 13:23:35 +01:00
h7x4
83e1488c6d
lib/tests: test filterAttrs 2024-10-25 15:08:15 +02:00
h7x4
c7c30eb452
lib: improve filterAttrs
Co-authored-by: Silvan Mosberger <contact@infinisil.com>
2024-10-25 15:07:12 +02:00
Martin Weinelt
fa3075a22d
lib/licenses: introduce MIT-CMU license 2024-10-24 17:59:07 +02:00
Silvan Mosberger
c5cea342ce
lib.oldestSupportedReleaseIsAtLeast: rename from bad name (#347258) 2024-10-09 02:20:39 +02:00
Jörg Thalheim
8885a1e21a lib/systems/architectures: add sapphirerapids/emeraldrapids
For reference: https://en.wikichip.org/wiki/intel/microarchitectures/sapphire_rapids

https://www.phoronix.com/news/GCC-13-Initial-Emerald-Rapids
https://www.phoronix.com/news/LLVM-Adds-Intel-Emerald-Rapids
2024-10-08 14:19:23 +02:00
Robert Hensing
729225e355 treewide: lib.isInOldestRelease -> lib.oldestSupportedReleaseIsAtLeast 2024-10-08 11:14:24 +02:00
Robert Hensing
c2b411e674 lib.oldestSupportedReleaseIsAtLeast: rename from bad name and deprecate after 24.11
It seems impossible to describe this condition more concisely without making
it incomprehensible.
2024-10-08 11:04:29 +02:00
h7x4
fc6eb553aa
lib/licenses.nix: misc fixes (#345813) 2024-10-06 22:42:29 +02:00
Felix Stupp
f35a61d8a6
lib.modules: fix test line using empty "$@"
Probably a missed left over from somewhere in
the commit 58f385f680.
As can be seen in that commit where this line was introduced,
"$@" was also just emptied by the last `set` call in line 169.
This line is currently valid, but breaks suddenly when somewhere earlier
a `set --` instruction is used in the future.
Neither in commit 58f385f680
nor in PR https://github.com/NixOS/nixpkgs/pull/197547
have I found anything stating that this "defect" was intentional.
2024-10-05 14:14:01 +00:00
musjj
08278f16f8 licenses: add naist-2003 2024-10-05 20:11:25 +07:00