aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Alexander Foremny <aforemny@posteo.de>2023-09-05 16:41:49 +0200
committerLibravatar Alexander Foremny <aforemny@posteo.de>2023-09-05 16:41:53 +0200
commit698bd499fdd559301c183e4ff4ec940d4d244600 (patch)
tree3bf1db7dfe49c3e1f1f8aaacdc009e2030274aaa
parentbd02726bca52e8e3343426d48b6e893ef77dc6cb (diff)
add Nix package
-rw-r--r--README.md11
-rw-r--r--anissue.nix46
-rw-r--r--default.nix2
3 files changed, 59 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..b5c8079
--- /dev/null
+++ b/README.md
@@ -0,0 +1,11 @@
+## installation
+
+```console
+nix-env -f. -i
+
+
+## usage
+
+```console
+anissue .
+```
diff --git a/anissue.nix b/anissue.nix
new file mode 100644
index 0000000..8df12a3
--- /dev/null
+++ b/anissue.nix
@@ -0,0 +1,46 @@
+{ coreutils
+, fetchFromGitHub
+, findutils
+, gawk
+, git
+, gnused
+, jq
+, lib
+, makeWrapper
+, ncurses
+, nix-gitignore
+, stdenv
+}:
+let
+ # TODO package tree-grepper in Nixpkgs so that it can reuse <nixpkgs>
+ tree-grepper = (import (fetchFromGitHub {
+ owner = "BrianHicks";
+ repo = "tree-grepper";
+ rev = "refs/tags/2.4.1";
+ hash = "sha256-wHqVhx2JFBm+lc3/rruBBlpF2Ylv3/oOFM5CgX5WtKs=";
+ })).default;
+in
+stdenv.mkDerivation {
+ name = "anissue";
+ src = nix-gitignore.gitignoreSource [ ] ./.;
+ nativeBuildInputs = [ makeWrapper ];
+ buildPhase = ":";
+ installPhase = ''
+ mkdir -p $out/{bin,share}
+ for bin in src/*.sh; do
+ cp $bin $out/share/$(basename $bin)
+ wrapProgram $out/share/$(basename $bin) \
+ --set PATH ${lib.makeBinPath [
+ coreutils
+ findutils
+ gawk
+ git
+ gnused
+ jq
+ ncurses
+ tree-grepper
+ ]}
+ done
+ ln -s $out/share/extract.sh $out/bin/anissue
+ '';
+}
diff --git a/default.nix b/default.nix
new file mode 100644
index 0000000..f453cd5
--- /dev/null
+++ b/default.nix
@@ -0,0 +1,2 @@
+{ pkgs ? import <nixpkgs> { } }:
+pkgs.callPackage ./anissue.nix { }