diff --git a/flakes/emacs/home.nix b/flakes/emacs/home.nix index 0a3074d..ea7ce5f 100644 --- a/flakes/emacs/home.nix +++ b/flakes/emacs/home.nix @@ -10,40 +10,7 @@ builtins.readFile ./config/lisp/utils.el; extraPackages = epkgs: let - myEpkgs = epkgs.overrideScope (final: prev: { - shell-maker = prev.shell-maker.overrideAttrs (_: { - version = "0.90.1"; - src = pkgs.fetchFromGitHub { - owner = "xenodium"; - repo = "shell-maker"; - rev = "55f829d179608a3c4b11e86427713d5be7c4bb58"; - hash = "sha256-tFzyVXxgrR6LOPUhX4MgJNLy3PX+pwprjdYi+IZXr+E="; - }; - }); - - agent-shell = final.melpaBuild { - pname = "agent-shell"; - ename = "agent-shell"; - version = "0.47.3"; - - src = pkgs.fetchFromGitHub { - owner = "xenodium"; - repo = "agent-shell"; - rev = "v0.50.1"; - hash = "sha256-y3WKd7w9zNebNlP3phMLmMbrFd+MHqwwJH/dUP6VSlo="; - }; - - packageRequires = with final; [ - acp - shell-maker - ]; - - meta = { - homepage = "https://github.com/xenodium/agent-shell"; - description = "Native agentic integrations for Claude Code, Gemini CLI, etc"; - }; - }; - }); + myEpkgs = epkgs.overrideScope (import ./pkgs { inherit pkgs; }); in with myEpkgs; [ agent-shell diff --git a/flakes/emacs/pkgs/agent-shell.nix b/flakes/emacs/pkgs/agent-shell.nix new file mode 100644 index 0000000..5d1d3c1 --- /dev/null +++ b/flakes/emacs/pkgs/agent-shell.nix @@ -0,0 +1,23 @@ +{ pkgs, final }: +final.melpaBuild { + pname = "agent-shell"; + ename = "agent-shell"; + version = "0.47.3"; + + src = pkgs.fetchFromGitHub { + owner = "xenodium"; + repo = "agent-shell"; + rev = "v0.50.1"; + hash = "sha256-y3WKd7w9zNebNlP3phMLmMbrFd+MHqwwJH/dUP6VSlo="; + }; + + packageRequires = with final; [ + acp + shell-maker + ]; + + meta = { + homepage = "https://github.com/xenodium/agent-shell"; + description = "Native agentic integrations for Claude Code, Gemini CLI, etc"; + }; +} diff --git a/flakes/emacs/pkgs/default.nix b/flakes/emacs/pkgs/default.nix new file mode 100644 index 0000000..a6ff9eb --- /dev/null +++ b/flakes/emacs/pkgs/default.nix @@ -0,0 +1,10 @@ +{ pkgs }: +final: prev: { + shell-maker = import ./shell-maker.nix { + inherit pkgs prev; + }; + + agent-shell = import ./agent-shell.nix { + inherit pkgs final; + }; +} diff --git a/flakes/emacs/pkgs/shell-maker.nix b/flakes/emacs/pkgs/shell-maker.nix new file mode 100644 index 0000000..389e26d --- /dev/null +++ b/flakes/emacs/pkgs/shell-maker.nix @@ -0,0 +1,10 @@ +{ pkgs, prev }: +prev.shell-maker.overrideAttrs (_: { + version = "0.90.1"; + src = pkgs.fetchFromGitHub { + owner = "xenodium"; + repo = "shell-maker"; + rev = "55f829d179608a3c4b11e86427713d5be7c4bb58"; + hash = "sha256-tFzyVXxgrR6LOPUhX4MgJNLy3PX+pwprjdYi+IZXr+E="; + }; +})