From 37b1ac80db917ae09593e97866c69657f539e2a5 Mon Sep 17 00:00:00 2001 From: mikl Date: Thu, 16 Jul 2026 02:13:40 +0300 Subject: [PATCH] feat(home): add lem CLI via flake input --- flake.lock | 22 ++++++++++++++++++++++ flake.nix | 11 ++++++++++- home/cli.nix | 5 ++++- 3 files changed, 36 insertions(+), 2 deletions(-) diff --git a/flake.lock b/flake.lock index 58bc92c..c7b39ce 100644 --- a/flake.lock +++ b/flake.lock @@ -79,6 +79,27 @@ "type": "github" } }, + "lem": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1784155885, + "narHash": "sha256-mxWkLAuof3qbIKj5J5BHgZ53t9usg37FaduL+L55XRQ=", + "ref": "master", + "rev": "b5d1403635e2f6d32a19fdee2d0d793571d04d1c", + "revCount": 4, + "type": "git", + "url": "ssh://git@git.iscg.dev:2222/mikl/lem.git" + }, + "original": { + "ref": "master", + "type": "git", + "url": "ssh://git@git.iscg.dev:2222/mikl/lem.git" + } + }, "nix-darwin": { "inputs": { "nixpkgs": [ @@ -119,6 +140,7 @@ "inputs": { "arion": "arion", "home-manager": "home-manager", + "lem": "lem", "nix-darwin": "nix-darwin", "nixpkgs": "nixpkgs", "sops-nix": "sops-nix" diff --git a/flake.nix b/flake.nix index 5be75f6..e66840d 100644 --- a/flake.nix +++ b/flake.nix @@ -23,10 +23,17 @@ url = "github:hercules-ci/arion"; inputs.nixpkgs.follows = "nixpkgs"; }; + + # Personal CLIs built from own repos + lem = { + # ssh fetch via flake; ssh key available to nix-daemon. Private repo. + url = "git+ssh://git@git.iscg.dev:2222/mikl/lem.git?ref=master"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = - { self, nixpkgs, nix-darwin, home-manager, sops-nix, arion, ... }: + { self, nixpkgs, nix-darwin, home-manager, sops-nix, arion, lem, ... }: let mkNixos = hostname: nixpkgs.lib.nixosSystem { @@ -45,6 +52,7 @@ # Серверные хосты используют минимульный home (headless). # Десктоп-хосты (если появятся) могут переопределить users.mikl. users.mikl = import ./home/server.nix; + extraSpecialArgs = { inputs = self.inputs; }; }; } ]; @@ -62,6 +70,7 @@ useUserPackages = true; backupFileExtension = "backup"; users.mikl = import ./home; + extraSpecialArgs = { inputs = self.inputs; }; }; } ]; diff --git a/home/cli.nix b/home/cli.nix index 693686b..22f70e6 100644 --- a/home/cli.nix +++ b/home/cli.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: +{ pkgs, inputs, ... }: { # Universal CLI tools for all hosts home.packages = with pkgs; [ @@ -47,6 +47,9 @@ # Python (системный 3.9 macOS — слишком старый; ставим 3.13 через nix) python313 uv + + # Personal CLIs (from own flake inputs) + inputs.lem.packages.${pkgs.system}.default ]; # TODO: global npm/pnpm packages not managed by nix for now