about summary refs log tree commit diff
diff options
context:
space:
mode:
authorlegendofmiracles <30902201+legendofmiracles@users.noreply.github.com>2022-05-25 21:41:06 -0600
committerGitHub <noreply@github.com>2022-05-25 21:41:06 -0600
commite221ba1e6bf3176e1143aca1b446f69ae31d19cc (patch)
treeb6cb276ad038104d0d5585fb7ad9e5c55ef11912
parent77dc1e4a8d0abfe97f46da2535e154bb2a5519c1 (diff)
parent9687b5e62e9179467a49fbfcc7a6517bcc2649ca (diff)
Merge pull request #174591 from Infinidoge/new/packwiz
packwiz: init
-rw-r--r--maintainers/maintainer-list.nix6
-rw-r--r--pkgs/tools/games/minecraft/packwiz/default.nix38
-rw-r--r--pkgs/top-level/all-packages.nix4
3 files changed, 48 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index a5913541c4079..c75dc1ff747d3 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -5504,6 +5504,12 @@
     githubId = 37965;
     name = "Léo Stefanesco";
   };
+  infinidoge = {
+    name = "Infinidoge";
+    email = "infinidoge@inx.moe";
+    github = "Infinidoge";
+    githubId = 22727114;
+  };
   infinisil = {
     email = "contact@infinisil.com";
     matrix = "@infinisil:matrix.org";
diff --git a/pkgs/tools/games/minecraft/packwiz/default.nix b/pkgs/tools/games/minecraft/packwiz/default.nix
new file mode 100644
index 0000000000000..3be2798312e77
--- /dev/null
+++ b/pkgs/tools/games/minecraft/packwiz/default.nix
@@ -0,0 +1,38 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, installShellFiles
+}:
+
+buildGoModule rec {
+  pname = "packwiz";
+  version = "unstable-2022-5-25";
+
+  src = fetchFromGitHub {
+    owner = "packwiz";
+    repo = "packwiz";
+    rev = "e71b63ea98283c8c1f0e03ee51ae40f452f22a61";
+    sha256 = "sha256-XwGacEVfQAduDCSMQFRw7Xnx4bND2zaV7l27B+2u5xg=";
+  };
+
+  vendorSha256 = "sha256-M9u7N4IrL0B4pPRQwQG5TlMaGT++w3ZKHZ0RdxEHPKk=";
+
+  nativeBuildInputs = [
+    installShellFiles
+  ];
+
+  postInstall = ''
+    installShellCompletion --cmd packwiz \
+      --bash <($out/bin/packwiz completion bash) \
+      --fish <($out/bin/packwiz completion fish) \
+      --zsh <($out/bin/packwiz completion zsh)
+  '';
+
+  meta = with lib; {
+    description = "A command line tool for editing and distributing Minecraft modpacks, using a git-friendly TOML format";
+    homepage = "https://packwiz.infra.link/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ infinidoge ];
+    mainProgram = "packwiz";
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index d9a20d8406cd2..cf59a50d29559 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1356,6 +1356,10 @@ with pkgs;
     python = python3;
   };
 
+  packwiz = callPackage ../tools/games/minecraft/packwiz {
+    buildGoModule = buildGo118Module;
+  };
+
   pcem = callPackage ../applications/emulators/pcem { };
 
   pcsx2 = callPackage ../applications/emulators/pcsx2 {