1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-17 19:21:04 +00:00
Commit graph

574 commits

Author SHA1 Message Date
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00
qbisi 93f58b50c0 mpiCheckPhaseHook: use preset topoloy file in sandbox for mpich 2024-11-07 11:59:08 +08:00
Philip Taron e50c6cab11
treewide: fix links to specifications.freedesktop.org (#350918) 2024-11-03 09:06:56 -08:00
Victor Duarte 85f4044fc3
Update pkgs/build-support/setup-hooks/desktop-to-darwin-bundle.sh 2024-11-03 17:39:02 +01:00
Markus Kowalewski 17aacfb690
mpiCheckPhaseHook: disable openmpi's ssh plugin (#351473) 2024-11-02 13:33:57 +01:00
Markus Kowalewski 6b6b6c3837 mpiCheckPhaseHook: disable openmpi's ssh plugin
openmpi requires SSH to run. Set flags to run off SSH usage.
2024-10-26 17:31:22 +02:00
Victor Duarte f2b58efde4 fix links to specifications.freedesktop.org 2024-10-24 13:00:55 +02:00
github-actions[bot] f2d7c5202d
Merge master into staging-next 2024-10-21 18:04:46 +00:00
qbisi 0c5883bbce mpiCheckPhaseHook: add parameters to bypass errors in sandbox 2024-10-21 07:20:30 +08:00
K900 a7b40b71cd freetype, pixman: restore flatten include hack for now, but better 2024-10-17 15:24:31 +03:00
Guillaume Maudoux ced27bf29e
autoPatchelfHook: expose script as top level package (#340162) 2024-09-30 10:03:28 +02:00
Artturin f0e657f3b1 Merge branch 'master' into staging-next 2024-09-25 06:05:01 +03:00
Artturin e0464e4788 treewide: replace stdenv.is with stdenv.hostPlatform.is
In preparation for the deprecation of `stdenv.isX`.

These shorthands are not conducive to cross-compilation because they
hide the platforms.

Darwin might get cross-compilation for which the continued usage of `stdenv.isDarwin` will get in the way

One example of why this is bad and especially affects compiler packages
https://www.github.com/NixOS/nixpkgs/pull/343059

There are too many files to go through manually but a treewide should
get users thinking when they see a `hostPlatform.isX` in a place where it
doesn't make sense.

```
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv.is" "stdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenv'.is" "stdenv'.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "clangStdenv.is" "clangStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "gccStdenv.is" "gccStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "stdenvNoCC.is" "stdenvNoCC.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "inherit (stdenv) is" "inherit (stdenv.hostPlatform) is"
fd --type f "\.nix" | xargs sd --fixed-strings "buildStdenv.is" "buildStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "effectiveStdenv.is" "effectiveStdenv.hostPlatform.is"
fd --type f "\.nix" | xargs sd --fixed-strings "originalStdenv.is" "originalStdenv.hostPlatform.is"
```
2024-09-25 00:04:37 +03:00
Wolfgang Walther bc0395ee6f
auto-patchelf: refactor structuredAttrs support
stdenv now provides better tooling to support structuredAttrs without
depending on $__structuredAttrs itself.
2024-09-11 19:29:39 +02:00
Sefa Eyeoglu 567bd7c6a6
autoPatchelfHook: expose script as top level package
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2024-09-08 15:57:53 +02:00
Yueh-Shun Li 758056dac7 treewide: handle postPhases __structuredAttrs-agnostically
Always specify the postPhases attribute as a list instead of a string.

Append elements to the postPhases Bash variable using appendToVar
instead of string or Bash array concatenation.
2024-09-03 05:56:17 +08:00
Yueh-Shun Li 5d42a8b38c treewide: handle preConfigurePhases __structuredAttrs-agnostically
Always specify the preConfigurePhases attribute as a list instead of a
string.

Append elements to the preConfigurePhases Bash variable using
appendToVar instead of string or Bash array concatenation.
2024-09-03 05:33:59 +08:00
Yueh-Shun Li 21c0129841 treewide: handle prePhases __structuredAttrs-agnostically
Always specify the prePhases attribute as a list instead of a string.

Append elements to the prePhases Bash variable using appendToVar
instead of string or Bash array concatenation.
2024-09-03 05:33:59 +08:00
github-actions[bot] 023a2c3d2a
Merge staging-next into staging 2024-08-31 06:04:54 +00:00
github-actions[bot] 8158f1d5b3
Merge master into staging-next 2024-08-31 06:04:15 +00:00
Philip Taron 1b9af797ec
breakpointHook: move to by-name, mark broken instead of asserting 2024-08-30 15:03:42 -07:00
Anderson Torres 8f4200d165 installShellFiles: move setup script to the same directory
So that it can be migrated to by-name later.
2024-08-28 18:51:06 -03:00
Philip Taron 0d1b26857b
treewide: support structuredAttrs in setup hooks (part 2) (#335666) 2024-08-28 14:07:58 -07:00
Artturin 740804dd5f
patch-shebangs: don't patch shebangs with bash builtins (#330188) 2024-08-27 03:54:10 +03:00
Wolfgang Walther 1efcffa700
stdenv: support default values in concatTo
The previously used pattern was introduced in #318614, but technically
leaked the default flags into the global scope. While this would
probably not make much of a practical difference, making concatTo
support default values is a much cleaner approach.
2024-08-24 12:23:35 +02:00
github-actions[bot] 688ae1bcd3
Merge staging-next into staging 2024-08-15 12:02:43 +00:00
squalus 0a3ed67ff6
autoPatchelfHook: add keep_libc flag (#332617)
* autoPatchelfHook: add keep_libc flag

- Add keep_libc flag to disable the default libc handling. Intended
  to be used by systemd.
- Add autoPatchelfFlags to autoPatchelfHook for passing arguments to
  the autoPatchelf script

This reverts part of the change made in #307068 / 80be926.

Fixes #332533
2024-08-14 02:54:27 -04:00
Markus Kowalewski b898495c9a mpiCheckPhaseHook: update to use openmpi-5 compatible parameters 2024-08-12 21:45:24 +02:00
Wolfgang Walther d7c257035d
setup-hooks/autoreconf: support structuredAttrs
Tested db with and without __structuredAttrs.
2024-08-03 12:56:08 +02:00
Minijackson 24655f7804
patch-shebangs: don't patch shebangs with bash builtins
'command -v builtin' returns 'builtin', which doesn't suit us since
we're looking for program in the given PATH. This could give us shebangs
like this:

    #!builtin

which is surprising.

Switch to 'type -P command' which always returns a path, even if command
is both a builtin and an executable (for example 'test'), or fail is
'command' is just a builtin.
2024-07-29 11:40:29 +02:00
Arian van Putten 80be92660e autoPatchelfHook: add support for .note.dlopen
also retain libc in rpath if it was there originally
2024-07-21 06:25:51 -04:00
Will Fancher ffbecb3c19 autoPatchelfHook: Stop using deprecated alias types 2024-07-21 06:25:51 -04:00
Alyssa Ross f03d6497cb separateDebugInfo: tell rustc not to strip
There's no point generating debug info if the compiler immediately
strips it before we get a chance to do anything with it.

This is especially important since Cargo 1.77, which asks rustc to
strip by default.
2024-07-20 10:05:57 +02:00
Ryan Hendrickson 40428630bc
Merge pull request #317106 from trofi/dashed-source
stdenv: handle $sourceRoot that starts with dash
2024-07-02 23:48:25 -04:00
github-actions[bot] 2f3bfad6d2
Merge master into staging-next 2024-06-28 00:02:11 +00:00
PoweredByPie e72b347c1d Resolve _all_ Windows DLL dependencies
The current DLL linker only links direct dependencies of the derivation. Indirect dependencies are sometimes missed.
2024-06-25 19:04:22 -07:00
Sergei Trofimovich a3f1b476c7 setup-hooks/set-source-date-epoch-to-latest.sh: handle $path that starts with dash
Without the change `updateSourceDateEpoch` fails on tarballs like
`diffoscope-269` that contain single top-level `-269` root as:

    diffoscope> source root is -269
    diffoscope> find: unknown predicate `-269'
    diffoscope> chmod: invalid mode: ‘-269’
    diffoscope> Try 'chmod --help' for more information.

Currently `diffoscope-269` has a `sourceRoot = "./-269";` workaround to
bypass the failure.

Co-authored-by: Philip Taron <philip.taron@gmail.com>
2024-06-10 23:56:46 +01:00
toonn eed45499c8
Merge pull request #273850 from wegank/dylib-error-fix
fixDarwinDylibNames: fix error message output
2024-06-07 18:48:33 +02:00
Sandro 7be7b5dfd2
Merge pull request #289517 from SFrijters/shell-completion-check 2024-06-02 18:56:49 +02:00
Weijia Wang 91a237cd7a fixDarwinDylibNames: fix error message output 2024-06-01 22:49:42 +02:00
Alyssa Ross f82a1d12eb Revert "make-binary-wrapper: add cc to propagatedBuildInputs"
This reverts commit 0c34636a56.

Seems to be causing some weird side effects. pkgsMusl.systemd no
longer builds:

Command line: `clang /run/user/1008/tmp.WuVNjgdfHT/source/build/meson-private/tmpdd3qc57v/testfile.c -o /run/user/1008/tmp.WuVNjgdfHT/source/build/meson-private/tmpdd3qc57v/output.obj -c -D_FILE_OFFSET_BITS=64 -O0 -Werror=implicit-function-declaration -Werror=unknown-warning-option -Werror=unused-command-line-argument -Werror=ignored-optimization-argument -std=gnu11` -> 1
stderr:
clang: error: argument unused during compilation: '-pie' [-Werror,-Wunused-command-line-argument]
2024-05-27 21:56:47 +02:00
John Ericson e897cae4da
Merge pull request #311794 from rhelmot/freebsd-minimal3/make-binary-wrapper
make-binary-wrapper: add cc to propagatedBuildInputs
2024-05-26 11:50:45 -04:00
Thomas Watson 4d6d293fad setup-hooks/strip: uniqify files by inode number before stripping
https://github.com/NixOS/nixpkgs/pull/246164 but for hardlinks.

Mesa, among other packages, has binaries that are linked together and
can end up corrupted when the same binary is stripped through two
different names.

To resolve this, print out the device and inode number before each file
name, sort/uniq based on that, then cut it back out before stripping.

The symlink resolution logic is removed as the same file accessed
through two different links in `$paths` will necessarily have the same
numbers. File/directory within the paths listed in `$paths` are
correctly not (and were never) processed due to the `-type f` predicate
and (implied) `-P` option to `find`.
2024-05-24 16:53:14 -05:00
Stefan Frijters 6b6073f1fb
installShellCompletion: add sanity check 2024-05-22 23:13:37 +02:00
Artemis Tosini 0c34636a56 make-binary-wrapper: add cc to propagatedBuildInputs
Adding cc to propagatedBuildInputs makes derivations with
makeBinaryWrapper in nativeBuildInputs run the cc-wrapper
setup hook. This isn't an issue for derivations using
stdenv, as the cc setup hook is already run by default.
However, derivations that are made with stdenvNoCC, e.g.
because they're made with runCommand, will not run the
cc-wrapper setup hook without this change.

For some reason the FreeBSD native compiler will not work
correctly without the setup hook.
2024-05-17 12:52:49 -07:00
Jan Tojnar eb04659fc2 treewide: wrapGAppsHook → wrapGAppsHook3
This was achieved using the following command:

    sd 'wrapGAppsHook\b' wrapGAppsHook3 (rg -l 'wrapGAppsHook\b')

And then manually reverted the following changes:

- alias in top-level.nix
- function name in wrap-gapps-hook.sh
- comment in postFixup of at-spi2-core
- comment in gtk4
- comment in preFixup of 1password-gui/linux.nix
- comment in postFixup of qgis/unwrapped-ltr.nix and qgis/unwrapped.nix
- comment in postFixup of telegram-desktop
- comment in postFixup of fwupd
- buildCommand of mongodb-compass
- postFixup of xflux-gui
- comment in a patch in kdePackages.kde-gtk-config and plasma5Packages.kde-gtk-config
- description of programs.sway.wrapperFeatures.gtk NixOS option (manual rebuild)
2024-04-27 02:23:22 +02:00
Jan Tojnar 70cf3ecaae wrapGAppsHook: Flip inheritance relationship with wrapGAppsNoGuiHook 2024-04-27 00:05:46 +02:00
Philip Taron 83440df1f6
auditBlasHook: remove
This was added in d83e9c9573,
but included substitution variables `@blas@` and `@lapack@` that were
never substituted. It's not used anywhere in `nixpkgs`.
2024-04-02 10:50:15 -07:00
Domen Kožar fb884172ab
Merge pull request #297628 from cwp/python-env-venv
Fix venv creation in Python environments
2024-03-22 19:17:13 +07:00
Colin Putney 234bb31f61
Fix venv creation in Python environments
The way we build python environments is subtly broken. A python
environment should be semantically identical to a vanilla Python
installation in, say, /usr/local. The current implementation, however,
differs in two important ways. The first is that it's impossible to use
python packages from the environment in python virtual environments. The
second is that the nix-generated environment appears to be a venv, but
it's not.

This commit changes the way python environments are built:

  * When generating wrappers for python executables, we inherit argv[0]
    from the wrapper. This causes python to initialize its configuration
    in the environment with all the correct paths.
  * We remove the sitecustomize.py file from the base python package.
    This file was used tweak the python configuration after it was
    incorrectly initialized. That's no longer necessary.

The end result is that python environments no longer appear to be venvs,
and behave more like a vanilla python installation. In addition it's
possible to create a venv using an environment and use packages from
both the environment and the venv.
2024-03-21 19:26:57 -06:00