about summary refs log tree commit diff
path: root/pkgs/by-name/ka
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/ka')
-rw-r--r--pkgs/by-name/ka/kalamine/package.nix38
-rw-r--r--pkgs/by-name/ka/kanagawa-gtk-theme/package.nix2
-rw-r--r--pkgs/by-name/ka/kanagawa-icon-theme/package.nix2
-rw-r--r--pkgs/by-name/ka/kanidm/package.nix105
-rw-r--r--pkgs/by-name/ka/karmor/package.nix8
-rw-r--r--pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix8
-rw-r--r--pkgs/by-name/ka/katriawm/package.nix37
7 files changed, 177 insertions, 23 deletions
diff --git a/pkgs/by-name/ka/kalamine/package.nix b/pkgs/by-name/ka/kalamine/package.nix
new file mode 100644
index 0000000000000..6f7ae19795aa7
--- /dev/null
+++ b/pkgs/by-name/ka/kalamine/package.nix
@@ -0,0 +1,38 @@
+{ lib
+, python3
+, fetchFromGitHub
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "kalamine";
+  version = "0.22";
+  pyproject = true;
+
+  src = fetchFromGitHub {
+    owner = "OneDeadKey";
+    repo = "kalamine";
+    rev = "v${version}";
+    hash = "sha256-SPXVFeysVF/6RqjhXmlPc+3m5vnVndJb7LQshQZBeg8=";
+  };
+
+  nativeBuildInputs = [
+    python3.pkgs.hatchling
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    click
+    lxml
+    pyyaml
+    tomli
+  ];
+
+  pythonImportsCheck = [ "kalamine" ];
+
+  meta = with lib; {
+    description = "Keyboard Layout Maker";
+    homepage = "https://github.com/OneDeadKey/kalamine/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ iogamaster ];
+    mainProgram = "kalamine";
+  };
+}
diff --git a/pkgs/by-name/ka/kanagawa-gtk-theme/package.nix b/pkgs/by-name/ka/kanagawa-gtk-theme/package.nix
index bf714e0f301f8..590994dabbffc 100644
--- a/pkgs/by-name/ka/kanagawa-gtk-theme/package.nix
+++ b/pkgs/by-name/ka/kanagawa-gtk-theme/package.nix
@@ -33,7 +33,7 @@ stdenvNoCC.mkDerivation {
   '';
 
   meta = with lib; {
-    description = "A GTK theme with the Kanagawa colour palette";
+    description = "GTK theme with the Kanagawa colour palette";
     homepage = "https://github.com/Fausto-Korpsvart/Kanagawa-GKT-Theme";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ iynaix ];
diff --git a/pkgs/by-name/ka/kanagawa-icon-theme/package.nix b/pkgs/by-name/ka/kanagawa-icon-theme/package.nix
index b2d2517ae6308..7761e4788a34c 100644
--- a/pkgs/by-name/ka/kanagawa-icon-theme/package.nix
+++ b/pkgs/by-name/ka/kanagawa-icon-theme/package.nix
@@ -38,7 +38,7 @@ stdenvNoCC.mkDerivation {
   '';
 
   meta = with lib; {
-    description = "An icon theme for the Kanagawa colour palette";
+    description = "Icon theme for the Kanagawa colour palette";
     homepage = "https://github.com/Fausto-Korpsvart/Kanagawa-GKT-Theme";
     license = licenses.gpl3Only;
     maintainers = with maintainers; [ iynaix ];
diff --git a/pkgs/by-name/ka/kanidm/package.nix b/pkgs/by-name/ka/kanidm/package.nix
new file mode 100644
index 0000000000000..de9694227fcd4
--- /dev/null
+++ b/pkgs/by-name/ka/kanidm/package.nix
@@ -0,0 +1,105 @@
+{ stdenv
+, lib
+, formats
+, nixosTests
+, rustPlatform
+, fetchFromGitHub
+, installShellFiles
+, nix-update-script
+, pkg-config
+, udev
+, openssl
+, sqlite
+, pam
+, bashInteractive
+, rust-jemalloc-sys
+}:
+
+let
+  arch = if stdenv.isx86_64 then "x86_64" else "generic";
+in
+rustPlatform.buildRustPackage rec {
+  pname = "kanidm";
+  version = "1.2.3";
+
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = "refs/tags/v${version}";
+    hash = "sha256-J02IbAY5lyoMaq6wJiHizqeFBd5hB6id2YMPxlPsASM=";
+  };
+
+  cargoHash = "sha256-JuTKHXpEhWga2vAZhCpyPFy4w6+9UaasD70oBcrr0Rw=";
+
+  KANIDM_BUILD_PROFILE = "release_nixos_${arch}";
+
+  postPatch =
+    let
+      format = (formats.toml { }).generate "${KANIDM_BUILD_PROFILE}.toml";
+      profile = {
+        admin_bind_path = "/run/kanidmd/sock";
+        cpu_flags = if stdenv.isx86_64 then "x86_64_legacy" else "none";
+        default_config_path = "/etc/kanidm/server.toml";
+        default_unix_shell_path = "${lib.getBin bashInteractive}/bin/bash";
+        web_ui_pkg_path = "@web_ui_pkg_path@";
+      };
+    in
+    ''
+      cp ${format profile} libs/profiles/${KANIDM_BUILD_PROFILE}.toml
+      substituteInPlace libs/profiles/${KANIDM_BUILD_PROFILE}.toml \
+        --replace '@web_ui_pkg_path@' "${placeholder "out"}/ui"
+    '';
+
+  nativeBuildInputs = [
+    pkg-config
+    installShellFiles
+  ];
+
+  buildInputs = [
+    udev
+    openssl
+    sqlite
+    pam
+    rust-jemalloc-sys
+  ];
+
+  # The UI needs to be in place before the tests are run.
+  postBuild = ''
+    # We don't compile the wasm-part form source, as there isn't a rustc for
+    # wasm32-unknown-unknown in nixpkgs yet.
+    mkdir $out
+    cp -r server/web_ui/pkg $out/ui
+  '';
+
+  # Not sure what pathological case it hits when compiling tests with LTO,
+  # but disabling it takes the total `cargo check` time from 40 minutes to
+  # around 5 on a 16-core machine.
+  cargoTestFlags = ["--config" ''profile.release.lto="off"''];
+
+  preFixup = ''
+    installShellCompletion \
+      --bash $releaseDir/build/completions/*.bash \
+      --zsh $releaseDir/build/completions/_*
+
+    # PAM and NSS need fix library names
+    mv $out/lib/libnss_kanidm.so $out/lib/libnss_kanidm.so.2
+    mv $out/lib/libpam_kanidm.so $out/lib/pam_kanidm.so
+  '';
+
+  passthru = {
+    tests = {
+      inherit (nixosTests) kanidm;
+    };
+
+    updateScript = nix-update-script { };
+  };
+
+  meta = with lib; {
+    changelog = "https://github.com/kanidm/kanidm/releases/tag/v${version}";
+    description = "Simple, secure and fast identity management platform";
+    homepage = "https://github.com/kanidm/kanidm";
+    license = licenses.mpl20;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ adamcstephens erictapen Flakebi ];
+  };
+}
diff --git a/pkgs/by-name/ka/karmor/package.nix b/pkgs/by-name/ka/karmor/package.nix
index b87c022d67a8e..eb2722b34150e 100644
--- a/pkgs/by-name/ka/karmor/package.nix
+++ b/pkgs/by-name/ka/karmor/package.nix
@@ -8,16 +8,16 @@
 
 buildGoModule rec {
   pname = "karmor";
-  version = "1.2.1";
+  version = "1.2.3";
 
   src = fetchFromGitHub {
     owner = "kubearmor";
     repo = "kubearmor-client";
     rev = "v${version}";
-    hash = "sha256-NNCV/+Jh/tjc7SC4E9/gtiVthVmAxZBOyW3MFISbkH4=";
+    hash = "sha256-XWht+gCR+BHQwLrQqVdCpgKO+VUC6mxvOlpn9hOjrnE=";
   };
 
-  vendorHash = "sha256-CKOZxmUVZWFb7cc+amPwyMv5ScujWeipEqm95m63SYk=";
+  vendorHash = "sha256-r3Fy4nOjlvyHcvztSfOOE6PmOhhNcVdoIq+ie5jqwkw=";
 
   nativeBuildInputs = [ installShellFiles ];
 
@@ -47,7 +47,7 @@ buildGoModule rec {
   };
 
   meta = with lib; {
-    description = "A client tool to help manage KubeArmor";
+    description = "Client tool to help manage KubeArmor";
     mainProgram = "karmor";
     homepage = "https://kubearmor.io";
     changelog = "https://github.com/kubearmor/kubearmor-client/releases/v${version}";
diff --git a/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix b/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix
index 34ec710a9b455..e7402d589019d 100644
--- a/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix
+++ b/pkgs/by-name/ka/katawa-shoujo-re-engineered/package.nix
@@ -9,7 +9,7 @@
 }:
 stdenvNoCC.mkDerivation (finalAttrs: {
   pname = "katawa-shoujo-re-engineered";
-  version = "1.4.4";
+  version = "1.4.7";
 
   src = fetchFromGitea {
     # GitHub mirror at fleetingheart/ksre
@@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
     owner = "fhs";
     repo = "katawa-shoujo-re-engineered";
     rev = "v${finalAttrs.version}";
-    hash = "sha256-RYJM/wGVWqIRZzHLUtUZ5mKUrUftDVaOwS1f/EpW6Tk=";
+    hash = "sha256-E+2G47vWA7o4bFWttoMDfPjAG32K8FDv+OluMjzPDQw=";
   };
 
   desktopItems = [
@@ -50,7 +50,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
   '';
 
   meta = {
-    description = "A fan-made modernization of the classic visual novel Katawa Shoujo";
+    description = "Fan-made modernization of the classic visual novel Katawa Shoujo";
     homepage = "https://www.fhs.sh/projects";
     license = with lib.licenses; [
       # code
@@ -59,7 +59,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
       cc-by-nc-nd-30
     ];
     mainProgram = "katawa-shoujo-re-engineered";
-    maintainers = with lib.maintainers; [ quantenzitrone ];
+    maintainers = with lib.maintainers; [ quantenzitrone rapiteanu ];
     platforms = renpy.meta.platforms;
   };
 })
diff --git a/pkgs/by-name/ka/katriawm/package.nix b/pkgs/by-name/ka/katriawm/package.nix
index 85116255e24f0..6a658af345bde 100644
--- a/pkgs/by-name/ka/katriawm/package.nix
+++ b/pkgs/by-name/ka/katriawm/package.nix
@@ -1,10 +1,12 @@
-{ lib
-, stdenv
-, fetchzip
-, libX11
-, libXft
-, libXrandr
-, pkg-config
+{
+  lib,
+  stdenv,
+  fetchzip,
+  libX11,
+  libXft,
+  libXrandr,
+  pkg-config,
+  gitUpdater,
 }:
 
 stdenv.mkDerivation (finalAttrs: {
@@ -16,9 +18,7 @@ stdenv.mkDerivation (finalAttrs: {
     hash = "sha256-IWviLboZz421/Amz/QG4o8jYaG8Y/l5PvmvXfK5nzJE=";
   };
 
-  nativeBuildInputs = [
-    pkg-config
-  ];
+  nativeBuildInputs = [ pkg-config ];
 
   buildInputs = [
     libX11
@@ -26,11 +26,17 @@ stdenv.mkDerivation (finalAttrs: {
     libXrandr
   ];
 
-  outputs = [ "out" "man" ];
+  outputs = [
+    "out"
+    "man"
+  ];
 
   strictDeps = true;
 
-  makeFlags = [ "-C" "src" ];
+  makeFlags = [
+    "-C"
+    "src"
+  ];
 
   installFlags = [ "prefix=$(out)" ];
 
@@ -39,9 +45,14 @@ stdenv.mkDerivation (finalAttrs: {
       --replace pkg-config "$PKG_CONFIG"
   '';
 
+  passthru.updateScript = gitUpdater {
+    url = "https://www.uninformativ.de/git/katriawm.git/";
+    rev-prefix = "v";
+  };
+
   meta = {
     homepage = "https://www.uninformativ.de/git/katriawm/file/README.html";
-    description = "A non-reparenting, dynamic window manager with decorations";
+    description = "Non-reparenting, dynamic window manager with decorations";
     license = lib.licenses.mit;
     mainProgram = "katriawm";
     maintainers = [ lib.maintainers.AndersonTorres ];