From patchwork Sat Feb 8 19:59:33 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Nicolas Goaziou X-Patchwork-Id: 20177 X-Patchwork-Delegate: mail@cbaines.net Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id DD0CD17AC3; Sat, 8 Feb 2020 20:00:13 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 311AF17A7E for ; Sat, 8 Feb 2020 20:00:13 +0000 (GMT) Received: from localhost ([::1]:44900 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j0WGy-0001Nb-Kg for patchwork@mira.cbaines.net; Sat, 08 Feb 2020 15:00:12 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57373) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j0WGq-0001NP-Sl for guix-patches@gnu.org; Sat, 08 Feb 2020 15:00:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j0WGp-00017A-B3 for guix-patches@gnu.org; Sat, 08 Feb 2020 15:00:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:45887) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j0WGo-00013p-EO for guix-patches@gnu.org; Sat, 08 Feb 2020 15:00:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j0WGo-0005W0-C4 for guix-patches@gnu.org; Sat, 08 Feb 2020 15:00:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#38767] [PATCH] Add Xournal++ Resent-From: Nicolas Goaziou Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 08 Feb 2020 20:00:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 38767 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 38767@debbugs.gnu.org Received: via spool by 38767-submit@debbugs.gnu.org id=B38767.158119199021154 (code B ref 38767); Sat, 08 Feb 2020 20:00:02 +0000 Received: (at 38767) by debbugs.gnu.org; 8 Feb 2020 19:59:50 +0000 Received: from localhost ([127.0.0.1]:51860 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j0WGb-0005V8-QK for submit@debbugs.gnu.org; Sat, 08 Feb 2020 14:59:50 -0500 Received: from relay6-d.mail.gandi.net ([217.70.183.198]:38723) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j0WGZ-0005Uy-4Y for 38767@debbugs.gnu.org; Sat, 08 Feb 2020 14:59:48 -0500 X-Originating-IP: 185.131.40.67 Received: from localhost (40-67.ipv4.commingeshautdebit.fr [185.131.40.67]) (Authenticated sender: admin@nicolasgoaziou.fr) by relay6-d.mail.gandi.net (Postfix) with ESMTPSA id 3C10EC0004 for <38767@debbugs.gnu.org>; Sat, 8 Feb 2020 19:59:44 +0000 (UTC) From: Nicolas Goaziou References: <87woah1h8w.fsf@nicolasgoaziou.fr> Date: Sat, 08 Feb 2020 20:59:33 +0100 In-Reply-To: <87woah1h8w.fsf@nicolasgoaziou.fr> (Nicolas Goaziou's message of "Sat, 28 Dec 2019 00:27:43 +0100") Message-ID: <8736bkzw7u.fsf@nicolasgoaziou.fr> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Nicolas Goaziou writes: > The following patch add Xournal++. There are a few caveats: > > - it requires applying my patch at bug#38765; > > - it cannot find Lua even though "lua" is included in the inputs. > I left a "fixme" about it; > > - it crashes when trying to insert an image. I fixed the crash and updated xournalpp to 1.0.17. The Lua part is still open. I attach the new patch for further feedback. Thank you. From 2bf2def9d291492e393512bf463b9f3cd4bf20e4 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 27 Dec 2019 22:43:25 +0100 Subject: [PATCH] gnu: Add xournalpp. * gnu/packages/pdf.scm (xournalpp): New variable. --- gnu/packages/pdf.scm | 94 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 368b2ce69e..6bb0402a59 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2019 Alex Griffin ;;; Copyright © 2019 Ben Sturmfels ;;; Copyright © 2019 Hartmut Goebel +;;; Copyright © 2020 Nicolas Goaziou ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,6 +46,7 @@ #:use-module (guix build-system python) #:use-module (guix build-system trivial) #:use-module (gnu packages) + #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) #:use-module (gnu packages base) @@ -55,6 +57,7 @@ #:use-module (gnu packages djvu) #:use-module (gnu packages fontutils) #:use-module (gnu packages game-development) + #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) @@ -74,6 +77,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) #:use-module (gnu packages python-check) #:use-module (gnu packages python-web) @@ -82,8 +86,10 @@ #:use-module (gnu packages sdl) #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) + #:use-module (gnu packages tex) #:use-module (gnu packages tls) #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (srfi srfi-1)) @@ -752,6 +758,94 @@ program capable of converting PDF into other formats.") using a stylus.") (license license:gpl2+))) +(define-public xournalpp + (package + (name "xournalpp") + (version "1.0.17") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/xournalpp/xournalpp.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0xw2mcgnm4sa9hrhfgp669lfypw97drxjmz5w8i5whaprpvmkxzw")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags (list "-DENABLE_CPPUNIT=ON") ;enable tests + #:imported-modules ((guix build glib-or-gtk-build-system) + ,@%cmake-build-system-modules) + #:modules (((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) + (guix build cmake-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-permissions-on-po-files + (lambda _ + ;; Always generate translations. A recent upstream patch + ;; disabled it. + (substitute* "po/CMakeLists.txt" + (("gettext_create_translations \\(\"\\$\\{potfile\\}\"\\)") + "gettext_create_translations (\"${potfile}\" ALL)")) + ;; Make sure 'msgmerge' can modify the PO files. + (for-each (lambda (po) (chmod po #o666)) + (find-files "." "\\.po$")) + #t)) + (add-after 'install 'glib-or-gtk-wrap + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))))) + (native-inputs + `(("cppunit" ,cppunit) + ("gcc" ,gcc-8) ;requires gcc 8+ + ("gettext" ,gettext-minimal) + ("pkg-config" ,pkg-config))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("glib" ,glib) + ("gtk+" ,gtk+) + ("libsndfile" ,libsndfile) + ("libxml2" ,libxml2) + ("libzip" ,libzip) + ("lua" ,lua) ;FIXME: It cannot find the Lua library. + ("poppler" ,poppler) + ("portaudio" ,portaudio) + ("texlive-bin" ,texlive-bin))) + (home-page "https://github.com/xournalpp/xournalpp") + (synopsis "handwriting notetaking software with PDF annotation support") + (description "Xournal++ is a hand note taking software written in +C++ with the target of flexibility, functionality and speed. Stroke +recognizer and other parts are based on Xournal code. + +Xournal++ features: + +@itemize +@item Support for Pen pressure, e.g., Wacom Tablet +@item Support for annotating PDFs +@item Fill shape functionality +@item PDF Export (with and without paper style) +@item PNG Export (with and without transparent background) +@item Allow to map different tools / colors etc. to stylus buttons / +mouse buttons +@item Sidebar with Page Previews with advanced page sorting, PDF +Bookmarks and Layers (can be individually hidden, editing layer can be +selected) +@item enhanced support for image insertion +@item Eraser with multiple configurations +@item LaTeX support +@item bug reporting, autosave, and auto backup tools +@item Customizeable toolbar, with multiple configurations, e.g., to +optimize toolbar for portrait / landscape +@item Page Template definitions +@item Shape drawing (line, arrow, circle, rectangle) +@item Shape resizing and rotation +@item Rotation snapping every 45 degrees +@item Rect snapping to grid +@item Audio recording and playback alongside with handwritten notes +@item Multi Language Support, Like English, German, Italian... +@item Plugins using LUA Scripting +@end itemize") + (license license:gpl2+))) + (define-public python-reportlab (package (name "python-reportlab") -- 2.25.0