[PATCH] gnu: Remove unnecessary sway dependency on elogind.

  • Done
  • quality assurance status badge
Details
3 participants
  • Liliana Marie Prikler
  • Liliana Marie Prikler
  • muradm
Owner
unassigned
Submitted by
muradm
Severity
normal
Blocked by
M
M
muradm wrote on 19 Jun 2022 16:39
(address . guix-patches@gnu.org)
20220619143905.29089-1-mail@muradm.net
* gnu/packages/wm.scm (sway): Cleanup dependencies.
---
gnu/packages/wm.scm | 1 -
1 file changed, 1 deletion(-)

Toggle diff (14 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index d816bad871..875f73bfe2 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -1588,7 +1588,6 @@ (define-public sway
"/bin/scdoc'")))
#t)))))
(inputs (list cairo
- elogind
gdk-pixbuf
json-c
libevdev
--
2.36.1
L
L
Liliana Marie Prikler wrote on 20 Jun 2022 11:36
aa918162af56ffa9736708d5a76979dd4d463ca6.camel@ist.tugraz.at
Hi,

note that "unnecessary" is quite judgmental. Why is it unnecessary?
By default, guix tends to include "optional" inputs such as elogind.

Am Sonntag, dem 19.06.2022 um 17:39 +0300 schrieb muradm:
Toggle quote (1 lines)
> * gnu/packages/wm.scm (sway): Cleanup dependencies.
The ChangeLog should explicitly say what is done, i.e. (sway)[inputs]:
Remove elogind.


What exactly is the goal here? As far as I'm aware sway works either
with *logind or seatd or by having itself be setuid. If the aim is to
support seatd-based services, I think having a sway-with-seatd variant
would be better.

WDYT?
M
M
muradm wrote on 20 Jun 2022 12:51
(name . Liliana Marie Prikler)(address . liliana.prikler@ist.tugraz.at)(address . 56094@debbugs.gnu.org)
87r13jtw6g.fsf@muradm.net
Hi,

elogind/systemd was used via wlroots actually.
wlroots dropped elogind/system in favour of libseat.
libseat can talk to either systemd, elogind or seatd.
this is already reflected in wlroots package.

setuid thing you point is reflected as warning in meson.build.
there is no functionality behind it as far as I know.
and in 1.7 meson does not look at them directly, but via wlroots.
basically informative from sway point of view.

the only thing left behind is swaybar which relays on
either systemd, elogind or basu for system tray functionality.
this could be used as argument for keeping elogind
as dependency.

you may look at #49969 which added the other day
seatd-service-type and greetd stuff.

--
muradm

Liliana Marie Prikler <liliana.prikler@ist.tugraz.at> writes:

Toggle quote (23 lines)
> Hi,
>
> note that "unnecessary" is quite judgmental. Why is it
> unnecessary?
> By default, guix tends to include "optional" inputs such as
> elogind.
>
> Am Sonntag, dem 19.06.2022 um 17:39 +0300 schrieb muradm:
>> * gnu/packages/wm.scm (sway): Cleanup dependencies.
> The ChangeLog should explicitly say what is done, i.e.
> (sway)[inputs]:
> Remove elogind.
>
>
> What exactly is the goal here? As far as I'm aware sway works
> either
> with *logind or seatd or by having itself be setuid. If the aim
> is to
> support seatd-based services, I think having a sway-with-seatd
> variant
> would be better.
>
> WDYT?
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEESPY5lma9A9l5HGLP6M7O0mLOBeIFAmKwWNgACgkQ6M7O0mLO
BeLQRQ//eJXEArycxaKNqzXCI2oI6uw/ASvTi7bB2kSCAHkt2V4NZ4k/n7YAEbsu
SIsZ8grJoYDuG0yOpmINlNGb6DjTDCb99z0O6Owoh/4k3cYDRBKK+q4cZDwCD0ev
2oK7mzYUvh/Li9JkkNxJ8ADiiMwVxr+CvXfbZDLfhsyQ7mYIMiXtW93+ALppfBts
BBFaTR3Wr8sFNp+AVPwu19vWcU+891MdX6ppxQxFg4bDsB3WJR+4SiRmjERxruOS
McL5r+EpQGeCSTf+/V/JSlOeDIhN7OLD5/g/v4VtordYp+A53wkBI620Dkv06nPw
au25REtZN+s8IXkjoaXmaRRro5Zpyem0mLgd0dTF5F2R7u0zO4JDw9GhVYQzDgYx
ONo8e3Nom0p38SJPh7E9VFA9tQCIDLXVRcOaScn2QkG//lHZm/HmfzF9DkLOt3It
5l98/T+VGqmL7E4cvXLujmmCbnRFk7IcNzQk6RBxHnw+3qcLw1a3E9BJfxMi3fwi
1YNvhlu4u1SJBRV9HUtm6Vb6PJaYY3ymJ3uAx0yPFE1tGmapSv+J4gYmgrk9qMki
X3cY7ktkEhAr+vwc6uU7QHsskAC5SSkYIrT6NnsvWsJGJmylG08vFOZUcX4YlxNA
RAHlUSSxD2QvaG22w++TCUfFqGIKnQ+WpKUPWfBibRiY//TR3+w=
=mhn8
-----END PGP SIGNATURE-----

L
L
Liliana Marie Prikler wrote on 21 Jun 2022 21:12
(name . muradm)(address . mail@muradm.net)(address . 56094@debbugs.gnu.org)
826bdf9d6d981e501d1a7dff2ef3230b94a662ed.camel@gmail.com
Am Montag, dem 20.06.2022 um 13:51 +0300 schrieb muradm:
Toggle quote (4 lines)
> the only thing left behind is swaybar which relays on
> either systemd, elogind or basu for system tray functionality.
> this could be used as argument for keeping elogind
> as dependency.
I think the way forward would be to package basu and replace elogind
with it, rather than drop it and breaking swaybar. WDYT?
M
M
muradm wrote on 22 Jun 2022 11:27
[PATCH] gnu: Remove unnecessary sway dependency on elogind.
(address . 56094@debbugs.gnu.org)(name . Liliana Marie Prikler)(address . liliana.prikler@ist.tugraz.at)
20220622092721.14170-1-mail@muradm.net
Should be applied after #56136.
M
M
muradm wrote on 22 Jun 2022 11:27
[PATCH v2] gnu: wm: Switch sway from elogind to basu.
(address . 56094@debbugs.gnu.org)(name . Liliana Marie Prikler)(address . liliana.prikler@ist.tugraz.at)
20220622092721.14170-2-mail@muradm.net
* gnu/packages/wm.scm (basu): Switch sway from elogind to basu.
[inputs]: Replace elogind with basu for sd-bus library dependency.
[arguments]: Use G-expressions.
<#:configure-flags>: Request building against basu.
---
gnu/packages/wm.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (27 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index ecc79f73b9..7570e37239 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -1572,7 +1572,8 @@ (define-public sway
(base32 "0j4sdbsrlvky1agacc0pcz9bwmaxjmrapjnzscbd2i0cria2fc5j"))))
(build-system meson-build-system)
(arguments
- `(#:phases
+ `(#:configure-flags '("-Dsd-bus-provider=basu")
+ #:phases
(modify-phases %standard-phases
(add-before 'configure 'hardcode-paths
(lambda* (#:key inputs #:allow-other-keys)
@@ -1587,8 +1588,8 @@ (define-public sway
(string-append "'" (assoc-ref inputs "scdoc")
"/bin/scdoc'")))
#t)))))
- (inputs (list cairo
- elogind
+ (inputs (list basu
+ cairo
gdk-pixbuf
json-c
libevdev
--
2.36.1
L
L
Liliana Marie Prikler wrote on 22 Jun 2022 11:31
(address . control@debbugs.gnu.org)
7f0ede4db5c5039dbd0b456435eccd1cbd5bc5f1.camel@ist.tugraz.at
block 56094 by 56136
thanks

Am Mittwoch, dem 22.06.2022 um 12:27 +0300 schrieb muradm:
Toggle quote (1 lines)
> * gnu/packages/wm.scm (basu): Switch sway from elogind to basu.
Should be sway.
Toggle quote (1 lines)
> [inputs]: Replace elogind with basu for sd-bus library dependency.
This can be simplified to "Replace ‘elogind’ with ‘basu’."
Toggle quote (1 lines)
> [arguments]: Use G-expressions.
Actually, you don't, and even if, that ought to be a separate commit.
Toggle quote (1 lines)
> <#:configure-flags>: Request building against basu.
Is this necessary? Doesn't sway have autodetection for basu?


Cheers
M
M
muradm wrote on 22 Jun 2022 11:38
(name . Liliana Marie Prikler)(address . liliana.prikler@ist.tugraz.at)
871qvhc9yk.fsf@muradm.net
Next one reflecting changes.

Yes, necessary to state basu explicitly, meson.build detects
like systemd -> elogind -> basu. While removed from sway
dependencies, elogind still comes from dependencies of
dependencies.

--
muradm

Liliana Marie Prikler <liliana.prikler@ist.tugraz.at> writes:

Toggle quote (17 lines)
> block 56094 by 56136
> thanks
>
> Am Mittwoch, dem 22.06.2022 um 12:27 +0300 schrieb muradm:
>> * gnu/packages/wm.scm (basu): Switch sway from elogind to basu.
> Should be sway.
>> [inputs]: Replace elogind with basu for sd-bus library
>> dependency.
> This can be simplified to "Replace ‘elogind’ with ‘basu’."
>> [arguments]: Use G-expressions.
> Actually, you don't, and even if, that ought to be a separate
> commit.
>> <#:configure-flags>: Request building against basu.
> Is this necessary? Doesn't sway have autodetection for basu?
>
>
> Cheers
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEESPY5lma9A9l5HGLP6M7O0mLOBeIFAmKy45MACgkQ6M7O0mLO
BeIe8Q//Zm0FVKfFpaYqBRGGNri/X/cEEH61jQnFAmtHhres01NZeK/6ctRoXKSc
FxRcl8syoc0413EkSkmVRUIPMpmjOL6gw3XntqzbLSN34hX9+b81Xmh/St3xA6ll
soptDSmLkDgJU37VwMqvA07gS6fAH5wrwKEiBxeydWC6EAn6p8d4L6gDwJuZJH6L
9Ih7ys/raVH5AjtQFALg7zg7TmDTzANybNFkdMN1xHW1zyKtU+YzIyNXjec1Fmo9
piq20XnzJjEHTLaWwMu8pA7L3IH07qoGsNi6FmEJwCnQWsK3mKuHcZM0V1+kMIiE
GvkJyzWJdIQwzGhruRk5gjiwHmz3z3rjeyfmlNa8buOdduHlmlmmTwiaXoJ++XUH
pLmfVJWJQUTeXpb+/y2XZRyl1AGvnw/8ACu+5RwT8KDx1nedzSe5TZ105lzgJ1UH
I68vQlvW0hZTfpeIN3PshcJ5LvM5WBg+uFiW81EXFhzXCU4BcStnm0wUWB7n3sn0
5b36a6lMBbS6gkijkXfQl15zf7turiGC2poVsOTEtdZI3dU0qs4QwSuciDXEiev5
nVX5JloSPNmuRV/j8K8R7V5aleGtKMwI9T27CuTZbHMLwVjmxuNhggcKUmdRiNRB
KvAQBInK8dcEAcEAcSnJzRYczhFwllBsJMBuekzdNe+kqDmHclc=
=ViS+
-----END PGP SIGNATURE-----

L
L
Liliana Marie Prikler wrote on 22 Jun 2022 11:47
(name . muradm)(address . mail@muradm.net)(address . 56094@debbugs.gnu.org)
d03e66fa0bbb0036b21e01e325f6076320ff57c3.camel@ist.tugraz.at
Am Mittwoch, dem 22.06.2022 um 12:38 +0300 schrieb muradm:
Toggle quote (6 lines)
> Next one reflecting changes.
>
> Yes, necessary to state basu explicitly, meson.build detects
> like systemd -> elogind -> basu. While removed from sway
> dependencies, elogind still comes from dependencies of
> dependencies.
We call that a transitive propagated input. You should probably add a
comment that elogind "still exists" and justify your defensive
programming in there.

Cheers
M
M
muradm wrote on 22 Jun 2022 11:52
[PATCH v3] gnu: wm: Switch sway from elogind to basu.
(address . 56094@debbugs.gnu.org)(name . Liliana Marie Prikler)(address . liliana.prikler@ist.tugraz.at)
20220622095249.15421-1-mail@muradm.net
* gnu/packages/wm.scm (sway): Replace ‘elogind’ with ‘basu’.
[inputs]: Replace ‘elogind’ with ‘basu’.
[arguments]:
<#:configure-flags>: Request building against basu.
`elogind` still exists as transitive propagated input,
while `meson.build` auto detects by probing `systemd`,
`elogind` and `basu` in respective order.
---
gnu/packages/wm.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (27 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index ecc79f73b9..7570e37239 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -1572,7 +1572,8 @@ (define-public sway
(base32 "0j4sdbsrlvky1agacc0pcz9bwmaxjmrapjnzscbd2i0cria2fc5j"))))
(build-system meson-build-system)
(arguments
- `(#:phases
+ `(#:configure-flags '("-Dsd-bus-provider=basu")
+ #:phases
(modify-phases %standard-phases
(add-before 'configure 'hardcode-paths
(lambda* (#:key inputs #:allow-other-keys)
@@ -1587,8 +1588,8 @@ (define-public sway
(string-append "'" (assoc-ref inputs "scdoc")
"/bin/scdoc'")))
#t)))))
- (inputs (list cairo
- elogind
+ (inputs (list basu
+ cairo
gdk-pixbuf
json-c
libevdev
--
2.36.1
L
L
Liliana Marie Prikler wrote on 22 Jun 2022 11:57
16e543f33eb1870d0da3a2dbf41e4c2279e4c57d.camel@ist.tugraz.at
Am Mittwoch, dem 22.06.2022 um 12:52 +0300 schrieb muradm:
Toggle quote (2 lines)
> * gnu/packages/wm.scm (sway): Replace ‘elogind’ with ‘basu’.
> [inputs]: Replace ‘elogind’ with ‘basu’.
Collapse to (sway)[inputs]. No need to repeat yourself.
Toggle quote (2 lines)
> [arguments]:
> <#:configure-flags>: Request building against basu.
Since we're at it, this should actually be "Add [the flag]".
Toggle quote (3 lines)
> `elogind` still exists as transitive propagated input,
> while `meson.build` auto detects by probing `systemd`,
> `elogind` and `basu` in respective order.
In the source, not in the commit message :P
Can be shortened to "elogind is propagated by [input] and would
otherwise shadow basu".


Cheers
M
M
muradm wrote on 22 Jun 2022 12:35
[PATCH v4] gnu: wm: Switch sway from elogind to basu.
20220622103548.18453-1-mail@muradm.net
* gnu/packages/wm.scm (sway):
[inputs]: Replace ‘elogind’ with ‘basu’.
[arguments]: Add -Dsd-bus-provider=basu flag.
---
gnu/packages/wm.scm | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)

Toggle diff (29 lines)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index ecc79f73b9..0ea7641db3 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -1572,7 +1572,10 @@ (define-public sway
(base32 "0j4sdbsrlvky1agacc0pcz9bwmaxjmrapjnzscbd2i0cria2fc5j"))))
(build-system meson-build-system)
(arguments
- `(#:phases
+ `(;; elogind is propagated by wlroots -> libseat
+ ;; and would otherwise shadow basu.
+ #:configure-flags '("-Dsd-bus-provider=basu")
+ #:phases
(modify-phases %standard-phases
(add-before 'configure 'hardcode-paths
(lambda* (#:key inputs #:allow-other-keys)
@@ -1587,8 +1590,8 @@ (define-public sway
(string-append "'" (assoc-ref inputs "scdoc")
"/bin/scdoc'")))
#t)))))
- (inputs (list cairo
- elogind
+ (inputs (list basu
+ cairo
gdk-pixbuf
json-c
libevdev
--
2.36.1
L
L
Liliana Marie Prikler wrote on 22 Jun 2022 12:39
2e298fd393b2aa82e639aca3cfbd7c99c41eef42.camel@ist.tugraz.at
Am Mittwoch, dem 22.06.2022 um 13:35 +0300 schrieb muradm:
Toggle quote (3 lines)
> * gnu/packages/wm.scm (sway):
> [inputs]: Replace ‘elogind’ with ‘basu’.
> [arguments]: Add -Dsd-bus-provider=basu flag.
Tiny nitpick, should literally be “Add "-Dsd-bus-provider=basu"”
(see how quoting this is hard?) You don't need to send a v5 though,
I'll just reword it once basu is ready.


Cheers
L
L
Liliana Marie Prikler wrote on 22 Jun 2022 21:36
Re: [PATCH v4] gnu: freedesktop: Add basu 0.2.0.
81828717d0937860994521ee13250cd29c438356.camel@gmail.com
Am Mittwoch, dem 22.06.2022 um 16:21 +0300 schrieb muradm:
Toggle quote (1 lines)
> * gnu/packages/freedesktop.scm (basu): New variable.
Pushed along with the original issue. Reworded both slightly.

Cheers
Closed
?