Removing this build dependency makes most NixOS tests completely
independent of the ruby ecosystem.
This helps reduce mass-rebuilds, which is especially useful when
bisecting the staging branch using a NixOS test.
This reduces closure sizes by making the libraries not depend on the
binaries, which is good for dynamic builds, and (when statically
linked) making the binaries not depend on the libraries, which is good
for static builds.
When static building, we additionally have to disable loading LUKS
plugins from $lib to avoid a reference, which probably wouldn't have
worked anyway.
--enable-static-cryptsetup adds binaries suffixed with .static,
e.g. cryptsetup.static, and those binaries have extra flags set to
enable them to be built statically. It doesn't change how the main
binaries are built — they're compiled correctly because pkgsStatic
sets up all the necessary compiler flag anyway. So as far as I can
tell, all --enable-static-cryptsetup gets us is duplicate binaries
that take up disk space unnecessarily.
targetPlatform refers to the platform the program being compiled will
produce binaries for, which only makes sense for things like
compilers, not cryptsetup. The correct platform to look at to check
static support is hostPlatform, which refers to the architecture the
program being compiled will run on.
continuation of #109595
pkgconfig was aliased in 2018, however, it remained in
all-packages.nix due to its wide usage. This cleans
up the remaining references to pkgs.pkgsconfig and
moves the entry to aliases.nix.
python3Packages.pkgconfig remained unchanged because
it's the canonical name of the upstream package
on pypi.
This is needed for tcrypt and the benchmark subcommand. If enabled,
it is also used to unlock LUKS2 volumes and therefore the kernel modules
providing this feature need to be available in our initrd.
Fixes#42163. #54019.
Bump to the latest stable version. Be aware that cryptsetup changed the
default LUKS header format with this version. When porting this to a
stable distribution you should supply the configure flag
`--with-default-luks-format=LUKS1` to preserve the user experience
there.
The full changelog can be seen at [0].
[0] https://gitlab.com/cryptsetup/cryptsetup/blob/master/docs/v2.1.0-ReleaseNotes
Some tests use O_DIRECT which is filesystem dependent and fails in a
sandbox as well as on some filesystems without sandboxing.
Patch out O_DIRECT and disable the 4 test cases that still fail in a
sandbox. See discussion in #46151.
Since years I'm not maintaining anything of the list below other
than some updates when I needed them for some reason. Other people
is doing that maintenance on my behalf so I better take me out but
for very few packages. Finally!
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
When libgcrypt added support for libcap, it started dropping
capabilities of the cryptsetup process. This meant that cryptsetup was
unable to communicate with device mapper. This patch fixes that issue by
removing the dependency on libgcrypt and instead uses openssl for the
implementation of low-level cryptographic functions.
Fixes#7859.