nix

configuration files that power my machines
Log | Files | Refs | README | LICENSE

commit 5dfbbc048d64f38be024b8df273c423ea940c1aa
parent 3a421bd40aad1009aefa0d491928118a3eb6864c
Author: mtmn <miro@haravara.org>
Date:   Sat, 27 Jun 2026 19:37:09 +0200

nix: add `plass` and co.

Diffstat:
Mflake.lock | 17+++++++++++++++++
Mflake.nix | 5+++++
Mmodules/mixins/core/default.nix | 4++++
Mmodules/mixins/dotfiles/default.nix | 2++
Amodules/mixins/dotfiles/plass.nix | 37+++++++++++++++++++++++++++++++++++++
5 files changed, 65 insertions(+), 0 deletions(-)

diff --git a/flake.lock b/flake.lock @@ -278,6 +278,22 @@ "type": "github" } }, + "plass": { + "flake": false, + "locked": { + "lastModified": 1746719398, + "narHash": "sha256-fB3L28wxesvt+YJen+IuS1LaQ4Mkkbnge6kFOaBOzQI=", + "owner": "omar-polo", + "repo": "plass", + "rev": "6d50c657de6e3e8504efafbcc536e5cfd5933772", + "type": "github" + }, + "original": { + "owner": "omar-polo", + "repo": "plass", + "type": "github" + } + }, "ragenix": { "inputs": { "agenix": "agenix", @@ -309,6 +325,7 @@ "home-manager": "home-manager", "nix-index-database": "nix-index-database", "nixpkgs": "nixpkgs_3", + "plass": "plass", "ragenix": "ragenix", "shirts": "shirts", "tmux-xpanes": "tmux-xpanes", diff --git a/flake.nix b/flake.nix @@ -46,6 +46,11 @@ url = "github:greymd/tmux-xpanes"; flake = false; }; + + plass = { + url = "github:omar-polo/plass"; + flake = false; + }; }; outputs = { diff --git a/modules/mixins/core/default.nix b/modules/mixins/core/default.nix @@ -25,5 +25,9 @@ nvd comma ]; + + perl = [ + perlPackages.EncodeLocale + ]; })); } diff --git a/modules/mixins/dotfiles/default.nix b/modules/mixins/dotfiles/default.nix @@ -62,6 +62,8 @@ } )) (scan path "")); in { + imports = [./plass.nix]; + config = { home.file = (mkMapping ./home ".") diff --git a/modules/mixins/dotfiles/plass.nix b/modules/mixins/dotfiles/plass.nix @@ -0,0 +1,37 @@ +{ + inputs, + pkgs, + ... +}: let + totp = pkgs.stdenv.mkDerivation { + name = "totp"; + src = inputs.plass; + buildInputs = [pkgs.openssl]; + buildPhase = "cc -Wall -Wextra -o totp totp.c -lcrypto"; + installPhase = "install -m755 totp $out"; + }; +in { + home.file = { + "bin/plass" = { + source = "${inputs.plass}/plass"; + executable = true; + }; + "bin/pwg" = { + source = "${inputs.plass}/pwg"; + executable = true; + }; + "bin/totp" = { + source = totp; + executable = true; + }; + ".local/share/man/man1/plass.1" = { + source = "${inputs.plass}/plass.1"; + }; + ".local/share/man/man1/pwg.1" = { + source = "${inputs.plass}/pwg.1"; + }; + ".local/share/man/man1/totp.1" = { + source = "${inputs.plass}/totp.1"; + }; + }; +}