[PATCH] gnu: suckless: add farbfeld and propagate input to sent

  • Done
  • quality assurance status badge
Details
3 participants
  • Gabriel Wicki
  • Ludovic Courtès
  • Maxime Devos
Owner
unassigned
Submitted by
Gabriel Wicki
Severity
normal
G
G
Gabriel Wicki wrote on 19 Jun 2022 14:23
(address . guix-patches@gnu.org)
20220619115925.bcrcjpd7yse2n25t@silvi
Hello

Stumbling over the tools in suckless.scm i tried out sent.
Unfortunately just installing sent and giving the example from their
source-repo a try only produced a (somewhat strange) error.

Apparently sent (and probably other suckless tools) rely on suckless'
farbfeld package to handle images and the like, so i packaged it and
propagated the input farbfeld to sent. This fixes the issue; now
presentations with images work.

I hope my patches are fine.

Best regards
Gabriel


From 55a563f53334c3eaac9cbae79fe33936679ab291 Mon Sep 17 00:00:00 2001
From: Gabriel Wicki <gabriel@erlikon.ch>
Date: Sat, 18 Jun 2022 17:00:16 +0200
Subject: [PATCH 1/2] gnu: Add farbfeld.

* gnu/packages/suckless.scm (farbfeld): New variable.
---
gnu/packages/suckless.scm | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

Toggle diff (42 lines)
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index 5aa37657b9..fb3af9ad6c 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -1084,3 +1084,35 @@ (define-public sfeed
various other formats. There are also some programs and scripts included to
import and export OPML and to fetch, filter, merge and order feed items.")
(license license:isc)))
+
+(define-public farbfeld
+ (let ((commit "ab5e3df") (revision "0"))
+ (package
+ (name "farbfeld")
+ (version (git-version "4" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "git://git.suckless.org/farbfeld")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0pkmkvv5ggpzqwqdchd19442x8gh152xy5z1z13ipfznhspsf870"))))
+ (build-system gnu-build-system)
+ (inputs (list libpng libjpeg-turbo))
+ (arguments
+ `(#:make-flags (list "PREFIX="
+ (string-append "DESTDIR=" %output)
+ (string-append "CC="
+ ,(cc-for-target)))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'check))))
+ (synopsis "Image format and conversion tools")
+ (description
+ "farbfeld is a lossless image format which is easy to parse,
+pipe and compress.")
+ (home-page "https://git.suckless.org/farbfeld/")
+ (license license:isc))))
--
2.34.0
G
G
Gabriel Wicki wrote on 19 Jun 2022 14:36
Re: bug#56087: Acknowledgement ([PATCH] gnu: suckless: add farbfeld and propagate input to sent)
(address . 56087@debbugs.gnu.org)
20220619123652.xyx3pmkgueqh5pfa@silvi
From d729f8e2b69a9b36436f6c6d7918ffbe524c5aad Mon Sep 17 00:00:00 2001
From: Gabriel Wicki <gabriel@erlikon.ch>
Date: Sat, 18 Jun 2022 17:04:12 +0200
Subject: [PATCH 2/2] gnu: sent: Add farbfeld to propagated-inputs.

* gnu/packages/suckless.scm (sent)[propagated-inputs]: Add it.
---
gnu/packages/suckless.scm | 2 ++
1 file changed, 2 insertions(+)

Toggle diff (15 lines)
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index fb3af9ad6c..d3fdee72e5 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -532,6 +532,8 @@ (define-public sent
(string-append "LIBS=" (pkg-config "--libs") " -lm")))))
(native-inputs
(list pkg-config))
+ (propagated-inputs
+ (list farbfeld))
(inputs
`(("libpng" ,libpng)
("libx11" ,libx11)
--
2.34.0
M
M
Maxime Devos wrote on 19 Jun 2022 15:12
Re: [bug#56087] Acknowledgement ([PATCH] gnu: suckless: add farbfeld and propagate input to sent)
9d1b5098ed70984ca2f41602454c06f80ad58f50.camel@telenet.be
Gabriel Wicki schreef op zo 19-06-2022 om 14:36 [+0200]:
Toggle quote (3 lines)
> +    (propagated-inputs
> +     (list farbfeld))

Propagation (*) can be avoided by looking in the source code of 'sent'
to see where farbfeld is started and replacing "farbfeld" by
"/gnu/store/.../bin/farbfeld" (using 'substitute*' & search-input-
file).

(*) Propagation is fragile in some uses (e.g. running directly from the
store) and hence not recommended when it can be avoided.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYq8grxccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7unoAP9W0x5kHK/Fo7zL4+/RUggmYV64
WbfpCqstrqaWDDLS/AD+LR0Ujv8rmo5jPYqTXUsX0M1qT+BGBZWNieN+35CqOQM=
=+epT
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 19 Jun 2022 15:17
Re: [bug#56087] [PATCH] gnu: suckless: add farbfeld and propagate input to sent
66ac65e65fb19a239aedcb132c75343b88083306.camel@telenet.be
Gabriel Wicki schreef op zo 19-06-2022 om 14:23 [+0200]:
Toggle quote (3 lines)
> +       `(#:make-flags (list "PREFIX="
> +                            (string-append "DESTDIR=" %output)

Guix does not do staged installation (that's what DESTDIR is for!), so
don't set DESTDIR, instead set PREFIX to #$output instead of DESTDIR
(the difference matters when the compiled program embeds a reference to
its own installation location). Also, G-exps, because %output isn't
documented IIRC whereas #$output is:

(arguments
(list #:make-flags
#~(list (string-append "PREFIX=" #$output)
(string-append "CC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(delete 'check))))

Also, always add a comment about why tests are skipped (maybe someone
knows how to fix them or the bug they noticed!).

Greetings,
Maxime
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYq8iAhccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7m8bAQD55TPBeyM1lDVOrUHdox3j5p1P
6d5tdVhze0YClqEqKwEA0ciFtNGL8B2tT/5khqrY6fIir0Fv7I201v2/sg8H+wc=
=c0am
-----END PGP SIGNATURE-----


M
M
Maxime Devos wrote on 19 Jun 2022 15:18
aaee68071cc288257f50fc9e16cfc3ea4f731d07.camel@telenet.be
Gabriel Wicki schreef op zo 19-06-2022 om 14:23 [+0200]:
Toggle quote (2 lines)
> +  (let ((commit "ab5e3df") (revision "0"))

To avoid collisions, don't abbreviate commits.

Greetings,
Maxime.
-----BEGIN PGP SIGNATURE-----

iI0EABYKADUWIQTB8z7iDFKP233XAR9J4+4iGRcl7gUCYq8iPRccbWF4aW1lZGV2
b3NAdGVsZW5ldC5iZQAKCRBJ4+4iGRcl7ncJAQDp0p+IjetHOINUi4xcLOYL0ybk
VcQmi6ZnjrlhcBKvowEA++Nt0n4/Z24LRYtO/kFDQtKiOGQtwpMBlQJA08Pr9QQ=
=FEa1
-----END PGP SIGNATURE-----


G
G
Gabriel Wicki wrote on 21 Jun 2022 02:50
(name . Maxime Devos)(address . maximedevos@telenet.be)(address . 56087@debbugs.gnu.org)
20220621005047.ajgnk3ob22t37wsc@silvi
Attachment: file
L
L
Ludovic Courtès wrote on 22 Jun 2022 23:14
Re: bug#56087: [PATCH] gnu: suckless: add farbfeld and propagate input to sent
(name . Gabriel Wicki)(address . gabriel@erlikon.ch)
87mte41juc.fsf_-_@gnu.org
Hi Gabriel,

Gabriel Wicki <gabriel@erlikon.ch> skribis:

Toggle quote (8 lines)
>>From 15e88ce3cb4ab51d6fe9ad9ae3ab15a435fb4db8 Mon Sep 17 00:00:00 2001
> From: Gabriel Wicki <gabriel@erlikon.ch>
> Date: Sat, 18 Jun 2022 17:00:16 +0200
> Subject: [PATCH 1/3] gnu: Add farbfeld.
>
> * gnu/packages/suckless.scm (farbfeld): New variable.
> [use-modules]: Add (gnu packages imagemagick)

[...]

Toggle quote (10 lines)
>>From 1c5a9ff89bc4525b9e1a07b6b96b017ad58a81fe Mon Sep 17 00:00:00 2001
> From: Gabriel Wicki <gabriel@erlikon.ch>
> Date: Sat, 18 Jun 2022 17:04:12 +0200
> Subject: [PATCH 2/3] gnu: sent: Add farbfeld to propagated-inputs.
>
> * gnu/packages/suckless.scm (sent)[propagated-inputs]: Add it.
> [phases]{patch-farbfeld}: New phase.
> [inputs]: Add farbfeld.
> [home-page]: Add trailing slash to fix linter warning.

[...]

Toggle quote (7 lines)
>>From 6fb7a48822e51625de8ca1026260faac80adbe17 Mon Sep 17 00:00:00 2001
> From: Gabriel Wicki <gabriel@erlikon.ch>
> Date: Tue, 21 Jun 2022 02:38:40 +0200
> Subject: [PATCH 3/3] gnu: sent: Apply guix style
>
> * gnu/packages/suckless.scm (sent): Apply `guix style`.

Applied, thank you & thanks Maxime!

I followed up with:

guix style -S inputs sent --input-simplification=always

The effect is to remove input labels.

Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 56087@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 56087
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch