Naive concatenation of $LD_LIBRARY_PATH can result in an empty
colon-delimited segment; this tells glibc to load libraries from the
current directory, which is definitely wrong, and may be a security
vulnerability if the current directory is untrusted. (See #67234, for
example.) Fix this throughout the tree.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
I haven't been doing any maintenance for a long time now and not only
do I get notified, it also creates a fake impression that all these
packages had at least one maintainer when in practice they had none.
Before this change, xdg-open would impurely look up mimetype in the PATH. While
it would fall back to file if not found, mimetype gives decidedly better output
(e.g. text/csv instead of just text/plain).
Or else `xdg-screensaver suspend <WINDOW_ID>` fails with errors like:
Can't locate Net/DBus.pm in @INC [...]
This increases the closure of xdg-utils from 53 MiB to 119 MiB.
(The issue was found when testing retroarch.)
XDG_CONFIG_DIRS should contain directories ordered by priority
so if we want users to be able to customize the defaults, we
need to move the shipped values to the end.
There ver very many conflicts, basically all due to
name -> pname+version. Fortunately, almost everything was auto-resolved
by kdiff3, and for now I just fixed up a couple evaluation problems,
as verified by the tarball job. There might be some fallback to these
conflicts, but I believe it should be minimal.
Hydra nixpkgs: ?compare=1538299
So far, the output binary has been just "validate", which is quite a
very generic name and doesn't match the package name.
Even though I highly doubt that this program will ever be used outside
of NixOS modules, it's nevertheless less confusing to have a consistent
naming.
Signed-off-by: aszlig <aszlig@nix.build>
The only reason why I was using _GNU_SOURCE was because of vasprintf(),
so getting rid of that extension should make the source way more
portable.
When using vsnprintf() with a null pointer for the output buffer and a
size of 0, I wasn't quite sure whether this would be undefined
behaviour, so I looked it up in the C11 standard.
In section 7.21.6.5, it explicitly mentions this case, so we're lucky:
If n is zero, nothing is written, and s may be a null pointer.
Additionally, section 7.21.6.12 writes the following about vsnprintf():
The vsnprintf function does not invoke the va_end macro.
So to be sure to avoid undefined behaviour I subsequently added the
corresponding va_end() calls.
With this, the platforms attribute is now "unix", because the program
should now even run on OS X, even though it usually wouldn't be needed.
Signed-off-by: aszlig <aszlig@nix.build>
I initially didn't use $CC because I thought this would be GCC specific,
but it turns out that Clang actually accepts -std=gnu11.
So using $CC here might not work on compilers other than Clang or GCC,
but at the moment those are the compilers we typically use in nixpkgs,
so even if we'd use some other compiler it *might* even work there.
I've tested this by compiling against clangStdenv with both $CC and
clang hardcoded and it works.
This was reported by @dkudriavtsev on IRC.
Signed-off-by: aszlig <aszlig@nix.build>
1.2 only allows running in the foreground if debug mode is enabled which
generates lots of noise for journald.
The changes from the most recent release is only a few minor fixes plus support
for running in the foreground with the `-f` flag.
A recent upgrade of cargo-vendor changed its output slightly, which
broke all cargoSha256 hashes in nixpkgs.
See https://github.com/NixOS/nixpkgs/issues/60668 for more information.
Since then, a few hashes have been fixed in master by hand, but there
were a lot still to do, so I did all of the ones left over with some
scripts I wrote.
The one hash I wasn’t able to update was habitat's, because it’s
currently broken and the build doesn’t get far enough to produce a
hash anyway.
This stops arandr from crashing if it tries to open a dialog box.
Note: the hook doesn't play nicely with gobject-introspection unless
strictDeps = false. See NixOS#56943.
According to xsecurelock's configure.ac file, each of the add
dependencies are used to:
- libXrandr: XRandR provides information about monitor layouts and is
strongly recommended on systems which can use more than one monitor
(which includes most laptops).
- libXext: The X Synchronization extension is used to get per-device idle
times. Used by until_nonidle only.
- libXScrnSaver: The X11 Screen Saver extension is used to turn off the
screen saver when X11 handles screen blanking (e.g. via timeout) anyway.
Saves CPU power.
Adding libXrandr fixes an issue where locking a screen in a multi
monitor setup results in the prompt information to not be in the middle
of the screen. The other dependencies are not tested if they fixed
something, however since upstream recommends than I think it is fair to
include them also.
Whenever we create scripts that are installed to $out, we must use runtimeShell
in order to get the shell that can be executed on the machine we create the
package for. This is relevant for cross-compiling. The only use case for
stdenv.shell are scripts that are executed as part of the build system.
Usages in checkPhase are borderline however to decrease the likelyhood
of people copying the wrong examples, I decided to use runtimeShell as well.
* Add an alias with a deprecation warning for `nxproxy` to avoid an
immediate breaking change.
* Use the default shell used in the build environment (`stdenv.shell`)
for patching. This shell is in the environment and thus used to patch
scripts using `patchShebangs`. The shell is referenced as `stdenv.shell`
in Makefiles to patch the remaining occurrences of `/bin/bash` in the
build environment.
patching the currently broken Xdummy script out of the Makefile.am, else it gets put into bin.
this is not a regression of functionality, as it doesn't appear to be put into bin in the upstream version either.
This makes the command ‘nix-env -qa -f. --arg config '{skipAliases =
true;}'’ work in Nixpkgs.
Misc...
- qtikz: use libsForQt5.callPackage
This ensures we get the right poppler.
- rewrites:
docbook5_xsl -> docbook_xsl_ns
docbook_xml_xslt -> docbook_xsl
diffpdf: fixup
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/xpra/versions.
These checks were done:
- built on NixOS
- /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/xpra passed the binary check.
- Warning: no invocation of /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/xpra_Xdummy had a zero exit code or showed the expected version
- /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/xpra_udev_product_version passed the binary check.
- Warning: no invocation of /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/.xpra_browser-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/xpra_browser had a zero exit code or showed the expected version
- /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/.xpra_launcher-wrapped passed the binary check.
- /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/xpra_launcher passed the binary check.
- Warning: no invocation of /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/.xpra_signal_listener-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/xpra_signal_listener had a zero exit code or showed the expected version
- /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/..xpra-wrapped-wrapped passed the binary check.
- /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2/bin/.xpra-wrapped passed the binary check.
- 6 of 11 passed binary check by having a zero exit code.
- 0 of 11 passed binary check by having the new version present in output.
- found 2.3.2 with grep in /nix/store/fzfjz4f220146zh638axrmgl63fxkfmk-xpra-2.3.2
- directory tree listing: https://gist.github.com/91468b1ca1959b1e5d4994b90772daf4
- du listing: https://gist.github.com/f56ad6737d400b6310e5fd6353ee7e83
* treewide: http -> https sources
This updates the source urls of all top-level packages from http to
https where possible.
* buildtorrent: fix url and tab -> spaces
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/xpra/versions.
These checks were done:
- built on NixOS
- /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/xpra passed the binary check.
- Warning: no invocation of /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/xpra_Xdummy had a zero exit code or showed the expected version
- /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/xpra_udev_product_version passed the binary check.
- Warning: no invocation of /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/.xpra_browser-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/xpra_browser had a zero exit code or showed the expected version
- /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/.xpra_launcher-wrapped passed the binary check.
- /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/xpra_launcher passed the binary check.
- Warning: no invocation of /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/.xpra_signal_listener-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/xpra_signal_listener had a zero exit code or showed the expected version
- /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/..xpra-wrapped-wrapped passed the binary check.
- /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1/bin/.xpra-wrapped passed the binary check.
- 6 of 11 passed binary check by having a zero exit code.
- 0 of 11 passed binary check by having the new version present in output.
- found 2.3.1 with grep in /nix/store/l56gn6d9mhf9w91awvnwp8xyz5n21ihq-xpra-2.3.1
- directory tree listing: https://gist.github.com/7606ce6a89a1f8d80289d7e80071283f
- du listing: https://gist.github.com/02108b6781cb898bec5d8a6033508e03
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/xpra/versions.
These checks were done:
- built on NixOS
- /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/xpra passed the binary check.
- Warning: no invocation of /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/xpra_Xdummy had a zero exit code or showed the expected version
- /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/xpra_udev_product_version passed the binary check.
- Warning: no invocation of /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/.xpra_browser-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/xpra_browser had a zero exit code or showed the expected version
- /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/.xpra_launcher-wrapped passed the binary check.
- /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/xpra_launcher passed the binary check.
- Warning: no invocation of /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/.xpra_signal_listener-wrapped had a zero exit code or showed the expected version
- Warning: no invocation of /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/xpra_signal_listener had a zero exit code or showed the expected version
- /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/..xpra-wrapped-wrapped passed the binary check.
- /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3/bin/.xpra-wrapped passed the binary check.
- 6 of 11 passed binary check by having a zero exit code.
- 0 of 11 passed binary check by having the new version present in output.
- found 2.3 with grep in /nix/store/qj6c3wgczrd94h9xc80nx6idcimyx77r-xpra-2.3
- directory tree listing: https://gist.github.com/9e03a45b8255a45b7df6fbcf24b6f408
- du listing: https://gist.github.com/a48b995e2d458e3b9da00ae42675dbe6
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/xpra/versions.
These checks were done:
- built on NixOS
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/xpra -h’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/xpra --help’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/udev_product_version -h’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/udev_product_version --help’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/udev_product_version help’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/.xpra_launcher-wrapped -h’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/.xpra_launcher-wrapped --help’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/xpra_launcher -h’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/xpra_launcher --help’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/..xpra-wrapped-wrapped -h’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/..xpra-wrapped-wrapped --help’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/.xpra-wrapped -h’ got 0 exit code
- ran ‘/nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6/bin/.xpra-wrapped --help’ got 0 exit code
- found 2.2.6 with grep in /nix/store/yh7iwzli0pcqnhm2vdcc2ha5ifig1ix0-xpra-2.2.6
- directory tree listing: https://gist.github.com/01ffc3c415200e59fd7469357044a87a
Semi-automatic update generated by https://github.com/ryantm/nix-update tools.
This update was made based on information from https://repology.org/metapackage/xpra/versions.
These checks were done:
- built on NixOS
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra -h` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra --help` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra --version` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra -h` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra --help` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/udev_product_version -h` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/udev_product_version --help` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/udev_product_version help` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra_launcher-wrapped -h` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra_launcher-wrapped --help` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra_launcher-wrapped --version` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra_launcher-wrapped -h` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra_launcher-wrapped --help` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra_launcher -h` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra_launcher --help` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra_launcher --version` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra_launcher -h` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/xpra_launcher --help` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/..xpra-wrapped-wrapped -h` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/..xpra-wrapped-wrapped --help` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/..xpra-wrapped-wrapped --version` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/..xpra-wrapped-wrapped -h` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/..xpra-wrapped-wrapped --help` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra-wrapped -h` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra-wrapped --help` got 0 exit code
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra-wrapped --version` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra-wrapped -h` and found version 2.2.5
- ran `/nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5/bin/.xpra-wrapped --help` and found version 2.2.5
- found 2.2.5 with grep in /nix/store/fdgkwl5jg6lzkkf3s06xnljssfcwgpbg-xpra-2.2.5
- directory tree listing: https://gist.github.com/b8906f2abe5109a6ace5790246e4d62a
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/xpra -h` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/xpra --help` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/xpra --version` and found version 2.2.5
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/udev_product_version -h` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/udev_product_version --help` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/udev_product_version help` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/..xpra-wrapped-wrapped -h` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/..xpra-wrapped-wrapped --help` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/..xpra-wrapped-wrapped --version` and found version 2.2.5
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/.xpra-wrapped -h` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/.xpra-wrapped --help` got 0 exit code
- ran `/nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5/bin/.xpra-wrapped --version` and found version 2.2.5
- found 2.2.5 with grep in /nix/store/raq8vylxav1gm8v4gsphfmpbq6mw9362-xpra-2.2.5
- directory tree listing: https://gist.github.com/78f0907352399b3a9966fb6f71f1f0d4
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/xdg-user-dirs-update --help` got 0 exit code
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/.xdg-user-dirs-update-wrapped --help` got 0 exit code
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/xdg-user-dir -h` got 0 exit code
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/xdg-user-dir --help` got 0 exit code
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/xdg-user-dir help` got 0 exit code
- found 0.17 with grep in /nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17
- directory tree listing: https://gist.github.com/e8c151156e7a65f9f958a9a64e1e5a86