From 3780f770398e2ef0c34dba966eade9e88d4aa4f3 Mon Sep 17 00:00:00 2001 From: Jamie Magee Date: Mon, 9 Jan 2023 14:58:55 -0800 Subject: [PATCH] pam_rssh: init at unstable-2023-01-09 --- pkgs/os-specific/linux/pam_rssh/default.nix | 48 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 50 insertions(+) create mode 100644 pkgs/os-specific/linux/pam_rssh/default.nix diff --git a/pkgs/os-specific/linux/pam_rssh/default.nix b/pkgs/os-specific/linux/pam_rssh/default.nix new file mode 100644 index 0000000000000..bc7120e698047 --- /dev/null +++ b/pkgs/os-specific/linux/pam_rssh/default.nix @@ -0,0 +1,48 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, + openssl, + pam, + pkg-config, +}: +rustPlatform.buildRustPackage rec { + pname = "pam_rssh"; + version = "unstable-2023-01-12"; + + src = fetchFromGitHub { + owner = "z4yx"; + repo = pname; + rev = "773823b9a8605436e5bcfabd1c3ff8deb8503f43"; + hash = "sha512-rAr4ugo+IaxOKXtfEq9stK4edodork2uz10trHDv9MN4Oc296uDQjLh8Sle04Z4mbW56rWlT8eHrW6YpqGHFpw=="; + fetchSubmodules = true; + }; + + cargoHash = "sha512-gSZ2EAhFJ1XqYmrVqJm3QP0l433XQxvkstkvyDAFZXB6KXiGzN0EoFxYoTdD0q2fE3tr5EBlmm4iC/Jo3wi4sg=="; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + openssl + pam + ]; + + doCheck = false; + # How do disable specific tests? + # checkFlags = [ + # # Expects $USER and $SSH_AUTH_SOCK + # "--skip=lib::tests::sshagent_list_identities" + # "--skip=lib::tests::sshagent_auth" + # "--skip=lib::tests::sshagent_more_auth" + # "--skip=lib::tests::parse_user_authorized_keys" + # ]; + + meta = with lib; { + description = "Remote sudo authenticated via ssh-agent"; + homepage = "https://github.com/z4yx/pam_rssh"; + license = licenses.mit; + maintainers = with maintainers; [jamiemagee]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1f04873301814..6f132d851273c 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -27019,6 +27019,8 @@ with pkgs; pam_pgsql = callPackage ../os-specific/linux/pam_pgsql { }; + pam_rssh = callPackage ../os-specific/linux/pam_rssh { }; + pam_ssh_agent_auth = callPackage ../os-specific/linux/pam_ssh_agent_auth { }; pam_tmpdir = callPackage ../os-specific/linux/pam_tmpdir { };