Skip to content
Snippets Groups Projects
Commit cafc3f5a authored by Eric Bavier's avatar Eric Bavier
Browse files

gnu: Add jrnl, python-pycrypto, python-keyring, python-parsedatetime, and python-tzlocal.

* gnu/packages/jrnl.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/python.scm (python-pycrypto, python-keyring,
  python-dateutil-2, python-parsedatetime, python-tzlocal): New
  variables.
parent 71639e1f
No related branches found
No related tags found
No related merge requests found
...@@ -127,6 +127,7 @@ GNU_SYSTEM_MODULES = \ ...@@ -127,6 +127,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/inkscape.scm \ gnu/packages/inkscape.scm \
gnu/packages/irssi.scm \ gnu/packages/irssi.scm \
gnu/packages/iso-codes.scm \ gnu/packages/iso-codes.scm \
gnu/packages/jrnl.scm \
gnu/packages/kde.scm \ gnu/packages/kde.scm \
gnu/packages/ld-wrapper.scm \ gnu/packages/ld-wrapper.scm \
gnu/packages/less.scm \ gnu/packages/less.scm \
......
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Eric Bavier <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages jrnl)
#:use-module (guix packages)
#:use-module (guix licenses)
#:use-module (guix download)
#:use-module (guix build-system python)
#:use-module (gnu packages python))
(define-public jrnl
(package
(name "jrnl")
(version "1.8.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/maebert/jrnl/archive/"
version ".tar.gz"))
(sha256
(base32
"019ky09sj5i7frmca0imv4jm46mn3f4lzah2wmiwxh22cisj7ksn"))))
(build-system python-build-system)
(native-inputs
`(("python-setuptools" ,python-setuptools)
("behave" ,behave)))
(inputs
`(("python" ,python)
("python-keyring" ,python-keyring)
("python-pycrypto" ,python-pycrypto)
("python-pytz" ,python-pytz)
("python-tzlocal" ,python-tzlocal)
("python-six" ,python-six)
("python-dateutil" , python-dateutil-2)
("python-parsedatetime" ,python-parsedatetime)))
(home-page "http://maebert.github.io/jrnl/")
(synopsis "Personal journal application")
(description
"Jrnl is a command line journal application that stores your journal in a
plain text file. Optionally, your journal can be encrypted using 256-bit AES
encryption.")
(license x11)))
...@@ -22,8 +22,9 @@ ...@@ -22,8 +22,9 @@
(define-module (gnu packages python) (define-module (gnu packages python)
#:use-module ((guix licenses) #:use-module ((guix licenses)
#:select (bsd-3 bsd-style expat psfl x11 x11-style #:select (asl2.0 bsd-3 bsd-style cc0 expat x11 x11-style
gpl2 gpl2+ lgpl2.1+)) gpl2 gpl2+ lgpl2.1+
psfl public-domain))
#:use-module ((guix licenses) #:select (zlib) #:use-module ((guix licenses) #:select (zlib)
#:renamer (symbol-prefix-proc 'license:)) #:renamer (symbol-prefix-proc 'license:))
#:use-module (gnu packages) #:use-module (gnu packages)
...@@ -36,6 +37,8 @@ (define-module (gnu packages python) ...@@ -36,6 +37,8 @@ (define-module (gnu packages python)
#:use-module (gnu packages elf) #:use-module (gnu packages elf)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages sqlite) #:use-module (gnu packages sqlite)
#:use-module ((gnu packages zip) #:select (unzip))
#:use-module (gnu packages multiprecision)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix utils) #:use-module (guix utils)
...@@ -381,6 +384,80 @@ (define-public python2-setuptools ...@@ -381,6 +384,80 @@ (define-public python2-setuptools
(package-with-python2 python-setuptools)) (package-with-python2 python-setuptools))
(define-public python-pycrypto
(package
(name "python-pycrypto")
(version "2.6.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://pypi.python.org/packages/source/p/"
"pycrypto/pycrypto-" version ".tar.gz"))
(sha256
(base32
"0g0ayql5b9mkjam8hym6zyg6bv77lbh66rv1fyvgqb17kfc1xkpj"))))
(build-system python-build-system)
(native-inputs
`(("python-setuptools" ,python-setuptools)))
(inputs
`(("python" ,python)
("gmp" ,gmp)))
(arguments
`(#:phases
(alist-cons-before
'build 'set-build-env
;; pycrypto runs an autoconf configure script behind the scenes
(lambda _
(setenv "CONFIG_SHELL" (which "bash")))
%standard-phases)))
(home-page "http://www.pycrypto.org/")
(synopsis "Cryptographic modules for Python")
(description
"Pycrypto is a collection of both secure hash functions (such as SHA256
and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal,
etc.). The package is structured to make adding new modules easy.")
(license public-domain)))
(define-public python-keyring
(package
(name "python-keyring")
(version "3.8")
(source
(origin
(method url-fetch)
(uri (string-append "https://pypi.python.org/packages/source/k/"
"keyring/keyring-" version ".zip"))
(sha256
(base32
"1vxazfbcwggyfyramh55shkxs08skhpqrkm6lrrjnygnm8c1l2zg"))))
(build-system python-build-system)
(native-inputs
`(("unzip" ,unzip)
("python-setuptools" ,python-setuptools)
("python-mock" ,python-mock)))
(inputs
`(("python-pycrypto" ,python-pycrypto)))
(arguments
`(#:tests? #f ;TODO: tests require pytest
#:phases
(alist-replace
'unpack
(lambda _
(let ((unzip (string-append (assoc-ref %build-inputs "unzip")
"/bin/unzip"))
(source (assoc-ref %build-inputs "source")))
(and (zero? (system* unzip source))
(chdir (string-append "keyring-" ,version)))))
%standard-phases)))
(home-page "http://bitbucket.org/kang/python-keyring-lib")
(synopsis "Store and access your passwords safely")
(description
"The Python keyring lib provides a easy way to access the system keyring
service from python. It can be used in any application that needs safe
password storage.")
;; "MIT" and PSF dual license
(license x11)))
(define-public python-six (define-public python-six
(package (package
(name "python-six") (name "python-six")
...@@ -406,6 +483,32 @@ (define-public python-six ...@@ -406,6 +483,32 @@ (define-public python-six
Python file, so it can be easily copied into your project.") Python file, so it can be easily copied into your project.")
(license x11))) (license x11)))
(define-public python-dateutil-2
(package
(name "python-dateutil")
(version "2.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://pypi.python.org/packages/source/p/"
name "/" name "-" version ".tar.gz"))
(sha256
(base32
"0s74ad6r789810s10dxgvaf48ni6adac2icrdad34zxygqq6bj7f"))))
(build-system python-build-system)
(inputs
`(("python-setuptools" ,python-setuptools)
("python-six" ,python-six)))
(home-page "http://labix.org/python-dateutil")
(synopsis "Extensions to the standard datetime module")
(description
"The dateutil module provides powerful extensions to the standard
datetime module, available in Python 2.3+.")
(license bsd-3)))
(define-public python2-dateutil-2
(package-with-python2 python-dateutil-2))
(define-public python-dateutil (define-public python-dateutil
(package (package
(name "python-dateutil") (name "python-dateutil")
...@@ -413,8 +516,8 @@ (define-public python-dateutil ...@@ -413,8 +516,8 @@ (define-public python-dateutil
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://labix.org/download/python-dateutil/python-dateutil-" (uri (string-append "http://labix.org/download/python-dateutil/"
version ".tar.gz")) "python-dateutil-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0fqfglhy5khbvsipr3x7m6bcaqljh8xl5cw33vbfxy7qhmywm2n0")))) "0fqfglhy5khbvsipr3x7m6bcaqljh8xl5cw33vbfxy7qhmywm2n0"))))
...@@ -422,8 +525,7 @@ (define-public python-dateutil ...@@ -422,8 +525,7 @@ (define-public python-dateutil
(inputs (inputs
`(("python-setuptools" ,python-setuptools))) `(("python-setuptools" ,python-setuptools)))
(home-page "http://labix.org/python-dateutil") (home-page "http://labix.org/python-dateutil")
(synopsis (synopsis "Extensions to the standard datetime module")
"Extensions to the standard datetime module, available in Python 2.3+")
(description (description
"The dateutil module provides powerful extensions to the standard "The dateutil module provides powerful extensions to the standard
datetime module, available in Python 2.3+.") datetime module, available in Python 2.3+.")
...@@ -432,6 +534,67 @@ (define-public python-dateutil ...@@ -432,6 +534,67 @@ (define-public python-dateutil
(define-public python2-dateutil (define-public python2-dateutil
(package-with-python2 python-dateutil)) (package-with-python2 python-dateutil))
(define-public python-parsedatetime
(package
(name "python-parsedatetime")
(version "1.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://pypi.python.org/packages/source/p/"
"parsedatetime/parsedatetime-" version ".tar.gz"))
(sha256
(base32
"1zcj0pzxvpl4j2ma9awmpkfxldybi2kjaahjjpmgfbg5cxwcjsqv"))))
(build-system python-build-system)
(native-inputs
`(("python-setuptools" ,python-setuptools)))
(arguments `(#:tests? #f)) ;no test target
(home-page "http://github.com/bear/parsedatetime/")
(synopsis
"Parse human-readable date/time text")
(description
"Parse human-readable date/time text")
(license asl2.0)))
(define-public python-tzlocal
(package
(name "python-tzlocal")
(version "1.1.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://pypi.python.org/packages/source/t/"
"tzlocal/tzlocal-" version ".zip"))
(sha256
(base32
"1m3y918c3chf41fwg2bx4w42bqsjzn3dyvvcmwwy13c8gj6zssv9"))))
(build-system python-build-system)
(native-inputs
`(("unzip" ,unzip)
("python-setuptools" ,python-setuptools)))
(inputs `(("python-pytz" ,python-pytz)))
(arguments
`(#:phases
(alist-replace
'unpack
(lambda _
(let ((unzip (string-append (assoc-ref %build-inputs "unzip")
"/bin/unzip"))
(source (assoc-ref %build-inputs "source")))
(and (zero? (system* unzip source))
(chdir (string-append "tzlocal-" ,version)))))
%standard-phases)))
(home-page "https://github.com/regebro/tzlocal")
(synopsis
"tzinfo object for the local timezone")
(description
"Tzlocal returns a tzinfo object with the local timezone information.
This module attempts to fix a glaring hole in pytz, that there is no way to
get the local timezone information, unless you know the zoneinfo name, and
under several distributions that's hard or impossible to figure out.")
(license cc0)))
(define-public python2-pysqlite (define-public python2-pysqlite
(package (package
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment