Commit Graph

671 Commits

Author SHA1 Message Date
Silvan Mosberger
21d520fbf2 tests.nixpkgs-check-by-name: Minor Nix refactor 2023-10-12 02:24:54 +02:00
github-actions[bot]
5e07b9a951
Merge master into haskell-updates 2023-10-11 00:12:13 +00:00
github-actions[bot]
2e97a3af0d
Merge staging-next into staging 2023-10-11 00:02:39 +00:00
Fabián Heredia Montiel
d676e059d7 Merge remote-tracking branch 'origin/master' into staging-next 2023-10-10 15:07:12 -06:00
Madoura
12e7fc6923
llvmPackages_rocm -> rocmPackages.llvm 2023-10-09 16:38:51 -05:00
Dennis Gosnell
36bb7be495
tests.haskell.upstreamStackHpackVersion: update breakfor stack-2.13.1
The tarball that contains the statically-linked stack package has
changed paths.

See the release notes for more details:
https://github.com/commercialhaskell/stack/releases/tag/v2.13.1
2023-10-08 12:23:10 +09:00
Vincenzo Mantova
988124cf20 tests.texlive.shebangs: use new texlive package source 2023-10-07 18:49:18 +01:00
Vincenzo Mantova
361364aba0 tests.texlive.binaries: use new texlive package source 2023-10-07 18:49:18 +01:00
Vincenzo Mantova
333a351b28 texlive.buildTeXLivePackage: switch to fake multi-output derivations for TeX Live packages 2023-10-07 18:49:17 +01:00
Maximilian Bosch
8bc5104a6e
treewide: refactor .attrs.sh detection
When specifying the `builder` attribute in `stdenv.mkDerivation`, this
will be effectively transformed into

    builtins.derivation {
      builder = stdenv.shell;
      args = [ "-e" builder ];
    }

This also means that `default-builder.sh` is never sourced and as a
result it's not guaranteed that `$NIX_ATTRS_SH_FILE` is set to a correct
location[1].

Also, we need to source `.attrs.sh` to source `$stdenv`. So, the
following is done now:

* If `$NIX_ATTRS_SH_FILE` points to a correct location, then use it.
  Directly using `.attrs.sh` is problematic for `nix-shell(1)` usage
  (see previous commit for more context), so prefer the environment
  variable if possible.

* Otherwise, if `.attrs.sh` exists, then use it. See [1] for when this
  can happen.

* If neither applies, it can be assumed that `__structuredAttrs` is
  turned off and thus nothing needs to be done.

[1] It's possible that it doesn't exist at all - in case of Nix 2.3 or
    it can point to a wrong location on older Nix versions with a bug in
    `__structuredAttrs`.
2023-10-04 18:36:57 +02:00
github-actions[bot]
b7f2311d92
Merge staging-next into staging 2023-09-27 18:01:33 +00:00
Matthieu Coudron
0ab2c96429 vimUtils: buildVimPluginFrom2Nix renamed to buildVimPlugin
the `from2Nix` suffix is a legacy from vim2nix but we dont use that anymore. It makes the name of the function unusual and long.
2023-09-27 19:08:38 +02:00
github-actions[bot]
035c6df194
Merge staging-next into staging 2023-09-24 00:03:26 +00:00
Silvan Mosberger
85d77bc124
Merge pull request #256913 from xfix/make-nixpkgs-check-by-name-tests-thread-safe
tests.nixpkgs-check-by-name: Make tests thread safe
2023-09-23 23:31:49 +02:00
Konrad Borowski
9efc0c0991 tests.nixpkgs-check-by-name: make tests thread safe
This uses a mutex to make sure that functions that read environment
don't read incorrect values.
2023-09-23 21:24:44 +02:00
figsoda
6728e7a9ca tests.nixpkgs-check-by-name: remove unused dependency
looks like we are not using rowan directly
2023-09-23 10:12:21 -04:00
github-actions[bot]
0de27a8a5a
Merge staging-next into staging 2023-09-23 12:01:36 +00:00
Silvan Mosberger
1fe58cb050 tests.nixpkgs-check-by-name: Fix non-reproducible test failures
This was an oversight in https://github.com/NixOS/nixpkgs/pull/254435
2023-09-23 00:09:26 +02:00
Artturi
6096abb008
Merge pull request #255208 from rhendric/rhendric/make-binary-wrapper 2023-09-20 09:41:44 +03:00
Ryan Hendrickson
df8b425f89 makeBinaryWrapper: protect wildcards in flags 2023-09-18 02:49:33 -04:00
Artturin
42f3292616 tests.cc-wrapper.supported: add test for cxxabi header
`#include <cxxabi.h>`

`/nix/store/02wpjmp2zjjxz13z7g599mniwi25zkcy-libcxxabi-16.0.6-dev/include/cxxabi.h:20:10: fatal error: '__cxxabi_config.h' file not found`
2023-09-18 06:43:36 +05:30
emilylange
c47f245253
patch-shebangs: fix crash with shebang without trailing newline
This fixes a bug where `patchShebangs` crashes when trying to patch
files that contain only a shebang (e.g. `#!/bin/bash`) (and nothing
else) and do not end with a newline.

Such file can be produced using `printf "#!/bin/bash" > example` or
`echo -n "#!/bin/bash" > example`.

I don't understand why one would want to create such files, as they do
literally nothing, but the chromium tarball we are using started
shipping some 🫠

Full reproducer:

```nix
with import <nixpkgs> { };

stdenv.mkDerivation {
  dontUnpack = true;
  name = "patch-shebangs-no-trailing-newline-reproducer";
  postPatch = ''
    printf "#!/bin/bash" > reproducer
    chmod +x reproducer
    patchShebangs reproducer
  '';
}
```

```
❯ nix-build reproducer.nix
this derivation will be built:
  /nix/store/vmbshdkdk4a0bayw3wi21wvxyhzpcsy2-patch-shebangs-no-trailing-newline-reproducer.drv
building '/nix/store/vmbshdkdk4a0bayw3wi21wvxyhzpcsy2-patch-shebangs-no-trailing-newline-reproducer.drv'...
patching sources
patching script interpreter paths in reproducer
/nix/store/vr6wwdxkmyy44sg0gwxi10b8fc5zhwz0-stdenv-linux/setup: line 144: pop_var_context: head of shell_variables not a function context
error: builder for '/nix/store/vmbshdkdk4a0bayw3wi21wvxyhzpcsy2-patch-shebangs-no-trailing-newline-reproducer.drv' failed with exit code 1;
       last 3 log lines:
       > patching sources
       > patching script interpreter paths in reproducer
       > /nix/store/vr6wwdxkmyy44sg0gwxi10b8fc5zhwz0-stdenv-linux/setup: line 144: pop_var_context: head of shell_variables not a function context
       For full logs, run 'nix log /nix/store/vmbshdkdk4a0bayw3wi21wvxyhzpcsy2-patch-shebangs-no-trailing-newline-reproducer.drv'.
```
2023-09-16 14:20:56 +02:00
Artturin
57040cc3eb tests.makeBinaryWrapper: fix cross test on aarch64-linux 2023-09-15 08:48:31 +03:00
Robert Hensing
04311ac3fa
Merge pull request #254763 from tie/nixpkgs-systems-equals
pkgs/top-level: use lib.systems.equals for crossSystem
2023-09-13 12:04:45 +02:00
Ivan Trubach
d4063e0330 pkgs/top-level: use lib.systems.equals for crossSystem
Fixes otherwise equivalent systems being treated as different by
packages that compare `stdenv.*Platform`s using `==` operator.
2023-09-13 07:22:52 +03:00
Silvan Mosberger
9c9a7e0082 tests.nixpkgs-check-by-name: Fix with parallel tests
We seem to have enough tests to run into this now:

    error: creating symlink from '/private/tmp/nix-build-nixpkgs-check-by-name.drv-0/source/test-tmp/var/nix/gcroots/profiles' to '/private/tmp/nix-build-nixpkgs-check-by-name.drv-0/source/test-tmp/var/nix/profiles': File exists
2023-09-12 01:07:47 +02:00
Silvan Mosberger
d518eb94ee tests.nixpkgs-check-by-name: Fix for symlinked tempdirs
On Darwin, /tmp is sometimes a symlink to /private/tmp, which couldn't
be handled before:

    error: access to canonical path '/private/var/folders/xp/9_ry6h9x6l9gh_g32qspz0_40000gp/T/.tmpFbcNO0' is forbidden in restricted mode

This both fixes that and adds a test to make sure it can't happen again
2023-09-12 01:07:44 +02:00
Rahul Butani
0251e2645a llvmPackages_15.libcxx: fix the generated linker script
See:
 - https://github.com/NixOS/nixpkgs/issues/214524#issuecomment-1429146432
 - 57c7bb3ec8
 - https://reviews.llvm.org/D133566

We can drop this patch in `llvmPackages_16`.

Fixes #214524.
2023-09-08 05:41:29 +03:00
Artturin
2d15039387 tests.cc-wrapper: add supported and move tests to subsets
filter out llvmPackages <=10 on aarch64-darwin, they're marked broken
and availableOn doesn't filter broken packages
2023-09-08 03:20:52 +03:00
Artturin
bcd62ff9eb Revert "tests.cc-wrapper: filter unavailable gcc"
This reverts commit d33a309f2c9f85c28cb897e623503f210057a77a.

commit caused ofborg-eval to fail with

```
$ nix-build pkgs/top-level/release.nix -A tests.cc-wrapper.gcc10Stdenv.aarch64-darwin
       error: evaluation aborted with the following error message: 'cannot find attribute `tests.cc-wrapper.gcc10Stdenv''
```

on the 3 other platfomrs the attr is there
2023-09-07 22:36:16 +03:00
Artturin
e0898be1c5 tests.cc-wrapper: filter unavailable gcc 2023-09-07 22:36:16 +03:00
Artturin
686516e0bc tests.cc-wrapper: filter out *MultiStdenv when not on and not building for linux and x86_64
they're only supported on x86_64-linux
2023-09-07 22:36:16 +03:00
Artturin
535447e289 tests.cc-wrapper: show command output on different line
this is much easier to read.
2023-09-07 22:36:16 +03:00
Artturin
1b6c3aed63 tests.cc-wrapper: show more prominently what cc is being tested
Show what libc is used, otherwise there's indication what libc is being
used. Ex in gccMultiStdenv.
2023-09-07 22:36:15 +03:00
Rahul Butani
626c8c3224 tests.cc-wrapper: rework the logic, test newer gcc stdenvs too
ignore `llvmPackages_latest`, it's an alias and it'll be a duplicate.
ignore `llvmPackages_git`, it's not supposed to be used in nixpkgs and
may be broken.
2023-09-07 22:36:07 +03:00
Rahul Butani
8b4f80741c tests.cc-wrapper-*: extend to `llvmPackages_{10,11,12,13,14,15,git} 2023-09-07 03:46:38 +03:00
Silvan Mosberger
ad61076624
Merge pull request #237439 from tweag/spp-1
[RFC 140] Simple package paths, part 1b: Enabling the directory structure
2023-09-05 16:25:27 +02:00
Silvan Mosberger
f6467c3574 pkgs/by-name: Introduce
This introduces the `pkgs/by-name` directory as proposed by RFC 140.
Included are:
- The implementation to add packages defined in that directory to the
  top-level package scope
- Contributer documentation on how to add packages to it
- A GitHub Actions workflow to check the structure of it on all PRs
2023-09-05 16:10:50 +02:00
Dmitry Kalinkin
ac3d200056
Merge pull request #252012 from xworld21/texlive-split-core
texlive: split outputs & spring cleaning
2023-09-02 22:22:19 -04:00
Robert Scott
e0f6367446 cc-wrapper, binutils-wrapper: add tests hardening-flags-handling
most tests use debian-devscripts' hardening-check, so only work on
ELF systems and can only detect a limited subset of flags.

some extra tests actually execute fortify-protected programs and
should be slightly more universally applicable.
2023-09-02 15:01:54 +01:00
Maciej Krüger
edfb18664a
Merge pull request #252225 from nbraud/fetchDebianPatch 2023-08-30 19:06:32 +02:00
nicoo
e4162c9e7b fetchDebianPatch: add test 2023-08-30 07:55:07 +00:00
Silvan Mosberger
d42ae665dc tests.nixpkgs-check-by-name: Cleaner testing
- Better filesystem case-sensitivity heuristic
  We shouldn't assume that Linux is always case-sensitive.
- Don't include case-sensitive filename in tree
  Was used for tests, but this broke channel updates because there's a
  check to make sure there's no case-sensitive files!

  https://hydra.nixos.org/build/233371356/nixlog/1
2023-08-29 23:36:47 +02:00
Vincenzo Mantova
e2e33e611c texlive.bin.core-big: enable upmendex 2023-08-29 16:16:15 +01:00
Silvan Mosberger
f616ad76f0
Merge pull request #250885 from tweag/spp-1a
[RFC 140] Simple package paths, part 1a: Checking tool
2023-08-29 16:36:26 +02:00
Silvan Mosberger
34c8b0a8e5 nixos/release-combined.nix: Build pkgs/by-name tester 2023-08-29 16:35:07 +02:00
Silvan Mosberger
271eb02995 pkgs/test/nixpkgs-check-by-name: init
Adds an internal CLI tool to verify Nixpkgs to conform to RFC 140.
See pkgs/test/nixpkgs-check-by-name/README.md for more information.
2023-08-29 16:17:54 +02:00
Dmitry Kalinkin
f32acbc17a
Merge pull request #248960 from xworld21/texlive-tests
tests.texlive: several new tests
2023-08-26 17:56:39 -04:00
Vincenzo Mantova
4e49e4928d
tests.texlive.fixedHashes: init (#248746)
The assertion that all TeX Live packages have a fixed hash is time
consuming and should only be checked when running tests.
2023-08-26 17:12:41 -04:00
Vincenzo Mantova
89da73e92e tests.texlive.opentype-fonts: use scheme-small 2023-08-26 13:37:30 +01:00
Vincenzo Mantova
996a94d959 tests.texlive.opentype-fonts: use mkTeXTest 2023-08-26 13:37:30 +01:00
Vincenzo Mantova
898681161a tests.texlive.allLanguages: init 2023-08-26 13:37:30 +01:00
Vincenzo Mantova
3096052a54 tests.texlive.defaultLanguage: init 2023-08-26 13:37:30 +01:00
Vincenzo Mantova
1ff046e333 tests.texlive.mkTeXTest: init 2023-08-26 13:37:30 +01:00
Vincenzo Mantova
6b5011d9d3
tests.texlive.binaries: fix test for xpdfopen binaries (#250635) 2023-08-23 15:18:32 -04:00
Vincenzo Mantova
e134c208ae
texlive.bin.xetex: add teckit_compile to output (#250390) 2023-08-21 10:20:14 -04:00
github-actions[bot]
f6a4c6f912
Merge master into staging-next 2023-08-20 00:02:29 +00:00
Vincenzo Mantova
5be52ab757 texlive.tlshell: hardcode revision numbers missing from minimal texlive.tlpdb 2023-08-19 21:30:07 +01:00
github-actions[bot]
3b76a64c44
Merge master into staging-next 2023-08-17 12:01:23 +00:00
sternenseemann
232a372e29 Merge remote-tracking branch 'origin/master' into haskell-updates 2023-08-17 09:32:14 +02:00
github-actions[bot]
2e936d668c
Merge master into staging-next 2023-08-17 06:00:58 +00:00
Adam Joseph
360dc254fe tests.cross.sanity: add armv5tel and armv6l 2023-08-15 19:11:09 -07:00
github-actions[bot]
4a85282f9a
Merge master into haskell-updates 2023-08-16 00:11:07 +00:00
github-actions[bot]
df770ba961
Merge master into staging-next 2023-08-15 06:01:24 +00:00
Adam Joseph
1912681314 tests.cross.sanity: enable mbuffer test
This test passes now.  Also fixes a minor oversight in the bug --
the test case needs to `touch $out` on success.
2023-08-14 15:09:06 -07:00
Adam Joseph
18c52d09bc libgcc: make needed architecture-specific targets if isArmv7 2023-08-14 15:08:59 -07:00
github-actions[bot]
e365e1db48
Merge master into haskell-updates 2023-08-06 00:13:20 +00:00
Vladimír Čunát
d5732d9669
Merge branch 'staging-next' into staging 2023-08-05 07:45:29 +02:00
Artturi
c0731df13c
Merge pull request #238525 from tie/patch-shebang-update-store-paths 2023-08-04 01:21:07 +03:00
Vincenzo Mantova
07e50252e1 texlive.combine: add ghostscript to wrappers instead of combining 2023-07-29 18:31:18 +02:00
Vincenzo Mantova
56af1c1981 tests.texlive.rpdfcrop: init, check that rpdfcrop runs in restricted mode 2023-07-29 18:10:45 +02:00
Vincenzo Mantova
39750551aa tests.texlive.shebangs: init, check that all shebangs are in Nix 2023-07-29 18:10:45 +02:00
Vincenzo Mantova
1ab65c8c80 tests.texlive.binaries: test non-combined binaries with empty PATH, where possible 2023-07-29 18:10:44 +02:00
Vincenzo Mantova
5ecc48b8ff texlive: build bin containers for binaries and scripts 2023-07-29 18:10:42 +02:00
github-actions[bot]
265c5d7f67
Merge master into haskell-updates 2023-07-28 00:13:07 +00:00
Robert Hensing
f705094eac
Merge pull request #245524 from hercules-ci/writeScriptBin-meta.mainProgram
Add meta.mainProgram to writeCBin, add tests
2023-07-27 10:41:20 +02:00
github-actions[bot]
6781f1d32e
Merge master into haskell-updates 2023-07-27 00:12:37 +00:00
Pol Dellaiera
0c7765a38a
Merge pull request #238739 from apfelkuchen6/texlive-licenses-v2
texlive.combine: expose licensing information of combined packages [v2]
2023-07-26 23:36:29 +02:00
Robert Hensing
89bdfd4687 trivial-builders: Move test list closer 2023-07-26 18:22:33 +02:00
Robert Hensing
d1dc8384ca writeCBin: Add meta.mainProgram
... and add tests.
2023-07-26 18:22:26 +02:00
github-actions[bot]
cde91a5dd2
Merge master into haskell-updates 2023-07-26 00:13:28 +00:00
apfelkuchen06
43ac27ebae tests.texlive.licenses: init 2023-07-25 21:05:00 +02:00
zimbatm
73ee03cbc5 writers: split out the tests
Make it easier to run and debug individual tests.
2023-07-22 17:53:52 +02:00
github-actions[bot]
6522c61c67
Merge master into haskell-updates 2023-07-21 00:13:37 +00:00
github-actions[bot]
d6876464b4
Merge master into haskell-updates 2023-07-20 00:14:23 +00:00
Dennis Gosnell
5d1c9db9c9
Merge pull request #243798 from cdepillabout/stack-version-check
tests.haskell.upstreamStackHpackVersion: init
2023-07-16 22:46:18 +09:00
Dennis Gosnell
c78223a5ff
tests.haskell.upstreamStackHpackVersion: init
This tests that the upstream `stack` release uses the same version of
`hpack` as the `stack` in Nixpkgs.
2023-07-16 21:35:53 +09:00
github-actions[bot]
8ad2926229
Merge master into haskell-updates 2023-07-16 00:16:59 +00:00
github-actions[bot]
4f3b5848de
Merge master into haskell-updates 2023-07-15 00:14:47 +00:00
Adam Joseph
424952b7b4 gccWithoutTargetLibc: link libgcc_s.so using -mnewlib if isPower
Closes #244405

Also adds considerably more commenting to document what is going on.
2023-07-06 05:50:26 -07:00
Dennis Gosnell
55b8958f7d
tests.haskell.shellFor: change package used in extraDependencies test
This commit does the following two things:

1.  Changes the Haskell package used in the extraDependencies test from
    releaser to conduit.  The reason for this is that conduit is more
    of a "core" package in Haskell, and it is more likely to always be
    working.  (If conduit is not compiling, then large chunks of Hackage
    won't be working.)

2.  Tighten up the GHCi test to actually use the package from
    extraDependencies.  It appears that GHCi can fail to import the
    package from extraDependencies, and that doesn't cause GHCi to
    return an error code, which means the test isn't actually testing
    anything.

    This new change makes it so that if the package from
    extraDependencies is actually not included for some reason, then
    this shellFor test should fail.
2023-07-04 15:38:23 +09:00
Artturin
42c94d06fd stdenv: fix overriding with attrset when finalAttrs isn't used
```
nix-repl> (pkgs.htop.overrideAttrs { pname = "hello-overriden"; }).pname
error:
       … while evaluating a branch condition

         at /nix/store/phn5cahwacv9wjgalygw62x8l4xbl6x3-source/lib/customisation.nix:86:7:

           85|     in
           86|       if builtins.isAttrs result then
             |       ^
           87|         result // {

       … while calling the 'isAttrs' builtin

         at /nix/store/phn5cahwacv9wjgalygw62x8l4xbl6x3-source/lib/customisation.nix:86:10:

           85|     in
           86|       if builtins.isAttrs result then
             |          ^
           87|         result // {

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: attempt to call something which is not a function but a set

       at /nix/store/phn5cahwacv9wjgalygw62x8l4xbl6x3-source/pkgs/stdenv/generic/make-derivation.nix:58:21:

           57|           f = self: super:
           58|             let x = f0 super;
             |                     ^
           59|             in
```
2023-07-03 21:34:50 +03:00
Adam Joseph
895c24349c test.cross.sanity: add pkgs.pkgsCross.m68k.stdenv 2023-07-01 16:45:47 -07:00
Robert Hensing
1f5a0b0135
Merge pull request #239005 from Artturin/setorfunoverr
stdenv: let overrideAttrs accept attrset OR function
2023-07-01 15:27:23 +02:00
Adam Joseph
fb26d16e99 test.cross.sanity: init
This commit adds `pkgs.test.cross.sanity`, which is meant to be a
carefully curated list of builds/packages that tend to break when
refactoring our cross-compilation infrastructure.

It should strike a balance between being small enough to fit in
a single eval (i.e. not so large that hydra-eval-jobs is needed)
so we can ask @ofborg to check it, yet should have good examples
of things that often break.  So, no buckshot `mapTestOnCross`
calls here.
2023-07-01 02:59:40 -07:00
Artturin
0fdae31531 stdenv: let overrideAttrs accept attrset OR function
Makes overrideAttrs usable in the same way that `override` can be used.
It allows the first argument of `overrideAttrs` to be either a function
or an attrset, instead of only a function:

hello.overrideAttrs (old: { postBuild = "echo hello"; })
hello.overrideAttrs { postBuild = "echo hello"; }

Previously only the first example was possible.

Co-authored-by: adisbladis <adisbladis@gmail.com>
Co-authored-by: matthewcroughan <matt@croughan.sh>
2023-06-30 23:28:00 +03:00
Adam Joseph
18bbf33b38 test.cross.mbuffer: init
This adds a test case for the tricky issue encountered in

  https://github.com/NixOS/nixpkgs/issues/213453
2023-06-30 02:36:13 -07:00
apfelkuchen6
a3cdf3186f
texlive.bin.core-big: fix luajittex on aarch64-linux (#240577) 2023-06-29 16:12:05 -04:00
Vincenzo Mantova
f24380af53
tests.texlive.binaries: init (#239804) 2023-06-28 18:06:06 -04:00
nviets
725e8ab49c
cudaPackages: bump default cudaPackages_11_7 -> cudaPackages_11_8 (#238622)
* cudaPackages: bump default cudaPackages_11_7 -> cudaPackages_11_8

* Switched format of cudaPackages.backendStdenv

Co-authored-by: Samuel Ainsworth <skainsworth@gmail.com>

* Removed reference to gcc11Stdenv in cuda-samples

* corrected stdenv reference in cuda-samples

---------

Co-authored-by: nviets <nathan.viets@gmail.com>
Co-authored-by: Samuel Ainsworth <skainsworth@gmail.com>
2023-06-20 14:12:54 -04:00
Ivan Trubach
ebd4619053 patch-shebangs: add a flag to update shebangs with store paths
This change adds a flag to update shebang paths that point to the Nix
store. This is particularly useful when a cross-compiled package uses
same script at compile-time and run-time, but the interpreter must be
changed since hostPlatform != buildPlatform.
2023-06-19 09:01:21 +03:00
Artturin
2879607431 tests.stdenv.hooks.reproducible-builds: fix mistake 2023-06-17 23:45:11 +03:00
Sandro
6b942b501e
Merge pull request #234235 from raphaelr/mknugetsource-support-subdirs
buildDotnetModule: fix `projectReferences = [ ... ]`
2023-06-14 20:12:03 +02:00
Dennis Gosnell
dd9e4575ec
tests.haskell.incremental: change package used from turtle to temporary
With a recent hackage update, turtle stopped compiling on ghc94.  This
commit changes the tests.haskell.incremental test to use the temporary
package instead of turtle.
2023-05-30 09:06:42 +09:00
Raphael Robatsch
256c3a7a53 tests.dotnet: init with test for projectReferences
Add a test for buildDotnetModule's `projectReferences = [ ... ];`
feature, which is currently unused and therefore untested in nixpkgs.
2023-05-26 16:18:07 +02:00
Rebecca Turner
b278ca2195
tests.haskell.incremental: init 2023-05-25 14:36:18 -07:00
Vincenzo Mantova
d3b28b7fd9
texlive.combine: move repstopdf test to tests.texlive (#231742) 2023-05-14 11:05:22 -04:00
github-actions[bot]
2d07e76d1a
Merge staging-next into staging 2023-05-10 00:03:33 +00:00
Alyssa Ross
2023766e31
tests.stdenv.test-inputDerivation: init 2023-05-09 14:02:45 +00:00
John Ericson
f4868c6c7d
Merge pull request #229754 from rrbutani/fix/cc-wrapper-extra-positional-args
Support `--` in `cc-wrapper`
2023-05-08 06:55:52 -04:00
Artturin
1d9f58c7a4 tests.cc-multilib: put error on separate line 2023-05-05 23:55:24 +03:00
Artturin
c4a06db832 tests.rustCustomSysroot: remove unmaintained and broken by upstream test 2023-05-05 23:23:20 +03:00
Rahul Butani
40c914f1be
cc-wrapper-test: add tests for -- 2023-05-03 16:45:48 -05:00
Dmitry Kalinkin
5c27dc43d2
Merge pull request #206763 from xworld21/texlive-centralize-version
texlive: use version info from tlpdb instead of hardcoding
2023-04-30 21:46:53 -04:00
apfelkuchen06
f2644470f9 tests.texlive: also test xelatex in the opentype font test 2023-04-27 00:36:41 +02:00
Vincenzo Mantova
c4b0534701 texlive: use version info from tlpdb instead of hardcoding 2023-04-22 20:22:39 +01:00
Alyssa Ross
887edae254
tests.makeBinaryWrapper: avoid same-triple cross
We shouldn't try compiling to aarch64-unknown-linux-gnu from
aarch64-unknown-linux-gnu, because that tends to confuse things and is
not representative of actual cross compilation usage.
2023-04-19 18:34:47 +00:00
Vladimír Čunát
87a8a597e6
Merge #223741: writeTextFile: chmod before checkPhase
...into staging
2023-04-04 08:57:05 +02:00
Bernardo Meurer
f1f6ca8bcd
Merge pull request #209870 from amjoseph-nixpkgs/pr/stdenv/external-gcc-bootstrap 2023-04-03 08:19:03 -07:00
Adam Joseph
5f57c2e0f9 pkgs/test/stdenv/default.nix: add gcc-stageCompare
This commit adds a derivation `gcc-stageCompare` to
`pkgs/test/stdenv/default.nix`.

It is important to always build this derivation whenever building
`stdenv`!  Because we are using a Nix-driven bootstrap instead of
gcc's built-in `--enable-bootstrap`, the `gcc` derivation no longer
performs the post-self-compilation sanity check.  You must build
this derivation in order to perform that sanity check.

The major benefit of this new approach is that the sanity check
(which involves a third compilation of gcc) can be performed
*concurrently* with all packages that depend on `stdenv`, rather
than serially.  Since `stdenv` has very little derivation-level
parallelism it cannot take advantage of more than one or perhaps two
builders.  If you have three or more builders this commit will
reduce the time-to-rebuild-stdenv by around 20% (one of three gcc
rebuilds is removed from the critical path, and stdenv's build time
is dominated by roughly 3*gcc + 1*binutils + 1*bison-test-suite).

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2023-04-02 13:49:53 -07:00
Naïm Favier
e6f19ea429
writeTextFile: chmod before checkPhase
Set the executable bit before running the check phase, so that the check
phase can run the script to test its behaviour.

This aligns with what `concatTextFile` is doing.

Also use explicit `if` statements so that we don't silently ignore
`chmod` failures.
2023-03-29 14:06:45 +02:00
github-actions[bot]
2394986204
Merge master into staging-next 2023-03-17 12:01:17 +00:00
Dmitry Kalinkin
f6e067692d
Merge pull request #119362 from xworld21/texlive-combine-fix-buildenv
texlive.combine: split static $TEXMFDIST into a separate derivation
2023-03-17 02:34:17 -04:00
github-actions[bot]
60e9cbe0f9
Merge staging-next into staging 2023-03-14 12:02:08 +00:00
Martin Weinelt
6b67186fe9
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
- pkgs/development/python-modules/crownstone-cloud/default.nix
- pkgs/development/python-modules/exrex/default.nix
- pkgs/development/python-modules/mkdocs-minify/default.nix
- pkgs/development/python-modules/myjwt/default.nix
- pkgs/development/tools/analysis/checkov/default.nix
2023-03-14 08:14:26 +01:00
Vincenzo Mantova
1f2ad5bcd4 tests.texlive: check that tlpdb.nix is the one generated from the upstream texlive.tlpdb.xz 2023-03-12 21:04:39 +00:00
github-actions[bot]
681b1c28a4
Merge staging-next into staging 2023-03-12 12:02:07 +00:00
Vladimír Čunát
1dd94ad62f
Merge branch 'master' into staging-next 2023-03-12 09:06:28 +01:00
apfelkuchen06
d4a78d5f09 texlive: add test for lualatex fonts 2023-03-08 23:37:01 +01:00
github-actions[bot]
4bfbd859a1
Merge staging-next into staging 2023-03-06 18:01:40 +00:00
Martin Weinelt
bcf6c81a88 Merge remote-tracking branch 'origin/master' into staging-next 2023-03-06 16:55:14 +00:00
Someone Serge
5f4bdbe6c3
python3Packages.tensorflow: fix `GLIBCXX_3.4.30' not found
Make tensorflow (and a bunch of ther things) use CUDA-compatible
toolchain. Introduces cudaPackages.backendStdenv
2023-03-04 01:03:51 +02:00
Artturin
a4e1cf6d13 tests.stdenv.outputs-no-out: update expectedMsg 2023-03-02 22:10:50 +01:00
Artturin
6e422a0fba tests.stdenv.outputs-no-out: cause less rebuilds
now gcc isn't built
2023-03-02 22:10:50 +01:00
github-actions[bot]
3cdd771820
Merge staging-next into staging 2023-02-23 18:01:49 +00:00
Alyssa Ross
52c286ee5b
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
	pkgs/development/libraries/pmdk/default.nix
2023-02-23 13:51:34 +00:00
Bernardo Meurer
42008a14a4
Merge pull request #217206 from Artturin/stdenvimprovements1 2023-02-23 12:07:47 +00:00
github-actions[bot]
82db2c5621
Merge staging-next into staging 2023-02-23 00:02:59 +00:00
github-actions[bot]
7f396edf16
Merge master into staging-next 2023-02-23 00:02:23 +00:00
Artturin
f9fdf2d402 treewide: move NIX_CFLAGS_COMPILE to the env attrset
with structuredAttrs lists will be bash arrays which cannot be exported
which will be a issue with some patches and some wrappers like cc-wrapper

this makes it clearer that NIX_CFLAGS_COMPILE must be a string as lists
in env cause a eval failure
2023-02-22 21:23:04 +02:00
Artturin
425e4250db tests.stdenv.outputs-no-out: fix 2023-02-22 21:23:04 +02:00
Connor Baker
c181273423 cudaPackages_12: 12.0.0 -> 12.0.1 2023-02-22 13:19:49 -05:00
github-actions[bot]
67e4f6dde0
Merge staging-next into staging 2023-02-22 12:02:05 +00:00
github-actions[bot]
0f910f5664
Merge master into staging-next 2023-02-22 12:01:31 +00:00
Connor Baker
266379497d cuda-samples: init 11.8 2023-02-22 10:06:03 +01:00
Artturin
883daacbaa tests.stdenv: add hooks.patch-shebangs.split-string & tweak tests 2023-02-17 22:23:35 +02:00
Artturin
8876a5c91f tests.stdenv: move patch-shebangs test 2023-02-17 22:23:33 +02:00
Vincenzo Mantova
a000076d58 texlive.combine: split static $TEXMFDIST into a separate derivation 2023-02-05 19:47:07 +00:00
Artturi
dcc7df7fe6
Merge pull request #211685 from Artturin/splicingstuff1-split 2023-02-03 12:49:08 +02:00
github-actions[bot]
645af55243
Merge staging-next into staging 2023-01-30 12:01:57 +00:00
github-actions[bot]
1a06f52c21
Merge master into staging-next 2023-01-30 12:01:22 +00:00
Robert Hensing
3be7ea8c89 top-level/pkg-config: Make tests easy to find 2023-01-29 09:51:55 +01:00
Robert Hensing
a010129bf8 pkg-configPackages -> defaultPkgConfigPackages
This better reflects the purpose of the package set, while leaving
room for a fancier, more complete implementation of the concept,
with a nicer name.
2023-01-29 09:51:55 +01:00
Robert Hensing
2d4e78fb8b tests.pkg-configPackages: Copy meta attributes for licensing concerns 2023-01-29 09:51:54 +01:00
Robert Hensing
04b06e83dc tests.pkg-configPackages: Filter out broken packages
Some packages are only marked broken on specific platforms, so we
filter those out as well.

Consequently, this might not raise an error if the attribute value
needs to point to a different pkgs attribute, but this is not something
we can detect. For now, we'll have to rely on users of such pkg-config
packages to report that kind of error.

There's really not much we can do about this here.
2023-01-29 09:51:54 +01:00
Robert Hensing
e93cfb250b tests.pkg-configPackages: Filter out unsupported packages 2023-01-29 09:51:54 +01:00
Robert Hensing
7790eafbdc pkg-configPackages: init 2023-01-29 09:51:54 +01:00
Artturin
a0f4e8746d tests.overriding: add repeatedOverrides-pname, repeatedOverrides-entangled-pname
from https://github.com/NixOS/nixpkgs/pull/201734#pullrequestreview-1185972282
2023-01-28 12:10:47 +02:00
Artturi
e42cdd2383
Merge pull request #212286 from Artturin/runonall
make-symlinks-relative: run on all outputs
2023-01-25 15:51:53 +02:00
Artturin
cfb543a532 make-symlinks-relative: run on all outputs 2023-01-23 20:11:41 +02:00
Sergei Trofimovich
b9b1d958d0 Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts:
	pkgs/development/libraries/qt-6/modules/qtbase.nix
	pkgs/stdenv/linux/make-bootstrap-tools.nix
2023-01-20 21:56:57 +00:00
Artturin
9c0ac5691c tests.overriding: init
only outputs the first failing test atm
2023-01-20 19:20:03 +02:00
Artturin
44425dc5ab tests.kernel-config: remove test that wasn't being run
it doesn't seem necessary anymore
2023-01-17 20:01:58 +02:00
Artturin
ad10ad9519 tests.kernel-config: fix
error: The option `settings.NIXOS_TEST_BOOLEAN.tristate' has conflicting definition values:
- In `structuredExtraConfig': "n"
- In `structuredExtraConfig': "y"

since https://github.com/NixOS/nixpkgs/pull/90065
yes does not silently win over no
2023-01-17 19:56:13 +02:00
Robert Hensing
01d7f19346 multi-outputs.sh: Improve _assignFirst error message
Closes #16182

This improves the error message

    Error: _assignFirst found no valid variant!

which occurred when the set of outputs was not sufficient to set
the various outputDev, outputBin, etc variables. Specifically, this
would mean that "out" is not among the outputs, which is valid for
a derivation.

This changes the message to something like

    error: _assignFirst: could not find a non-empty variable to assign to outputDev. The following variables were all unset or empty: dev out.
          If you did not define an "out" output, make sure to define all the specific required outputs: define an output for one of the unset variables.

While this isn't a full explanation of what stdenv can and can not do,
I think it's vast improvement over the 0 bits of information that it
used to provide. This at least gives a clue as to what's going on, and
even suggests a fix, although probably multiple such fixes are required
in an instance where someone starts with a no-out derivation from scratch
(and decide to persist).
2023-01-16 12:57:01 +01:00
Martin Weinelt
c1e6c6af69 Merge remote-tracking branch 'origin/master' into staging-next 2023-01-11 03:51:33 +01:00
Artturin
2eeb34c273 treewide: {build,host,target}Platform -> stdenv.{build,host,target}Platform 2023-01-09 21:13:22 +02:00
github-actions[bot]
b48679133a
Merge staging-next into staging 2022-12-25 12:01:40 +00:00
Nick Cao
e419aa8283 cc-wrapper-test: add workaround for asan allocation error
Miminal program fail with address sanitizer error failed to allocate 0x0 (0) bytes of SetAlternateSignalStack
https://bugzilla.redhat.com/show_bug.cgi?id=1950244
2022-12-25 09:19:28 +01:00
Nick Cao
42cd6aebe4 cc-wrapper-test: do not test sanitizers when cross compiling 2022-12-25 09:19:28 +01:00
Nick Cao
8643dbc57e cc-wrapper-test: do not test sanitizers on darwin 2022-12-25 09:19:28 +01:00
Nick Cao
57ff6191af cc-wrapper-test: support cross compilers 2022-12-25 09:19:28 +01:00
Jan Tojnar
72c37eddec Merge branch 'staging-next' into staging 2022-12-25 01:30:47 +01:00
Jan Tojnar
4346dee424 makeHardcodeGsettingsPatch: Support other constructors
In addition to `g_settings_new`, there are three other GSettings constructors:
https://docs.gtk.org/gio/ctor.Settings.new.html
2022-12-19 17:38:57 +01:00
Jan Tojnar
98e84e79a9 makeHardcodeGsettingsPatch: Add simple tests 2022-12-19 17:38:56 +01:00
Naïm Favier
84eebc0fe4
Merge pull request #205944 from ncfavier/structured-attrs-env 2022-12-15 13:27:54 +01:00
Artturin
9b1e8d7267
tests.stdenv: check that attrs in env are exported 2022-12-15 13:27:11 +01:00
Naïm Favier
e14de22618
stdenv: handle env gracefully
Derivations not using `__structuredAttrs` should not attempt to set
environment variables from `env`.

Derivations using `__structuredAttrs` should fail if `env` is not
exportable.
2022-12-15 13:27:11 +01:00
Artturin
630bb71ac5 stdenv: sort defaultNativeBuildInputs alphabetically 2022-12-13 01:12:20 +02:00
Artturin
60b1f09aa4 tests.stdenv.hooks: add more tests 2022-12-12 21:39:56 +02:00
Artturin
9cb5662187 tests: move stdenv hook tests to stdenv.hooks 2022-12-12 21:39:56 +02:00
Artturin
84a7cadfd2 tests.stdenv: add test-golden-example-structuredAttrs
examples copied from https://nixos.mayflower.consulting/blog/2020/01/20/structured-attrs/

nix has tests for structuredAttrs but i figured it'd be good to have a
golden test here too

https://github.com/NixOS/nix/blob/master/tests/structured-attrs.nix
https://github.com/NixOS/nix/blob/master/tests/structured-attrs-shell.nix
2022-12-12 21:39:56 +02:00
Robert Hensing
16f5747575
Merge pull request #175649 from Artturin/opt-in-structured-attrs
stdenv: support opt-in __structuredAttrs
2022-12-10 21:12:43 +01:00
Artturin
11c3127e38 stdenv: detect the type of variable in {prepend,append}ToVar
stdenv: error if using {prepend,append}ToVar on associative array

i don't know how to prepend to associative array
2022-12-10 04:42:36 +02:00
Artturin
bf972f1873 tests.stdenv: add tests for prependToVar and appendToVar 2022-12-10 04:22:11 +02:00
Artturin
68fb254bf2 tests.stdenv: deduplicate 2022-12-10 04:22:11 +02:00
Artturi
91d19a6e66
Merge pull request #204692 from Artturin/relative-links-fix-error
make-symlinks-relative: fix no such file or directory if output is cr…
2022-12-09 19:27:41 +02:00
Naïm Favier
4e5ebcc3ed
vim-full: rename from vim_configurable
Avoids confusion: `vim-full`'s build-time features are configurable, but both
`vim` and `vim-full` are *customizable* (in the sense of user configuration).
2022-12-09 09:55:55 +01:00
Artturin
11b49fa791 tests.hooks.default-stdenv-hooks.make-symlinks-relative: init 2022-12-09 08:57:14 +02:00
Jörg Thalheim
09dcdf4e4e cue: test in tests.cue-validation 2022-12-08 22:19:23 +01:00
Artturin
c01f509e44 treewide: source .attrs in builders
if theres a source $stdenv then this is needed

for structuredAttrs
2022-12-08 21:09:02 +02:00
Artturin
18d00c5814 tests.stdenv: add some env attrset tests 2022-12-08 21:09:02 +02:00
Robert Hensing
c2f071abc2
Merge pull request #182250 from Artturin/fetchpatch2
fetchpatch2: init
2022-12-01 01:31:46 +00:00
Bernardo Meurer
43bf542ccd
tests.trivial-builders.linkFarm: init 2022-11-15 11:47:36 -05:00
Thomas Watson
4784cdb28b cuda-library-samples.cutensor: fix
Previously, the cutensor samples could not find the libcutensor.so.1
shared library at runtime. This patch adds cutensor as a buildInput so
the shared library is linked in properly.
2022-10-21 21:27:48 -05:00
David Guibert
8a63fb0236 cuda-samples: 11.8 throw the non-existing tag 2022-10-14 12:10:30 +02:00
David Guibert
4f43356eb7 cuda-samples: throw an error for tag 11.7 2022-10-04 08:29:08 +02:00
David Guibert
df956cf4c1 Revert "Revert "cudatoolkit_11_7: init at 11.7.0""
This reverts commit 90c505790c.
2022-10-04 08:26:28 +02:00
Dennis Gosnell
49e6d1b813
tests.coq.overrideCoqDerivation: use runCommand instead of runCommandNoCC 2022-09-03 21:02:17 +09:00
Dennis Gosnell
7efd4aa67c
tests.coq.overrideCoqDerivation: add test 2022-08-29 14:46:20 +09:00
Samuel Ainsworth
90c505790c
Revert "cudatoolkit_11_7: init at 11.7.0" 2022-08-05 15:12:47 -07:00
Samuel Ainsworth
a53c2775d7
Merge pull request #179912 from dguibert/dg/cudatoolkit_11_7_0
cudatoolkit_11_7: init at 11.7.0
2022-08-05 14:45:59 -07:00
David Guibert
b139e331a4 cudatoolkit: add 11.7 2022-08-02 16:20:07 +02:00
Artturin
41877098f3 fetchpatch2: init
allows us to use the new features of patchutils without having to reset
all fetchpatch hashes in nixpkgs

https://github.com/NixOS/nixpkgs/issues/32084
2022-07-20 22:47:14 +03:00
Matthieu Coudron
341b9564bb vimUtils: remove vam support
having this many (complex) options not only is hard to maintain but I cant see the benefit of these options now that vim supports packages
2022-07-10 20:38:09 +02:00
Robert Hensing
1e17bb943e
Merge pull request #164662 from infinisil/fetchurl-curlOpts-list
fetchurl: Allow passing curl options with spaces
2022-06-30 21:10:57 +02:00
Silvan Mosberger
588439e131 fetchurl: Add curlOptsList test 2022-06-30 19:49:54 +02:00
Robert Hensing
d64780ea0e
Merge pull request #174176 from hercules-ci/buildFromCabalSdist
haskellPackages: Add buildFromCabalSdist (faster, tested)
2022-06-28 10:06:27 +02:00
github-actions[bot]
15c142e5c0
Merge staging-next into staging 2022-06-13 18:02:13 +00:00
Matthieu Coudron
a1ad235743
vimUtils: deprecate configure.pathogen (#154814)
pathogen does not bring any value compared to vim native packages so
remove it to ease maintainance burden.
2022-06-13 15:25:46 +02:00
Thiago Kenji Okada
299538e834
Merge pull request #172769 from ncfavier/wrappers-append-args
makeWrapper,makeBinaryWrapper: implement `--append-flags`
2022-06-12 11:46:03 +01:00
AndersonTorres
c428ad43d1 pkgs/test/cuda/cuda-samples/generic.nix: use new SRI hash format 2022-06-04 08:19:29 -03:00
AndersonTorres
71834a1a26 buildDhallUrl: use new SRI hash format 2022-06-04 08:19:29 -03:00
Rick van Schijndel
17e891b141
Merge pull request #175317 from ncfavier/makeBinaryWrapper-cross
makeBinaryWrapper: fix cross-compilation and add test
2022-06-02 22:27:14 +02:00
Naïm Favier
eef2c762ce
makeBinaryWrapper: fix cross-compilation and add test
Fixes https://github.com/NixOS/nixpkgs/issues/175045
2022-05-31 13:55:41 +02:00
Naïm Favier
1c70b694fe
makeWrapper,makeBinaryWrapper: implement --append-flags 2022-05-30 23:07:58 +02:00
Robert Hensing
28f9043aa9 pkgs/tests/config.nix: Make test future proof 2022-05-29 11:50:48 +02:00
Robert Hensing
523eb4a181 pkgs.tests: Add regression test for #175196 2022-05-29 10:23:16 +02:00
Robert Hensing
392fba1132 pkgs.tests.haskell.cabalSdist: Avoid IFD 2022-05-24 13:23:19 +02:00
Robert Hensing
cf5e2d5103 haskellPackages: Add buildFromCabalSdist (faster, tested) 2022-05-23 22:28:57 +02:00
Janne Heß
3673f148b3
Merge remote-tracking branch 'origin/staging-next'
* origin/staging-next: (62 commits)
  Re-Revert "lua: fix on darwin by using makeBinaryWrapper (#172749)"
  openldap: fix cross-compilation
  makeBinaryWrapper: fix codesign on aarch64-darwin
  python3Packages.ldap: fix linking with openldap 2.5+
  Revert "lua: fix on darwin by using makeBinaryWrapper (#172749)"
  wine: enable parallel build again
  pkgsi686Linux.gdb: fix formatting for 32-bit systems
  gtk4: Fix incorrect merge
  nixos/openldap: use upstream unit defaults
  openldap: update maintainers
  openldap: 2.4.58 -> 2.6.2
  Revert "Add mingwW64-llvm cross-system."
  lua: fix on darwin by using makeBinaryWrapper (#172749)
  python310Packages.python-mimeparse: execute tests
  pandas: fix darwin build
  gtk3: 3.24.33 -> 3.24.33-2022-03-11
  gtk4: patch fixing g-c-c crashes
  e2fsprogs: patch for CVE-2022-1304
  firefox-unwrapped: fix cross compilation
  rustc: expose correct llvmPackages for cross compile
  ...
2022-05-23 19:56:59 +02:00
Artturin
5a6a31e54d fetchzip: extraPostFetch -> postFetch && tests 2022-05-22 21:18:52 +03:00
Naïm Favier
3e385d9a82
makeBinaryWrapper: add comment 2022-05-12 15:23:38 +02:00
Naïm Favier
0d6bcb513b
makeBinaryWrapper: move into its own folder
The derivation is complex enough to warrant moving out of
all-packages.nix
2022-05-10 22:07:56 +02:00
Robert Hensing
ebf0465d09 Merge remote-tracking branch 'upstream/master' into testers 2022-05-09 14:27:13 +02:00
Robert Hensing
93abb7bef7 tests.testers.nixosTest-example: move from tests.nixos-functions.nixosTest-test
And improve the test a bit, to assert correct wiring of `pkgs`.
2022-05-09 14:21:56 +02:00
Robert Hensing
ae172a2bb4 treewide: nixosTest -> testers.nixosTest 2022-05-09 14:16:06 +02:00
Naïm Favier
69c7dbb880
makeBinaryWrapper: add overlength-strings test 2022-05-06 17:03:30 +02:00
Janne Heß
0329256fd8
nixos-functions: Set system.stateVersion 2022-05-05 12:51:39 +02:00
Robert Hensing
7edb414660 testers.nixosTest: Move from top-level and improve docs 2022-05-05 12:48:47 +02:00
Frederik Rietdijk
1d63f89caa cudaPackages: overhaul of how we package cuda packages
There are many different versions of the `cudatoolkit` and related
cuda packages, and it can be tricky to ensure they remain compatible.

- `cudaPackages` is now a package set with `cudatoolkit`, `cudnn`, `cutensor`, `nccl`, as well as `cudatoolkit` split into smaller packages ("redist");
- expressions should now use `cudaPackages` as parameter instead of the individual cuda packages;
- `makeScope` is now used, so it is possible to use `.overrideScope'` to set e.g. a different `cudnn` version;
- `release-cuda.nix` is introduced to easily evaluate cuda packages using hydra.
2022-04-09 08:50:22 +02:00
github-actions[bot]
27e49cc5a4
Merge master into staging-next 2022-04-01 18:01:22 +00:00
Robert Hensing
6febb906a8 tests: Add pkgs-lib
Makes the following work

    ofborg build tests.pkgs-lib
2022-04-01 15:19:45 +02:00
github-actions[bot]
be4f006d3c
Merge master into staging-next 2022-03-31 18:01:13 +00:00
Robert Hensing
e2461d62b6 pkgs.tests.nixos-functions: machine -> nodes.machine 2022-03-28 14:11:58 +02:00
github-actions[bot]
c6dd9fd65d
Merge master into staging-next 2022-03-25 18:01:14 +00:00
Silvan Mosberger
99d9d45630
Merge pull request #164651 from Infinisil/remove-optionSet
lib/modules: Finally remove deprecated types.optionSet
2022-03-25 17:41:57 +01:00
Vladimír Čunát
0a8b4eddd2
Merge branch 'master' into staging-next 2022-03-25 10:16:56 +01:00
Robert Hensing
6c469679f6 Merge remote-tracking branch 'upstream/master' into tests-restrict-arguments 2022-03-21 23:17:17 +01:00
Robert Hensing
b2d3baa3cf tests.nixos-functions.nixosTest-test: Test callPackage-like behavior 2022-03-21 23:14:10 +01:00
Vladimír Čunát
a519740b4c
Merge branch 'staging-next' into staging 2022-03-21 11:57:43 +01:00
Robert Hensing
9bc841fec1
Merge pull request #164305 from hercules-ci/haskellPackages-shellFor-extraDependencies
haskellPackages.shellFor: Add extraDependencies
2022-03-20 19:18:44 +01:00
Silvan Mosberger
7b32b8b66f Remove ancient mkOption tests
These are completely non-functional by now
2022-03-18 21:23:54 +01:00
Robert Hensing
2e87d165f7 haskellPackages.shellFor: Add extraDependencies
An example use case is when you have Haskell scripts that use
libraries that don't occur in your packages' dependencies.
2022-03-15 20:38:22 +01:00
K900
7e3c503257 build-support/writeTextFile: add test for weird file names 2022-03-10 13:30:46 +03:00
talyz
183147a037
makeWrapper: Don't glob in prefix/suffix
Disable file globbing in --prefix/--suffix, since bash will otherwise
try to find filenames matching the the value to be prefixed/suffixed
if it contains characters considered wildcards, such as `?` and
`*`. We want the value as is, except we also want to split it on on
the separator; hence we can't quote it.
2022-02-12 11:03:32 +01:00
talyz
be2aa01de7
tests: Add test for makeWrapper
Co-authored-by: Janne Heß <janne@hess.ooo>
2022-02-02 20:08:26 +01:00
Sandro
982fdde775
neovim.tests: remove alias 2022-01-20 02:58:47 +01:00
Robert Hensing
d75b85c5dc
Merge pull request #147690 from pasqui23/hosts
concatTextFile: init
2022-01-08 20:40:31 +01:00
Pasquale
5187d2cd8f
concatText: test now works 2021-12-30 13:12:34 +01:00
Robert Hensing
f6ff6c4ff4
Merge pull request #151411 from hercules-ci/pkgs-tests-fetch
pkgs.tests: Add fetcher tests so ofborg can run them
2021-12-20 18:33:50 +01:00
Robert Hensing
7195f7d5b9 pkgs.tests: Add fetcher tests so ofborg can run them 2021-12-20 13:13:07 +01:00
Tobias Bergkvist
ebf46e5764 makeBinaryWrapper: Fix issues on aarch64-darwin/macOS 12 (Monterey)
Sanitizers don't seem to be present on aarch64-darwin/macOS 12 (Monterey), so they are removed from the aarch64-darwin tests.

Switching from nativeBuildInputs to buildInputs and adding cc to the deps list caused some strange error messages to go away.
2021-12-16 21:29:21 +01:00
Tobias Bergkvist
228d451e03 makeBinaryWrapper: Fix chdir golden test for darwin
On macOS, /tmp is a symlink to /private/tmp. When performing cd /tmp, and checking cwd - it won't match since it follows the symlink.

This caused test breakage on macOS but not Linux. Instead, use a folder which is not a symlink, and consistent across Linux and macOS.
2021-12-16 21:12:59 +01:00
Tobias Bergkvist
f7b5083cb6 makeBinaryWrapper: Make tests discoverable to OfBorg
Move makeBinaryWrapper tests to pkgs.makeBinaryWrapper.passthru.tests, since OfBorg doesn't discover/skips the tests in the previous location.
2021-12-16 21:04:07 +01:00
Robert Hensing
9fb7d91888
Merge pull request #124556 from bergkvist/bergkvist/make-c-wrapper
Generate tiny compiled binary for wrapping executables
2021-12-10 00:45:30 +01:00
Jacek Galowicz
b7e00ed89e make-binary-wrapper: Add -Wall -Werror -Wpedantic 2021-12-09 17:22:55 +01:00
Jacek Galowicz
177f0a6eed make makeWrapper and makeBinaryWrapper drop-in-replaceable 2021-12-09 11:32:29 +00:00
Jacek Galowicz
e7c70ce5c8 Inject gcc path into makewrapper script 2021-12-09 11:32:29 +00:00
Jacek Galowicz
2bc7345064 Add golden effects test 2021-12-09 11:32:28 +00:00
(cdep)illabout
cfb2fd768e tests.dhall.generateDhallDirectoryPackage: init 2021-12-07 13:36:20 +09:00
Tobias Bergkvist
d8375fbccb Add tests for --inherit-argv0 and --chdir DIR 2021-12-02 04:03:36 +01:00
Tobias Bergkvist
a1e62262bc Replace concat3 with asprintf in set_env_prefix and set_env_suffix. 2021-12-01 23:27:26 +01:00
Tobias Bergkvist
3997e9de67 Switch from malloc to calloc in addFlags 2021-12-01 23:07:30 +01:00
Tobias Bergkvist
97d62a90f5 Switch from exit(1) to abort() in assert_success 2021-12-01 22:56:18 +01:00
Tobias Bergkvist
4e55d34535 Add assertValidEnvName and check that variable name is valid during code generation. Add assert_success, and assert that setenv/unsetenv succeeds to crash if they don't 2021-12-01 22:49:20 +01:00
Kim Lindberger
0039b0b5a8
Merge pull request #144564 from jtojnar/php-overridable
php: Implement overrideAttrs that composes with buildEnv/withExtensions
2021-11-15 18:12:44 +01:00
Jan Tojnar
968d180452 php: Implement overrideAttrs that composes with buildEnv/withExtensions
Hopefully.

Also add a couple of tests to check that.
2021-11-14 23:05:48 +01:00
Tobias Bergkvist
3a014be2f2 Assert that malloc does not return a NULL pointer for better error messages + to satisfy static analysis tools. 2021-11-09 02:56:32 +01:00
github-actions[bot]
e1766085b3
Merge master into haskell-updates 2021-11-09 00:10:05 +00:00
Dennis Gosnell
4d2b3b4d5a
Merge pull request #142825 from cdepillabout/buildDhallUrl
dhallPackages.buildDhallUrl: add function for easily building dhall remote imports
2021-11-08 13:44:37 +09:00
(cdep)illabout
10c5a4cca5 dhallPackages.buildDhallUrl: change argument from dhall-hash to dhallHash 2021-11-08 13:15:17 +09:00
Ellie Hermaszewska
15ae25f36c
haskell: switch from haskell.lib to haskell.lib.compose 2021-11-07 20:18:45 +08:00
Dennis Gosnell
2e1d84e9fb
dhallPackages.buildDhallUrl: small formatting fixes
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2021-11-01 13:44:50 +09:00
Robert Hensing
51f7c15df9 test.trivial-builders: Add test cases, fix test runner, rename
The writeStringReferencesToFile didn't handle non-unique references
to the same path correctly.
2021-11-01 00:06:03 +01:00
(cdep)illabout
9be3d05d7c tests.dhall.buildDhallUrl: add test 2021-10-25 15:04:50 +09:00
Tobias Bergkvist
a95a7a22be Switch from buildInputs to nativeBuildInpuits in makeGoldenTest 2021-10-19 18:35:42 +02:00
Tobias Bergkvist
7cca19a46a
Set strictDeps = true in makeGoldenTest
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2021-10-19 09:25:24 -07:00
Tobias Bergkvist
4b833cc141 EditorConfig: Switch from tabs to spaces 2021-10-04 22:38:14 +02:00
Tobias Bergkvist
b7d36b8d59 Add golden tests for make-binary-wrapper.
To run tests after cloning on linux, use the following:
nix-build pkgs/top-level/release.nix -A tests.make-binary-wrapper.x86_64-linux
2021-10-04 22:35:09 +02:00
Samuel Ainsworth
0981d9473f cudatoolkit_11_{3,4}: init at 11.{3,4}.1 2021-09-21 07:03:01 +00:00
Robert Hensing
fbafeb7ad5 treewide: runCommandNoCC -> runCommand
This has been synonymous for ~5y.
2021-08-15 17:36:41 +02:00
Ben Siraphob
1e2484a27c treewide: remove unnecessary enableParallelBuilding when using cmake 2021-07-20 10:32:58 +07:00
Dmitry Kalinkin
8ff78e6a14
Merge pull request #130041 from xworld21/texlive-generate-fmtutilcnf
texlive: generate fmtutil.cnf
2021-07-17 08:21:12 -04:00
sternenseemann
3e19234f34 tests.haskell: set meta.platforms
This allows packagePlatforms to pick up on the overall supported
platforms and schedule builds on Hydra for more than the evaluation
platform (usually x86_64-linux).
2021-07-13 15:37:22 +02:00
sternenseemann
6bd0c16f89 tests.writers: also expose path via passthru 2021-07-13 15:22:34 +02:00
sternenseemann
52acca72bf top-level/release-haskell.nix: test writers on all platforms
Since the rust writer doesn't seem to get fixed on darwin, we'll just
wrap the haskell writer test in our own derivation (which is possible
since tests.writers exposes a bunch of internals via passthru) and
expose it via tests.haskell which are already in mergeable.

Finally a way to test the (hopefully) working haskell writer on darwin
again!
2021-07-13 15:19:36 +02:00
Vincenzo Mantova
e40614da00 tests.texlive.fmtutilCnf: init 2021-07-12 20:37:51 +01:00
Dmitry Kalinkin
7db19e75e6
Merge pull request #127489 from xworld21/texlive-drop-hyphens-sed
texlive.combine: improve creation of language files
2021-07-11 19:10:08 -04:00
Vincenzo Mantova
d26a4266e2 tests.texlive.hyphen-base: init 2021-07-04 11:47:33 +01:00
github-actions[bot]
947012b992
Merge staging-next into staging 2021-06-26 00:09:11 +00:00
Robert Schütz
d6234c2165 Merge branch 'master' into staging-next 2021-06-26 00:33:58 +02:00
Dmitry Kalinkin
53d6abc682
tests.texlive.texdoc: init 2021-06-23 22:18:54 -04:00
deliciouslytyped
a71e906e3a trivial-builders: refactor writeTextFile to be overridable
This fixes #126344, specifically with the goal of enabling overriding the
checkPhase argument. See `design notes` at the end for details.

This allows among other things, enabling bash extension for the `checkPhase`.
Previously using such bash extensions was prohibited by the `writeShellScript`
code because there was no way to enable the extension in the checker.

As an example:

```nix
(writeShellScript "foo" ''
  shopt -s extglob
  echo @(foo|bar)
'').overrideAttrs (old: {
  checkPhase = ''
    # use subshell to preserve outer environment
    (
      export BASHOPTS
      shopt -s extglob
      ${old.checkPhase}
    )
  '';
})
```

This commit also adds tests for this feature to `pkgs/tests/default.nix`,
under `trivial-overriding`. The test code is located at
`pkgs/build-support/trivial-builders/test-overriding.nix`.

Design notes:
-------------

Per discussion with @sternenseemann, the original approach of just wrapping
`writeTextFile` in `makeOverridable` had the issue that combined with `callPackage`
in the following form, would shadow the `.override` attribute of the `writeTextFile`:

```nix
with import <nixpkgs>;
callPackage ({writeShellScript}: writeShellScript "foo" "echo foo")
```

A better approach can be seen in this commit, where `checkPhase` is moved
from an argument of `writeTextFile`, which is substituted into `buildCommand`,
into an `mkDerivation` argument, which is substituted from the environment
and `eval`-ed. (see the source)

This way we can simple use `.overideAttrs` as usual, and this also makes
`checkPhase` a bit more conformant to `mkDerivation` naming, with respect to
phases generally being overridable attrs.

Co-authored-by: sterni <sternenseemann@systemli.org>
Co-authored-by: Naïm Favier <n@monade.li>
2021-06-18 01:39:59 +02:00
github-actions[bot]
f8b7190a42
Merge staging-next into staging 2021-06-10 00:06:44 +00:00
Matthieu Coudron
83f6711464 neovim.tests: added more tests
to check for creation of vi/vim aliases.
These tests also now follow the coding conventions of having tests in
passthru.test .
2021-06-09 21:45:25 +02:00
github-actions[bot]
5b7fbb07b8
Merge staging-next into staging 2021-06-07 18:48:37 +00:00
Matthieu Coudron
4a2cbcfbb4 neovim: add some tests
To test the generated RC is included in the file and that we have the
option not to wrap the RC.

run:
nix-build -A tests.vim
2021-06-07 18:21:21 +02:00
github-actions[bot]
0d024626ff
Merge staging-next into staging 2021-05-29 19:17:41 +00:00
Matthieu Coudron
c73371e04b
neovim: fix neovim.override (#124785)
* neovim: temporary revert to unbreak user configs

Newly introduced "plugins" parameter is disabled until we get a better
testing infrastructure to minimize breaking changes.
2021-05-29 16:36:39 +02:00