guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#44789] gnu: Add lemonbar-xft.


From: Christopher Baines
Subject: [bug#44789] gnu: Add lemonbar-xft.
Date: Sat, 28 Nov 2020 16:46:09 +0000
User-agent: mu4e 1.4.13; emacs 27.1

elaexuotee--- via Guix-patches via <guix-patches@gnu.org> writes:

> This adds a fork of the `lemonbar' package that supports fontconfig.

I don't know anything about lemonbar, but this sounds OK in principle.


gnu/packages/wm.scm(lemonbar-xft): New variable.
---
 gnu/packages/wm.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 361cecf26f..7d9b591545 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -37,6 +37,7 @@ 
 ;;; Copyright © 2020 Marcin Karpezo <sirmacik@wioo.waw.pl>
 ;;; Copyright © 2020 EuAndreh <eu@euandre.org>
 ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1931,6 +1932,40 @@  formatting, RandR and Xinerama support and EWMH 
compliance without
 wasting your precious memory.")
       (license license:x11))))
 
+(define-public lemonbar-xft
+  ;; Upstream v2.0 tag is several years behind HEAD
+  (let ((commit "481e12363e2a0fe0ddd2176a8e003392be90ed02"))
+    (package
+      (inherit lemonbar)
+      (name "lemonbar-xft")
+      (version (string-append "2.0." (string-take commit 7)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/drscream/lemonbar-xft";)
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0588g37h18lv50h7w8vfbwhvc3iajh7sdr53848spaif99nh3mh4"))))
+      (inputs `(("freetype" ,freetype)
+                ("libxft" ,libxft)
+                ("libx11" ,libx11)
+                ,@(package-inputs lemonbar)))
+      (arguments
+       `(#:tests? #f                    ;no test suite
+         #:make-flags
+         (list
+          (string-append "CC=" ,(cc-for-target))
+          (string-append "PREFIX=" %output)
+          (string-append "CFLAGS="
+                         (string-join
+                          (list (string-append "-I" (assoc-ref %build-inputs 
"freetype")
+                                               "/include/freetype2")
+                                (string-append "-D" "VERSION="
+                                               (format #f "'~s'" ,version))))))
+         #:phases (modify-phases %standard-phases (delete 'configure)))))))

So, it would be nice to change the description (and maybe synopsis) to
set out how this package is different from lemonbar.

Also, regarding the arguments above, I think you can reduce the
duplication with the lemonbar package by doing something like:

  (arguments
   (substitute-keyword-arguments (package-arguments lemonbar)
     ((#:make-flags make-flags)
      (append make-flags
              (string-append
               "CFLAGS="
               (string-join
                (list (string-append "-I" (assoc-ref %build-inputs "freetype")
                                     "/include/freetype2")
                      (string-append "-D" "VERSION="
                                     (format #f "'~s'" ,version)))))))))

I've only just written this in this email, so I'm not sure if it works,
but I think it's close.

Would you be able to send an updated patch?

Thanks,

Chris

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]