[PATCH] gnu: Add xsettingsd.

  • Done
  • quality assurance status badge
Details
2 participants
  • David Wilson
  • Marius Bakke
Owner
unassigned
Submitted by
David Wilson
Severity
normal

Debbugs page

David Wilson wrote 5 years ago
(address . guix-patches@gnu.org)
87r1zlvymv.fsf@daviwil.com
* gnu/packages/wm.scm (xsettingsd): New variable.
---
gnu/packages/wm.scm | 63 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 63 insertions(+)

Toggle diff (92 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 52d7042806..4fb18e9f67 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -31,6 +31,7 @@
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2019 Noodles! <nnoodle@chiru.no>
;;; Copyright © 2019 Alexandru-Sergiu Marton <brown121407@member.fsf.org>
+;;; Copyright © 2020 David Wilson <david@daviwil.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -59,6 +60,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
@@ -94,6 +96,7 @@
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-xyz)
#:use-module (gnu packages serialization)
#:use-module (gnu packages suckless)
#:use-module (gnu packages texinfo)
@@ -1670,3 +1673,63 @@ bar entirely based on XCB. Provides full UTF-8 support, basic
formatting, RandR and Xinerama support and EWMH compliance without
wasting your precious memory.")
(license license:x11))))
+
+(define-public xsettingsd
+ (package
+ (name "xsettingsd")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/derat/xsettingsd.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "05m4jlw0mgwp24cvyklncpziq1prr2lg0cq9c055sh4n9d93d07v"))))
+ (build-system scons-build-system)
+ (inputs
+ `(("libx11" ,libx11)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (arguments
+ `(#:scons ,scons-python2
+ #:scons-flags
+ (list "CC=gcc"
+ (string-append "PREFIX=" %output))
+ #:tests? #f ;; Tests require Google's gtest framework
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'patch-sconstruct
+ (lambda _
+ ;; scons doesn't pick up environment variables automatically
+ ;; so it needs some help to find path variables.
+ (substitute* "SConstruct"
+ (("env = Environment\\(")
+ "env = Environment(
+ ENV = {
+ 'PATH': os.environ['PATH'],
+ 'CPATH': os.environ['CPATH'],
+ 'LIBRARY_PATH': os.environ['LIBRARY_PATH'],
+ 'PKG_CONFIG_PATH': os.environ['PKG_CONFIG_PATH']
+ },"))
+ #t))
+ ;; The install task uses gtest to install the binaries.
+ ;; Since we don't have gtest, install binaries manually.
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (mkdir-p bin)
+ (install-file "xsettingsd" bin)
+ (install-file "dump_xsettings" bin)
+ #t))))))
+ (home-page "https://github.com/derat/xsettingsd")
+ (synopsis "Minimal Xorg settings daemon")
+ (description "xsettingsd is a lightweight daemon that provides settings to
+Xorg applications via the XSETTINGS specification. It is used for defining
+font and theme settings when a complete desktop environment (GNOME, KDE) is
+not running. With a simple .xsettingsd configuration file one can avoid
+configuring visual settings in different UI toolkits separately.")
+ (license license:bsd-3)))
--
2.24.1
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEU8QebkGq/lUzWspeRGou1NlAvxQFAl4u3+gACgkQRGou1NlA
vxSKxg//S9IZY8nVNQ/ThxKeddC3NlB8e2WkRzv7B27tW1G+IbVhABR49GMXZ+nZ
/bcc87X769daoBGbAdpOJxzXe1z9IjLMs/NzQRWAJp54R+Ba6G1qWoV55DlslQpI
jHmyyVEXY6UYzhNehDKyY3783FOmQQAvFZHxMhlOVH0zW0zXlJBBAMC30OriBvqM
IylVNIB1Oa36NZso6uHN05NAu8xOjcKPy/CBlpDkjzLX6q1oG80pdLA568SWb+9h
47JXAU7UoZQGD/Dhiey+IQeKaiNh/heyNHsKMWRGuYP349y+ALHX3fjXxh1Fkink
55NGwvNnsC6j5IVwg/MqHpW8qIMRGjVYFMGvUA6+rxkL5wNt6bn3V6KPrG7onXWN
QBWIEja0qpFg4OrEuWbqiFDANLxbzCXvmirKGCFW+0mxAedu8j8mUEWk/OjHT8ik
7lXGOPE+qM4HZfoCwhFUBF6t10FMrxjZtAhbv8G8/jkMjw9bO37LrRZIeQN1Tc9c
rO9IrCQCOYmp2SBZq/F6fooHraapmjH12jOsJxaMvlAGZVoCbXwfyAerZ1ZbXHHr
LyOsUxQeVWzkZr7gH6PgDEvkvHI2LuP8bxnB9mZy0vfJoET51pl38+DVdYFysiLP
4zGizfqCvWFijKpY2Try/7xTkxtJWarkMrcjQPx39/oybf5M8+w=
=WmEV
-----END PGP SIGNATURE-----

Marius Bakke wrote 5 years ago
87zhe5nnss.fsf@devup.no
David Wilson <david@daviwil.com> writes:

Toggle quote (2 lines)
> * gnu/packages/wm.scm (xsettingsd): New variable.

I wonder if xdisorg.scm is better suited for this package, as it seems
mostly unrelated to window management. WDYT?

[...]

Toggle quote (2 lines)
> + #:tests? #f ;; Tests require Google's gtest framework

gtest is provided by the 'googletest' package. Can you try adding it?

Also, for margin comments, we only use one ';', without capitalizing the
comment.

Other than that LGTM.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl4yyMQACgkQoqBt8qM6
VPqqbQf/aMc0SzTQq6bK61b9Sk1Y9C3e1r3kHHceZOcsciK0G5QorOCg7JkVi/si
WV+rOCxm8fB8/dvFd2lyQmWvy5dBvUIJXjYE6jwzgUtIReQpBHn8h+UGJvbN0suu
2ois6mL1EFnV6fmnUEmgN6bmV4O7MwztNcCJhUYE8L9+oIfMhlKDdMCj8XDVCz8c
TYk0AOYaEw1pb8ge3MAhZsqNYNVoNrf3BEfSWqog3tNMcsXDIUuPjnpw/5/d1O/E
B3hCMnpMXXJc0dsGhDMvVhvh/PA6UC7XPJ9EfTjCJoyPamy59LOomijnCSPGbKJ8
XiCVjnSmUiIKISMVRwB0yitQVNR1kg==
=d4bw
-----END PGP SIGNATURE-----

David Wilson wrote 5 years ago
(name . Marius Bakke)(address . mbakke@fastmail.com)(address . 39306@debbugs.gnu.org)
87lfpp6n6v.fsf@daviwil.com
Hi Marius!

Marius Bakke <mbakke@fastmail.com> writes:

Toggle quote (3 lines)
> I wonder if xdisorg.scm is better suited for this package, as it seems
> mostly unrelated to window management. WDYT?

Agreed, that's a more appropriate place.

Toggle quote (2 lines)
> gtest is provided by the 'googletest' package. Can you try adding it?

Thanks! I didn't think to check with that name, I've got tests enabled
using that now.

Toggle quote (3 lines)
> Also, for margin comments, we only use one ';', without capitalizing the
> comment.

Margin comment no longer needed, but I'll keep this in mind for future
commits.

I've attached an updated patch file with the suggested changes. The
only thing I'm unsure about is disabling a particular warning-as-error
that showed up in the gtest.h header:

---- SNIP ----
/gnu/store/bxapb1f1l8frjpbjckk3zdxhmcig3xzk-googletest-1.10.0/include/gtest/gtest.h:1527:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (lhs == rhs) {
~~~~^~~~~~
cc1plus: all warnings being treated as errors
---- SNIP ----

Since this is a warning in gtest's own header file rather than the
package source, would it be OK to disable errors for it?

Thanks!

David
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEU8QebkGq/lUzWspeRGou1NlAvxQFAl4y5hgACgkQRGou1NlA
vxR+QxAAqPJ4lOspTjVxhCLDB8SHuKDlSnxDbF6hF8Imr5zew+IcjFHrrFVlmqTL
mXsCFG7+E9vPjrmMMSpgjXxIAoB25/dKGxmNvoneD8euOMHZckTKXlcdSZq50voe
s+i5X3xoSb01g5PTuzbewXIpoR+H4rdpEawk3NTZ3pbY9WI3xNTBOpyXSsEcdkls
EOWNApMCw4yxy+wq6eBIUVZglNKzHqL+fTPCjpwNOkfcehUNBtZY9qgmlEigoaUb
Pjl8e9hIv55NrFiASeQPclTRJ64pTlfZZDuoELuPIG8SyLLx9C0ar+XKqrBp2EEi
ABXQ8K6MEw3vwfIM6tMIvLbyYMTyP3DtYbYwkmaj6VeSTIS19A0IhEC3qAVJQKy8
jC602YfETyDHFXFbbmeqJBcW9YL4hRFaY+PdmnVoPp6WLEGCKEapsYymTaOMbvyA
cX2cX6InFmQOsdNLusP17MKkd+MtBDBvnSLilbPQuZfEZgU69wVsz/MVDcygABqq
kwJe8pF1yzpeNOiFIKbfUDn9civSknq2fA9htTS77tuQAgAjhlvOprRk9xMcMDk0
9xTzzHzv+hHC7uKcQoDFsf1tJmLpD9Fb9bs023fUW5IJKc76KLZqOqxOkNd7jJKB
zAXtklfez4zPZlHmrQtTeJTeIP0fx4ceiNTpso1Iafa3gEE8lR4=
=+rVG
-----END PGP SIGNATURE-----

From b5ca2c0377d677c0e3b9e288a8229d54ccd89125 Mon Sep 17 00:00:00 2001
From: David Wilson <david@daviwil.com>
Date: Sun, 26 Jan 2020 05:55:47 -0800
Subject: [PATCH] gnu: Add xsettingsd.

* gnu/packages/xdisorg.scm (xsettingsd): New variable.
---
gnu/packages/xdisorg.scm | 68 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 68 insertions(+)

Toggle diff (92 lines)
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index ecefab1dbb..501ef53d3e 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -30,6 +30,7 @@
;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw>
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2020 David Wilson <david@daviwil.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -57,6 +58,7 @@
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module (gnu packages)
#:use-module (gnu packages documentation)
#:use-module (gnu packages admin)
@@ -2005,3 +2007,69 @@ The cutbuffer and clipboard selection are always synchronized.")
can optionally use some appearance settings from XSettings, tint2 and GTK.")
(home-page "https://jgmenu.github.io/")
(license license:gpl2)))
+
+(define-public xsettingsd
+ (package
+ (name "xsettingsd")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/derat/xsettingsd.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "05m4jlw0mgwp24cvyklncpziq1prr2lg0cq9c055sh4n9d93d07v"))))
+ (build-system scons-build-system)
+ (inputs
+ `(("libx11" ,libx11)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("googletest" ,googletest)
+ ("googletest-source" ,(package-source googletest))))
+ (arguments
+ `(#:scons ,scons-python2
+ #:scons-flags
+ (list "CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'patch-sconstruct
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "SConstruct"
+ ;; scons doesn't pick up environment variables automatically
+ ;; so it needs help to find path variables
+ (("env = Environment\\(")
+ "env = Environment(
+ ENV = {
+ 'PATH': os.environ['PATH'],
+ 'CPATH': os.environ['CPATH'],
+ 'LIBRARY_PATH': os.environ['LIBRARY_PATH'],
+ 'PKG_CONFIG_PATH': os.environ['PKG_CONFIG_PATH']
+ },")
+ ;; Update path to gtest source files used in tests
+ (("/usr/src/gtest") (string-append
+ (assoc-ref inputs "googletest-source")
+ "/googletest"))
+ ;; Exclude one warning that causes a build error
+ (("-Werror") "-Werror -Wno-error=sign-compare"))
+ #t))
+ ;; The SConstruct script doesn't configure installation so
+ ;; binaries must be copied to the output path directly
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (mkdir-p bin)
+ (install-file "xsettingsd" bin)
+ (install-file "dump_xsettings" bin)
+ #t))))))
+ (home-page "https://github.com/derat/xsettingsd")
+ (synopsis "Minimal Xorg settings daemon")
+ (description "xsettingsd is a lightweight daemon that provides settings to
+Xorg applications via the XSETTINGS specification. It is used for defining
+font and theme settings when a complete desktop environment (GNOME, KDE) is
+not running. With a simple .xsettingsd configuration file one can avoid
+configuring visual settings in different UI toolkits separately.")
+ (license license:bsd-3)))
--
2.24.1
Marius Bakke wrote 5 years ago
(name . David Wilson)(address . david@daviwil.com)(address . 39306@debbugs.gnu.org)
87o8ulngsc.fsf@devup.no
David Wilson <david@daviwil.com> writes:

Toggle quote (14 lines)
> I've attached an updated patch file with the suggested changes. The
> only thing I'm unsure about is disabling a particular warning-as-error
> that showed up in the gtest.h header:
>
> ---- SNIP ----
> /gnu/store/bxapb1f1l8frjpbjckk3zdxhmcig3xzk-googletest-1.10.0/include/gtest/gtest.h:1527:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
> if (lhs == rhs) {
> ~~~~^~~~~~
> cc1plus: all warnings being treated as errors
> ---- SNIP ----
>
> Since this is a warning in gtest's own header file rather than the
> package source, would it be OK to disable errors for it?

I'm glad you asked. :-)

It is definitively OK to disable warnings coming from dependencies. In
fact, that is what we are supposed to do, and used to do until the
switch to GCC 7.

To clarify, when we switched to GCC 7, its search paths were changed
from C{,PLUS}_INCLUDE_PATH to CPATH. The only[*] difference between
these search paths is that headers found on the former are treated as
"system headers", which disables warnings.

[*] Besides the fact that GCC 6 and later is very picky about the order
of entries in C_INCLUDE_PATH, which is why we had to switch; see

So, LGTM, though I have a suggestion for the description:

Toggle quote (2 lines)
> + (synopsis "Minimal Xorg settings daemon")

Maybe s/Minimal //, as the description makes it clear that it is a
lightweight alternative to the GNOME and KDE approaches.

Toggle quote (6 lines)
> + (description "xsettingsd is a lightweight daemon that provides settings to
> +Xorg applications via the XSETTINGS specification. It is used for defining
> +font and theme settings when a complete desktop environment (GNOME, KDE) is
> +not running. With a simple .xsettingsd configuration file one can avoid
> +configuring visual settings in different UI toolkits separately.")

@command{xsettingsd} and @file{.xsettingsd} will make it look slightly
better/more readable in the various UIs. :-)
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl4y7EMACgkQoqBt8qM6
VPqXKwf/VJdXfrwkAiyAgGt3kFrvStQNyyr/LVPWZJ3NDsZqCwziWTMdRPn1PpAM
wRZ2scyPfzyse5SBBUUTVXbmUGvLzNjf6l7aTBvMIW663vTTMSWYRfXLegyk5b4b
eZRBPd8b0+ZZDNG8GBcVGPYCpHtoBtAunkX9tbFRSSH1Wsgw8b9mQFR8ZJgvEkn/
suKwV8opozdmUC/UQOCYYgyrUcAt4+u3wZjJKyHpk5q4Tg4J4bhR77ezJ0cL9zFE
zrqLNrzBd99ud0KLk8XRTRW284wU3V7Ns5qFm+VrV4+zVzC66vHh2MS0LNrN+XRz
8rfe61FVyDsGmwCsESWZq11cLjoDiQ==
=7yJG
-----END PGP SIGNATURE-----

David Wilson wrote 5 years ago
(name . Marius Bakke)(address . mbakke@fastmail.com)(address . 39306@debbugs.gnu.org)
87k1596ii6.fsf@daviwil.com
Marius Bakke <mbakke@fastmail.com> writes:

Toggle quote (13 lines)
> It is definitively OK to disable warnings coming from dependencies. In
> fact, that is what we are supposed to do, and used to do until the
> switch to GCC 7.
>
> To clarify, when we switched to GCC 7, its search paths were changed
> from C{,PLUS}_INCLUDE_PATH to CPATH. The only[*] difference between
> these search paths is that headers found on the former are treated as
> "system headers", which disables warnings.
>
> [*] Besides the fact that GCC 6 and later is very picky about the order
> of entries in C_INCLUDE_PATH, which is why we had to switch; see
> <https://issues.guix.gnu.org/issue/30756> for details.

Thanks for the background, that was helpful! I've been out of the loop
on GCC changes for a while so it's good to know that this happened.

I've made the suggested changes to the summary and description, attached
the updated patch.

David
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEU8QebkGq/lUzWspeRGou1NlAvxQFAl4y/dIACgkQRGou1NlA
vxSsOQ//aZyk53J8Ui015j/QnSk1UieeYWDzegwojLEx+mG5GZzjqHnvq+C+IdQf
MNtweKf+eQ60jeEDbPdlm+3/Rm9sdJI4q7bAwVg30lGl1eTxo/bMAhMsJQKyYg59
kV81QHMTk/hCLy9y6WjWk3Y1eX4IK722KhtfVBdjuuVBFjCg/T2Kf6DncSHM2e7o
Ta4D4i1hkERWQl7NOcMQm2yJNc57Zkq49TG4/qbgbPnD7yP3vs3uB93dRPGxVsWL
iDMYb6BjgDIhZoWtFcsUeHZvWJ16Xplhgkh5xDQ1vFcdO+h4kE/qi7KCU9nPfh4N
Oa6fj/smynEta9BdZrMIx8aHoD3CEIUVKG0FHJ6h/bWfkb/rhKErRoZ0a5+rCTOe
pdXeiFe0zF11jjl2dRaMY4/A587l74Yndn6FixKI5Y8CO6TAxaOZbe5Y565BwFrf
5+oM+xLvw8TS5NvHkVSq/f3iLyJ0SKNOezxU6RikQ21FOa1bWiekrecOTjiYfg7F
oJZhD3gsFIM86S1s1O7WjT3G8cwgZPT+WcZPvpZIF5n4XgeN5+rOs++scwIv0Zdc
pgDf/tIN0kwtER+5CBFWIRvi5nFNGirYDtJizNEh87WK50qwAvN4EPiPIW90ui7s
SCUve5M8LFfrwN1gp1u62fkihGQU8iJ+s9BIwtypNH0EpQQtGWQ=
=0K96
-----END PGP SIGNATURE-----

From 7c9daaf8ab86c84d4bb4ad554912746dacbca5cd Mon Sep 17 00:00:00 2001
From: David Wilson <david@daviwil.com>
Date: Sun, 26 Jan 2020 05:55:47 -0800
Subject: [PATCH] gnu: Add xsettingsd.

* gnu/packages/xdisorg.scm (xsettingsd): New variable.
---
gnu/packages/xdisorg.scm | 68 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 68 insertions(+)

Toggle diff (92 lines)
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index ecefab1dbb..10c5201e5e 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -30,6 +30,7 @@
;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw>
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2020 David Wilson <david@daviwil.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -57,6 +58,7 @@
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
+ #:use-module (guix build-system scons)
#:use-module (gnu packages)
#:use-module (gnu packages documentation)
#:use-module (gnu packages admin)
@@ -2005,3 +2007,69 @@ The cutbuffer and clipboard selection are always synchronized.")
can optionally use some appearance settings from XSettings, tint2 and GTK.")
(home-page "https://jgmenu.github.io/")
(license license:gpl2)))
+
+(define-public xsettingsd
+ (package
+ (name "xsettingsd")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/derat/xsettingsd.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "05m4jlw0mgwp24cvyklncpziq1prr2lg0cq9c055sh4n9d93d07v"))))
+ (build-system scons-build-system)
+ (inputs
+ `(("libx11" ,libx11)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("googletest" ,googletest)
+ ("googletest-source" ,(package-source googletest))))
+ (arguments
+ `(#:scons ,scons-python2
+ #:scons-flags
+ (list "CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'patch-sconstruct
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "SConstruct"
+ ;; scons doesn't pick up environment variables automatically
+ ;; so it needs help to find path variables
+ (("env = Environment\\(")
+ "env = Environment(
+ ENV = {
+ 'PATH': os.environ['PATH'],
+ 'CPATH': os.environ['CPATH'],
+ 'LIBRARY_PATH': os.environ['LIBRARY_PATH'],
+ 'PKG_CONFIG_PATH': os.environ['PKG_CONFIG_PATH']
+ },")
+ ;; Update path to gtest source files used in tests
+ (("/usr/src/gtest") (string-append
+ (assoc-ref inputs "googletest-source")
+ "/googletest"))
+ ;; Exclude one warning that causes a build error
+ (("-Werror") "-Werror -Wno-error=sign-compare"))
+ #t))
+ ;; The SConstruct script doesn't configure installation so
+ ;; binaries must be copied to the output path directly
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (mkdir-p bin)
+ (install-file "xsettingsd" bin)
+ (install-file "dump_xsettings" bin)
+ #t))))))
+ (home-page "https://github.com/derat/xsettingsd")
+ (synopsis "Xorg settings daemon")
+ (description "@command{xsettingsd} is a lightweight daemon that provides settings to
+Xorg applications via the XSETTINGS specification. It is used for defining
+font and theme settings when a complete desktop environment (GNOME, KDE) is
+not running. With a simple @file{.xsettingsd} configuration file one can avoid
+configuring visual settings in different UI toolkits separately.")
+ (license license:bsd-3)))
--
2.24.1
Marius Bakke wrote 5 years ago
(name . David Wilson)(address . david@daviwil.com)(address . 39306@debbugs.gnu.org)
87d0b0orav.fsf@devup.no
David Wilson <david@daviwil.com> writes:

Toggle quote (21 lines)
> Marius Bakke <mbakke@fastmail.com> writes:
>
>> It is definitively OK to disable warnings coming from dependencies. In
>> fact, that is what we are supposed to do, and used to do until the
>> switch to GCC 7.
>>
>> To clarify, when we switched to GCC 7, its search paths were changed
>> from C{,PLUS}_INCLUDE_PATH to CPATH. The only[*] difference between
>> these search paths is that headers found on the former are treated as
>> "system headers", which disables warnings.
>>
>> [*] Besides the fact that GCC 6 and later is very picky about the order
>> of entries in C_INCLUDE_PATH, which is why we had to switch; see
>> <https://issues.guix.gnu.org/issue/30756> for details.
>
> Thanks for the background, that was helpful! I've been out of the loop
> on GCC changes for a while so it's good to know that this happened.
>
> I've made the suggested changes to the summary and description, attached
> the updated patch.

Excellent, LGTM!
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl4zAMgACgkQoqBt8qM6
VPpoAQgAqHzWjX7RSiL3mFIIUN+NPmAFlYy+ttEJoBnIKU4NAZQ5OcGLyXenp+HR
nW7g7lBoFPxJtYPmrrCQ32ENOPGa63pKhP84tLeYdPl/WfzR+r7PWha8hqIG4wLp
zbYw0lko/8NHA38zRD6NkcKwMf7ae8OLrgu/+8wboMVe2S74x8tZlnYdodpfQ54g
1kPlmeqWMKPbhvipyRf1Sw5xCd7MJtHHRpjgmWP40jNif4VedQVsMKKeNR9NmhrX
J7SdjBArpBZfFp0TlREG3gCh0ZyK51xmJGz49FJXwen1drVEep45DLlXjSuBo6XQ
UY6Ep4xtCCKYfpmzs2sJ1vXyRfmfOQ==
=lCW0
-----END PGP SIGNATURE-----

David Wilson wrote 5 years ago
(name . Marius Bakke)(address . mbakke@fastmail.com)(address . 39306-done@debbugs.gnu.org)
87imkr3f0a.fsf@daviwil.com
Thanks for your help Marius!

Pushed this to master as commit 261d0e8e3837139b9d4314a87c8370c6d7f54124.

David
Closed
?
Your comment

This issue is archived.

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

To respond to this issue using the mumi CLI, first switch to it
mumi current 39306
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
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help