From 0d93f764f3eefd248966bd3efaddc3e4c09b3cf6 Mon Sep 17 00:00:00 2001 From: Jesse Gibbons Date: Mon, 8 Jul 2019 21:31:31 -0600 Subject: [PATCH] gnu: Add rednotebook * gnu/packages/journal.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/journal.scm | 84 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 gnu/packages/journal.scm diff --git a/gnu/local.mk b/gnu/local.mk index 7dcac4f2bc..97f8d76e0a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -263,6 +263,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/jemalloc.scm \ %D%/packages/jrnl.scm \ %D%/packages/jose.scm \ + %D%/packages/journal.scm \ %D%/packages/julia.scm \ %D%/packages/kawa.scm \ %D%/packages/kde.scm \ diff --git a/gnu/packages/journal.scm b/gnu/packages/journal.scm new file mode 100644 index 0000000000..53fab9e591 --- /dev/null +++ b/gnu/packages/journal.scm @@ -0,0 +1,84 @@ +n;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Jesse Gibbons +;;; +;;; 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 . + +(define-module (gnu packages journal) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system python) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages python) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) + #:use-module (gnu packages webkit) + #:use-module (gnu packages python-xyz)) +(define-public rednotebook + (package + (name "rednotebook") + (version "2.11.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/jendrikseipp/rednotebook/archive/v" + version + ".tar.gz")) + (sha256 + (base32 + "15n1ziypfj3lzpvhha7r637zrb259l9yrcsvkic9cg5mndiaivs3")))) + (build-system python-build-system) + (arguments + ;;Tests fail to find the "_" function. + ;;It should be defined in rednotebook/info.py if '_' is not a member of 'builtins'. + ;;It is either not defined or not exported during the check phase. + ;;The program does not have this problem after it is installed. + ;;TODO: Fix tests. + `(#:tests? #f + #:imported-modules ((guix build glib-or-gtk-build-system) + ,@%python-build-system-modules) + #:modules ((ice-9 match) + (guix build python-build-system) + ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) + (guix build utils)) + #:phases + (modify-phases %standard-phases + ;;Make sure rednotebook can find the typelibs and webkitgtk shared libraries. + (add-before 'wrap 'wrap-with-library-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gi-typelib-path (getenv "GI_TYPELIB_PATH")) + (webkitgtk-path (string-append + (assoc-ref inputs "webkitgtk") + "/lib"))) + (wrap-program (string-append out "/bin/rednotebook") + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)) + `("LD_LIBRARY_PATH" ":" prefix (,webkitgtk-path))) + #t)))))) + (inputs + `(("python" ,python-3) + ("python-pygobject" ,python-pygobject) + ("gtk+" ,gtk+) + ("gtksourceview" ,gtksourceview-3) + ("webkitgtk" ,webkitgtk) + ("python-pyyaml" ,python-pyyaml))) + (home-page "https://www.rednotebook.app") + (synopsis "journal") + (description + "RedNotebook is a modern desktop journal. It lets you format, tag and search +your entries. You can also add pictures, links and customizable templates, spell +check your notes, and export to plain text, HTML, Latex or PDF.") + (license license:gpl2+))) -- 2.22.0