unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / Atom feed
* [bug#43443] [PATCH] gnu: Add python-pypandoc.
@ 2020-09-16  9:59 Konrad Hinsen
  2020-09-16 10:09 ` Ricardo Wurmus
  0 siblings, 1 reply; 10+ messages in thread
From: Konrad Hinsen @ 2020-09-16  9:59 UTC (permalink / raw)
  To: 43443

* gnu/packages/python-xyz.scm (python-pypandoc): New variable.
---
 gnu/packages/python-xyz.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 593bb3f468..24fc512178 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -129,6 +129,7 @@
   #:use-module (gnu packages gsasl)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
@@ -21979,3 +21980,39 @@ dates in almost any string formats commonly found on web pages.")
     (description "Safety checks installed dependencies for known vulnerabilities.
 By default it uses the open Python vulnerability database Safety DB.")
   (license license:expat)))
+
+(define-public python-pypandoc
+  (package
+    (name "python-pypandoc")
+    (version "1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pypandoc" version))
+       (sha256
+        (base32
+         "1zvn9764cf7kkjkmr9gw6wc8adpk06qxr1rhxwa9pg0zmdvrk90l"))))
+    (build-system python-build-system)
+    (inputs
+     `(("pandoc" ,ghc-pandoc)
+       ("pandoc-citeproc" ,ghc-pandoc-citeproc)))
+    (propagated-inputs
+     `(("pip" ,python-pip)
+       ("setuptools" ,python-setuptools)
+       ("wheel" ,python-wheel)))
+    (native-inputs
+     `(("texlive" ,texlive)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'disable-tests
+           (lambda _
+             ;; Disable test requiring network access
+             (substitute* "tests.py"
+               (("test_basic_conversion_from_http_url")
+                "skip_test_basic_conversion_from_http_url"))
+             #t)))))
+    (home-page "https://github.com/bebraw/pypandoc")
+    (synopsis "Python wrapper for pandoc.")
+    (description "Thin Python wrapper for pandoc.")
+    (license license:expat)))
-- 
2.28.0





^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#43443] [PATCH] gnu: Add python-pypandoc.
  2020-09-16  9:59 [bug#43443] [PATCH] gnu: Add python-pypandoc Konrad Hinsen
@ 2020-09-16 10:09 ` Ricardo Wurmus
  2020-09-16 14:57   ` Konrad Hinsen
  0 siblings, 1 reply; 10+ messages in thread
From: Ricardo Wurmus @ 2020-09-16 10:09 UTC (permalink / raw)
  To: Konrad Hinsen; +Cc: 43443


Hi Konrad,

> * gnu/packages/python-xyz.scm (python-pypandoc): New variable.
[…]

> +    (inputs
> +     `(("pandoc" ,ghc-pandoc)
> +       ("pandoc-citeproc" ,ghc-pandoc-citeproc)))

Should this really be the Haskell library variants?  Or just the
executables?  If it’s just the executables you can use the “pandoc” and
“pandoc-citeproc” packages.

> +    (propagated-inputs
> +     `(("pip" ,python-pip)
> +       ("setuptools" ,python-setuptools)
> +       ("wheel" ,python-wheel)))
> +    (native-inputs
> +     `(("texlive" ,texlive)))

It would be better to avoid this huge monolithic package.  Does
texlive-tiny work?  If it doesn’t: what else does it need that could be
added to a texlive-union?

> +    (synopsis "Python wrapper for pandoc.")

There should be no trailing period.

> +    (description "Thin Python wrapper for pandoc.")

This should be a complete sentence.
<
-- 
Ricardo




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#43443] [PATCH] gnu: Add python-pypandoc.
  2020-09-16 10:09 ` Ricardo Wurmus
@ 2020-09-16 14:57   ` Konrad Hinsen
  2020-09-16 15:18     ` Ricardo Wurmus
  0 siblings, 1 reply; 10+ messages in thread
From: Konrad Hinsen @ 2020-09-16 14:57 UTC (permalink / raw)
  To: Ricardo Wurmus, 43443

Hi Ricardo,

Thanks for your comments!

> Should this really be the Haskell library variants?  Or just the
> executables?  If it’s just the executables you can use the “pandoc” and
> “pandoc-citeproc” packages.

Ooops, I didn't know there were distinct packages for that! The binaries
are sufficient here.

> It would be better to avoid this huge monolithic package.  Does
> texlive-tiny work?  If it doesn’t: what else does it need that could be
> added to a texlive-union?

texlive-tiny doesn't work, and after experimenting for about an hour
I have given up on finding a small combination of packages for
a texlive-union. It needs ifluatex.sty which apparently is part of
texlive-latex-oberdiek, but if I add that package the test fails
in creating a temporary directory for whatever reason.

Another shortcut is disabling the one test case that depends
on LaTeX, and thus completely remove texlive from native-inputs.
Does that sound like an acceptable solution?

Cheers,
  Konrad




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#43443] [PATCH] gnu: Add python-pypandoc.
  2020-09-16 14:57   ` Konrad Hinsen
@ 2020-09-16 15:18     ` Ricardo Wurmus
  2020-09-16 16:36       ` Konrad Hinsen
  2020-09-16 16:37       ` Konrad Hinsen
  0 siblings, 2 replies; 10+ messages in thread
From: Ricardo Wurmus @ 2020-09-16 15:18 UTC (permalink / raw)
  To: Konrad Hinsen; +Cc: 43443

[-- Attachment #1: Type: text/plain, Size: 607 bytes --]


Konrad Hinsen <konrad.hinsen@fastmail.net> writes:

>> It would be better to avoid this huge monolithic package.  Does
>> texlive-tiny work?  If it doesn’t: what else does it need that could be
>> added to a texlive-union?
>
> texlive-tiny doesn't work, and after experimenting for about an hour
> I have given up on finding a small combination of packages for
> a texlive-union. It needs ifluatex.sty which apparently is part of
> texlive-latex-oberdiek, but if I add that package the test fails
> in creating a temporary directory for whatever reason.

The attached thing works for me:


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: p.patch --]
[-- Type: text/x-patch, Size: 1633 bytes --]

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 24fc512178..7f724bc907 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -21994,14 +21994,19 @@ By default it uses the open Python vulnerability database Safety DB.")
          "1zvn9764cf7kkjkmr9gw6wc8adpk06qxr1rhxwa9pg0zmdvrk90l"))))
     (build-system python-build-system)
     (inputs
-     `(("pandoc" ,ghc-pandoc)
-       ("pandoc-citeproc" ,ghc-pandoc-citeproc)))
+     `(("pandoc" ,pandoc)
+       ("pandoc-citeproc" ,pandoc-citeproc)))
     (propagated-inputs
      `(("pip" ,python-pip)
        ("setuptools" ,python-setuptools)
        ("wheel" ,python-wheel)))
     (native-inputs
-     `(("texlive" ,texlive)))
+     `(("texlive" ,(texlive-union (list texlive-amsfonts
+                                        texlive-fonts-ec
+                                        texlive-latex-hyperref
+                                        texlive-latex-oberdiek
+                                        texlive-lm
+                                        texlive-xcolor)))))
     (arguments
      `(#:phases
        (modify-phases %standard-phases
@@ -22011,6 +22016,8 @@ By default it uses the open Python vulnerability database Safety DB.")
              (substitute* "tests.py"
                (("test_basic_conversion_from_http_url")
                 "skip_test_basic_conversion_from_http_url"))
+             ;; XXX: Needed by texlive-union to generate fonts
+             (setenv "HOME" "/tmp")
              #t)))))
     (home-page "https://github.com/bebraw/pypandoc")
     (synopsis "Python wrapper for pandoc.")

[-- Attachment #3: Type: text/plain, Size: 13 bytes --]


-- 
Ricardo

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#43443] [PATCH] gnu: Add python-pypandoc.
  2020-09-16 15:18     ` Ricardo Wurmus
@ 2020-09-16 16:36       ` Konrad Hinsen
  2020-09-16 16:37       ` Konrad Hinsen
  1 sibling, 0 replies; 10+ messages in thread
From: Konrad Hinsen @ 2020-09-16 16:36 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: 43443

Ricardo Wurmus <rekado@elephly.net> writes:

> The attached thing works for me:

OK, so the trick was to set $HOME!

I'll send an updated complete patch in a second...

Cheers,
  Konrad




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#43443] [PATCH] gnu: Add python-pypandoc.
  2020-09-16 15:18     ` Ricardo Wurmus
  2020-09-16 16:36       ` Konrad Hinsen
@ 2020-09-16 16:37       ` Konrad Hinsen
  2020-09-16 19:31         ` Ricardo Wurmus
  2020-09-17  7:24         ` [bug#43443] " Konrad Hinsen
  1 sibling, 2 replies; 10+ messages in thread
From: Konrad Hinsen @ 2020-09-16 16:37 UTC (permalink / raw)
  To: 43443

* gnu/packages/python-xyz.scm (python-pypandoc): New variable.
---
 gnu/packages/python-xyz.scm | 45 +++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 593bb3f468..2f66e3ff31 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -129,6 +129,7 @@
   #:use-module (gnu packages gsasl)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
@@ -21979,3 +21980,47 @@ dates in almost any string formats commonly found on web pages.")
     (description "Safety checks installed dependencies for known vulnerabilities.
 By default it uses the open Python vulnerability database Safety DB.")
   (license license:expat)))
+
+(define-public python-pypandoc
+  (package
+    (name "python-pypandoc")
+    (version "1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pypandoc" version))
+       (sha256
+        (base32
+         "1zvn9764cf7kkjkmr9gw6wc8adpk06qxr1rhxwa9pg0zmdvrk90l"))))
+    (build-system python-build-system)
+    (inputs
+     `(("pandoc" ,pandoc)
+       ("pandoc-citeproc" ,pandoc-citeproc)))
+    (propagated-inputs
+     `(("pip" ,python-pip)
+       ("setuptools" ,python-setuptools)
+       ("wheel" ,python-wheel)))
+    (native-inputs
+     `(("texlive" ,(texlive-union (list texlive-amsfonts
+                                        texlive-fonts-ec
+                                        texlive-latex-hyperref
+                                        texlive-latex-oberdiek
+                                        texlive-lm
+                                        texlive-xcolor)))))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'disable-tests
+           (lambda _
+             ;; Disable test requiring network access
+             (substitute* "tests.py"
+               (("test_basic_conversion_from_http_url")
+                "skip_test_basic_conversion_from_http_url"))
+             ;; Needed by texlive-union to generate fonts
+             (setenv "HOME" "/tmp")
+             #t)))))
+    (home-page "https://github.com/bebraw/pypandoc")
+    (synopsis "Python wrapper for pandoc")
+    (description "pypandoc is a thin Python wrapper around pandoc
+and pandoc-citeproc.")
+    (license license:expat)))
-- 
2.28.0





^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#43443] [PATCH] gnu: Add python-pypandoc.
  2020-09-16 16:37       ` Konrad Hinsen
@ 2020-09-16 19:31         ` Ricardo Wurmus
  2020-09-17  5:54           ` Konrad Hinsen
  2020-09-17  7:24         ` [bug#43443] " Konrad Hinsen
  1 sibling, 1 reply; 10+ messages in thread
From: Ricardo Wurmus @ 2020-09-16 19:31 UTC (permalink / raw)
  To: Konrad Hinsen; +Cc: 43443


Konrad Hinsen <konrad.hinsen@fastmail.net> writes:

> * gnu/packages/python-xyz.scm (python-pypandoc): New variable.

Looks good to me.  “guix lint python-pypandoc” says that we don’t need
pip and setuptools as propagated-inputs, and I can confirm that the
package builds fine without them.

Is it okay to remove them?

-- 
Ricardo




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#43443] [PATCH] gnu: Add python-pypandoc.
  2020-09-16 19:31         ` Ricardo Wurmus
@ 2020-09-17  5:54           ` Konrad Hinsen
  2020-09-17  9:43             ` bug#43443: " Ricardo Wurmus
  0 siblings, 1 reply; 10+ messages in thread
From: Konrad Hinsen @ 2020-09-17  5:54 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: 43443

Ricardo Wurmus <rekado@elephly.net> writes:

> Looks good to me.  “guix lint python-pypandoc” says that we don’t need
> pip and setuptools as propagated-inputs, and I can confirm that the
> package builds fine without them.
>
> Is it okay to remove them?

Sure! And I have to admit that I completely forgot to run lint.
Summer vacation made me forget some good habits!

Konrad.




^ permalink raw reply	[flat|nested] 10+ messages in thread

* [bug#43443] [PATCH] gnu: Add python-pypandoc.
  2020-09-16 16:37       ` Konrad Hinsen
  2020-09-16 19:31         ` Ricardo Wurmus
@ 2020-09-17  7:24         ` Konrad Hinsen
  1 sibling, 0 replies; 10+ messages in thread
From: Konrad Hinsen @ 2020-09-17  7:24 UTC (permalink / raw)
  To: 43443

* gnu/packages/python-xyz.scm (python-pypandoc): New variable.
---
 gnu/packages/python-xyz.scm | 43 +++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 593bb3f468..147c3bccb8 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -129,6 +129,7 @@
   #:use-module (gnu packages gsasl)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
@@ -21979,3 +21980,45 @@ dates in almost any string formats commonly found on web pages.")
     (description "Safety checks installed dependencies for known vulnerabilities.
 By default it uses the open Python vulnerability database Safety DB.")
   (license license:expat)))
+
+(define-public python-pypandoc
+  (package
+    (name "python-pypandoc")
+    (version "1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pypandoc" version))
+       (sha256
+        (base32
+         "1zvn9764cf7kkjkmr9gw6wc8adpk06qxr1rhxwa9pg0zmdvrk90l"))))
+    (build-system python-build-system)
+    (inputs
+     `(("pandoc" ,pandoc)
+       ("pandoc-citeproc" ,pandoc-citeproc)))
+    (propagated-inputs
+     `(("wheel" ,python-wheel)))
+    (native-inputs
+     `(("texlive" ,(texlive-union (list texlive-amsfonts
+                                        texlive-fonts-ec
+                                        texlive-latex-hyperref
+                                        texlive-latex-oberdiek
+                                        texlive-lm
+                                        texlive-xcolor)))))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'disable-tests
+           (lambda _
+             ;; Disable test requiring network access
+             (substitute* "tests.py"
+               (("test_basic_conversion_from_http_url")
+                "skip_test_basic_conversion_from_http_url"))
+             ;; Needed by texlive-union to generate fonts
+             (setenv "HOME" "/tmp")
+             #t)))))
+    (home-page "https://github.com/bebraw/pypandoc")
+    (synopsis "Python wrapper for pandoc")
+    (description "The package pypandoc is a thin Python wrapper around
+pandoc and pandoc-citeproc.")
+    (license license:expat)))
-- 
2.28.0





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#43443: [PATCH] gnu: Add python-pypandoc.
  2020-09-17  5:54           ` Konrad Hinsen
@ 2020-09-17  9:43             ` Ricardo Wurmus
  0 siblings, 0 replies; 10+ messages in thread
From: Ricardo Wurmus @ 2020-09-17  9:43 UTC (permalink / raw)
  To: Konrad Hinsen; +Cc: 43443-done


Konrad Hinsen <konrad.hinsen@fastmail.net> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Looks good to me.  “guix lint python-pypandoc” says that we don’t need
>> pip and setuptools as propagated-inputs, and I can confirm that the
>> package builds fine without them.
>>
>> Is it okay to remove them?
>
> Sure! And I have to admit that I completely forgot to run lint.
> Summer vacation made me forget some good habits!

Heh, no problem!

I pushed it with these changes to the “master” branch with commit
731354b8d7.

-- 
Ricardo




^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2020-09-17  9:43 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-16  9:59 [bug#43443] [PATCH] gnu: Add python-pypandoc Konrad Hinsen
2020-09-16 10:09 ` Ricardo Wurmus
2020-09-16 14:57   ` Konrad Hinsen
2020-09-16 15:18     ` Ricardo Wurmus
2020-09-16 16:36       ` Konrad Hinsen
2020-09-16 16:37       ` Konrad Hinsen
2020-09-16 19:31         ` Ricardo Wurmus
2020-09-17  5:54           ` Konrad Hinsen
2020-09-17  9:43             ` bug#43443: " Ricardo Wurmus
2020-09-17  7:24         ` [bug#43443] " Konrad Hinsen

unofficial mirror of guix-patches@gnu.org 

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://yhetil.org/guix-patches/1 guix-patches/git/1.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 guix-patches guix-patches/ https://yhetil.org/guix-patches \
		guix-patches@gnu.org
	public-inbox-index guix-patches

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://news.yhetil.org/yhetil.gnu.guix.patches


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git