How to remove xfce wallpaper

I tried xfce once a couple months ago and haven’t been able to get the mouse in the wallpaper to go away.

Currently rolling exwm, same problem xmonad, not a problem on gnome or kde.

services.xserver.displayManager.lightdm.greeters.gtk.extraConfig = "background = <photo in my flake tree>";

seems like a good idea, and my photo flashes for a second at login before the mouse takes back over.

╰─>$ cat /etc/lightdm/lightdm-gtk-greeter.conf
[greeter]
theme-name = Adwaita-dark
icon-theme-name = Adwaita-dark
cursor-theme-name = Adwaita-dark
cursor-theme-size = 16
background = /nix/store/7hsckf791p8f44amhmrqzfhbx51r0zax-simple-dark-gray-2018-08-28/share/backgrounds/nixos/nix-wallpaper-simple-dark-gray_bottom.png



background = /nix/store/pi48942qnpxjmw7qv8wdidfgwixhayzj-source/modules/system/desktops/backgrounds/<myphoto>.jpg

I haven’t seen wallpaper-simple-dark-gray_bottom.png in forever.

nix-store --query --roots /nix/store/*xfce* used to be pretty big, so I nuked all the previous generations and garbage collected, got it down to seven lines

/run/current-system -> /nix/store/rykkns5a5s27hxih6j05rxw0zn309x23-nixos-system-grindenstern-24.05.20231127.8cfef69
/nix/var/nix/profiles/system-1-link -> /nix/store/rykkns5a5s27hxih6j05rxw0zn309x23-nixos-system-grindenstern-24.05.20231127.8cfef69
/run/booted-system -> /nix/store/rykkns5a5s27hxih6j05rxw0zn309x23-nixos-system-grindenstern-24.05.20231127.8cfef69
/tmp/nixos-rebuild.0KJs9p/result -> /nix/store/mh1q5yvb7q22p9jiqwyy7a9q459rgj82-nixos-system-grindenstern-23.11.20231116.7414e9e
/tmp/nixos-rebuild.0vyJoQ/result -> /nix/store/zjvcw5bvwvs53ihdpphv1nalc2f3g0g2-nixos-system-grindenstern-23.11.20231029.90e85bc
/tmp/nixos-rebuild.TxYe7I/result -> /nix/store/rrk5l3c0zxcd6rz4qhdczsa6p98s4xg0-nixos-system-grindenstern-23.11.20231029.90e85bc
/tmp/nixos-rebuild.nkKysP/result -> /nix/store/bzx44wdi3g6f1qkirzn4rpfa4dcp2ksi-nixos-system-grindenstern-23.11.20231029.90e85bc

I don’t see how the mouse will ever be garbage collected, since it’s a legacy from a few generations a couple months ago. Moreover, I should be able to find where the mouse is stored and where x is choosing it, but I haven’t been able to. Solving this problem by garbage collecting is giving up, in a sense.

This is definitely the least NixOS experience I’ve had. XFCE’s wallpapers are deeply and unhingedly effectful.

I had a similar problem – once I installed/started xfce (for testing), the lightdm-background changed to the ugly xfce-background. Deinstalling xfce and garbage-collecting does not help.

But I have found the reasons and solutions.

  • Reason: The reason, why the lightdm-background changes, is, that it tries to use “user-backgrounds”. The idea is, that the login-background should be the same as the desktop-background of the user. So, as soon as you select a user on the login-screen, the background changes to the desktop-background of the user.
  • Implementation: This is configured via the accounts-service and user-specific files in /var/lib/AccountsService/users/.

Solutions/Workarounds:

  • Change/set background per user: Edit /var/lib/AccountsService/users/USERNAME,

    XFCE e.g. adds the following there:

    [org.freedesktop.DisplayManager.AccountsService]
    BackgroundFile='/nix/store/6ix5a17vkkaf9c4naxss8w4vf7kxh1bw-xfdesktop-4.18.1/share/backgrounds/xfce/xfce-blue.jpg'
    
  • Disable user-backgrounds in configuration.nix (recommended):

    services.xserver.displayManager.lightdm.greeters.gtk.extraConfig = ''user-background = false'';
    

    Then, no user-backgrounds are used, but displayManager.lightdm.background is used for all users.

    (Maybe adding an option displayManager.lightdm.greeters.gtk.user-backgrounds would be the best long-term solution.)

  • Completely disable Accounts-Service in configuration.nix:

    services.accounts-daemon.enable = pkgs.lib.mkForce false;
    

    But this may have some negative side-effects, since e.g. xfce wants accounts-services.

Other relevant messages: NisOS Set Greeter Wallpaper?