[bug#78309,1/2] system: Only add guix artwork on a desktop system.

Message ID 87496cc3340ae93152e6f7ceba3e43e1a890a2b7.1746683644.git.efraim@flashner.co.il
State New
Headers
Series Only add guix artwork on a desktop system. |

Commit Message

Efraim Flashner May 8, 2025, 5:56 a.m. UTC
  * gnu/system.scm (%base-packages): Remove %base-packages-artwork.
* gnu/services/desktop.scm (desktop-services-for-system): Add
guix-artwork profile service.

Change-Id: I4071e8137609dbb7dfdba174d1da2d8811421a00
---
 gnu/services/desktop.scm | 7 ++++++-
 gnu/system.scm           | 3 +--
 2 files changed, 7 insertions(+), 3 deletions(-)
  

Comments

Maxim Cournoyer May 8, 2025, 6:40 a.m. UTC | #1
Hi Efraim,

Efraim Flashner <efraim@flashner.co.il> writes:

> * gnu/system.scm (%base-packages): Remove %base-packages-artwork.
> * gnu/services/desktop.scm (desktop-services-for-system): Add
> guix-artwork profile service.

[...]

> +         ;; Add some of the artwork niceties for the desktop.
> +         (simple-service 'guix-artwork
> +                         profile-service-type
> +                         %base-packages-artwork)
> +
>           ;; This is a volatile read-write file system mounted at /var/lib/gdm,
>           ;; to avoid GDM stale cache and permission issues.
>           gdm-file-system-service
> diff --git a/gnu/system.scm b/gnu/system.scm
> index bc652b1ce59..2f87b99fce3 100644
> --- a/gnu/system.scm
> +++ b/gnu/system.scm
> @@ -982,8 +982,7 @@ (define-deprecated %base-packages-disk-utilities #f '())
>  (define %base-packages
>    ;; Default set of packages globally visible.  It should include anything
>    ;; required for basic administrator tasks.
> -  (append %base-packages-artwork
> -          %base-packages-interactive

I was wondering, aren't the artwork also use to provide a nicer GRUB
background?  That's maybe not super important for servers, but I thought
I'd point it out.
  
Efraim Flashner May 8, 2025, 8:12 a.m. UTC | #2
On Thu, May 08, 2025 at 03:40:39PM +0900, Maxim Cournoyer wrote:
> Hi Efraim,
> 
> Efraim Flashner <efraim@flashner.co.il> writes:
> 
> > * gnu/system.scm (%base-packages): Remove %base-packages-artwork.
> > * gnu/services/desktop.scm (desktop-services-for-system): Add
> > guix-artwork profile service.
> 
> [...]
> 
> > +         ;; Add some of the artwork niceties for the desktop.
> > +         (simple-service 'guix-artwork
> > +                         profile-service-type
> > +                         %base-packages-artwork)
> > +
> >           ;; This is a volatile read-write file system mounted at /var/lib/gdm,
> >           ;; to avoid GDM stale cache and permission issues.
> >           gdm-file-system-service
> > diff --git a/gnu/system.scm b/gnu/system.scm
> > index bc652b1ce59..2f87b99fce3 100644
> > --- a/gnu/system.scm
> > +++ b/gnu/system.scm
> > @@ -982,8 +982,7 @@ (define-deprecated %base-packages-disk-utilities #f '())
> >  (define %base-packages
> >    ;; Default set of packages globally visible.  It should include anything
> >    ;; required for basic administrator tasks.
> > -  (append %base-packages-artwork
> > -          %base-packages-interactive
> 
> I was wondering, aren't the artwork also use to provide a nicer GRUB
> background?  That's maybe not super important for servers, but I thought
> I'd point it out.

guix-icons, currently the only package in %base-packages-artwork,
provides a nice square guix icon.  The bootloaders and login managers
which use the backgrounds from the artwork repository grab their images
directly from the %artwork-repository.  The guix-backgrounds package
takes the %artwork-repository and extracts the desktop backgrounds from
it to make it easier to use them for desktops.
  
Maxim Cournoyer May 8, 2025, 11:38 a.m. UTC | #3
Hi Efraim,

Efraim Flashner <efraim@flashner.co.il> writes:

[...]

>> > diff --git a/gnu/system.scm b/gnu/system.scm
>> > index bc652b1ce59..2f87b99fce3 100644
>> > --- a/gnu/system.scm
>> > +++ b/gnu/system.scm
>> > @@ -982,8 +982,7 @@ (define-deprecated %base-packages-disk-utilities #f '())
>> >  (define %base-packages
>> >    ;; Default set of packages globally visible.  It should include anything
>> >    ;; required for basic administrator tasks.
>> > -  (append %base-packages-artwork
>> > -          %base-packages-interactive
>> 
>> I was wondering, aren't the artwork also use to provide a nicer GRUB
>> background?  That's maybe not super important for servers, but I
>> thought
>> I'd point it out.
>
> guix-icons, currently the only package in %base-packages-artwork,
> provides a nice square guix icon.  The bootloaders and login managers
> which use the backgrounds from the artwork repository grab their
> images
> directly from the %artwork-repository.  The guix-backgrounds package
> takes the %artwork-repository and extracts the desktop backgrounds
> from
> it to make it easier to use them for desktops.

I see, thanks for the explanation.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>
  

Patch

diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index 2127c2d389c..12560a6249d 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -6,7 +6,7 @@ 
 ;;; Copyright © 2017, 2020, 2022, 2023, 2025 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2017 Nikita <nikita@n0.is>
 ;;; Copyright © 2017, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
-;;; Copyright © 2018, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2018, 2020, 2022, 2025 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2018, 2023 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
@@ -2454,6 +2454,11 @@  (define* (desktop-services-for-system #:optional
                               (list (file-append nfs-utils "/sbin/mount.nfs")
                                (file-append ntfs-3g "/sbin/mount.ntfs-3g"))))
 
+         ;; Add some of the artwork niceties for the desktop.
+         (simple-service 'guix-artwork
+                         profile-service-type
+                         %base-packages-artwork)
+
          ;; This is a volatile read-write file system mounted at /var/lib/gdm,
          ;; to avoid GDM stale cache and permission issues.
          gdm-file-system-service
diff --git a/gnu/system.scm b/gnu/system.scm
index bc652b1ce59..2f87b99fce3 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -982,8 +982,7 @@  (define-deprecated %base-packages-disk-utilities #f '())
 (define %base-packages
   ;; Default set of packages globally visible.  It should include anything
   ;; required for basic administrator tasks.
-  (append %base-packages-artwork
-          %base-packages-interactive
+  (append %base-packages-interactive
           %base-packages-linux
           %base-packages-networking
           %base-packages-utils))