Subject: [PATCH 0/3] Some Qt/qtbase improvements.

From: Maxim Cournoyer <[email-masked]>
Date: Fri, 25 Jun 2021 14:04:14 -0400

Hello Guix!

The following 3 patches are some minor improvements for Qt in Guix.  They
allow them to use GTK themes, which noticeably improve the look of things such
as the file picker on systems using a GTK theme.  Passing the configure flags
via the #:configure-flags argument for qtbase allows package rewriting, for
example, building a static version of it:

--8<---------------cut here---------------start------------->8---
(use-modules (gnu packages qt)
             (guix packages)
             (guix transformations)
             (guix utils))

;;; Adapted from static-package in (guix build-system gnu).
(define* (static-package-qt p #:key (strip-all? #t))
  "Return a statically-linked version of package P.  If STRIP-ALL? is true,
use `--strip-all' as the arguments to `strip'."
  (package (inherit p)
    (arguments
     (let ((a (default-keyword-arguments (package-arguments p)
                '(#:configure-flags '()
                  #:strip-flags '("--strip-debug")))))
       (substitute-keyword-arguments a
         ((#:configure-flags flags)
          `(cons* "--disable-shared" "-static" ,flags))
         ((#:strip-flags flags)
          (if strip-all?
              ''("--strip-all")
              flags)))))
    (replacement (and=> (package-replacement p) static-package-qt))))

(define qtbase-static (static-package-qt qtbase))

(packages->manifest (cons qtbase-static))
--8<---------------cut here---------------end--------------->8---

Maxim Cournoyer (3):
  build: qt-build-system: Allow users to override/extend XDG_DATA_DIRS.
  gnu: qtbase: Enable GTK support.
  gnu: qtbase: Specify configure flags via the #:configure-flags
    argument.

 gnu/packages/qt.scm            | 168 ++++++++++++++++-----------------
 guix/build/qt-build-system.scm |  14 +--
 2 files changed, 90 insertions(+), 92 deletions(-)

-- 
2.32.0