unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#49294] [PATCH] gnu: po4a: Add perl-yaml-tiny to PERL5LIB
@ 2021-06-30 14:44 EuAndreh via Guix-patches via
  2022-04-03 10:43 ` Maxime Devos
  2023-05-29 11:52 ` bug#49294: " Jelle Licht
  0 siblings, 2 replies; 4+ messages in thread
From: EuAndreh via Guix-patches via @ 2021-06-30 14:44 UTC (permalink / raw)
  To: 49294; +Cc: EuAndreh

* gnu/packages/gettext.scm (po4a): Include perl-yaml-tiny dependency in
  PERL5LIB search path of executables.
  [native-inputs]: Remove perl-yaml-tiny.
  [propagated-inputs]: Add perl-yaml-tiny.

---
The "use YAML::Tiny;" [0] statement is failing, because the library was
included in the list of dependencies, but was not being propagated and
not put in PERL5LIB, and resulted in an error:

```
$ po4a-updatepo -f text -m f.txt -p l.po -v
Unknown format type: text.
po4a::chooser: Module loading error: Can't locate YAML/Tiny.pm in @INC (you may need to install the YAML::Tiny module) (@INC contains: /gnu/store/6ba47ndbbaf1h8qrsss9lfji0xvmh8px-po4a-0.61/lib/perl5/site_perl/5.30.2/x86_64-linux-thread-multi /gnu/store/6ba47ndbbaf1h8qrsss9lfji0xvmh8px-po4a-0.61/lib/perl5/site_perl/5.30.2 /gnu/store/6ba47ndbbaf1h8qrsss9lfji0xvmh8px-po4a-0.61/lib/perl5/site_perl /gnu/store/8zvc5mvk0xm3ygrxsgpyy5ilxb5rzjry-perl-5.30.2/lib/perl5/site_perl/5.30.2/x86_64-linux-thread-multi /gnu/store/8zvc5mvk0xm3ygrxsgpyy5ilxb5rzjry-perl-5.30.2/lib/perl5/site_perl/5.30.2 /gnu/store/8zvc5mvk0xm3ygrxsgpyy5ilxb5rzjry-perl-5.30.2/lib/perl5/5.30.2/x86_64-linux-thread-multi /gnu/store/8zvc5mvk0xm3ygrxsgpyy5ilxb5rzjry-perl-5.30.2/lib/perl5/5.30.2) at /gnu/store/6ba47ndbbaf1h8qrsss9lfji0xvmh8px-po4a-0.61/lib/perl5/site_perl/5.30.2/Locale/Po4a/Text.pm line 60.
BEGIN failed--compilation aborted at /gnu/store/6ba47ndbbaf1h8qrsss9lfji0xvmh8px-po4a-0.61/lib/perl5/site_perl/5.30.2/Locale/Po4a/Text.pm line 60.
Compilation failed in require at (eval 22) line 1.
BEGIN failed--compilation aborted at (eval 22) line 1.
```

This patch addresses that, and now the use statement works as expected.

[0]: https://github.com/mquinson/po4a/blob/a69b48eda3ebd66eec30a34a377c7a00c6f8e36c/lib/Locale/Po4a/Text.pm#L60

 gnu/packages/gettext.scm | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm
index 21228694d7..e4cd139393 100644
--- a/gnu/packages/gettext.scm
+++ b/gnu/packages/gettext.scm
@@ -238,17 +238,19 @@ from Markdown files.")
      `(#:phases
        (modify-phases %standard-phases
          (add-after 'install 'wrap-programs
-          (lambda* (#:key outputs #:allow-other-keys)
+          (lambda* (#:key outputs inputs #:allow-other-keys)
             ;; Make sure all executables in "bin" find the Perl modules
             ;; provided by this package at runtime.
-            (let* ((out  (assoc-ref outputs "out"))
-                   (bin  (string-append out "/bin/"))
-                   (path (string-append out "/lib/perl5/site_perl")))
+            (let* ((out       (assoc-ref outputs "out"))
+                   (bin       (string-append out "/bin/"))
+                   (path      (string-append out "/lib/perl5/site_perl"))
+                   (deps-path (string-append (assoc-ref inputs "perl-yaml-tiny")
+                                             "/lib/perl5/site_perl")))
               (for-each (lambda (file)
                           (wrap-program file
-                            `("PERL5LIB" ":" prefix (,path))))
-                        (find-files bin "\\.*$"))
-              #t)))
+                            `("PERL5LIB" ":" prefix (,path
+                                                     ,deps-path))))
+                        (find-files bin "\\.*$")))))
          (add-before 'reset-gzip-timestamps 'make-compressed-files-writable
            (lambda* (#:key outputs #:allow-other-keys)
              (for-each make-file-writable
@@ -284,8 +286,9 @@ from Markdown files.")
        ;; For tests.
        ("docbook-xml" ,docbook-xml-4.1.2)
        ("perl-test-pod" ,perl-test-pod)
-       ("perl-yaml-tiny" ,perl-yaml-tiny)
        ("texlive" ,texlive-tiny)))
+    (propagated-inputs
+     `(("perl-yaml-tiny" ,perl-yaml-tiny)))
     (home-page "https://po4a.org/")
     (synopsis "Scripts to ease maintenance of translations")
     (description
-- 
2.31.1





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

* [bug#49294] [PATCH] gnu: po4a: Add perl-yaml-tiny to PERL5LIB
  2021-06-30 14:44 [bug#49294] [PATCH] gnu: po4a: Add perl-yaml-tiny to PERL5LIB EuAndreh via Guix-patches via
@ 2022-04-03 10:43 ` Maxime Devos
  2023-05-29 11:52 ` bug#49294: " Jelle Licht
  1 sibling, 0 replies; 4+ messages in thread
From: Maxime Devos @ 2022-04-03 10:43 UTC (permalink / raw)
  To: EuAndreh, 49294

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

EuAndreh via Guix-patches via schreef op wo 30-06-2021 om 11:44 [-
0300]:
> ---
> The "use YAML::Tiny;" [0] statement is failing, because the library was
> included in the list of dependencies, but was not being propagated and
> not put in PERL5LIB, and resulted in an error:

Adding it to PERL5LIB and moving it from native-inputs to non-native
inputs looks reasonable to me.  However: does it need to be propagated,
or is adding it to PERL5LIB sufficient?

Also, how many dependents are there (try "guix refresh -l")?  Maybe it
needs to be on core-updates.  Additionally, ca 'perl-yaml-tiny' now be
removed from 'kicad-doc' and 'qgis'?

Greetings,
Maxime.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 260 bytes --]

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

* bug#49294: [PATCH] gnu: po4a: Add perl-yaml-tiny to PERL5LIB
  2021-06-30 14:44 [bug#49294] [PATCH] gnu: po4a: Add perl-yaml-tiny to PERL5LIB EuAndreh via Guix-patches via
  2022-04-03 10:43 ` Maxime Devos
@ 2023-05-29 11:52 ` Jelle Licht
  2023-06-02 12:46   ` [bug#49294] " EuAndreh via Guix-patches via
  1 sibling, 1 reply; 4+ messages in thread
From: Jelle Licht @ 2023-05-29 11:52 UTC (permalink / raw)
  To: EuAndreh; +Cc: 49294-done

EuAndreh <eu@euandre.org> writes:

> * gnu/packages/gettext.scm (po4a): Include perl-yaml-tiny dependency in
>   PERL5LIB search path of executables.
>   [native-inputs]: Remove perl-yaml-tiny.
>   [propagated-inputs]: Add perl-yaml-tiny.
[snip]

Superseded by commit a1f9eba892784069e34338e01237a74b8a3bd8a2. Closing.




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

* [bug#49294] [PATCH] gnu: po4a: Add perl-yaml-tiny to PERL5LIB
  2023-05-29 11:52 ` bug#49294: " Jelle Licht
@ 2023-06-02 12:46   ` EuAndreh via Guix-patches via
  0 siblings, 0 replies; 4+ messages in thread
From: EuAndreh via Guix-patches via @ 2023-06-02 12:46 UTC (permalink / raw)
  To: Jelle Licht; +Cc: 49294

ACK, makes sense.  Thanks.




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

end of thread, other threads:[~2023-06-02 12:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-30 14:44 [bug#49294] [PATCH] gnu: po4a: Add perl-yaml-tiny to PERL5LIB EuAndreh via Guix-patches via
2022-04-03 10:43 ` Maxime Devos
2023-05-29 11:52 ` bug#49294: " Jelle Licht
2023-06-02 12:46   ` [bug#49294] " EuAndreh via Guix-patches via

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).