;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
-;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
+;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
+;;; Copyright © 2016 Christopher Baines <mail@cbaines.net>
;;;
;;; This file is part of GNU Guix.
;;;
(define-module (gnu packages shellutils)
#:use-module (gnu packages base)
+ #:use-module (gnu packages golang)
#:use-module (gnu packages python)
#:use-module (guix licenses)
#:use-module (guix packages)
(define-public trash-cli
(package
(name "trash-cli")
- (version "0.12.9.14")
+ (version "0.17.1.14")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trash-cli" version))
(sha256
(base32
- "1p4v2qx0sy47d9c9axszq04wns63s4b7rrhmsavg948sklqdaf54"))))
+ "01q0cl04ljf214z6s3g256gsxx3pqsgaf6ac1zh0vrq5bnhnr85h"))))
(build-system python-build-system)
(arguments
`(#:python ,python-2
environments. It can move files to the trash, and remove or list files that
are already there.")
(license gpl2+)))
+
+(define-public direnv
+ (package
+ (name "direnv")
+ (version "2.10.0")
+ (source
+ (origin (method url-fetch)
+ (uri (string-append "https://github.com/direnv/" name
+ "/archive/v" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1h5ywn0glw1kmxs3jwjv9fvnhha942c6k740p5ghvyns05ds9cqf"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:test-target "test"
+ #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
+ #:phases (modify-phases %standard-phases (delete 'configure))))
+ (native-inputs
+ `(("go" ,go)
+ ("which" ,which)))
+ (home-page "http://direnv.net/")
+ (synopsis "Environment switcher for the shell")
+ (description "direnv can hook into bash, zsh, tcsh and fish shell to load
+or unload environment variables depending on the current directory. This
+allows project-specific environment variables without using the ~/.profile
+file.
+
+Before each prompt, direnv checks for the existence of a .envrc file in the
+current and parent directories. This file is then used to alter the
+environmental variables of the current shell.")
+ (license expat)))