From: Ekaitz Zarraga <ekaitz@elenq.tech>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: "guix-devel\\@gnu.org" <guix-devel@gnu.org>
Subject: Re: Inkscape export errors
Date: Wed, 21 Oct 2020 17:17:55 +0000 [thread overview]
Message-ID: <tDvKqD_YQk81TXm2DRhQouLC4RsmIZOnSRmOVYF1gZgBJQe8GiRRZxnEYEaGqMb_Lr4Geg6AOFcIe9_EBoXELwRaL0A1Rzy2JlJ7WGBIbYY=@elenq.tech> (raw)
In-Reply-To: <87sga71sea.fsf@gnu.org>
Hi,
I think I managed to solve the issues.
All the issues I had were coming from the extensions' dependencies
not being added to Inkscape's.
With the following changes it's supposed to work (it worked in my
machine lol).
I had to package scour too, because it wasn't packaged.
I have a question here btw. In general, python deps are propagated,
and that makes sense. But in programs like inkscape and kicad they
are not propagated. Is this because they create a separate python
interpreter for themselves that has those dependencies separated?
That's why we need to wrap it?
Sorry for the amount of questions but I thought I could understand
it but now everything is blurred in my mind and I'm afraid of myself.
:)
Patch candidate below, please tell me if it makes sense or if it's
anything wrong and I'll update and send to guix-patches.
Thanks!
From 21a439f6f1978116584a6dc9ac80c0759c3fa771 Mon Sep 17 00:00:00 2001
From: Ekaitz Zarraga <ekaitz@elenq.tech>
Date: Wed, 21 Oct 2020 19:08:20 +0200
Subject: [PATCH] gnu: Correct Inkscape extension dependencies
* gnu/packages/inkscape.scm (inkscape@1.0.1): Add dependencies.
* gnu/packages/python-xyz.scm (python-scour): New variable.
---
gnu/packages/inkscape.scm | 27 +++++++++++++++++++++++++--
gnu/packages/python-xyz.scm | 27 +++++++++++++++++++++++++++
2 files changed, 52 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/inkscape.scm b/gnu/packages/inkscape.scm
index 4ac3cf3966..b02a8ba8ef 100644
--- a/gnu/packages/inkscape.scm
+++ b/gnu/packages/inkscape.scm
@@ -44,6 +44,7 @@
#:use-module (gnu packages pdf)
#:use-module (gnu packages popt)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages xml)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages fontutils)
@@ -250,7 +251,25 @@ endif()~%~%"
(add-after 'install 'glib-or-gtk-compile-schemas
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
(add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
- (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
+ (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
+ (add-after 'install 'wrap-program
+ ;; Ensure correct Python at runtime.
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (python (assoc-ref inputs "python"))
+ (file (string-append out "/bin/inkscape"))
+ (path (string-append
+ out
+ "/lib/python"
+ ,(version-major+minor
+ (package-version python))
+ "/site-packages:"
+ (getenv "PYTHONPATH"))))
+ (wrap-program file
+ `("PYTHONPATH" ":" prefix (,path))
+ `("PATH" ":" prefix
+ (,(string-append python "/bin:")))))
+ #t)))))
(inputs
`(("aspell" ,aspell)
("autotrace" ,autotrace)
@@ -283,7 +302,11 @@ endif()~%~%"
("googletest" ,googletest)
("perl" ,perl)
("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)))
+ ("python" ,python-wrapper)
+ ("python-scour" ,python-scour)
+ ("python-pyserial" ,python-pyserial)
+ ("python-numpy" ,python-numpy)
+ ("python-lxml" ,python-lxml)))
(home-page "https://inkscape.org/")
(synopsis "Vector graphics editor")
(description "Inkscape is a vector graphics editor. What sets Inkscape
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 575ce40ac8..5e8aedc63b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -22524,3 +22524,30 @@ applications with variable CPU loads).")
(define-public python2-parallel
(package-with-python2 python-parallel))
+
+(define-public python-scour
+ (package
+ (name "python-scour")
+ (version "038.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/scour-project/scour.git")
+ (commit
+ (string-append "v" version))))
+ (sha256
+ (base32 "0rgiypb9ig8x4rl3hfzpy7kwnx1q3064nvlrv4fk0dnp84girn0v"))))
+ (propagated-inputs
+ `(("python-six" ,python-six)))
+ (build-system python-build-system)
+ (home-page "https://github.com/scour-project/scour")
+ (synopsis "Scour is an SVG optimizer/cleaner that reduces the size of
+scalable vector graphics by optimizing structure and removing unnecessary data
+written in Python.")
+ (description "The goal of Scour is to output a file that renderes
+identically at a fraction of the size by removing a lot of redundant
+information created by most SVG editors. Optimization options are typically
+lossless but can be tweaked for more agressive cleaning.")
+ (license license:asl2.0)))
--
2.28.0
prev parent reply other threads:[~2020-10-21 17:18 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-20 12:53 Inkscape export errors Ekaitz Zarraga
2020-10-20 16:34 ` Thorsten Wilms
2020-10-20 17:51 ` Ekaitz Zarraga
2020-10-21 7:35 ` Thorsten Wilms
2020-10-21 13:03 ` Ludovic Courtès
2020-10-21 13:56 ` Ekaitz Zarraga
2020-10-21 15:59 ` Ludovic Courtès
2020-10-21 17:17 ` Ekaitz Zarraga [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='tDvKqD_YQk81TXm2DRhQouLC4RsmIZOnSRmOVYF1gZgBJQe8GiRRZxnEYEaGqMb_Lr4Geg6AOFcIe9_EBoXELwRaL0A1Rzy2JlJ7WGBIbYY=@elenq.tech' \
--to=ekaitz@elenq.tech \
--cc=guix-devel@gnu.org \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.