Archived
1
0
Fork 0

gnu: Add dstask.

* gnu/packages/task-management.scm (dstask): New variable.

Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net>
This commit is contained in:
Stefan Reichör 2021-02-21 21:55:58 +01:00 committed by Léo Le Bouter
parent 9fe7106452
commit 515f561370
No known key found for this signature in database
GPG key ID: 45A8B1E86BCD10A6

View file

@ -2,6 +2,7 @@
;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz> ;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Eric Bavier <bavier@posteo.net> ;;; Copyright © 2021 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -36,6 +37,7 @@
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system go)
#:use-module (guix build-system meson)) #:use-module (guix build-system meson))
(define-public taskwarrior (define-public taskwarrior
@ -66,6 +68,53 @@ Done time management method. It supports network synchronization, filtering
and querying data, exposing task data in multiple formats to other tools.") and querying data, exposing task data in multiple formats to other tools.")
(license license:expat))) (license license:expat)))
(define-public dstask
(package
(name "dstask")
(version "0.24.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/naggie/dstask")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03rl2wh58xd6a80ji43c7ak3h0ysi3ddg570pn8ry24s7s45zsz2"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/naggie/dstask"
#:install-source? #f
#:phases
(modify-phases %standard-phases
(replace 'build
(lambda* (#:key import-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
(invoke "go" "build" "-o" "dstask" "cmd/dstask/main.go")
(invoke "go" "build" "-o" "dstask-import"
"cmd/dstask-import/main.go"))))
(replace 'install
(lambda* (#:key import-path outputs #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
(let* ((out (assoc-ref outputs "out"))
(bindir (string-append out "/bin"))
(zsh-completion (string-append
out "/share/zsh/site-functions/_dstask"))
(bash-completion
(string-append
out "/share/bash-completion/completions/_dstask")))
(install-file "dstask" bindir)
(install-file "dstask-import" bindir)
(install-file ".dstask-bash-completions.sh" bash-completion)
(install-file ".dstask-zsh-completions.sh" zsh-completion)))
#t)))))
(synopsis "CLI-based TODO manager with git-based sync + markdown notes per task")
(description "dstask is a personal task tracker that uses git for
synchronization. It offers a note command to attach a Markdown based note to
a task.")
(home-page "https://github.com/naggie/dstask")
(license license:expat)))
(define-public blanket (define-public blanket
(package (package
(name "blanket") (name "blanket")