kbdVlock: split out of kbd
This removes a dependency cycle from systemd, removing a rebuild. At the same time it is just as convenience for users. They need to include the `kbdVlock` package now instead of the `vlock` output.
This commit is contained in:
@@ -36,6 +36,8 @@
|
||||
|
||||
- LLVM 12, 13, 14, 15, 16, and 17 have been removed, as they have reached end‐of‐life upstream and are no longer supported.
|
||||
|
||||
- The `vlock` output from kbd has been removed. Instead a new package `kbdVlock` has been introduced. Use this package now instead of the output.
|
||||
|
||||
- GHCJS 8.10, exposed via `haskell.compiler.ghcjs` and `haskell.compiler.ghcjs810`, has been removed. Downstream users should migrate their projects to the new JavaScript backend of GHC proper which can be used via `pkgsCross.ghcjs` from Nixpkgs. Haskell packaging code, like `haskellPackages.mkDerivation`, `ghcWithPackages` and `hoogleWithPackages`, also no longer supports GHCJS.
|
||||
|
||||
- GHC 8.6, 8.10, 9.0, 9.2, and their package sets have been removed.
|
||||
|
||||
@@ -20,11 +20,12 @@
|
||||
zstd,
|
||||
gitUpdater,
|
||||
pkgsCross,
|
||||
withVlock ? true,
|
||||
withVlock ? false,
|
||||
kbdVlock,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "kbd";
|
||||
pname = "kbd" + lib.optionalString withVlock "-vlock";
|
||||
version = "2.9.0";
|
||||
|
||||
__structuredAttrs = true;
|
||||
@@ -35,16 +36,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-uUECxFdm/UhoHKLHLFe6/ygCQ+4mrQOZExKl+ReaTNw=";
|
||||
};
|
||||
|
||||
# vlock is moved into its own output, since it depends on pam. This
|
||||
# reduces closure size for most use cases.
|
||||
outputs = [
|
||||
"out"
|
||||
"dev"
|
||||
"scripts"
|
||||
"man"
|
||||
]
|
||||
++ lib.optionals withVlock [
|
||||
"vlock"
|
||||
];
|
||||
|
||||
patches = [
|
||||
@@ -112,10 +108,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
moveToOutput bin/unicode_start $scripts
|
||||
moveToOutput bin/unicode_stop $scripts
|
||||
''
|
||||
+ lib.optionalString withVlock ''
|
||||
moveToOutput bin/vlock $vlock
|
||||
moveToOutput etc/pam.d/vlock $vlock
|
||||
'';
|
||||
|
||||
outputChecks.out.disallowedRequisites = [
|
||||
@@ -137,6 +129,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pkgsCross.${systemString}.kbd;
|
||||
inherit (nixosTests) keymap kbd-setfont-decompress kbd-update-search-paths-patch;
|
||||
};
|
||||
# For backwards compatibility. Remove after 26.05.
|
||||
vlock = kbdVlock;
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -200,8 +200,6 @@ let
|
||||
# $ curl -s https://api.github.com/repos/systemd/systemd/releases/latest | \
|
||||
# jq '.created_at|strptime("%Y-%m-%dT%H:%M:%SZ")|mktime'
|
||||
releaseTimestamp = "1734643670";
|
||||
|
||||
kbd' = if withPam then kbd else kbd.override { withVlock = false; };
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
inherit pname;
|
||||
@@ -475,8 +473,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
(lib.mesonOption "pkgconfigdatadir" "${placeholder "dev"}/share/pkgconfig")
|
||||
|
||||
# Keyboard
|
||||
(lib.mesonOption "loadkeys-path" "${kbd'}/bin/loadkeys")
|
||||
(lib.mesonOption "setfont-path" "${kbd'}/bin/setfont")
|
||||
(lib.mesonOption "loadkeys-path" "${kbd}/bin/loadkeys")
|
||||
(lib.mesonOption "setfont-path" "${kbd}/bin/setfont")
|
||||
|
||||
# SBAT
|
||||
(lib.mesonOption "sbat-distro" "nixos")
|
||||
@@ -928,10 +926,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
withUtmp
|
||||
util-linux
|
||||
kmod
|
||||
kbd
|
||||
;
|
||||
|
||||
kbd = kbd';
|
||||
|
||||
# Many TPM2-related units are only installed if this trio of features are
|
||||
# enabled. See https://github.com/systemd/systemd/blob/876ee10e0eb4bbb0920bdab7817a9f06cc34910f/units/meson.build#L521
|
||||
withTpm2Units = withTpm2Tss && withBootloader && withOpenSSL;
|
||||
|
||||
@@ -3265,6 +3265,8 @@ with pkgs;
|
||||
|
||||
kbfs = callPackage ../tools/security/keybase/kbfs.nix { };
|
||||
|
||||
kbdVlock = callPackage ../../pkgs/by-name/kb/kbd/package.nix { withVlock = true; };
|
||||
|
||||
keybase-gui = callPackage ../tools/security/keybase/gui.nix { };
|
||||
|
||||
keystore-explorer = callPackage ../applications/misc/keystore-explorer {
|
||||
|
||||
Reference in New Issue
Block a user