elaexuotee--- via Guix-patches via 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 ;;; Copyright © 2020 EuAndreh ;;; Copyright © 2020 Michael Rohleder +;;; Copyright © 2020 B. Wilson ;;; ;;; 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