diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 0848de6a4800..7163f1a9f2c2 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -7426,6 +7426,12 @@ githubId = 1181362; name = "Stefan Junker"; }; + stianlagstad = { + email = "stianlagstad@gmail.com"; + github = "stianlagstad"; + githubId = 4340859; + name = "Stian Lågstad"; + }; StijnDW = { email = "stekke@airmail.cc"; github = "StijnDW"; diff --git a/pkgs/applications/misc/dstask/default.nix b/pkgs/applications/misc/dstask/default.nix new file mode 100644 index 000000000000..fae7809d25a2 --- /dev/null +++ b/pkgs/applications/misc/dstask/default.nix @@ -0,0 +1,40 @@ +{ stdenv, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "dstask"; + version = "0.18"; + + src = fetchFromGitHub { + owner = "naggie"; + repo = pname; + rev = "v${version}"; + sha256 = "16z5zlfj955pzsj0l58835slvpchdaq2vbyx2fjzi6y9xn1z2nd1"; + }; + + # Set vendorSha256 to null because dstask vendors its dependencies (meaning + # that third party dependencies are stored in the repository). + # + # Ref + # and + vendorSha256 = null; + + # The ldflags reduce the executable size by stripping some debug stuff. + # The other variables are set so that the output of dstask version shows the + # git ref and the release version from github. + # Ref + buildFlagsArray = [ '' + -ldflags=-w -s + -X "github.com/naggie/dstask.VERSION=${version}" + -X "github.com/naggie/dstask.GIT_COMMIT=v${version}" + '' ]; + + subPackages = [ "cmd/dstask.go" ]; + + meta = with stdenv.lib; { + description = "Command line todo list with super-reliable git sync"; + homepage = src.meta.homepage; + license = licenses.mit; + maintainers = with maintainers; [ stianlagstad foxit64 ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3132f6f2cd1a..6fcca20d8f48 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -22263,6 +22263,8 @@ in taskwarrior = callPackage ../applications/misc/taskwarrior { }; + dstask = callPackage ../applications/misc/dstask { }; + tasksh = callPackage ../applications/misc/tasksh { }; taskserver = callPackage ../servers/misc/taskserver { };