Commit Graph

94 Commits

Author SHA1 Message Date
Silvan Mosberger
4f0dadbf38 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 a08b3a4d19.tar.gz \
      --argstr baseRev b32a094368
    result/bin/apply-formatting $NIXPKGS_PATH
2024-12-10 20:26:33 +01:00
misuzu
83e3724538 writeShellApplication: fix shellcheck availability check
This fixes NixOS evaluation for native riscv64-linux
2024-12-07 23:04:58 +02:00
Wolfgang Walther
6646eeb500
makeSetupHook: remove deprecated deps argument
This had been scheduled for removal in 23.11.
2024-11-22 21:01:53 +01:00
Wolfgang Walther
51da8b6b00
writeReferencesToFile: remove
Had been deprecated and scheduled for removal in 24.11.
2024-11-22 21:01:53 +01:00
zimbatm
d04d2858c9 writeShellApplication: add passthru argument 2024-11-01 17:16:58 +01:00
zimbatm
f4789133b8 concatTextFile: add passthru argument 2024-11-01 17:16:58 +01:00
zimbatm
c18e038097 writeTextFile: add support for passthru 2024-11-01 17:16:58 +01:00
Philip Taron
eee954a451
trivial: make symlinkJoin support pname+version alone (#344645) 2024-10-23 14:09:11 -07:00
Peder Bergebakken Sundt
6fd3990534 trivial: make symlinkJoin support pname+version alone 2024-09-28 01:35:47 +02:00
github-actions[bot]
9108a87017
Merge master into staging-next 2024-09-24 18:04:41 +00:00
networkException
6215daa520
writeTextFile: assert destination starting with a /
This patch adds an assertion to the writeTextFile trivial
builder, asserting that a specified destination starts with
a slash.

This matches the current behavior of the function and merely
provides a helpful error message.
2024-09-22 19:56:04 +02:00
Peder Bergebakken Sundt
b79305dfdd treewide: fix typos 2024-09-12 22:39:51 +02:00
Silvan Mosberger
ea17c502d2 tests.trivial-builders: Prevent rebuilds when Nix files change
There's no need to use a Nix file in the path here. By using a different
file we won't cause rebuilds when we change the Nix file, in particular
also when the Nix file is reformatted.
2024-08-25 04:59:11 +02:00
Philip Taron
be245de559
Merge pull request #333262 from nbraud/doc/runCommandWith
nixpkgs-manual: Document `runCommandWith`, refactor `runCommand{,CC,Local}`
2024-08-19 12:29:58 -07:00
nicoo
80e3fd91a9 doc/build-helpers: document runCommandWith
Co-authored-by: Johannes Kirschbauer <hsjobeki+github@gmail.com>
2024-08-19 19:16:42 +00:00
nicoo
18dd486bb9 emptyFile: use SRI hash 2024-08-08 20:06:21 +00:00
Martin Weinelt
93f4195fe0
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
- pkgs/applications/graphics/seamly2d/default.nix
2024-07-26 18:05:04 +02:00
Sigmanificient
6dd44107ac treewide: remove unused lib (and other) arguments 2024-07-26 11:18:09 +02:00
github-actions[bot]
401d4660b3
Merge staging-next into staging 2024-07-18 18:01:57 +00:00
Ivan Trubach
c2e1be3be0 doc: fixup doc/build-helpers references 2024-07-18 14:15:53 +03:00
Silvan Mosberger
f814e5cb8f Revert "trivial: make pkgs.writeText always fixed output"
This reverts commit 9f4b1064c6.

It caused problems: https://github.com/NixOS/nixpkgs/pull/318872#issuecomment-2196168990

FODs are not allowed to have references, but writeText is often used to create a file with references.

Leading to this error:

error: fixed output derivation 'packages.json' is not allowed to refer to other store paths.
2024-06-28 09:15:13 +02:00
Silvan Mosberger
5838e6883f
Merge pull request #318872 from hraban/trivial/fod-write-text
trivial: make pkgs.writeText always fixed output
2024-06-25 18:38:01 +02:00
Robert Hensing
cb5a0285b0
Merge pull request #292759 from ShamrockLee/test-references-darwin
tests.references: use `runNixOSTest` instead of `nixosTest`
2024-06-20 15:50:22 +02:00
Hraban Luyat
9f4b1064c6 trivial: make pkgs.writeText always fixed output
This can prevent a cascade of rebuilds across nixpkgs versions because these
small files tend to be found at the leaves of dependency trees.
2024-06-14 15:44:30 -04:00
Hraban Luyat
5aa55272c2 trivial: input type assertions for writeText 2024-06-14 15:44:17 -04:00
Hraban Luyat
d544b1259a trivial: fix pkgs.writeText test to pass string
Passing a non-string value and relying on pkgs.writeText to implicitly call
builtins.toString is incorrect.
2024-06-14 15:40:54 -04:00
Peder Bergebakken Sundt
088cdb337b
Merge pull request #300538 from ShamrockLee/write-shell-application-extra
writeShellApplication: add argument extraShellCheckFlags
2024-04-22 22:45:44 +02:00
Jacek Galowicz
8d3a38e8b1 NixOS Integration tests: Re-enable for macOS 2024-04-12 13:41:27 +02:00
Yueh-Shun Li
751e9b6c7f writeShellApplication: add argument extraShellCheckFlags 2024-04-01 03:50:14 +08:00
Yueh-Shun Li
8a8d07bc15 tests.trivial-builders.references: test writeClosure
Test writeClosure instead of writeReferencesToFile.

Add multiple-path test for writeReferenceClosureToFile.

Rename variables:
- references -> closures (passthru affected)
- REFERENCES -> CLOSURES
2024-03-19 05:30:42 +08:00
Yueh-Shun Li
e9fd4389d2 writeClosure: init, replacing writeReferencesToFile
Replace writeReferencesToFile with writeClosure.

Make writeClosure accept a list of paths instead of a path.

Re-implement with JSON-based exportReferencesGraph interface provided by
__structuredAttrs = true.

Reword the documentation.

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
Co-authored-by: Someone Serge <sergei.kozlukov@aalto.fi>
2024-03-19 02:45:50 +08:00
Yueh-Shun Li
abf7172bfa tests.references: migrate from nixosTest to runNixOSTest
- Use testers.runNixOSTest instead of testers.nixosTest as nixosTest
  has become obsolete.

- Prepare for cross-platform testing.
    - Use the testScriptBin passthru'd by the references test package
      inside the guest pkgs.
2024-03-17 04:21:26 +08:00
Robert Hensing
e99021ff75 trivial-builders: Deduplicate docs
I didn't have the opportunity to do all work at once, so I've added
TODOs to bring attention to the situation.
2024-03-11 11:33:14 +01:00
Thomas Lepoix
6aa4ed4487
applyPatches: Fix a bug (#283887) 2024-02-29 01:29:48 +01:00
Rebecca Turner
88ce0b0019
writeShellApplication: Expand test suite 2024-02-01 16:02:34 -08:00
Rebecca Turner
63f7c9b415
writeShellApplication: Document arguments 2024-02-01 16:02:33 -08:00
Rebecca Turner
863786b98b
writeTextFile,writeShellApplication: Allow setting extra arguments 2024-02-01 16:02:33 -08:00
Rebecca Turner
a64766913f
writeShellApplication: Add runtimeEnv argument 2024-02-01 16:02:33 -08:00
Rebecca Turner
ac20bcf449
writeShellApplication: Add bashOptions argument 2024-02-01 16:02:32 -08:00
Valentin Gagarin
eaebe13ebd doc: use markdown backticks for code tokens 2024-01-15 23:03:14 +01:00
Valentin Gagarin
2392daed23
Merge pull request #277534 from mcdonc/doc-trivial-builders-writetext
* doc: improve documentation for trivial text writing functions

Co-authored-by: Brian Merchant <bzm3r@proton.me>
Co-authored-by: Robert Hensing <robert@roberthensing.nl>
Co-authored-by: Alexander Groleau <alex@proof.construction>
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2024-01-15 22:34:40 +01:00
Robert Hensing
559d06bbb2 trivial-builders: Remove redundant docs - link instead 2024-01-15 09:02:45 +01:00
Andrew Marshall
52c27352ce applyPatches: skip creating additional drv when no patches
If there are no `patches` or `postPatch`, then this will just do work to
make something equivalent to `src`. Instead, just return `src` in that
case.
2024-01-12 15:49:24 -05:00
Valentin Gagarin
25c0077a31 doc: add note on which variables are effective
The build log of the following won't output `foo` as one might expect, but the
`$PATH` set by stdenv.

```nix
with import <nixpkgs> {};
runCommand "foo" { PATH = "foo"; } "echo $PATH; touch $out"
```
2024-01-08 12:16:19 +01:00
Valentin Gagarin
7ae1fdc9a7 doc: reformat 2024-01-08 12:16:03 +01:00
Robert Hensing
6ac78f1174
Merge pull request #204462 from ShamrockLee/test-references
tests.trivial-builders.references: refactor and move expressions into trivial-builders/test/references
2023-12-09 14:45:20 +01:00
Yueh-Shun Li
7950a226f6
tests.trivial-builders.references: specify as empty set instead of null on non-Linux
Please Nix CI (OfBorg) with empty set instead of null on non-linux platforms,
where NixOS tests are not supported.

Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-12-09 13:08:10 +08:00
Yueh-Shun Li
9fba2b0fd7 tests.trivial-builders.references: add ShamrockLee as a maintainer 2023-12-08 09:28:47 +00:00
Yueh-Shun Li
1f4e8f3fad tests.trivial-buildrs.references: move expression files into trivial-builders/test/references/ 2023-12-08 09:27:48 +00:00
Yueh-Shun Li
79a1e9d729 tests.trivial-builders.references: refactor expression
Define package `testScriptBin` that contains the substituted test script.
* Add an `installCheckPhase` to check the result script with ShellCheck.
* Passthru as `references.testScriptBin` to run the
  (substituted) test script directly (without VM).
* Drop the logic in build script that detects if
  it is run in the Nix sandbox.
* Inline sample application; drop invoke-*.nix.

Format expressions.
* Format with `nixpkgs-fmt`.
* Use multi-line style of set patterns.

Call the samples with `callPackage`.
* Rename `sample` -> `samples`.
* Take individual packages / build helpers directly from the
  set pattern.
* Define `cleanSamples` to filter out overriders such as `<pkg>.override`.
  added by `callPackage`.

Passthru samples and invocation results for easier debugging.
* Passthru samples, references, directReferences
* Provide tests.trivial-builders.writeStringReferencesToFile with such
  samples argument.
2023-12-07 22:28:30 +00:00