unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: Chris Marusich <cmmarusich@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>, "Aiko Kyle" <aikokyle@gmail.com>
Cc: 52908@debbugs.gnu.org
Subject: bug#52908: 'tests/guix-system.sh' fails on aarch64-linux
Date: Thu, 06 Jan 2022 20:32:23 -0800	[thread overview]
Message-ID: <87h7agmai0.fsf@gmail.com> (raw)
In-Reply-To: <87a6g8es32.fsf@gnu.org> ("Ludovic Courtès"'s message of "Thu, 06 Jan 2022 17:39:45 +0100")


[-- Attachment #1.1: Type: text/plain, Size: 830 bytes --]

Hi Ludo and Aiko,

Ludovic Courtès <ludo@gnu.org> writes:

> I’d rather not move things and fix the bug in the same commit.  (I’m not
> even convinced sddm needs to leave its own module, plus it would break
> the API, which is not something to do lightly.)

You're right!  I was able to avoid moving the (gnu services sddm) module
by autoloading it from (gnu services xorg).  I've committed the fix as
79260c8695cc5e3cd64f5b01e262369d5a67f141, along with two commits that
update the guix package.

> Thanks for fixing it!
>
> And yes, we’ll need to update the ‘guix’ package once this fix is in.

Thank you for the review!

Aiko, can you confirm that after running "guix pull" the issue is
resolved on your end, too?

-- 
Chris

PGP: https://savannah.gnu.org/people/viewgpg.php?user_id=106836

[-- Attachment #1.2: 0001-services-Consistently-use-SDDM-rather-than-GDM-on-no.patch --]
[-- Type: text/x-patch, Size: 4160 bytes --]

From 79260c8695cc5e3cd64f5b01e262369d5a67f141 Mon Sep 17 00:00:00 2001
From: Chris Marusich <cmmarusich@gmail.com>
Date: Thu, 6 Jan 2022 18:43:47 -0800
Subject: [PATCH] services: Consistently use SDDM rather than GDM on
 non-x86_64.

This is a follow-up to 49599fab564f203b8e92d32e9b28c99e99849bfb.

Fixes: <https://issues.guix.gnu.org/52908>.

* gnu/services/xorg.scm (set-xorg-configuration)[login-manager-service-type]:
When the current system or target system begins with the string "x86_64", use
gdm-service-type as before; otherwise, use sddm-service-type.
* gnu/system/examples/vm-image.tmpl (services): Add sddm-service-type to the
list of service types to remove.
---
 gnu/services/xorg.scm             | 11 ++++++++++-
 gnu/system/examples/vm-image.tmpl |  6 +++---
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
index 82a7d25602..35f8dbc5f8 100644
--- a/gnu/services/xorg.scm
+++ b/gnu/services/xorg.scm
@@ -11,6 +11,7 @@
 ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
 ;;; Copyright © 2021 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2021 Josselin Poiret <josselin.poiret@protonmail.ch>
+;;; Copyright © 2022 Chris Marusich <cmmarusich@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -28,6 +29,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu services xorg)
+  #:autoload   (gnu services sddm) (sddm-service-type)
   #:use-module (gnu artwork)
   #:use-module (gnu services)
   #:use-module (gnu services shepherd)
@@ -1040,10 +1042,17 @@ the GNOME desktop environment.")
                    "Run the GNOME Desktop Manager (GDM), a program that allows
 you to log in in a graphical session, whether or not you use GNOME."))))
 
+;; Since GDM depends on Rust (gdm -> gnome-shell -> gjs -> mozjs -> rust)
+;; and Rust is currently unavailable on non-x86_64 platforms, default to
+;; SDDM there (FIXME).
 (define* (set-xorg-configuration config
                                  #:optional
                                  (login-manager-service-type
-                                  gdm-service-type))
+                                  (let ((system (or (%current-target-system)
+                                                    (%current-system))))
+                                    (if (string-prefix? "x86_64" system)
+                                        gdm-service-type
+                                        sddm-service-type))))
   "Tell the log-in manager (of type @var{login-manager-service-type}) to use
 @var{config}, an <xorg-configuration> record."
   (simple-service 'set-xorg-configuration
diff --git a/gnu/system/examples/vm-image.tmpl b/gnu/system/examples/vm-image.tmpl
index a59d91587b..ccb0b045db 100644
--- a/gnu/system/examples/vm-image.tmpl
+++ b/gnu/system/examples/vm-image.tmpl
@@ -5,7 +5,7 @@
 ;;
 
 (use-modules (gnu) (guix) (srfi srfi-1))
-(use-service-modules desktop mcron networking spice ssh xorg)
+(use-service-modules desktop mcron networking spice ssh xorg sddm)
 (use-package-modules bootloaders certs fonts nvi
                      package-management wget xorg)
 
@@ -107,12 +107,12 @@ root ALL=(ALL) ALL
                  ;; Use the DHCP client service rather than NetworkManager.
                  (service dhcp-client-service-type))
 
-           ;; Remove GDM, ModemManager, NetworkManager, and wpa-supplicant,
-           ;; which don't make sense in a VM.
+           ;; Remove some services that don't make sense in a VM.
            (remove (lambda (service)
                      (let ((type (service-kind service)))
                        (or (memq type
                                  (list gdm-service-type
+                                       sddm-service-type
                                        wpa-supplicant-service-type
                                        cups-pk-helper-service-type
                                        network-manager-service-type

base-commit: c4240dfdb433239108edaf12acb5c51138f9dc74
-- 
2.30.2


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 861 bytes --]

  reply	other threads:[~2022-01-07  4:33 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-30 23:52 bug#52908: 'tests/guix-system.sh' fails on aarch64-linux Leo Famulari
2022-01-04  2:15 ` Chris Marusich
2022-01-04  3:43   ` Aiko Kyle
2022-01-04  4:53     ` Chris Marusich
2022-01-04  5:08       ` Aiko Kyle
2022-01-05  9:58         ` Chris Marusich
2022-01-05 10:47           ` Pierre Langlois
2022-01-06  7:28             ` Chris Marusich
2022-01-05 17:34           ` Aiko Kyle
2022-01-04 17:28     ` Leo Famulari
2022-01-06 16:39   ` Ludovic Courtès
2022-01-07  4:32     ` Chris Marusich [this message]
2022-01-07 10:48       ` Maxime Devos
2022-01-09  4:42         ` Chris Marusich
2022-01-08  1:26       ` Aiko Kyle
2022-01-08  2:18         ` Leo Famulari

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87h7agmai0.fsf@gmail.com \
    --to=cmmarusich@gmail.com \
    --cc=52908@debbugs.gnu.org \
    --cc=aikokyle@gmail.com \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).