Alyssa Ross
2a6288d9b9
lib.systems: add riscv{32,64} sets and filters
...
For other platforms like Intel and ARM, we can do
e.g. lib.platforms.aarch64 to get only the 64-bit ARM platorms, but
until now there were no equivalents for RISC-V.
2022-04-28 08:17:02 +00:00
Alyssa Ross
ed24c902d0
lib/tests: add RISC-V test
2022-04-28 08:17:02 +00:00
Robert Hensing
5f8cb21011
Merge pull request #170583 from ncfavier/mkShellVars
...
lib/strings: add toShellVars
2022-04-27 23:33:28 +02:00
Naïm Camille Favier
535997fa52
lib/strings: fix quoting of example
...
Co-authored-by: Silvan Mosberger <github@infinisil.com>
2022-04-27 19:42:40 +02:00
Naïm Favier
226bc99659
lib/strings: add toShellVars
...
A straightforward piece of plumbing to safely inject Nix variables into
shell scripts:
''
${lib.toShellVars { inherit foo bar; }}
cmd "$foo" --bar "$bar"
''
2022-04-27 16:04:17 +02:00
Artturi
c95f5e185e
Merge pull request #167247 from Artturin/addgetmainprog
...
lib/meta: add getExe to get the main program of a drv
2022-04-26 21:42:23 +03:00
Robert Hensing
27a62a9c60
Merge pull request #168778 from hercules-ci/issue-168767-extendModules-module-dedup-collision
...
`lib.types.submoduleWith`: Avoid `_key` collisions after `extendModules` (issue #168767 )
2022-04-26 13:01:28 +02:00
Sandro
294ed1bed7
Merge pull request #168111 from a-m-joseph/lib-systems-inspect-powerpc
...
lib/systems/inspect.nix: add isPower64
2022-04-25 02:22:48 +02:00
Artturin
379b9c8be3
lib/meta: add getExe to get the main program of a drv
2022-04-24 04:19:49 +03:00
Robert Hensing
224426ba6d
lib.types.submoduleWith: Avoid _key collisions after extendModules
2022-04-24 00:07:59 +02:00
Daniel Thwaites
4f9b8a0702
lib/strings: optimise hasInfix function ( #168175 )
...
* lib/strings: optimise hasInfix function
* lib/strings: optimise hasInfix further using regex
* rstudio: call hasInfix with a string
* lib/strings: remove let from hasInfix
Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>
Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>
2022-04-22 12:43:25 -04:00
Artturin
4aab12d5a1
lib/systems/platforms: correctly import examples.nix
...
before: :p lib.systems failed with
error: getting status of '...examples': no such file or directory
2022-04-15 20:25:58 +03:00
Adam Joseph
81afd541f9
lib/systems/inspect.nix: add isPower64
...
This commit adds an `isPower64` predicate to the two existing
predicates for this architecture (`isPower` and `isPowerPC`).
Note that `isPowerPC` matches only 32-bit machines, whereas `isPower`
matches both 64-bit and 32-bit machines. Prior to this commit there
was no single `isXXX` predicate for `powerpc64le`.
2022-04-10 01:56:28 -07:00
Silvan Mosberger
180173a1c4
Merge pull request #164088 from Profpatsch/lib.generators-add-toINIWithGlobalSection
...
lib.generators: add toINIWithGlobalSection
2022-04-06 19:02:36 +02:00
Robert Hensing
c705953267
Merge pull request #165540 from Infinisil/module-args-docs
...
lib/modules: Document `_module.args`
2022-04-05 21:51:46 +02:00
Robert Hensing
559ac3c9e7
Merge pull request #166383 from hercules-ci/always-sanitize-derivation-name
...
Always sanitize derivation name
2022-04-05 20:05:33 +02:00
Robert Hensing
fffabe7500
lib.sanitizeDerivationName: Simplify regex
...
`^` and `$` are implicit in `match`.
2022-04-05 19:14:09 +02:00
Silvan Mosberger
25de2935ef
lib/modules: Document _module.args
...
Documents the _module.args option, motivated by many usages in Flakes,
especially with the deprecation of extraArgs
(78ada83361
)
The documentation rendering for this option had to be handled a bit
specially, since it's not declared in nixos/modules like all the other
NixOS options.
Co-Authored-By: pennae <github@quasiparticle.net>
Co-Authored-By: Robert Hensing <robert@roberthensing.nl>
2022-04-05 18:26:40 +02:00
Silvan Mosberger
1c00bf3948
lib/customization: Improve callPackage error message for missing args
...
This uses the levenshtein distance to look through all possible
arguments to find ones that are close to what was requested:
error: Function in /home/infinisil/src/nixpkgs/pkgs/tools/text/ripgrep/default.nix
called without required argument "fetchFromGithub",
did you mean "fetchFromGitHub" or "fetchFromGitLab"?
With https://github.com/NixOS/nix/pull/3468 (in current nixUnstable) the error
message becomes even better, adding line location info
2022-04-01 22:03:05 +02:00
Silvan Mosberger
f8c1aee5da
lib/tests: Add tests for levenshtein functions
2022-04-01 22:03:05 +02:00
Silvan Mosberger
975a1ae339
lib/strings: Add levenshtein distance functions
...
Adds some functions related to string similarity:
- lib.strings.commonPrefixLength
- lib.strings.commonSuffixLength
- lib.strings.levenshtein
- lib.strings.levenshteinAtMost
2022-04-01 22:03:05 +02:00
Robert Hensing
2999ab114e
lib.sanitizeDerivationName: Test with unicode
2022-03-31 18:31:11 +02:00
Robert Hensing
342a3c32c9
lib.sanitizeDerivationName: Optimize the common case
2022-03-31 18:31:11 +02:00
github-actions[bot]
03106b0236
Merge master into haskell-updates
2022-03-29 00:12:40 +00:00
Robert Hensing
9dd71d8c50
Merge pull request #165956 from ncfavier/lib-warn-throw
...
lib/trivial: actually expose warnIfNot and throwIf
2022-03-28 14:07:53 +02:00
github-actions[bot]
f0839d8bcd
Merge master into haskell-updates
2022-03-28 00:11:42 +00:00
Naïm Favier
9f5796be49
lib/trivial: actually expose warnIfNot and throwIf
2022-03-27 16:48:33 +02:00
Sandro
ac5ea36581
Merge pull request #165672 from yoctocell/patatt-init
2022-03-27 14:53:39 +02:00
Sandro
3cc111d919
Merge pull request #165597 from ckiee/generaluser-init
2022-03-27 12:54:25 +02:00
sternenseemann
372d0a707e
Merge remote-tracking branch 'origin/master' into haskell-updates
2022-03-26 09:59:28 +01: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
github-actions[bot]
79b7796557
Merge master into haskell-updates
2022-03-25 00:11:06 +00:00
Xinglu Chen
e13494d071
lib.licenses: add MIT-0
...
<https://spdx.org/licenses/MIT-0.html >
2022-03-24 18:49:26 +01:00
Robert Hensing
ce5a33e62b
Merge pull request #164660 from ncfavier/tests-restrict-arguments
...
nixos/testing: restrict arguments to makeTest
2022-03-24 17:01:47 +01:00
ckie
2bc1cd1ac4
soundfont-generaluser: init at 1.471
2022-03-24 12:49:38 +02:00
github-actions[bot]
b86264453e
Merge master into haskell-updates
2022-03-23 00:11:32 +00:00
Silvan Mosberger
a38220e61d
Merge pull request #164890 from ncfavier/lib-warn-throw
...
lib/trivial: add warnIfNot and throwIf
2022-03-22 21:12:11 +01:00
github-actions[bot]
cf3e30f70f
Merge master into haskell-updates
2022-03-22 00:12:28 +00:00
Robert Hensing
6c469679f6
Merge remote-tracking branch 'upstream/master' into tests-restrict-arguments
2022-03-21 23:17:17 +01:00
Robert Hensing
84274cbc95
lib: Add toFunction
2022-03-21 23:14:10 +01:00
Robert Hensing
6a0b24b276
lib: applyIfFunction -> applyModuleArgsIfFunction
2022-03-21 23:14:10 +01:00
Kevin Cox
8ce16fcf62
Merge pull request #163451 from hercules-ci/stop-premature-warnings
...
Stop premature warnings, including `nix.settings` migration
2022-03-21 10:10:40 -04:00
Robert Hensing
1eb627c4cf
lib.mkRenamedOptionModuleWith: Remove warnWhenRead
...
Let's keep things simple and not poke holes in the
improved migration process.
2022-03-21 14:41:22 +01:00
github-actions[bot]
05517edcd8
Merge master into haskell-updates
2022-03-20 00:11:09 +00:00
Naïm Favier
7fae930a37
lib/trivial: add warnIfNot and throwIf
...
Negated versions of warnIf and throwIfNot.
2022-03-19 20:40:40 +01:00
Robert Hensing
5ff918bf55
Merge pull request #147077 from Infinisil/updateAttrPaths
...
Introduce `lib.updateManyAttrsByPath`
2022-03-19 19:00:03 +01:00
Silvan Mosberger
96698efe0c
lib/modules: Finally remove deprecated types.optionSet
...
types.optionSet has been deprecated for almost 10 years now
(0e333688ce
)! A removal
was already attempted in 2019
(27982b408e
), but it was promptly
reinstantiated since some third-party uses were discovered
(f531ce75e4
).
It's finally time to remove it for good :)
2022-03-18 04:51:27 +01:00
github-actions[bot]
d6d71873fc
Merge master into haskell-updates
2022-03-18 00:10:51 +00:00
Silvan Mosberger
85003ecdbb
lib.attrsets: Introduce updateManyAttrsByPath
2022-03-18 00:08:29 +01:00
Silvan Mosberger
1ad7812c4a
lib.lists: Use builtins.groupBy for lib.groupBy
...
builtins.groupBy is much more performant. It was introduced in
https://github.com/NixOS/nix/pull/5715
2022-03-18 00:05:10 +01:00