Subject: bug#49227: closed (Re: [bug#49227] [PATCH 1/3] build: qt-build-system: Allow users to override/extend XDG_DATA_DIRS.)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 02 Jul 2021 21:09:03 +0000

Your bug report

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

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
49227: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=49227
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#49227] [PATCH 1/3] build: qt-build-system: Allow users to override/extend XDG_DATA_DIRS.
From: Maxim Cournoyer <[email-masked]>
To: Maxime Devos <[email-masked]>
Cc: [email-masked]
Date: Fri, 02 Jul 2021 17:08:36 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi Maxime,

Maxime Devos <[email-masked]> writes:

> Maxim Cournoyer schreef op vr 25-06-2021 om 14:08 [-0400]:
>>     ;; These shall match the search-path-specification for Qt and KDE
>>     ;; libraries.
>> -   (list '("XDG_DATA_DIRS" directory "/share"
>> +   (list '("XDG_DATA_DIRS" suffix directory "/share"
>
> I'd recomend adding a comment here, explaining why 'suffix' is necessary
> and '=' is unsufficient, with a link to the bug and patches tracker,
> for clarity.

I realized that there had already been the same fix on staging.  I had
to spend some time to manually resolve "conflicts" (which were not
immediately apparent due to code having changed place on core-updates).
The conflict cherry-picked from core-updates which ended up fixing this
was 30759c4aadf279e470e8d7f94de332a31c1b9f42.

I rebased the commits that had been pushed to master on that and a few
related others, and pushed as d5c9cc6d9d979bfca5f035429bcf510a0a2285a3,
which contains extra comments.

Thank you!

Maxim

Subject: [PATCH 0/3] Some Qt/qtbase improvements.
From: Maxim Cournoyer <[email-masked]>
To: [email-masked]
Cc: Maxim Cournoyer <[email-masked]>
Date: Fri, 25 Jun 2021 14:04:14 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

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