Commit Graph

915 Commits

Author SHA1 Message Date
Kasper Gałkowski
84eea85ad9 lisp-modules: use wrapLisp to wrap Lisps
The previous approach of manually repeating a complex pattern inside Common Lisp
implementation package declarations was fragile and hard to change. After
reading python and lua modules code in Nixpkgs, I was able to come up with
something better.

The function `wrapLisp` doesn't need to be inside package declarations so all
the code for wrapping Lisps can be in `all-packages.nix`.

This works by wrapping the `override` function created from `mkDerivation` to
accept a new argument `packageOverrides`.

One problem with this is that `override.__functionArgs` disappears. But one can
look at the source code of a package to discover what can be overridden.
2023-03-11 15:11:38 +01:00
Kasper Gałkowski
a0bdaf345b lisp-modules: replace "_" in package names with "__" for reversibility 2023-03-10 20:10:39 +01:00
github-actions[bot]
4bda2ab514
Merge master into haskell-updates 2023-03-09 00:13:40 +00:00
github-actions[bot]
7072ae38b6
Merge master into staging-next 2023-03-08 18:01:34 +00:00
figsoda
b373d299ba docs/rust: improve docs for nightly usage 2023-03-03 22:46:28 -05:00
Kasper Gałkowski
092acca8b3 lisp-modules: make ql-import.lisp automatically pull the latest Quicklisp dist 2023-03-02 19:04:47 +01:00
Kasper Gałkowski
7a1ccaa997 lisp-modules: Add manual section 2023-03-02 19:04:41 +01:00
sternenseemann
b7d8c46302 haskellPackages.ghc: 9.2.6 -> 9.2.7
https://www.haskell.org/ghc/blog/20230227-ghc-9.2.7-released.html

Also updates some of the printouts in the manual. We should probably
make it clear in the text that these may be outdated, since we are doing
a terrible job keeping up…
2023-03-01 18:41:14 +01:00
github-actions[bot]
40707bbbb3
Merge staging-next into staging 2023-02-27 18:02:06 +00:00
Artturi
1c6a1e5650
Merge pull request #218500 from alyssais/pythonForBuild 2023-02-27 18:17:27 +02:00
github-actions[bot]
288c9d7892
Merge staging-next into staging 2023-02-27 06:01:44 +00:00
Martin Weinelt
0d09b95ad1 doc/python: Explain opt-out out of bulk updates 2023-02-27 02:21:07 +00:00
Alyssa Ross
2bfa93e01c
treewide: python{ => .pythonForBuild}.interpreter
It won't be enough to fix cross in all cases, but it is in at least
one: pywayland.  I've only made the change in cases I'm confident it's
correct, as it would be wrong to change this when python.interpreter
is used in wrappers, and possibly when it's used for running tests.
2023-02-26 20:26:17 +00:00
github-actions[bot]
55aecca307
Merge staging-next into staging 2023-02-24 00:02:56 +00:00
github-actions[bot]
3cdd771820
Merge staging-next into staging 2023-02-23 18:01:49 +00:00
Artturin
06567334be emscriptenPackages: s/overrideDerivation/overrideAttrs
https://nixos.org/manual/nixpkgs/stable/#sec-pkg-overrideDerivation

> Do not use this function in Nixpkgs as it evaluates a Derivation before modifying it, which breaks package abstraction and removes error-checking of function arguments
2023-02-23 18:45:38 +02:00
Artturin
6b2a05e190 treewide: manual fixups for
treewide: use toString on list NIX_CFLAGS_COMPILE
treewide: move NIX_CFLAGS_COMPILE to the env attrset
2023-02-22 21:23:04 +02:00
Artturi
cdcca1cdcd
Merge pull request #215715 from Artturin/removegirworkarounds2 2023-02-18 20:12:57 +02:00
maralorn
b5fa92b2e6 doc/haskell: Add clarifications in section about versions 2023-02-18 15:15:11 +01:00
Artturin
cadffcfe50 treewide: remove issue #56943 workarounds
checked with diffoscope+difflog and launching the programs

i have fixed that issue in my other gir PRs
2023-02-17 20:26:13 +02:00
sternenseemann
c5a0a5ac5e curl: add pkg-config metadata for libcurl.pc
I did not add the validatePkgConfig setup hook to curl, as I suspect it
may cause trouble when bootstrapping.
2023-02-15 13:52:15 +01:00
superherointj
a7fb18c804 beam/fetchMixDeps: disable --only flag when mixEnv is empty
* mixEnv being empty will include all dependencies.
2023-02-14 00:36:31 -05:00
John Ericson
6d0b3086f7
Merge pull request #214304 from obsidiansystems/pkg-config-meta
meta.pkgConfigModules: Init convention
2023-02-06 11:44:29 -05:00
Domen Kožar
3b837710a9
Merge pull request #214612 from stephank/feat/swift-docs
doc: add section on swift
2023-02-06 14:17:41 +01:00
Jason Yundt
b1bb9bb6c8 treewide: fix backwards smart apostrophes
According to the Unicode Standard, you should use U+2019 RIGHT SINGLE
QUOTATION MARK for apostrophes [1]. Before this change, some of the text
in this repo would use U+2018 LEFT SINGLE QUOTATION MARKs instead.

[1]: https://www.unicode.org/versions/Unicode15.0.0/ch06.pdf#G12411
2023-02-06 07:24:42 -05:00
Stéphan Kochen
cbc76260f7 doc: add section on swift 2023-02-04 22:30:10 +01:00
John Ericson
6e4a1b18d9 meta.pkgConfigModules: Init convention
See docs.

Follow-up work:

- Existing packages should be converted

- `defaultPkgConfigPackages` should assert on `meta.pkgConfigModules`
  and let `tests.pkg-config` alone test the build results.

CC @sternenseemann

Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-02-03 09:37:31 -05:00
André Schröder
b2c8b539ac nixos/doc: fix typo in python.section.md 2023-02-01 23:00:16 +01:00
Robert Hensing
663c41affd
Merge pull request #212282 from hercules-ci/pkg-config-packages
defaultPkgConfigPackages: init
2023-01-30 09:48:53 +01:00
Artturi
c2e37a404c
Merge pull request #208793 from hadilq/androidenv/cmdline-tools-and-patcher
androidenv: Implement cmdline-tools and patcher
2023-01-29 18:11:41 +02: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
159ad20b89 doc: Add pkg-config section 2023-01-29 09:51:54 +01:00
Noah Fontes
3bec41fb5e
doc/python: fix attr name for unittestCheckHook flags
The name should end in Array per the current conventions.

This change also contains some minor formatting fixes, as the heading
levels were inconsistent.
2023-01-28 13:19:41 -08:00
Hadi
9c4e43ab70 androidenv: Implement cmdline-tools and patcher
- Replace cmdline-tools with tools because tools is obsolete now.
- Depend emulator package to systemImages

androidenv: fix issues on the PR

androidenv: reformat

androidenv: support excluding of `tools` package

androidenv: provide `tools`, and `build-tools`, dependencies

androidenv: replace includeTools with toolsVersion

androidenv: fix a typo

androidenv: add tests to check licenses and installed packages

androidenv: check if tests are running! this commit should fail!

androidenv: fix problems in the review https://github.com/NixOS/nixpkgs/pull/208793

androidenv: add test-suite to handle more tests around

androidenv: fix the test after couldn't running them with ofborg

Update pkgs/development/mobile/androidenv/build-tools.nix

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>

androidenv: Resolving https://github.com/NixOS/nixpkgs/pull/208793#discussion_r1065851539

Update pkgs/development/mobile/androidenv/cmdline-tools.nix

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>

Update pkgs/development/mobile/androidenv/tools.nix

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>

androidenv: fix a typo
2023-01-27 18:15:47 -05:00
Guillaume Girol
b55a8d3ad6
Merge pull request #205646 from symphorien/ocamlconflict
ocamlPackages.findlib: detect conflicts of version early
2023-01-27 20:18:39 +00:00
Naïm Favier
4580a6608d
doc: fix broken links 2023-01-24 13:27:27 +01:00
mdarocha
5234f4ce93 dotnet-sdk_5: remove package
It's EOL and not used in nixpkgs anymore
2023-01-23 19:16:58 +01:00
Noah Snelson
a67632bda0 doc/langauge-frameworks/beam: fix broken link to elixir-ls 2023-01-22 17:24:48 -05:00
Guillaume Girol
d26caea94b doc: adapt to nativeCheckInputs 2023-01-21 16:42:10 +01:00
Dominik Schrempf
eda69033eb
doc/haskell: nits
These are some suggested changes to the new documentation of Haskell in
the Nixpkgs manual. They cover sections until, but excluding, the
section "Available package versions". I am not an English native
speaker, so please correct me and savage these changes!

Also, please let me know if the suggestions are welcome, then I will
continue with the next chapter.
2023-01-18 07:17:46 +01:00
maralorn
fecbf169e2 haskell/docs: Fix a link 2023-01-15 22:15:40 +01:00
maralorn
26ef8978d8 haskell/docs: New sections about available versions and hls + Various small improvements
Co-authored-by: sternenseemann <sternenseemann@systemli.org>
2023-01-15 20:07:02 +01:00
sternenseemann
0a66465b22 doc/haskell: (re-)init haskell manual section
This restarts a Haskell section in the nixpkgs manual. The content
presented here has been written from scratch, although some parts of it
take inspiration from the existing haskell4nix documentation.

It is by no means complete, the idea is mostly to get the ball rolling
in some way. Upcoming tasks are hinted at in the comments in the
documentation file.
2023-01-14 22:33:35 +01:00
github-actions[bot]
79cb2f7e61
Merge master into staging-next 2023-01-14 11:12:34 +00:00
K900
3ae365afb8
Merge pull request #208867 from K900/qt-doc-fixes
treewide: remove outdated multiple versions of Qt stuff
2023-01-14 10:30:49 +03:00
K900
bf5a65096c pkgs/all-packages: remove unused alias, add comment 2023-01-12 20:51:24 +03:00
Guillaume Girol
6043e3af4e ocamlPackages.findlib: detect conflicts of version early
just like pythonCatchConflictHook
2023-01-03 20:30:34 +01:00
github-actions[bot]
e076f677a1
Merge staging-next into staging 2023-01-03 18:01:45 +00:00
Niklas Hambüchen
83481b8708 doc: python: Run hooks in checkPhase 2023-01-03 18:00:31 +01:00
K900
8f48e1cadb doc/languages-frameworks/qt: remove outdated information 2023-01-03 15:38:02 +03:00
Jan Tojnar
5810109b42 Merge branch 'staging-next' into staging
- readline6 attribute removed from all-packages.nix in d879125d61
- readline attribute was bumped to readline82 in 50adabdd60
2023-01-02 03:04:32 +01:00
Naïm Favier
22ea90a4d8
.editorconfig: apply trailing whitespace removal
editorconfig-checker -disable-indent-size **/*.md
2022-12-29 01:40:50 +01:00
Sergei Trofimovich
092d57c076 Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts:
    pkgs/development/tools/language-servers/ansible-language-server/default.nix
2022-12-28 09:35:37 +00:00
figsoda
b6c0e7f563
Merge pull request #205935 from figsoda/cargo-lock
rustPlatform.importCargoLock: add allowBuiltinFetchGit option
2022-12-25 19:38:36 -05:00
Jan Tojnar
72c37eddec Merge branch 'staging-next' into staging 2022-12-25 01:30:47 +01:00
jakobkukla
ecdbd2a3fa doc: remove missing arg from emulateApp example 2022-12-20 04:28:20 +01:00
David McFarland
824d40aa04 build-dotnet-module: restore for current runtime by default 2022-12-19 15:36:25 -04:00
github-actions[bot]
dc7ebb0163
Merge staging-next into staging 2022-12-18 18:01:41 +00:00
figsoda
403e25e3e3 doc: fix typos 2022-12-17 18:21:48 -05:00
github-actions[bot]
4804305f6e
Merge staging-next into staging 2022-12-17 06:02:03 +00:00
Jason Miller
8392158289
cudaPackages: add cudaFlags (#205351)
* cudaPackages: add cudaFlags

* cudaNames -> cudaMicroarchitectureNames

* update documentation, remove config for static library removal

* doc link added to flags

* fix whitespace in assignment
2022-12-16 22:00:36 -08:00
Winter
f1292b31d6 doc/languages-frameworks/javascript: use --ignore-scripts flag in example
Presenting an example with a patch (without even providing that patch!) is not ideal. Since `npm pack` now obeys `--ignore-scripts`, we can use that instead.
2022-12-13 19:40:27 -05:00
figsoda
cce3dc63a0 rustPlatform.importCargoLock: add allowBuiltinFetchGit option 2022-12-13 11:27:26 -05:00
Robert Hensing
43dcea7885
Merge pull request #204626 from fricklerhandwerk/ifd-policy
document Import From Derivation (IFD) policy
2022-12-11 02:37:09 +01: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
Jörg Thalheim
0b8b0c65cc
Merge pull request #205187 from Mic92/cue-validator
cue: init writeCueValidator
2022-12-08 21:38:55 +00:00
Raito Bezarius
f25d48180a cue: add documentation on writeCueValidator 2022-12-08 22:19:06 +01:00
zowoq
7d04753e2f doc/go: fix link 2022-12-08 02:29:18 +10:00
Manuel
5d8e07c835
doc: add hint about lib.fakeSha256 to go section (#204132)
* doc: add hint about lib.fakeSha256 to go section

Found it here: https://stackoverflow.com/a/71934521/1633985

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-12-07 17:03:35 +01:00
Valentin Gagarin
db1a83aaa4 docs: fixup wording and formatting on JavaScript 2022-12-07 16:47:31 +01:00
Valentin Gagarin
53b5a47c12 document Import From Derivation (IFD) policy 2022-12-07 16:47:30 +01:00
Jörg Thalheim
c0491d5fd2
Merge pull request #204343 from urandom2/sridoc
doc: use sri hash syntax
2022-12-04 10:04:57 +01:00
Colin Arnott
bac379f30a
doc: use sri hash syntax
The nixpkgs manual contains references to both sri hash and explicit
sha256 attributes. This is at best confusing to new users. Since the
final destination is exclusive use of sri hashes, see nixos/rfcs#131,
might as well push new users in that direction gently.

Notable exceptions to sri hash support are builtins.fetchTarball,
cataclysm-dda, coq, dockerTools.pullimage, elixir.override, and
fetchCrate. None, other than builtins.fetchTarball, are fundamentally
incompatible, but all currently accept explicit sha256 attributes as
input. Because adding backwards compatibility is out of scope for this
change, they have been left intact, but migration to sri format has been
made for any using old hash formats.

All hashes have been manually tested to be accurate, and updates were
only made for missing upstream artefacts or bugs.
2022-12-04 06:12:18 +00:00
figsoda
0f386d1896 docs/rust: document cargoNextestHook and useNextest 2022-11-28 18:30:30 -05:00
Winter
125bd1f0b5 doc/languages-frameworks/javascript: update deps hash in example 2022-11-23 20:52:08 -05:00
figsoda
82fe76d1cd carnix,cratesIO: remove 2022-11-22 14:10:25 -05:00
Winter
93334f5234 npmHooks.npmInstallHook: pass install flags to prune 2022-11-21 15:00:08 -05:00
Artturi
80212614a3
Merge pull request #187921 from amjoseph-nixpkgs/pr/manual/rust/buildRustY
doc/../rust.section.md: prominently mention `buildRustXX` names
2022-11-21 19:08:38 +02:00
Martin Weinelt
18ab6d062b
sphinxHook: inherit from python3Packages 2022-11-20 15:39:34 +01:00
Jocelyn Thode
2f933d60fb doc/vim: Clarify buildVimPlugin/buildVimPluginFrom2Nix 2022-11-14 14:59:13 -05:00
Winter
16722903aa buildNpmPackage: init 2022-11-09 10:35:59 -05:00
Guillaume Girol
3befade691 doc: fix python module override example 2022-11-03 19:54:51 +01:00
0x4A6F
b37df78bfe
doc/languages-frameworks/rust: example for disabling tests (#198705) 2022-10-31 22:39:34 +01:00
figsoda
0426b36f9f doc/vim: update docs for nvim-treesitter 2022-10-31 09:44:02 -04:00
Emilia Bopp
8bec7996cc doc: fix syntax error in Lua documentation 2022-10-25 22:34:32 +02:00
Théo Zimmermann
2dc3552aa1 coqPackages.mkCoqDerivation: upgrade to Dune 3
And remove the version number from the corresponding attributes.
2022-10-02 14:42:28 +02:00
Ivv
2650d450a7
Merge pull request #190403 from IvarWithoutBones/dotnetmodule-fixes
buildDotnetModule: several usability improvements
2022-09-26 15:04:31 +02:00
Frederik Rietdijk
9e02095f4e Python docs: document attribute to use for non-PyPI projects 2022-09-22 13:31:58 +02:00
Ivar Scholten
8e00d6ac26
buildDotnetModule: move nugetDeps throw to when its actually needed
Previously we had an assert that would complain when nugetDeps wasnt set,
which also didnt allow any passthru attributes (like fetch-deps) to be
build. That causes a cycle where you need nugetDeps to fetch the nuget
deps, but arent able to build the script to do so.
2022-09-18 18:00:37 +02:00
Ivar Scholten
03a1b62cb3
buildDotnetModule: dont require specifing a projectFile
In a lot of cases dotnet can figure this out by itself, so we can just
invoke it without the project argument.
2022-09-18 18:00:37 +02:00
Dennis Gosnell
6cc6850fe2
doc/language-frameworks/coq: add explanation of how to override packages 2022-09-15 09:18:20 -04:00
Matthieu Coudron
800323c0c0 doc(vim): take into account plug non-support
Apply suggestions from code review

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2022-09-11 20:33:01 +02:00
Matthieu Coudron
3944240476 doc(neovim): remove the mention of plug for neovim
This was removed to simplify configuration. One could create a function that converts the plug format to vim native package format (only plugin system supported for neovim)  and upstream it to nixpkgs if that's an issue
2022-09-11 18:11:16 +02:00
Matthieu Coudron
584bc20aa0 doc: present how to create a vim-plugin overlay
it is possible to maintain an out of tree list of neovim plugins with this method

Update doc/languages-frameworks/vim.section.md

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-09-11 18:11:16 +02:00
Ian Macalinao
30a5965216
doc/languages-frameworks/rust: fix typo 2022-09-03 15:45:21 -05:00
Martin Weinelt
986c31401e
doc/python: Properly sort pythonRelaxDepsHook in hook list 2022-08-24 23:03:31 +02:00
Martin Weinelt
8a26deba06
doc/python: integrate sphinxHook docs
Improve the documentation by moving it from the hook script into the
Python section in the manual and adding code examples.
2022-08-24 23:02:24 +02:00
Adam Joseph
aad7f1d6b3 doc/../rust.section.md: prominently mention buildRustXX names
This was a source of massive confusion for me when I first learned my way around nixpkgs' rust machinery.  I seek to save others from that confusion.

* `buildRustPackage` should have been named `buildRustPackageUsingCargo`

* `buildRustCrate` should have been named `buildRustPackageUsingNix`

It is, unfortunately, too late to fix this.  Let's do the next best thing and make the names `buildRustPackage` and `buildRustCrate` very prominent in the documentation, so readers see immediately that they need to learn the following jargon:

* `buildRustPackage` means "build this Rust crate by calling `cargo` in one (or two) monolithic derivations"

* `buildRustCrate` means "build this Rust crate by calling `rustc` in one derivation for each crate"
2022-08-22 14:37:41 -07:00
Winter
e8fbb38a51 pythonPackages.unittestCheckHook: init 2022-08-13 14:09:43 -04:00
Frederik Rietdijk
2270b66d75 pythonPackagesExtensions: override all Python package sets at once
Python package sets can be overridden by overriding an interpreter
and passing in `packageOverrides = self: super: {...};`. This is fine
in case you need a single interpreter, however, it does not help you
when you want to override all sets.

With this change it is possible to override all sets at once by
appending a list of "extensions" to `pythonPackagesExtensions`.

From reading the implementation you might wonder why a list is used, and
not
`lib.composeExtensions`? The reason is the latter requires knowledge of
the library function. This approach should be easier for most users
as it is similar to how we append to lists of e.g. inputs or patches
when overriding a derivation.
2022-08-06 09:39:39 +02:00