From 8bffff218c651afa120c0bb33b7bceebf62f56d8 Mon Sep 17 00:00:00 2001 From: Defelo Date: Tue, 8 Apr 2025 16:50:36 +0200 Subject: [PATCH 1/7] kanidm-provision: use finalAttrs pattern --- pkgs/by-name/ka/kanidm-provision/package.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ka/kanidm-provision/package.nix b/pkgs/by-name/ka/kanidm-provision/package.nix index 1169e8b9bbeb..0c5c3c91ce98 100644 --- a/pkgs/by-name/ka/kanidm-provision/package.nix +++ b/pkgs/by-name/ka/kanidm-provision/package.nix @@ -3,14 +3,15 @@ rustPlatform, fetchFromGitHub, }: -rustPlatform.buildRustPackage rec { + +rustPlatform.buildRustPackage (finalAttrs: { pname = "kanidm-provision"; version = "1.1.2"; src = fetchFromGitHub { owner = "oddlama"; repo = "kanidm-provision"; - rev = "v${version}"; + rev = "v${finalAttrs.version}"; hash = "sha256-pgPjkj0nMb5j3EvyJTTDpfmh0WigAcMzoleF5EOqBAM="; }; @@ -27,4 +28,4 @@ rustPlatform.buildRustPackage rec { maintainers = with maintainers; [ oddlama ]; mainProgram = "kanidm-provision"; }; -} +}) From 2a1e1c6476af7ea50c191f29d10d1cb95eff7950 Mon Sep 17 00:00:00 2001 From: Defelo Date: Tue, 8 Apr 2025 16:50:53 +0200 Subject: [PATCH 2/7] kanidm-provision: use tag in fetchFromGitHub --- pkgs/by-name/ka/kanidm-provision/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/ka/kanidm-provision/package.nix b/pkgs/by-name/ka/kanidm-provision/package.nix index 0c5c3c91ce98..276764710085 100644 --- a/pkgs/by-name/ka/kanidm-provision/package.nix +++ b/pkgs/by-name/ka/kanidm-provision/package.nix @@ -11,7 +11,7 @@ rustPlatform.buildRustPackage (finalAttrs: { src = fetchFromGitHub { owner = "oddlama"; repo = "kanidm-provision"; - rev = "v${finalAttrs.version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-pgPjkj0nMb5j3EvyJTTDpfmh0WigAcMzoleF5EOqBAM="; }; From 0ed82cf3682a9718a44f65b6381f1e4d9ab4f602 Mon Sep 17 00:00:00 2001 From: Defelo Date: Tue, 8 Apr 2025 16:51:20 +0200 Subject: [PATCH 3/7] kanidm-provision: remove `with lib;` --- pkgs/by-name/ka/kanidm-provision/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ka/kanidm-provision/package.nix b/pkgs/by-name/ka/kanidm-provision/package.nix index 276764710085..60addee033b4 100644 --- a/pkgs/by-name/ka/kanidm-provision/package.nix +++ b/pkgs/by-name/ka/kanidm-provision/package.nix @@ -18,14 +18,14 @@ rustPlatform.buildRustPackage (finalAttrs: { useFetchCargoVendor = true; cargoHash = "sha256-kbctfPhEF1PdVLjE62GyLDzjOnZxH/kOWUS4x2vd/+8="; - meta = with lib; { + meta = { description = "A small utility to help with kanidm provisioning"; homepage = "https://github.com/oddlama/kanidm-provision"; - license = with licenses; [ + license = with lib.licenses; [ asl20 mit ]; - maintainers = with maintainers; [ oddlama ]; + maintainers = with lib.maintainers; [ oddlama ]; mainProgram = "kanidm-provision"; }; }) From 59121355bcb03752bb547aa19d92f62ec6049bb4 Mon Sep 17 00:00:00 2001 From: Defelo Date: Tue, 8 Apr 2025 16:53:43 +0200 Subject: [PATCH 4/7] kanidm-provision: add versionCheckHook --- pkgs/by-name/ka/kanidm-provision/package.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/by-name/ka/kanidm-provision/package.nix b/pkgs/by-name/ka/kanidm-provision/package.nix index 60addee033b4..811c1cd52513 100644 --- a/pkgs/by-name/ka/kanidm-provision/package.nix +++ b/pkgs/by-name/ka/kanidm-provision/package.nix @@ -2,6 +2,7 @@ lib, rustPlatform, fetchFromGitHub, + versionCheckHook, }: rustPlatform.buildRustPackage (finalAttrs: { @@ -18,6 +19,10 @@ rustPlatform.buildRustPackage (finalAttrs: { useFetchCargoVendor = true; cargoHash = "sha256-kbctfPhEF1PdVLjE62GyLDzjOnZxH/kOWUS4x2vd/+8="; + nativeInstallCheckInputs = [ versionCheckHook ]; + versionCheckProgramArg = "--version"; + doInstallCheck = true; + meta = { description = "A small utility to help with kanidm provisioning"; homepage = "https://github.com/oddlama/kanidm-provision"; From f72f009114eaffa0c84bccdf14b50991cc6ffc28 Mon Sep 17 00:00:00 2001 From: Defelo Date: Tue, 8 Apr 2025 16:51:59 +0200 Subject: [PATCH 5/7] kanidm-provision: add updateScript --- pkgs/by-name/ka/kanidm-provision/package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/by-name/ka/kanidm-provision/package.nix b/pkgs/by-name/ka/kanidm-provision/package.nix index 811c1cd52513..80ad584553f1 100644 --- a/pkgs/by-name/ka/kanidm-provision/package.nix +++ b/pkgs/by-name/ka/kanidm-provision/package.nix @@ -3,6 +3,7 @@ rustPlatform, fetchFromGitHub, versionCheckHook, + nix-update-script, }: rustPlatform.buildRustPackage (finalAttrs: { @@ -23,6 +24,8 @@ rustPlatform.buildRustPackage (finalAttrs: { versionCheckProgramArg = "--version"; doInstallCheck = true; + passthru.updateScript = nix-update-script { }; + meta = { description = "A small utility to help with kanidm provisioning"; homepage = "https://github.com/oddlama/kanidm-provision"; From 32dd44ab11eef4206aa77552e5cd79423c36f6f6 Mon Sep 17 00:00:00 2001 From: Defelo Date: Tue, 8 Apr 2025 14:55:22 +0000 Subject: [PATCH 6/7] kanidm-provision: 1.1.2 -> 1.2.0 --- nixos/modules/services/security/kanidm.nix | 10 ++++++++++ pkgs/by-name/ka/kanidm-provision/package.nix | 15 ++++++++++++--- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/nixos/modules/services/security/kanidm.nix b/nixos/modules/services/security/kanidm.nix index b2dc4a57fa44..67b219595458 100644 --- a/nixos/modules/services/security/kanidm.nix +++ b/nixos/modules/services/security/kanidm.nix @@ -563,6 +563,16 @@ in default = null; }; + imageFile = mkOption { + description = '' + Application image to display in the WebUI. + Kanidm supports "image/jpeg", "image/png", "image/gif", "image/svg+xml", and "image/webp". + The image will be uploaded each time kanidm-provision is run. + ''; + type = types.nullOr types.path; + default = null; + }; + enableLocalhostRedirects = mkOption { description = "Allow localhost redirects. Only for public clients."; type = types.bool; diff --git a/pkgs/by-name/ka/kanidm-provision/package.nix b/pkgs/by-name/ka/kanidm-provision/package.nix index 80ad584553f1..6f15690c1c48 100644 --- a/pkgs/by-name/ka/kanidm-provision/package.nix +++ b/pkgs/by-name/ka/kanidm-provision/package.nix @@ -2,23 +2,32 @@ lib, rustPlatform, fetchFromGitHub, + yq, versionCheckHook, nix-update-script, }: rustPlatform.buildRustPackage (finalAttrs: { pname = "kanidm-provision"; - version = "1.1.2"; + version = "1.2.0"; src = fetchFromGitHub { owner = "oddlama"; repo = "kanidm-provision"; tag = "v${finalAttrs.version}"; - hash = "sha256-pgPjkj0nMb5j3EvyJTTDpfmh0WigAcMzoleF5EOqBAM="; + hash = "sha256-+NQJEAJ0DqKEV1cYZN7CLzGoBJNUL3SQAMmxRQG5DMI="; }; + postPatch = '' + tomlq -ti '.package.version = "${finalAttrs.version}"' Cargo.toml + ''; + useFetchCargoVendor = true; - cargoHash = "sha256-kbctfPhEF1PdVLjE62GyLDzjOnZxH/kOWUS4x2vd/+8="; + cargoHash = "sha256-uo/TGyfNChq/t6Dah0HhXhAwktyQk0V/wewezZuftNk="; + + nativeBuildInputs = [ + yq # for `tomlq` + ]; nativeInstallCheckInputs = [ versionCheckHook ]; versionCheckProgramArg = "--version"; From ee84ec39e94cfcc8fa28ca914772d77c014172a5 Mon Sep 17 00:00:00 2001 From: Defelo Date: Tue, 8 Apr 2025 17:38:39 +0200 Subject: [PATCH 7/7] kanidm-provision: link nixos test --- pkgs/by-name/ka/kanidm-provision/package.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ka/kanidm-provision/package.nix b/pkgs/by-name/ka/kanidm-provision/package.nix index 6f15690c1c48..6cc34970e683 100644 --- a/pkgs/by-name/ka/kanidm-provision/package.nix +++ b/pkgs/by-name/ka/kanidm-provision/package.nix @@ -5,6 +5,7 @@ yq, versionCheckHook, nix-update-script, + nixosTests, }: rustPlatform.buildRustPackage (finalAttrs: { @@ -33,7 +34,10 @@ rustPlatform.buildRustPackage (finalAttrs: { versionCheckProgramArg = "--version"; doInstallCheck = true; - passthru.updateScript = nix-update-script { }; + passthru = { + tests = { inherit (nixosTests) kanidm-provisioning; }; + updateScript = nix-update-script { }; + }; meta = { description = "A small utility to help with kanidm provisioning";