Aliaksandr
4bb4cff368
stdenv: deprecate is* aliases in favor of hostPlatform.is*
...
These shorthands hide the platform distinction and are unfit for
cross-compilation. Wrap them in `lib.warn` so each access prints a
deprecation notice, and gate them on `config.allowAliases` so they
can be removed entirely.
Assisted-by: claude-code with claude-opus-4-8
2026-08-12 20:27:09 +02:00
Eman Resu
b3856a700b
check-meta: only check unfree predicate if it's defined
2026-08-03 14:32:15 -04:00
Eman Resu
db1fbad58f
check-meta: partially apply platform logic as much as possible
2026-08-03 14:26:33 -04:00
Eman Resu
1dcefd5752
check-meta: add clarifying comment on license lists
2026-08-03 14:12:35 -04:00
Eman Resu
45d8da095c
check-meta: avoid an isAttrs check that ? already performs
2026-08-03 14:12:32 -04:00
Eman Resu
a0e005ebca
check-meta: inherit functions to global scope
2026-08-03 14:12:31 -04:00
Eman Resu
c3481d9ef9
check-meta: use ? instead of or for isMarkedInsecure
...
This is almost always not defined, so we can avoid needing to perform
the equality check on the singleton lists.
2026-08-03 14:12:22 -04:00
Eman Resu
73c12f9fdb
check-meta: cache allowInsecure as much as possible
2026-08-03 13:30:02 -04:00
Eman Resu
270c9c9792
check-meta: cache allowUnfree
2026-08-01 11:36:04 -04:00
Eman Resu
83dabb3741
check-meta: cache where unsupported systems are allowed
2026-08-01 11:35:29 -04:00
Eman Resu
ef74004766
check-meta: cache a nonempty blocklist
2026-08-01 11:34:59 -04:00
nixpkgs-ci[bot]
5b0a62639f
Merge master into staging-next
2026-07-08 06:51:14 +00:00
adisbladis
56e510df3a
lib.meta-types: add binary either/both combinators ( #537659 )
2026-07-08 05:20:33 +00:00
Ben Siraphob
45ecf43c51
lib.meta-types: add binary either/both combinators
...
Every in-tree union/intersection use has exactly two members, and the
binary form verifies without allocating a closure or calling the any/all
primop per check. check-meta.nix switches to either/both; union and
intersection are kept for potential future use.
Assisted-by: Claude Code (Claude Fable 5)
2026-07-07 09:40:17 -07:00
nixpkgs-ci[bot]
a692067795
Merge master into staging-next
2026-07-04 00:35:57 +00:00
Eman Resu
9ab8fa7375
check-meta: compare with null instead of using isNull
2026-07-03 19:00:46 -04:00
Martin Weinelt
9ade44f1d4
Merge remote-tracking branch 'origin/staging' into staging-next
...
Conflicts:
- pkgs/top-level/nixpkgs-basic-release-checks.nix
2026-06-27 01:13:12 +02:00
Matt Sturgeon
288d25fabf
Allow meta.problems while preventing internal use of certain kinds ( #533376 )
2026-06-26 21:44:52 +00:00
Silvan Mosberger
a90d993610
ci/eval: Allow preventing internal Nixpkgs use of certain problem kinds
2026-06-24 12:26:03 +02:00
nixpkgs-ci[bot]
03a9b0542e
Merge staging-next into staging
2026-06-21 18:33:29 +00:00
Sandro
e00726a075
treewide: fix leftover docbook links ( #531477 )
2026-06-21 18:03:51 +00:00
nixpkgs-ci[bot]
d94448ae90
Merge staging-next into staging
2026-06-21 00:51:18 +00:00
Eman Resu
50cf7fe9dc
stdenv/check-meta: move to within lib/
...
This is going to be used in lib.systems, which isn't allowed to import
from outside the lib folder. We don't actually expose this through lib,
though.
2026-06-20 17:05:33 -04:00
Silvan Mosberger
8fcbb35929
meta.problems: Fill out output meta with final list of problems
...
This ensures that external tooling can also process the problems, and
helps users with debugging.
2026-06-19 18:58:37 +02:00
Silvan Mosberger
eba1d51352
meta.problems: Internal refactoring
...
Makes future changes easier
2026-06-19 18:58:10 +02:00
nixpkgs-ci[bot]
59fccc960c
Merge staging-next into staging
2026-06-14 07:38:15 +00:00
adisbladis
0e62149625
stdenv/problems: only run problem if it's not ignored ( #519600 )
2026-06-14 06:27:38 +00:00
Sandro Jäckel
6c0cb2defd
treewide: fix leftover docbook links
2026-06-13 23:37:09 +02:00
Eman Resu
85e32af8ef
stdenv/problems: don't create pname variable
...
A package failing an automatic problem (of which there's currently only
one) is rare. A package having meta.problems specified is even rarer.
Inlining the getName call to its two usages saves a thunk in the vast,
vast majority of cases, and I consider it to be worth it.
2026-06-01 23:05:22 -04:00
Eman Resu
0b304744b8
stdenv/problems: make handlerForProblem more performant with partial application
2026-06-01 23:05:13 -04:00
Eman Resu
41bafcbc34
stdenv/problems: reverse parameter order for handlerForProblem
...
kind and name are more likely to stay the same. Doing this allows us to
cache the kind and name when calling the handler for a problem.
2026-06-01 23:05:13 -04:00
Eman Resu
753e43c931
stdenv/problems: avoid a lookup for meta.broken
...
The stats may be lying to me when they say that this saves 1.86% of
attrset lookups, and `?` may just not be accurately tracked. But at
worst, performance will stay the same, since the check will fail for all
non-broken packages. And who knows, maybe it does help, by nature of not
checking the value!
2026-06-01 23:05:12 -04:00
Eman Resu
5616e3d925
stdenv/problems: use early knowledge of allowBroken and allowBrokenPredicate
2026-06-01 23:05:10 -04:00
Eman Resu
b88fba2fba
stdenv/problems: avoid creating manual problems attrset
2026-06-01 23:05:01 -04:00
nixpkgs-ci[bot]
d644c92282
Merge staging-next into staging
2026-06-01 19:39:24 +00:00
Eman Resu
c546655fb0
check-meta: only take hostPlatform for functions requiring it
...
By doing this, we can cache the rest of the file, including the import
of problems.nix. This allows genCheckProblems to be cached on every
bootstrapping stage, and not re-called each time.
2026-05-29 16:51:26 -04:00
Eman Resu
159a6daf6b
stdenv/generic: memoise passing config to mkDerivation unless overriden
2026-05-29 16:51:25 -04:00
Eman Resu
2c9c2fd429
stdenv/generic: store default native build inputs outside of stdenv
2026-05-28 19:34:54 -04:00
Eman Resu
4e54346578
make-derivation.nix: take args one at a time, declare variables early
...
While bootstrapping stdenv, we'd prefer not to call the entire file the
whole time on every single stage, since we have certain args ahead of
time.
2026-05-28 19:34:51 -04:00
nixpkgs-ci[bot]
f50dc660d4
Merge staging-next into staging
2026-05-28 18:54:19 +00:00
Philip Taron
19bd880f94
various: remove lib.warnIf from most critical functions ( #524541 )
2026-05-28 15:50:31 +00:00
Eman Resu
7146b6678f
stdenv.mkDerivation: remove warnIf usage
...
warnIf sends our warning message through a function call, even if the
warning condition doesn't trigger. This requires a lot of thunk
allocation that can be easily avoided.
2026-05-28 00:19:23 -04:00
nixpkgs-ci[bot]
4e29289792
Merge staging-next into staging
2026-05-28 00:40:40 +00:00
Philip Taron
e03d0a783d
various: reduce // merges, optimize ++ chains across hot paths ( #506793 )
2026-05-27 22:06:37 +00:00
nixpkgs-ci[bot]
2391366a06
Merge staging-next into staging
2026-05-27 18:48:39 +00:00
Ethan Carter Edwards
9d2f2d71e4
doc: add meta.donationPage
...
This might be a nice way to use our reach to remind users to donate to
FLOSS projects that they use and love.
Signed-off-by: Ethan Carter Edwards <ethan@ethancedwards.com >
2026-05-27 00:36:21 -07:00
nixpkgs-ci[bot]
8bde521f6b
Merge staging-next into staging
2026-05-27 00:44:40 +00:00
Hans Joachim Kliemeck
8478c2384b
stdenv: Package URL (PURL) metadata fields
2026-05-26 21:47:54 +02:00
Eman Resu
5c89ab858d
stdenv/problems: only run problem if it's not ignored
2026-05-25 23:59:00 -04:00
nixpkgs-ci[bot]
4878607c11
Merge staging-next into staging
2026-05-24 12:25:16 +00:00