Commit Graph

4214 Commits

Author SHA1 Message Date
Robert Hensing
f621ab9204 lib.warn: Fix color
Co-authored-by: Aleksana <alexander.huang.y@gmail.com>
2024-07-16 15:54:12 +02:00
Janik
c20399ea2e
Merge pull request #318712 from woojiq/lib-network-ipv6-parser
lib.network: add ipv6 parser
2024-07-11 20:57:53 +02:00
aviac
e9bbad7386
lib/licenses: add radiance 2024-07-08 16:13:03 +02:00
Florian Klink
5d7f58fdd6
Merge pull request #324861 from Kranzes/crate2nix
lib.systems: Fix setting rust.platform.os for wasm32-unknown-unknown
2024-07-08 15:27:29 +03:00
adisbladis
b85639c589 lib.licenses: refactor internal mkLicense to avoid future typo bugs
This is a follow-up to https://github.com/NixOS/nixpkgs/pull/325380 where @emilazy discovered that we have some typos in field names.

This refactoring wraps the implicit lib.licenses schema up in a factory function to ensure consistency.

While a more proper type checker like the one we use for meta checks would be better I didn't want to depend on that in more places.
In fact, we might want to make meta type checks more strict on the license field.
2024-07-08 17:37:52 +12:00
Emily
3cd5ecc1a9 lib/licenses: fix field names 2024-07-08 00:46:05 +01:00
Ilan Joselevich
bf61b8c8fb
lib.systems: Fix setting rust.platform.os for wasm32-unknown-unknown
Previously we would fallback to using `kernel` as the `os` which would
result in using the wrong `os` value (`none`) when actually we want
`unknown`. This seems to be a special case for wasm32-unknown-unknown
and wasm64-unknown-unknown so I extended the if statement to support it.
2024-07-05 19:43:10 +03:00
Robert Hensing
4eb6883b86 lib/modules: Memoize remaining lookups into builtins
Similar to the previous commit about lookups into lib
Main benefits
- consistent
- faster
- shorter
2024-07-03 11:16:31 +02:00
Robert Hensing
fed26baf1e lib: Expose typeOf, unsafeGetAttrPos
All builtins should be in mirrored in lib, for consistency, as well
as control to let the Nixpkgs pin effect *subtle* improvements in
behavior (such as the foldl' accumulator strictness).
2024-07-03 11:16:31 +02:00
Robert Hensing
d0438fb00f lib/modules: Memoize remaining lookups into lib
Benefits:
 - some lookups happened in the hot path, and will now be slightly faster,
   with only a variable lookup and no attribute selection
 - it's now harder to accidentally use args.lib aka specialArgs.lib, which
   has happened
 - shorter
2024-07-03 11:16:31 +02:00
Robert Hensing
88a9a933c4 lib/modules: Memoize functionArgs lookup
This would also make specialArgs-lib.nix pass.
2024-07-03 11:16:31 +02:00
Robert Hensing
0a0e37c217 lib/modules: Memoize addErrorContext lookup 2024-07-03 11:16:31 +02:00
Robert Hensing
4a014ed92e lib/modules: Use fixed lib instead of args.lib
The practical use for this should be very limited because I don't
think anyone should change `lib`, let alone change `lib.functionArgs`,
but, but it would be even stranger to rely on `args.lib` (or really
`specialArgs.lib` for what's clearly a behavior of the current
`evalModules`, which uses its own ambient lib for basically everything.

The shadowing of `lib` by `args.lib` here seems to be a small mistake,
which is easy to make.
2024-07-03 11:16:31 +02:00
Philip Taron
6cf8ae9090
lib.types: remove __attrsFailEvaluation
The test (`nix-build pkgs/test/release/default.nix`) continues to pass without this preventative measure.
2024-07-01 10:37:58 -07:00
Jörg Thalheim
521dab2594
Merge pull request #323657 from wegank/23.11-unmaintained
23.11 is unmaintained
2024-07-01 12:55:28 +02:00
Weijia Wang
f136ad9609 lib/trivial: update oldestSupportedRelease 2024-07-01 08:49:45 +02:00
Florian Klink
641b2f29b6
Merge pull request #319153 from Kranzes/buildRustCrate-wasm
buildRustCrate: add support for compiling to wasm32-unknown-unknown
2024-06-30 14:05:33 +03:00
Yueh-Shun Li
10d2e6c906 lib.getLicenseFromSpdxIdOr: init
Add lib.meta.getLicenseFromSpdxIdOr as a variant of
lib.meta.getLicenseFromSpdxId that explicitly state the default
(fallback) value if there's no license matching the given SPDX ID.
2024-06-30 02:59:58 +08:00
Yueh-Shun Li
319736f69f lib.getLicenseFromSpdxId: improve documentation 2024-06-30 02:41:54 +08:00
woojiq
d559eed93a lib.network: ipv6 parser from string
Add a library function to parse and validate an IPv6 address from a
string. It can parse the first two versions of an IPv6 address according
to https://datatracker.ietf.org/doc/html/rfc4291#section-2.2. The third
form "xxx:x.d.d.d.d" is not yet implemented. Optionally parser can accept prefix length (128 is default).

Add shell script network.sh to test IPv6 parser functionality.
2024-06-29 10:02:00 +03:00
lucasew
52cc703bba lib: add fromHexString
Co-authored-by: lucasew <lucas59356@gmail.com>
2024-06-28 20:53:53 +03:00
Silvan Mosberger
9695ac6e2d
lib/cli: improve documentation, including arguments (#315820)
cli.nix: improve documentation, including arguments
2024-06-28 18:40:36 +02:00
éclairevoyant
77f6192786
lib: deprecate mkPackageOptionMD 2024-06-26 23:14:45 -04:00
Johannes Kirschbauer
b4cffe178c
lib.meta: refactor to use doc-comments (#313589)
* doc: use doc-comments for lib.meta

* adds missing argument to setPrio
2024-06-26 22:12:18 +02:00
Silvan Mosberger
dcb1f21389
Merge pull request #312412 from hsjobeki/doc/lib-gvariant
doc: migrate lib.gvariant to doc-comment format
2024-06-26 22:10:26 +02:00
Silvan Mosberger
54a93d0525
Merge pull request #312407 from hsjobeki/doc/lib-generators
doc: init lib.generators reference documentation
2024-06-26 22:09:05 +02:00
Johannes Kirschbauer
b5af504a3d
doc: migrate lib.filesystem to doc-comment format (#312222)
* doc: migrate lib.filesystem to doc-comment format

* defintion list fixes lib/filesystem.nix

Co-authored-by: Daniel Sidhion <DanielSidhion@users.noreply.github.com>

---------

Co-authored-by: Daniel Sidhion <DanielSidhion@users.noreply.github.com>
2024-06-26 22:01:28 +02:00
Silvan Mosberger
298465b71c
Merge pull request #312217 from hsjobeki/doc/lib-derivations
doc: migrate lib.derivations to doc-comment format
2024-06-26 21:59:34 +02:00
Ilan Joselevich
957116419d
lib.systems.examples: add wasm32-unknown-none
This system was added to use the nixpkgs cross compilation logic when
compiling to wasm32-unknown-unknown in rust.
2024-06-24 19:27:13 +03:00
Artturin
2cfac74be5
Merge pull request #319139 from NyCodeGHG/android-ndks
android-ndks: add 25, 26 ndks, update default ndk and sdk
2024-06-23 20:39:28 +03:00
Aleksana
d95005ae01
Merge pull request #318101 from getchoo/pkgs/gitbutler/init
gitbutler: init at 0.12.2
2024-06-22 18:37:58 +08:00
Silvan Mosberger
5d892a8ea5 lib: Add a TODO for builtins not available in sub-libraries 2024-06-20 22:48:55 +02:00
Silvan Mosberger
1e4f04d4d6 lib.replaceStrings: inherit from lib.strings 2024-06-20 22:48:54 +02:00
Silvan Mosberger
d3c09b9327 lib.readFile: inherit from lib.trivial 2024-06-20 22:48:54 +02:00
Silvan Mosberger
e3b0f46af9 lib.genericClosure: inherit from lib.trivial 2024-06-20 22:48:54 +02:00
Silvan Mosberger
e3faf23ba6 lib.pathExists: inherit from lib.trivial 2024-06-20 22:48:54 +02:00
Silvan Mosberger
574611fe0b lib.getAttr: inherit from lib.attrsets 2024-06-20 22:48:53 +02:00
Silvan Mosberger
94a863973a lib.isString: inherit from lib.strings 2024-06-20 22:48:04 +02:00
Silvan Mosberger
6f7324c1f0 lib.isList: inherit from lib.lists 2024-06-20 22:48:04 +02:00
Silvan Mosberger
fa82e813f1 lib.isInt: inherit from lib.trivial 2024-06-20 22:48:04 +02:00
Silvan Mosberger
5313a054d3 lib.isBool: inherit from lib.trivial 2024-06-20 22:48:04 +02:00
Silvan Mosberger
53744d55cd lib.isAttrs: inherit from lib.attrsets 2024-06-20 22:48:02 +02:00
Silvan Mosberger
c3b87461e7 lib.hasAttr: inherit from lib.attrsets 2024-06-20 22:47:33 +02:00
Silvan Mosberger
4bcc1d3450 lib.elemAt: inherit from lib.lists 2024-06-20 22:47:01 +02:00
Silvan Mosberger
46b7bbb660 lib.elem: inherit from lib.lists 2024-06-20 22:47:01 +02:00
Silvan Mosberger
f341dca2a2 lib.deepSeq: inherit from lib.trivial 2024-06-20 22:47:01 +02:00
Silvan Mosberger
8a6941dbef lib.sub: inherit from lib.trivial 2024-06-20 22:47:01 +02:00
Silvan Mosberger
a32d38d380 lib.add: inherit from lib.trivial 2024-06-20 22:47:01 +02:00
Silvan Mosberger
74c87fd888 lib.lessThan: inherit from lib.trivial 2024-06-20 22:47:00 +02:00
Silvan Mosberger
64e8494f8a lib.seq: inherit from lib.trivial 2024-06-20 22:47:00 +02:00
Silvan Mosberger
597f62d782 lib.listToAttrs: inherit from lib.attrsets 2024-06-20 22:46:59 +02:00
Silvan Mosberger
00972297be lib.substring: inherit from lib.strings 2024-06-20 22:45:50 +02:00
Silvan Mosberger
f6cbaeca60 lib.head: inherit from lib.lists 2024-06-20 22:45:50 +02:00
Silvan Mosberger
0a162f4dcd lib.tail: inherit from lib.lists 2024-06-20 22:45:50 +02:00
Silvan Mosberger
6e98b0c0c6 lib.stringLength: inherit from lib.strings 2024-06-20 22:45:50 +02:00
Silvan Mosberger
357e954198 lib.length: inherit from lib.lists 2024-06-20 22:45:50 +02:00
Silvan Mosberger
d81f4e5eba lib.genList: inherit from lib.lists 2024-06-20 22:45:50 +02:00
Silvan Mosberger
30def45e47 lib.filter: inherit from lib.lists 2024-06-20 22:45:48 +02:00
Silvan Mosberger
c60c3baf23 lib.attrNames: inherit from lib.attrsets 2024-06-20 21:06:21 +02:00
Silvan Mosberger
69f84db442 lib: inherit concatLists via lib.lists 2024-06-20 21:06:21 +02:00
Robert Hensing
bdc03c2dd8
Merge pull request #321283 from tweag/lib-builtins
`lib`: Re-export expected builtins
2024-06-20 19:56:58 +02:00
Masum Reza
1bb6b44718
Merge pull request #313769 from yVieta/zsh-completion
zsh-completions: add licenses
2024-06-20 23:21:56 +05:30
Silvan Mosberger
89f6418908 lib.split: Export from lib.strings.split 2024-06-20 17:59:37 +02:00
Silvan Mosberger
6c6244c37f lib.match: Export from lib.strings.match 2024-06-20 17:59:37 +02:00
Silvan Mosberger
18382c2ec8 lib.removeAttrs: Export from lib.attrsets.removeAttrs 2024-06-20 17:59:36 +02:00
Silvan Mosberger
56535c832f lib.intersectAttrs: Export from builtins 2024-06-20 17:59:36 +02:00
Silvan Mosberger
4413a877bb lib.map: Export from lib.lists.map 2024-06-20 17:59:21 +02:00
Johannes Jöns
706ee44d61
Merge pull request #319302 from quantenzitrone/licenses
aspellDicts.*: add licensing information ; aspellDicts.en-science: point sources and homepage to archive.org
2024-06-19 21:16:23 +02:00
Nick Cao
febff2fc72
Merge pull request #316724 from NickCao/riscv-builtin
lib.systems.riscv-multiplatform: linux-kernel config improvements
2024-06-18 17:05:13 -04:00
John Ericson
bab20def47 lib.systems: Default useLLVM to true with OpenBSD too
Not just FreeBSD.
2024-06-18 13:23:58 -04:00
Tristan Ross
ecf6827049
lib.systems.flakeExposed: exclude systems which are not bootstrapped 2024-06-17 16:34:55 -07:00
Marie Ramlow
56d1e7a41b lib.systems.examples: update default android sdk to 33, ndk to 26 2024-06-17 09:53:31 +02:00
Zitrone
78149c7739
aspellDicts.*: add licensing information 2024-06-16 07:02:07 +02:00
Ilan Joselevich
85d871cf14
Merge pull request #319624 from flokli/rust-config
config.rust: update references from rustc
2024-06-14 00:47:45 +03:00
Florian Klink
50261c0602 config.rust: update references from rustc
`rustc.config` is called `rust.rustcTarget` now, and
`{rustc -> rust}.platform`.

This is the new way (tm), and is preferred since
https://github.com/NixOS/nixpkgs/pull/271707 -
though the documentation still is outdated, and some expressions in
nixpkgs were using the old interface.

This updates both.
2024-06-13 21:08:48 +03:00
Jörg Thalheim
b17538d34d
Merge pull request #318511 from sg-qwt/master
24.11 rename codeName to Vicuna
2024-06-13 13:04:22 +02:00
Silvan Mosberger
a1bae893c4
Merge pull request #318102 from TheCodedProf/private/thecodedprof/documentation-examples
lib.trivial: add examples for importJSON and importTOML
2024-06-13 03:13:11 +02:00
Samuel Shuert
cfc6c9b6e4 lib.trivial.importJSON: add example
Add parity with importTOML.
2024-06-13 03:12:03 +02:00
Samuel Shuert
64f0f7a448 lib.trivial.importTOML: add example
Friend came to me with misunderstanding of how this function works.
After discussion we came to the conclusion having an example would have
prevented this.
2024-06-13 03:11:56 +02:00
Tristan Ross
8bb66a4929
lib/tests/release.nix: fix pkgs.lib error by passing lib 2024-06-09 18:12:39 -07:00
無名氏
0ea93461ed 24.11 rename codeName to Vicuna 2024-06-09 19:31:01 +08:00
seth
8e981f2094
licenses: add FSL-1.1-MIT 2024-06-07 17:09:51 -04:00
Tristan Ross
013e398b0f
lib/tests/release.nix: make pure 2024-06-06 21:17:05 -07:00
Lorenz Leutgeb
4584ea0767 lib.warn: Say _evaluation_ warning, like builtins.warn 2024-06-06 01:15:38 +02:00
Nick Cao
50a6be5f8b
lib.systems.riscv-multiplatform: drop linux-kernel.extraConfig
SERIAL_OF_PLATFORM has been y in riscv defconfig since 2018

Reference: 33c57c0d3c
2024-06-02 15:33:13 -04:00
Nick Cao
a9116cef2b
lib.systems.riscv-multiplatform: set linux-kernel.preferBuiltin
Like aarch64, riscv platforms require many drivers to be builtin to boot.
2024-06-02 15:31:18 -04:00
Rob Pilling
19a3000c32 cli.nix: improve documentation, including arguments 2024-05-30 08:15:32 +01:00
John Ericson
61c678f71e
Merge pull request #311836 from obsidiansystems/aa-openbsd-1
openbsd: init at 7.5
2024-05-29 13:42:32 -04:00
tomberek
757873b346
Merge pull request #311696 from Pandapip1/fix-statoolkit-license
licenses: Add NCBI-PD
2024-05-27 00:35:44 -04:00
Ali Abrar
888dee445d openbsd: init at 7.5 2024-05-26 10:55:56 -04:00
Silvan Mosberger
6c42e8745a
Merge pull request #309517 from bobrippling/fix/ebusd-args
Fix ebusd service argument passing
2024-05-24 23:25:28 +02:00
vieta
15718cc856 lib/license: add zsh license 2024-05-24 18:41:15 +02:00
vieta
29f4417730 lib/licenses: sort xskat 2024-05-24 18:39:51 +02:00
Daniel Sidhion
43e364791b
Merge pull request #312393 from hsjobeki/doc/lib-fixedpoints
doc: migrate lib.fixedPoints to doc-comment format
2024-05-23 00:03:19 -07:00
Weijia Wang
1c91e55a2d
Merge pull request #311902 from wamirez/nix-env-rm
doc: clarify consequences of `lib.meta.setName`
2024-05-22 19:15:22 +02:00
Weijia Wang
4a817d2083 24.05 is Vicuña 2024-05-22 18:15:34 +02:00
Rob Pilling
9c9c3848d4 cli.nix: permit separators between args -> -a=b, --xyz=abc, etc 2024-05-22 07:58:26 +01:00
Johannes Kirschbauer
793ed729f2
doc: add arguments for toKeyValue 2024-05-21 22:05:18 +02:00
Johannes Kirschbauer
8ee634f5a6
doc: init lib.generators reference documentation 2024-05-21 21:54:47 +02:00
Johannes Kirschbauer
7f38a9ce11
Apply suggestions from code review
Co-authored-by: Daniel Sidhion <DanielSidhion@users.noreply.github.com>
2024-05-21 09:54:54 +02:00
Daniel Sidhion
f452bb946c
Merge pull request #312215 from hsjobeki/doc/lib-debug
doc: migrate lib.debug to doc-comment format
2024-05-20 23:20:36 -07:00
Johannes Kirschbauer
38cd8da809
doc: migrate filesets to doc-comment format (#303811)
* doc: migrate filesets to doc-comment format

* fix definition list indentation
2024-05-20 23:12:31 -07:00
Johannes Kirschbauer
450931d093
doc: migrate lib.gvariant to doc-comment format 2024-05-17 11:51:33 +02:00
Johannes Kirschbauer
064f4c55c0
doc: migrate lib.fixedPoints to doc-comment format 2024-05-17 10:13:13 +02:00
Johannes Kirschbauer
1a3afdf852
doc: migrate lib.derivations to doc-comment format 2024-05-16 16:08:57 +02:00
Johannes Kirschbauer
dfffdf1426
doc: migrate lib.debug to doc-comment format 2024-05-16 15:52:50 +02:00
wamirez
7acc08c983 doc: clarify consequences of lib.meta.setName
And remove unnecessary mention of `nix-env`
2024-05-15 06:32:23 -04:00
Gavin John
361874c944
licenses: Add NCBI-PD 2024-05-14 11:38:21 -05:00
Pol Dellaiera
e6952e37ef
Merge pull request #306928 from ramboman/fix-fetchers-proxy-vars
lib.fetchers: Add uppercase proxy environment variables
2024-05-14 10:27:11 +02:00
Artemis Tosini
06b05d2289 freebsd: Cleanup, get ready to support version 14
* Extend libc

  Include non-libc core libraries in the libc package. Many of these
  mirror libraries present in glibc on linux, such as libgcc, libraries
  used for iconv, and libraries used for reading kernel info (libkvm,
  libprocstat, libmemstat).

  Without this many packages outside the freebsd tree would need to be
  modified to include standard dependencies which would already be on
  the system for other packages.

* Mark FreeBSD as using LLVM

* Update default LLVM version FreeBSD

* Use patch monolith

  The patchesRoot system combined with the fact that each derivation
  will Request specific names of patches makes it very annoying to use
  other FreeBSD source trees with nixpkgs. This new system allows
  providing one Or more entire trees of patches whose contents will be
  dynamically Parsed and only the relevant patches will be applied for
  any one Derivation.

  With this commit, the following knobs are available for specifying the
  FreeBSD source:

  - overriding `freebsd.versionInfo`, for picking another official
    supported FreeBSD release.

  - overriding `freebsd.source` for specifying a specific unpatched
    FreeBSD source tree.

  - overriding `freebsd.patches`, for specifying the patches to apply.

Co-Authored-by: Audrey Dutcher <audrey@rhelmot.io>
Co-Authored-by: John Ericson <John.Ericson@Obsidian.Systems>
2024-05-11 21:52:07 -04:00
Jan Tojnar
29521b42cf lib/gvariant: Use more specific instructions for int and attrset 2024-05-02 23:19:08 +02:00
Jan Tojnar
96e6f1a418 lib/gvariant: Fix error message for unsupported primitives
Without this, passing an integer to a setting will fail with a confusing error:

    error: cannot coerce an integer to a string
2024-05-02 23:19:08 +02:00
matthewcroughan
e841544d6c licenses: add ICU license 2024-05-02 15:34:02 +00:00
John Ericson
c38dd73dec
Merge pull request #308032 from obsidiansystems/freebsd-no-suffix-version
treewide: freebsd13 -> freebsd
2024-05-01 10:03:12 -04:00
John Ericson
266cdd7d37 treewide: freebsd13 -> freebsd
Co-authored-by: Alyssa Ross <hi@alyssa.is>
2024-04-30 18:20:23 -04:00
Maximilian Bosch
2b4e18f3d4
nixVersions.unstable: build from master, re-init at 2.22.0.pre20240321_6fd2f42c
The idea behind that is to enable users and developers of
downstream tools such as home-manager to test Nix master for several
reasons:

* Nix is currently trying to have a `master` branch that's always
  releasable[1]. We're still on Nix 2.18 in nixpkgs due to too many
  notable regressions. Enabling people to test latest master may help on
  that end.

* This uses the most bleeding-edge Nix, but our packaging, so we can
  identify issues with our packaging early.

* From what I've seen, most people are using the packages from nixpkgs
  anyways instead of the upstream flake, this is far more convenient
  anyways.

My plan is to update this once a week. Right now we rely on the
`installCheckPhase` here, but as soon as we have proper regression
testing[2], we may want to add `nixUnstable` there as well (however with
failures being allowed probably).

[1] https://discourse.nixos.org/t/nix-release-schedule-and-roadmap/14204
[2] https://github.com/NixOS/nixpkgs/pull/304332
2024-04-28 21:59:04 +02:00
Dee Anzorge
54f771421f lib/licenses: add unicode-30 2024-04-28 11:31:24 +02:00
ramboman
3ce1079753 lib.fetchers: Add uppercase proxy environment variables
The [Nix installer](84e0c464f1/scripts/install-systemd-multi-user.sh (L38)) and the [documentation](84e0c464f1/doc/manual/src/installation/env-variables.md (L54-L56)) state that they support uppercase proxy environment variables. [lib/fetchers.nix](165090ed66/lib/fetchers.nix (L10)) only supports lowercase proxy environment variables.

Fix: [nix#10491](https://github.com/NixOS/nix/issues/10491)
2024-04-26 14:30:55 -04:00
Jared Baur
6421226aa5 lib/systems: add microblaze-embedded
Adds a new target for `pkgsCross` that can be used for building
freestanding code for microblaze targets (e.g. Xilinx PMU firmware).
2024-04-24 19:45:58 -07:00
Robert Hensing
f7250f372a lib.warn: Use or behave like builtins.warn 2024-04-24 11:14:47 +02:00
Silvan Mosberger
24af4c04ee
Merge pull request #214021 from tweag/ifilter0
lib.lists.ifilter0: init
2024-04-22 22:18:34 +02:00
Silvan Mosberger
6861ef7707 lib.lists.ifilter0: init 2024-04-22 18:33:14 +02:00
Robert Hensing
33e02424d2 lib: Document status of deprecated.nix and move it
This is all I could find after co-maintaining lib for a long time.
I've had the fortune of basically not really noticing this file,
because it has had very few interactions until the confusion in
https://github.com/NixOS/nixpkgs/pull/304277

It seems to be a state of limbo, which would be nice to resolve
(with great care), but this is not urgent, and first we should
document its status.
2024-04-21 16:04:35 +02:00
github-actions[bot]
11b87cbe59
Merge master into staging-next 2024-04-19 12:01:13 +00:00
Rick van Schijndel
e00a40a257
Merge pull request #298680 from gvolpe/lib/transposeMap
lib/attrsets: add mapCartesianProduct function
2024-04-19 08:26:09 +02:00
github-actions[bot]
feedc73bee
Merge master into staging-next 2024-04-16 18:00:57 +00:00
éclairevoyant
a2a0316319
lib: clarify warning about mdDoc 2024-04-15 14:16:33 -04:00
éclairevoyant
bb4e822d1f
lib: add mdDoc back in to provide proper warning 2024-04-15 14:16:31 -04:00
Gabriel Volpe
7b687a59cd
lib/tests: apply lints 2024-04-15 19:18:41 +02:00
Gabriel Volpe
d864c36d57
tree-wide: use mapCartesianProduct 2024-04-15 19:17:53 +02:00
Gabriel Volpe
fe2bead78b
lib/attrsets: introduce mapCartesianProduct 2024-04-15 19:16:15 +02:00
Gabriel Volpe
10517cf9ab
tree-wide: use cartesianProduct 2024-04-15 19:13:22 +02:00
Gabriel Volpe
228621e42d
lib/attrsets: rename cartesianProductOfSets to cartesianProduct 2024-04-15 19:03:54 +02:00
Weijia Wang
f3a1652b09 Merge branch 'master' into staging-next 2024-04-13 19:10:53 +02:00
stuebinm
c0c2f2903f lib.mdDoc: remove and replace with warning 2024-04-13 10:07:35 -07:00
stuebinm
46456a929b lib: remove all uses of lib.mdDoc
this change is otherwise a no-op, as lib.mdDoc is already defined to be
the identity function.
2024-04-13 10:07:35 -07:00
Vladimír Čunát
24d4f2cd52
Merge branch 'staging' into staging-next
Conflicts (tried to quickly resolve somehow, checked eval):
	pkgs/development/python-modules/apsw/default.nix
	pkgs/development/python-modules/mido/default.nix
	pkgs/development/python-modules/pytest-bdd/default.nix
	pkgs/development/python-modules/sparse/default.nix
2024-04-12 07:06:54 +02:00
Silvan Mosberger
4f1d724b82
Merge pull request #284551 from hercules-ci/types-attrTag
Add `types.attrTag`
2024-04-09 20:48:44 +02:00
Weijia Wang
3f59355d84 Merge branch 'staging-next' into staging 2024-04-09 08:26:23 +02:00
iliana etaoin
e42705c982 licenses: rename apsl{10,20} -> apple-psl{10,20}
Part 1 of #301908.

This renames the two versions of the Apple Public Source License seen in
nixpkgs; `apsl20` was often confused as being for the widely-used Apache
License 2.0.
2024-04-08 20:39:37 +02:00
Tharun Thennarasu
5bcb08ea03
lib.hasAttrByPath: fix typo (#302042) 2024-04-06 11:24:44 +02:00
annalee
6df4f7b89b
Merge remote-tracking branch 'upstream/staging-next' into staging
Conflicts:
	pkgs/development/python-modules/pynetdicom/default.nix
2024-04-05 00:09:07 +00:00
Silvan Mosberger
a448a21521
Merge pull request #301556 from edef1c/lib-xor
lib: add xor
2024-04-04 22:03:53 +02:00
edef
725bb4e48c lib: add xor
This gets clumsily reimplemented in various places, to no useful end.
2024-04-04 19:46:58 +00:00
github-actions[bot]
f6827a0d19
Merge staging-next into staging 2024-04-04 18:01:53 +00:00
Johannes Kirschbauer
c0f5f271d1
doc: migrate trivial files to doc-comment format (#299986)
* doc: migrate trivial files to doc-comment format

* fix: revert some comments

* Apply suggestions from code review

Thanks @danielSidhion

Co-authored-by: Daniel Sidhion <DanielSidhion@users.noreply.github.com>

* Update lib/types.nix

---------

Co-authored-by: Daniel Sidhion <DanielSidhion@users.noreply.github.com>
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2024-04-04 16:36:07 +02:00
Robert Hensing
35fe538330
types.attrTag: Remove unnecessary definitions override
Committing because tests pass.

Co-authored-by: Silvan Mosberger <github@infinisil.com>
2024-04-04 13:00:19 +02:00
Robert Hensing
22d7f146a4 lib.types.attrTag: Fix declarationPositions after merge 2024-04-04 12:56:56 +02:00
Robert Hensing
cf4968a904 lib/tests/modules/types-attrTag.nix: Test other option doc attrs 2024-04-04 12:22:08 +02:00
Robert Hensing
74831d8b38 lib/tests/modules/types-attrTag.nix: Clean up unneeded comment 2024-04-04 12:00:55 +02:00
Robert Hensing
2d791b5f7b types.attrTag: Remove substSubmodules
I haven't managed to trigger the error, and it turns out that this
method is optional.
Specifically, getSubmodules is unimplemented (and unimplementable),
the tests pass, and we seem to have good location info.
2024-04-04 12:00:54 +02:00
Robert Hensing
47e4a18d01 types.attrTagWith: remove
Keep it simple for now.
2024-04-04 12:00:54 +02:00
Robert Hensing
1465777b63 lib.types.attrTag: Custom error when passing bare type 2024-04-04 11:54:46 +02:00
Robert Hensing
bcd774606a lib/tests/modules/types-attrTag: Test against unexpected attrs
Thank you lheckemann for pointing this out!
2024-04-04 11:54:46 +02:00
Robert Hensing
475a55b2f0 lib.types.attrTag: Remove tags from description
You can find them in the sub-options now.
2024-04-04 11:54:46 +02:00
Robert Hensing
2e1d470569 lib.modules.evalOptionValue: Undeprecate for lib.types
lib.types.attrTag needs it.
2024-04-04 11:54:46 +02:00
Robert Hensing
4c7d990bad lib.types.attrTag: Provide declarations, definitions 2024-04-04 11:54:45 +02:00
Robert Hensing
e090bb55f0 lib/types.nix: Fix getSubOptions doc
This comment was added in 73f32d0375, when it was already
supposed to be an attrset.
2024-04-04 11:54:45 +02:00
Robert Hensing
0bc9783221 lib.types.attrTag: Support type merging 2024-04-04 11:54:45 +02:00
Robert Hensing
42d3b54f0d lib.types.attrTag: Take options instead of types 2024-04-04 11:54:45 +02:00
Robert Hensing
5b49672af4 lib.types.attrTag: Support module docs 2024-04-04 11:54:41 +02:00
Philip Taron
4b2e46dd39
lib.fileset: fix typo: compatibity to compatibility 2024-04-02 14:46:59 -07:00
Florian Richer
3b883d3cdf
lib/strings: Add makeIncludePath (#296237)
* Update strings.nix

* Fix typo in docs

* Update lib/strings.nix

Co-authored-by: lolbinarycat <dogedoge61+github@gmail.com>

* Update lib/strings.nix

Co-authored-by: lolbinarycat <dogedoge61+github@gmail.com>

* Add unit test with strings

* Move test to strings

* Add unit test with package structure

* testMakeIncludePathWithPkgs: use real pkgs

* Revert "testMakeIncludePathWithPkgs: use real pkgs"

This reverts commit fb1850c069.

* Update lib/tests/misc.nix

Co-authored-by: lolbinarycat <dogedoge61+github@gmail.com>

* Update lib/tests/misc.nix

Co-authored-by: Silvan Mosberger <github@infinisil.com>

---------

Co-authored-by: lolbinarycat <dogedoge61+github@gmail.com>
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2024-04-02 19:01:05 +02:00
Sandro
c2328cf5d0
Merge pull request #297266 from ByteSudoer/init-vidmerger
vidmerger: init at 0.3.2
2024-03-25 20:58:14 +01:00
Silvan Mosberger
b803ba5a48
Merge pull request #295374 from philiptaron/issue-208242/lib.systems
lib: use explicit name imports in `lib/systems`
2024-03-25 18:41:46 +01:00
Daniel Sidhion
85a4ee7da6
Merge pull request #297993 from hsjobeki/doc/customisation
doc: migrate lib.customisation to use doc-comments
2024-03-24 15:04:13 -07:00
Daniel Sidhion
2a3616e0e0
Merge pull request #297990 from hsjobeki/doc/cli
doc: migrate lib.cli to use doc-comments
2024-03-23 21:57:21 -07:00
Artturi
2590d7a1b3
Merge pull request #295196 from tpwrules/qemu-less-libs
lib/systems: remove more features from qemu-user
2024-03-23 21:45:44 +02:00
Johannes Kirschbauer
3dfd61965e
doc: migrate lib.customisation to use doc-comments 2024-03-22 10:02:09 +01:00
Johannes Kirschbauer
6bcb2b90ed
doc: migrate lib.cli to use doc-comments 2024-03-22 09:54:17 +01:00
Jussi Kuokkanen
82b45bf454 treewide: remove licenses.agpl3 2024-03-21 18:09:24 +02:00
Soussi Mohamed Nour
89ea04dc70
Update licenses.nix 2024-03-21 14:54:21 +01:00
ByteSudoer
eedaca8ef1 update license: added the common clause license 2024-03-21 14:49:16 +01:00
ByteSudoer
ebdf6a1d1e lib.licenses: added The commons clause license 2024-03-21 02:41:09 +01:00
jopejoe1
58e1eb3b78 lib/license: add hpndUc 2024-03-20 20:49:33 +01:00
jopejoe1
3f16499c48 lib/license: add giftware 2024-03-20 20:48:45 +01:00
jopejoe1
2bd2347470 lib/license: add NIST-Software 2024-03-20 20:48:44 +01:00
Johannes Kirschbauer
956fff0825
doc: migrate lib.trivial to use doc-comments (#297270)
* doc: migrate lib.trivial to use doc-comments

* Apply suggestions from code review

---------

Co-authored-by: Daniel Sidhion <DanielSidhion@users.noreply.github.com>
2024-03-19 19:04:14 -07:00
Daniel Sidhion
a737a78167
Merge pull request #296186 from hsjobeki/doc/attrsets
doc: migrate lib.attrsets to use doc-comments
2024-03-19 19:03:57 -07:00
Daniel Sidhion
d784fc138d Apply suggestions from code review 2024-03-19 18:03:31 -07:00
Philip Taron
79ce46fe49
Avoid top-level with ...; in lib/systems/parse.nix 2024-03-19 16:16:44 -07:00
Philip Taron
c02fcc946a
Avoid top-level with ...; in lib/systems/inspect.nix 2024-03-19 16:16:44 -07:00
Philip Taron
07d3270dbc
lib/systems: inherit from lib.systems.inspect.predicates in lib/systems/parse.nix 2024-03-19 16:09:37 -07:00
Philip Taron
af634f14ba
lib/systems: inherit from lib.systems.parse in lib/systems/inspect.nix 2024-03-19 16:09:37 -07:00
Philip Taron
123a2f0fcc
lib/systems: use lib.systems.parse and lib.systems.inspect.predicates instead of re-importing 2024-03-19 16:09:37 -07:00
Philip Taron
5988f8f841
lib.systems: use explicit attrset instead of rec
This allows refactoring in the file without accidentally modifying the
public interface of the file.

Also, pull in symbols consistently from `lib` instead of `builtins`.
2024-03-19 16:09:37 -07:00
Johannes Kirschbauer
56b5634a90
doc: manual fixup after migration 2024-03-19 22:01:38 +01:00
Silvan Mosberger
c9772eaba0
Merge pull request #293901 from philiptaron/refactor-lib/generators.nix
lib: use explicit name imports in `lib/generators.nix`
2024-03-18 19:41:47 +01:00
Silvan Mosberger
3b988c076b
Merge pull request #295158 from philiptaron/remove-top-level-with-in-lib-part5
Avoid top-level `with` in `lib/tests/misc.nix`
2024-03-18 19:38:19 +01:00
Johannes Kirschbauer
c8885b86b2
lib.foldl': document eta expansion 2024-03-16 22:58:14 +01:00
Philip Taron
a7b4ee2dbe
lib: use names from lib in lib/generators.nix, rather than builtins or submodules of lib
There's not a lot of rhyme to which names are exported from which module,
as I see it, but everything is found somewhere.
2024-03-16 11:19:38 -07:00
Johannes Kirschbauer
9beef9f1ba
lib.foldl': avoid unnecessary function call 2024-03-15 23:42:48 +01:00
Johannes Kirschbauer
f917ed536b
doc: migrate lib.attrsets to use doc-comments 2024-03-15 17:18:35 +01:00
Philip Taron
8422fe83b9
lib/generators: use the explicit public interface pattern
This enables further refactoring without accidentally changing the public interface.
2024-03-14 13:15:45 -07:00
Philip Taron
3a01525ae7
lib/generators: explicitly import names from lib.trivial
Everything else was already imported.
2024-03-14 13:15:44 -07:00
Philip Taron
b83b8a3548
lib/generators: explicitly import names from lib.attrsets
Everything used was already imported.
2024-03-14 13:15:44 -07:00
Philip Taron
9513152413
lib/generators: explicitly import names from lib.string
A couple of these were imports from `builtins`.
2024-03-14 13:15:44 -07:00
Philip Taron
a89d2ed83d
lib/generators: explicitly import names from lib
I followed the `inherit` chains in `lib/default.nix` to arrive at these imports.
2024-03-14 13:15:44 -07:00
Philip Taron
8041b9b2b3
lib/generators: builtins.isFloat is in Nix 2.3
There's a couple of aliases in play:

1. `lib.isList` is an alias for `builtins.isList`.
2. `lib.strings.concatStringsSep` is an alias for `builtins.concatStringsSep`
2024-03-14 13:15:44 -07:00
Silvan Mosberger
30f30db08d
Merge pull request #294906 from philiptaron/remove-top-level-with-in-lib-part2
lib: use explicit name imports in `lib/deprecated.nix`
2024-03-14 20:54:07 +01:00