| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
The deprecation warnings in lib were wildly inconsistent. Different
formulations were used in different places for the same meaning. Some warnings
used builtins.trace instead of lib.warn, which prevents silencing; one even
only had a comment instead. Make everything more uniform.
|
| |
|
|\
| |
| | |
lib.toHexString: Statically compute hexDigits attrset
|
| | |
|
|\ \
| | |
| | | |
lib.pipe: Avoid creating a scope
|
| |/ |
|
|/
|
|
|
|
|
|
|
| |
That way each expression uses the final version of other lib.trivial
declarations.
For instance, when replacing `versionSuffix` with the string `"fnord"`
in a lib overlay, `trivial.version` uses `"fnord"` as suffix now rather
than `pre-git`.
|
| |
|
|
|
|
| |
Co-authored-by: Silvan Mosberger <github@infinisil.com>
|
|\ |
|
| |
| |
| |
| | |
Fix documentation of lib.trivial.importJSON and lib.trivial.importTOML
|
|/ |
|
| |
|
| |
|
|\
| |
| | |
Revert "lib/trivial: fix 'error: cannot decode virtual path '/nix/sto…
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
'/nix/store/virtual0000000000000000000000005-source''"
This reverts commit b67ee6e861903abb04e9024d605dfc7b00922633.
https://github.com/NixOS/nixpkgs/issues/202244
error: a string that refers to a store path cannot be appended to a path, at /etc/nixos/nix/nixos-unstable/lib/sources.nix:193:30
appears to happen when there's a nixpkgs git submodule
> So one of the things that is different for a git submodule is that the .git folder isn't a folder, it's a textfile that contains (in my case) this:
> $ cat nix/nixos-unstable/.git
> gitdir: ../../.git/modules/nixpkgs
|
|/ |
|
|\
| |
| | |
lib/sources: remove 2 usages of toString on a path which will be read using fileContents
|
| |
| |
| |
| |
| |
| | |
'/nix/store/virtual0000000000000000000000005-source''
happens on lazy-trees branch of Nix (NixOS/nix#6530)
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It gives a warning on the lazy-trees branch of Nix
(NixOS/nix#6530)
one of these was also giving me an error (the one in lib/trivial probably)
```
$ nix build
warning: applying 'toString' to path '/home/artturin/nixgits/my-nixpkgs/nixos/modules/installer/sd-card/sd
-image-aarch64.nix' and then accessing it is deprecated, at /home/artturin/nixgits/my-nixpkgs/lib/modules.
nix:349:99
warning: applying 'toString' to path '/home/artturin/nixgits/my-nixpkgs/.git' and then accessing it is dep
recated, at /home/artturin/nixgits/my-nixpkgs/lib/sources.nix:35:32
warning: applying 'toString' to path '/home/artturin/nixgits/my-nixpkgs/nixos/modules/system/etc/etc.nix'
and then accessing it is deprecated, at «stdin»:0
warning: applying 'toString' to path '/home/artturin/nixgits/my-nixpkgs/nixos/modules/system/etc/etc-activ
ation.nix' and then accessing it is deprecated, at «stdin»:0
warning: applying 'toString' to path '/home/artturin/nixgits/my-nixpkgs/nixos/modules/installer/sd-card/sd
-image-aarch64.nix' and then accessing it is deprecated, at «stdin»:0
error: cannot decode virtual path '/nix/store/virtual0000000000000000000000005-source'
(use '--show-trace' to show detailed location information)
```
|
| |
|
|\
| |
| | |
lib: add inPureEvalMode
|
| |
| |
| |
| |
| | |
This makes a value that is true if builtins does not contain the
currentSystem function, but false if it does.
|
|/ |
|
|\
| |
| | |
nixos/testing: restrict arguments to makeTest
|
| |\ |
|
| | | |
|
|\ \ \
| |_|/
|/| | |
lib/trivial: add warnIfNot and throwIf
|
| |/
| |
| |
| | |
Negated versions of warnIf and throwIfNot.
|
|/
|
|
| |
Adds support for sinceRelease
|
|
|
|
| |
C-style comment was being picked up by nixdoc as a documentation comment for the function.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
`functionArgs` should give valid results on
functions that have been identified with `lib.isFunction`
instead of erroring out.
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It's a common pattern in Nixpkgs to want to emit a warning in certain
cases, but not actually change behaviours.
This is often expressed as either
if cond then lib.warn "Don't do that thing" x else x
Or
(if cond then lib.warn "Don't do that thing" else lib.id) x
Neither of which really expresses the intent here, because it looks
like 'x' is being chosen conditionally.
To make this clearer, I introduce a "warnIf" function, which makes it
clear that the only thing being affected by the condition is whether
the warning is generated, not the value being returned.
|
|/ |
|
|
|
|
|
| |
Complements the `lib.importJSON`. `builtins.readTOML` has been
introduced in Nix 2.1.
|
|
|
|
|
| |
* Okapi is an artiodactyl mammal native to Central Africa
* https://en.wikipedia.org/wiki/Okapi
|
|
|
|
| |
This makes the type of these functions more apparent from the name.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`toHex` converts the given positive integer to a string of the hexadecimal
representation of that integer. For example:
```
toHex 0 => "0"
toHex 16 => "10"
toHex 250 => "FA"
```
`toBase base i` converts the positive integer `i` to a list of it
digits in the given `base`. For example:
```
toBase 10 123 => [ 1 2 3 ]
toBase 2 6 => [ 1 1 0 ]
toBase 16 250 => [ 15 10 ]
```
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Before c9214c394b248e1f26e45dbe1be2bd82363af3a6 and
9d396d2e426b9a765de0b8999aa214f1259633e6 if .git is symlink the version
would gracefully default to no git revision. With those changes an
exception is thrown instead.
This introduces a new function `pathIsGitRepo` that checks if
`commitIdFromGitRepo` fails without error so we don't have to
reimplement this logic again and can fail gracefully.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
lib.commitIdFromGitRepo now resolves the refs from the
parent repository in case the supplied path is a file
containing the path to said repository. this adds support
for git-worktree and things alike. see gitrepository-layout(5).
this also:
- adds a new boolean function lib.pathIsRegularFile to
check whether a path is a regular file
- patches lib.revisionWithDefault and
the revision and versionSuffix attributes in
config.system.nixos in order to support git-worktrees
|