;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
-;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
+;;; Copyright © 2019, 2020 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2015 John Soo <jsoo1@asu.edu>
;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
+;;; Copyright © 2019, 2020 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@member.fsf.org>
;;; Copyright © 2020 Brian Leung <bkleung89@gmail.com>
+;;; Copyright © 2021 EuAndreh <eu@euandre.org>
+;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages rsync)
- #:use-module (gnu packages version-control))
+ #:use-module (gnu packages version-control)
+ #:use-module (gnu packages xorg))
(define-public apply-refact
(package
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/jameysharp/corrode.git")
+ (url "https://github.com/jameysharp/corrode")
(commit "b6699fb2fa552a07c6091276285a44133e5c9789")))
(file-name (git-file-name name version))
(sha256
(define-public ghcid
(package
(name "ghcid")
- (version "0.8.4")
+ (version "0.8.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/ghcid/"
"ghcid-" version ".tar.gz"))
(sha256
- (base32
- "0wpm4ikrm1krz1ckzwk0srng091yh2skjal4fh95iz1hq3dw6qlw"))))
+ (base32 "0yqc1pkfajnr56gnh43sbj50r7c3r41b2jfz07ivgl6phi4frjbq"))))
(build-system haskell-build-system)
(inputs
`(("ghc-extra" ,ghc-extra)
(native-inputs
`(("ghc-tasty" ,ghc-tasty)
("ghc-tasty-hunit" ,ghc-tasty-hunit)))
- (home-page
- "https://github.com/ndmitchell/ghcid#readme")
+ (home-page "https://github.com/ndmitchell/ghcid#readme")
(synopsis "GHCi based bare bones IDE")
(description
"Either \"GHCi as a daemon\" or \"GHC + a bit of an IDE\". A very simple Haskell
(define-public git-annex
(package
(name "git-annex")
- (version "8.20200617")
+ (version "8.20210330")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz"))
(sha256
- (base32 "1vgpqbscvxm03ibxy6cjnp9vd1wpsr3gkajp4z3m9nnkmjz5r4q4"))))
+ (base32 "07dhxlmnj48drgndcplafc7xhby0w3rks68fz9wsppxan929240p"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags
- '("--flags=-Android -Assistant -Pairing -Webapp -WebDAV")
+ '("--flags=-Android -Webapp")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-shell-for-tests
;; Factor out necessary build logic from the provided
;; `Setup.hs' script. The script as-is does not work because
;; it cannot find its dependencies, and there is no obvious way
- ;; to tell it where to look. Note that we do not preserve the
- ;; code that installs man pages here.
+ ;; to tell it where to look.
(call-with-output-file "PreConf.hs"
(lambda (out)
(format out "import qualified Build.Configure as Configure~%")
(lambda _
(invoke "runhaskell" "PreConf.hs")
#t))
+ (add-after 'build 'build-manpages
+ (lambda _
+ ;; The Setup.hs rewrite above removed custom code for building
+ ;; the man pages. In addition to that code, git-annex's source
+ ;; tree has a file that's not included in the tarball but is used
+ ;; by the Makefile to build man pages. Copy the core bits here.
+ (call-with-output-file "Build/MakeMans.hs"
+ (lambda (out)
+ (format out "module Main where~%")
+ (format out "import Build.Mans~%")
+ (format out "main = buildMansOrWarn~%")))
+ (invoke "runhaskell" "Build/MakeMans.hs")))
(replace 'check
(lambda _
;; We need to set the path so that Git recognizes
;; Undo `patch-shell-for-tests'.
(copy-file "/tmp/Shell.hs" "Utility/Shell.hs")
(apply (assoc-ref %standard-phases 'build) args)))
+ (add-after 'install 'install-manpages
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((man (string-append (assoc-ref outputs "out")
+ "/man/man1/")))
+ (mkdir-p man)
+ (for-each (lambda (file) (install-file file man))
+ (find-files "man")))
+ #t))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(string-append bin "/git-annex-shell"))
(symlink (string-append bin "/git-annex")
(string-append bin "/git-remote-tor-annex"))
- #t))))))
+ #t)))
+ (add-after 'install 'touch-static-output
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; The Haskell build system adds a "static" output by
+ ;; default, and there is no way to override this until
+ ;; <https://issues.guix.gnu.org/41569> is fixed. Without
+ ;; this phase, the daemon complains because we do not
+ ;; create the "static" output.
+ (with-output-to-file (assoc-ref outputs "static")
+ (lambda ()
+ (display "static output not used\n"))))))))
(inputs
`(("curl" ,curl)
("ghc-aeson" ,ghc-aeson)
("ghc-crypto-api" ,ghc-crypto-api)
("ghc-cryptonite" ,ghc-cryptonite)
("ghc-data-default" ,ghc-data-default)
+ ("ghc-dav" ,ghc-dav)
("ghc-disk-free-space" ,ghc-disk-free-space)
("ghc-dlist" ,ghc-dlist)
("ghc-edit-distance" ,ghc-edit-distance)
("ghc-feed" ,ghc-feed)
("ghc-filepath-bytestring" ,ghc-filepath-bytestring)
("ghc-free" ,ghc-free)
+ ("ghc-hinotify" ,ghc-hinotify)
("ghc-hslogger" ,ghc-hslogger)
("ghc-http-client" ,ghc-http-client)
("ghc-http-conduit" ,ghc-http-conduit)
("ghc-memory" ,ghc-memory)
("ghc-monad-control" ,ghc-monad-control)
("ghc-monad-logger" ,ghc-monad-logger)
+ ("ghc-mountpoints" ,ghc-mountpoints)
("ghc-network" ,ghc-network)
+ ("ghc-network-info" ,ghc-network-info)
+ ("ghc-network-multicast" ,ghc-network-multicast)
("ghc-old-locale" ,ghc-old-locale)
("ghc-optparse-applicative" ,ghc-optparse-applicative)
("ghc-persistent" ,ghc-persistent)
("ghc-split" ,ghc-split)
("ghc-stm-chans" ,ghc-stm-chans)
("ghc-tagsoup" ,ghc-tagsoup)
+ ("ghc-torrent" ,ghc-torrent)
("ghc-unix-compat" ,ghc-unix-compat)
("ghc-unordered-containers" ,ghc-unordered-containers)
("ghc-utf8-string" ,ghc-utf8-string)
`(("ghc-tasty" ,ghc-tasty)
("ghc-tasty-hunit" ,ghc-tasty-hunit)
("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)
- ("ghc-tasty-rerun" ,ghc-tasty-rerun)))
+ ("ghc-tasty-rerun" ,ghc-tasty-rerun)
+ ("perl" ,perl)))
(home-page "https://git-annex.branchable.com/")
(synopsis "Manage files with Git, without checking in their contents")
(description "This package allows managing files with Git, without
(define-public kmonad
(package
(name "kmonad")
- (version "0.3.0")
+ (version "0.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/david-janssen/kmonad.git")
+ (url "https://github.com/david-janssen/kmonad")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1g40nkpldih6h1rlxjx5yf9iavr3qs1f2b6j0gd8135p5hkg8d8n"))))
+ (base32 "1rp880zxvrznx0y1k464wjrds441dpsz94syhrkaw5dnmxf74yjd"))))
(build-system haskell-build-system)
(arguments
`(#:phases
(doc (string-append out "/share/doc/kmonad-" ,version)))
(install-file "README.md" doc)
(copy-recursively "doc" doc)
- (copy-recursively "example" (string-append doc "/example"))
+ (copy-recursively "keymap" (string-append doc "/keymap"))
#t))))))
(inputs
`(("ghc-cereal" ,ghc-cereal)
("ghc-lens" ,ghc-lens)
("ghc-megaparsec" ,ghc-megaparsec)
("ghc-optparse-applicative" ,ghc-optparse-applicative)
+ ("ghc-resourcet" ,ghc-resourcet)
+ ("ghc-rio" ,ghc-rio)
("ghc-unagi-chan" ,ghc-unagi-chan)
("ghc-unliftio" ,ghc-unliftio)
("ghc-unordered-containers" ,ghc-unordered-containers)))
Wayland, and Linux console environments alike.")
(license license:expat)))
+(define-public nixfmt
+ (package
+ (name "nixfmt")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://hackage.haskell.org/package/nixfmt/nixfmt-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32 "1ispgl8rc2scr6v8bb6sks7px856jf61x74zj2iyddrn5qamkb3n"))))
+ (build-system haskell-build-system)
+ (inputs
+ `(("ghc-megaparsec" ,ghc-megaparsec)
+ ("ghc-parser-combinators" ,ghc-parser-combinators)
+ ("ghc-cmdargs" ,ghc-cmdargs)
+ ("ghc-safe-exceptions" ,ghc-safe-exceptions)))
+ (arguments
+ `(#:cabal-revision
+ ("1" "1hsj0jh6siph3afd9c2wii09sffl48rzqv653n4clpd8qy0rn48d")))
+ (home-page "https://github.com/serokell/nixfmt")
+ (synopsis "Opinionated formatter for Nix")
+ (description
+ "Nixfmt is a formatter for Nix that ensures consistent and clear
+formatting by forgetting all existing formatting during parsing.")
+ (license license:mpl2.0)))
+
+(define-public greenclip
+ (package
+ (name "greenclip")
+ (version "3.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/erebe/greenclip")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1baw360dcnyavacf7a8v6wq4m5g6bcmyybkckv4cz7r4xl5p3qws"))))
+ (build-system haskell-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libx11" ,libx11)
+ ("libxext" ,libxext)
+ ("libxscrnsaver" ,libxscrnsaver)
+ ("ghc-x11" ,ghc-x11)
+ ("ghc-exceptions" ,ghc-exceptions)
+ ("ghc-hashable" ,ghc-hashable)
+ ("ghc-microlens" ,ghc-microlens)
+ ("ghc-microlens-mtl" ,ghc-microlens-mtl)
+ ("ghc-protolude" ,ghc-protolude-0.3)
+ ("ghc-vector" ,ghc-vector)
+ ("ghc-wordexp" ,ghc-wordexp)))
+ (home-page "https://github.com/erebe/greenclip")
+ (synopsis "Simple Clipboard manager")
+ (description "@code{greenclip} is a clipboard manager written in
+Haskell.")
+ (license license:bsd-3)))
+
(define-public raincat
(package
(name "raincat")
(base32
"0apzrvf99rskj4dbmn57jjxrsf19j436s8a09m950df5aws3a0wj"))))
(build-system haskell-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'touch-static-output
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; The Haskell build system adds a "static" output by
+ ;; default, and there is no way to override this until
+ ;; <https://issues.guix.gnu.org/41569> is fixed. Without
+ ;; this phase, the daemon complains because we do not
+ ;; create the "static" output.
+ (with-output-to-file (assoc-ref outputs "static")
+ (lambda ()
+ (display "static output not used\n")))
+ #t)))))
(inputs
`(("ghc-case-insensitive" ,ghc-case-insensitive)
("ghc-data-default" ,ghc-data-default)
(define-public shellcheck
(package
(name "shellcheck")
- (version "0.7.0")
+ (version "0.7.1")
(source
(origin
(method url-fetch)
"https://hackage.haskell.org/package/ShellCheck/ShellCheck-"
version ".tar.gz"))
(sha256
- (base32 "1vx895cp5k5h0680xfwj74lk97m9y627n965x6srds0gfnbkzy9s"))
+ (base32 "06m4wh891nah3y0br4wh3adpsb16zawkb2ijgf1vcz61fznj6ps1"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system haskell-build-system)
(inputs