summaryrefslogtreecommitdiff
path: root/lib/systems (follow)
Commit message (Expand)AuthorAgeFilesLines
* lib.systems: force qemuArch to "aarch64" on aarch64•••qemu architecture names are fixed — we're using uname here just because it's more likely to be correct than CPU name (see e.g. POWER). This means that aarch64 is always called aarch64, even on Darwin where uname reports arm64. Fixes: 61582c704327 ("lib/systems: use Darwin architecture names for `config` and `uname`") Alyssa Ross2025-04-111-0/+2
* Merge remote-tracking branch 'origin/master' into staging-nextK9002025-04-061-0/+4
|\
| * lib.systems: Add arm-embedded-nano (#392204)Maciej Krüger2025-04-061-0/+4
| |\
| | * lib.systems: Add arm-embedded-nano•••Newlib-nano variant of the arm-embedded stdenv. Ross Smyth2025-03-201-0/+4
* | | lib/systems: use Darwin architecture names for `config` and `uname`•••`aarch64-apple-darwin` no longer works with LLVM 20. Emily2025-04-023-10/+16
* | | treewide: drop support for 32‐bit Darwin•••It’s dead, Jim. Emily2025-04-022-21/+0
* | | Merge staging-next into stagingnixpkgs-ci[bot]2025-04-021-89/+148
|\| |
| * | lib/systems/architecures: Add generic inferiors for x86-64 AMDMikael Voss2025-04-021-7/+7
| * | lib/system/architectures: Correct Alder Lake inferiorsMikael Voss2025-04-021-2/+1
| * | lib/systems/architectures: Define inferiors for common ARM64 CPUsMikael Voss2025-04-021-121/+148
| * | lib/systems/architectures: Define generic ARM64 inferiorsMikael Voss2025-04-021-1/+34
* | | Merge remote-tracking branch 'upstream/staging-next' into stagingSilvan Mosberger2025-04-026-877/+2111
|\| |
| * | treewide: Format all Nix files•••Format all Nix files using the officially approved formatter, making the CI check introduced in the previous commit succeed: nix-build ci -A fmt.check This is the next step of the of the [implementation](https://github.com/NixOS/nixfmt/issues/153) of the accepted [RFC 166](https://github.com/NixOS/rfcs/pull/166). This commit will lead to merge conflicts for a number of PRs, up to an estimated ~1100 (~33%) among the PRs with activity in the past 2 months, but that should be lower than what it would be without the previous [partial treewide format](https://github.com/NixOS/nixpkgs/pull/322537). Merge conflicts caused by this commit can now automatically be resolved while rebasing using the [auto-rebase script](https://github.com/NixOS/nixpkgs/tree/8616af08d915377bd930395f3b700a0e93d08728/maintainers/scripts/auto-rebase). If you run into any problems regarding any of this, please reach out to the [formatting team](https://nixos.org/community/teams/formatting/) by pinging @NixOS/nix-formatting. Silvan Mosberger2025-04-016-877/+2111
| |/
* / lib.systems: mark LLVM libc as staticTristan Ross2025-03-241-1/+1
|/
* lib.systems.architectures: add sierra forestMartin Fink2025-02-191-0/+2
* lib.systems: add znver5 architectureMathias Koehler2025-02-091-0/+2
* pkgs/top-level/stage.nix: add pkgsLLVMLibcTristan Ross2025-01-103-0/+5
* Merge remote-tracking branch 'origin/master' into staging-nextK9002024-12-121-3/+3
|\
| * lib/systems/parse.nix: mkSkeletonFromList: improve error message (#211213)•••Include the system string in the error message to give a bit more context to the user. Co-authored-by: Wolfgang Walther <wolfgangwalther@users.noreply.github.com>Jean-François Roche2024-12-121-3/+3
| * treewide: format all inactive Nix files•••After final improvements to the official formatter implementation, this commit now performs the first treewide reformat of Nix files using it. This is part of the implementation of RFC 166. Only "inactive" files are reformatted, meaning only files that aren't being touched by any PR with activity in the past 2 months. This is to avoid conflicts for PRs that might soon be merged. Later we can do a full treewide reformat to get the rest, which should not cause as many conflicts. A CI check has already been running for some time to ensure that new and already-formatted files are formatted, so the files being reformatted here should also stay formatted. This commit was automatically created and can be verified using nix-build https://github.com/infinisil/treewide-nixpkgs-reformat-script/archive/a08b3a4d199c6124ac5b36a889d9099b4383463f.tar.gz \ --argstr baseRev b32a0943687d2a5094a6d92f25a4b6e16a76b5b7 result/bin/apply-formatting $NIXPKGS_PATH Silvan Mosberger2024-12-101-20/+61
* | treewide: format all inactive Nix files•••After final improvements to the official formatter implementation, this commit now performs the first treewide reformat of Nix files using it. This is part of the implementation of RFC 166. Only "inactive" files are reformatted, meaning only files that aren't being touched by any PR with activity in the past 2 months. This is to avoid conflicts for PRs that might soon be merged. Later we can do a full treewide reformat to get the rest, which should not cause as many conflicts. A CI check has already been running for some time to ensure that new and already-formatted files are formatted, so the files being reformatted here should also stay formatted. This commit was automatically created and can be verified using nix-build https://github.com/infinisil/treewide-nixpkgs-reformat-script/archive/a08b3a4d199c6124ac5b36a889d9099b4383463f.tar.gz \ --argstr baseRev 78e9caf153f5a339bf1d4c000ff6f0a503a369c8 result/bin/apply-formatting $NIXPKGS_PATH Silvan Mosberger2024-12-101-20/+61
* | Merge staging-next into staginggithub-actions[bot]2024-11-301-6/+17
|\|
| * lib/systems: elaborate properly with non-matching system / config / parsed ar...Philip Taron2024-11-291-6/+17
| |\
| | * 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. Wolfgang Walther2024-11-031-6/+17
* | | Merge staging-next into staginggithub-actions[bot]2024-11-272-1/+6
|\| |
| * | freebsd: Add support for aarch64 (#358053)John Ericson2024-11-262-1/+6
| |\ \
| | * | 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. Artemis Tosini2024-11-242-1/+6
* | | | Merge remote-tracking branch 'origin/staging-next' into stagingK9002024-11-261-6/+7
|\| | |
| * | | stdenv: add Silvermont support, remove incorrect AES support (#355127)Philip Taron2024-11-251-6/+7
| |\ \ \
| | * | | stdenv: add Silvermont support, remove incorrect AES supportchn2024-11-111-6/+7
| | |/ /
* | | | lib/systems: ensure native `emulator` is a string (#358507)Philip Taron2024-11-241-1/+1
|\ \ \ \
| * | | | lib/systems: ensure native `emulator` is a string•••Fixes eval of `mesonEmulatorHook.crossFile`. Emily2024-11-231-1/+1
* | | | | Merge staging-next into staginggithub-actions[bot]2024-11-231-0/+1
|\ \ \ \ \ | |/ / / / |/| / / / | |/ / /
| * / / lib.systems.examples: set `rust.rustcTarget` for ucrtAarch64•••Closes https://github.com/NixOS/nixpkgs/issues/357751 seth2024-11-211-0/+1
| |/ /
* | | lib/systems: use a shell script for native `emulator` (#357309)Emily2024-11-201-1/+1
|\ \ \
| * | | lib/systems: use a shell script for native `emulator`•••This avoids pulling in all of `execline`’s closure. Co-authored-by: sternenseemann <sternenseemann@systemli.org> Emily2024-11-191-1/+1
| |/ /
* / / darwin: set the minimum version to macOS 11.3Emily2024-11-181-1/+1
|/ /
* | lib.systems.examples: add aarch64-w64-mingw32seth2024-11-061-0/+7
* | lib.systems.doubles: add aarch64-windows doubleseth2024-11-061-1/+1
|/
* 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 Jörg Thalheim2024-10-081-0/+4
* nixos/binfmt: Add option to use static emulators when available•••The fixBinary flag will be enabled if a static emulator is in use. Zhaofeng Li2024-10-011-0/+4
* lib/systems: use qemu-user package instead of custom definitionJulius Michaelis2024-10-011-20/+1
* lib.systems: fix rustTarget for WASI•••The corresponding Rust target name is "wasm32-wasip?", not "wasm32-unknown-wasi". oxalica2024-09-301-2/+11
* lib.systems.examples: Fix deprecated attr•••`For android 'sdkVer' has been renamed to 'androidSdkVersion'` While doing the above rename I forgot to consider if there were still darwin platforms in `lib.systems.examples` using `sdkVer` These still fail eval, but that happened before the renaming too. `error: Unsupported sdk: 14.3` Artturin2024-09-301-4/+4
* Merge master into staging-nextgithub-actions[bot]2024-09-021-0/+1
|\
| * lib.systems: add rustTarget for riscv32•••Fixes buildPackages.rustc when cross compiling to riscv32. Alyssa Ross2024-09-021-0/+1
* | Merge staging-next into staginggithub-actions[bot]2024-08-311-0/+1
|\|
| * lib.platforms.aarch: initAlyssa Ross2024-08-311-0/+1
* | Merge staging-next into staginggithub-actions[bot]2024-08-311-2/+0
|\|
| * lib.platforms.mesaPlatforms: remove•••Mesa is a package like any other. There's no reason for it to be a special case with its platforms listed in lib, because if other packages want to refer to mesa's platforms, they can access the platforms from the package meta like they would for any other package. Alyssa Ross2024-08-311-2/+0