diff --git a/modules/packages/default.nix b/modules/packages/default.nix index 312390e..be1b5e6 100644 --- a/modules/packages/default.nix +++ b/modules/packages/default.nix @@ -3,13 +3,14 @@ perSystem = { config, pkgs, ... }: { overlayAttrs = { - inherit (config.packages) nix-docker oh-my-tmux sf-pro update-tilde; + inherit (config.packages) nix-docker oh-my-tmux sf-pro gh-stack; }; packages = { nix-docker = pkgs.callPackage ./nix-docker.nix { }; oh-my-tmux = pkgs.callPackage ./oh-my-tmux.nix { }; sf-pro = pkgs.callPackage ./fonts/sf-pro.nix { }; + gh-stack = pkgs.callPackage ./gh-stack.nix { }; }; }; } diff --git a/modules/packages/gh-stack.nix b/modules/packages/gh-stack.nix new file mode 100644 index 0000000..b926c21 --- /dev/null +++ b/modules/packages/gh-stack.nix @@ -0,0 +1,22 @@ +{ lib, fetchFromGitHub, buildGoModule, }: +let version = "0.0.1"; +in buildGoModule { + pname = "gh-stack"; + inherit version; + + src = fetchFromGitHub { + owner = "github"; + repo = "gh-stack"; + tag = "v${version}"; + hash = "sha256-om7ekHez08X1YjP0W+3p0PxmjU/za6+/gHX5GPakKAw="; + }; + + vendorHash = "sha256-s85Lz6yfY1TiIFPolU1qESDyw8XoBORyuOMdiHj6Grc="; + + meta = { + homepage = "https://github.com/github/gh-stack"; + description = "GitHub Stacked PRs"; + license = lib.licenses.mit; + mainProgram = "gh-stack"; + }; +} diff --git a/modules/profiles/home/gh.nix b/modules/profiles/home/gh.nix index 0afddb5..380fa28 100644 --- a/modules/profiles/home/gh.nix +++ b/modules/profiles/home/gh.nix @@ -1,12 +1,15 @@ -{ config, lib, ... }: { +{ config, lib, pkgs, ... }: { programs.gh = { enable = true; + extensions = [ pkgs.gh-stack ]; settings = { aliases = { co = "pr checkout"; pv = "pr view"; }; - editor = "${lib.getExe config.programs.vscode.package} --wait"; + editor = "${lib.getExe config.programs.zed-editor.package} --wait"; }; }; + + programs.gh-dash.enable = true; } diff --git a/modules/suites/home.nix b/modules/suites/home.nix index 46d56fa..aa8f23a 100644 --- a/modules/suites/home.nix +++ b/modules/suites/home.nix @@ -36,7 +36,6 @@ with profiles; git.mergiraf git.worktrunk gh - gh-dash mcp.default mcp.github.default mcp.nixos