Permanently setting sddm theme?

On a (non-KDE) Manjaro installation is there a way of selecting an sddm theme (say breeze) other than manually editing the Current= entry in /usr/lib/sddm/sddm.conf.d/default.conf?
That approach has the drawback of being overwritten/reverted when the sddm package gets updated. Is there a more appropriate way of configuring the sddm theme?

The same question goes for selecting the background image in the breeze theme which can be altered manually in /usr/share/sddm/themes/breeze/theme.conf but does not survive a package update either.

…wrong.

We make custom (system-wide) configurations in /etc/
You might use /etc/sddm.conf directly … but I would probably suggest using something like

/etc/sddm.conf.d/my-custom-config.conf

*.d directories are for this exact purpose - drop-in configuration files.
Which have the added benefit of not being a file provided by a software package.

/etc/sddm.conf.d/your_own_config.conf
will not be altered or touched by any updates

it can get in your way some day in the future, though - when you may have forgotten about the changes you made …

Don’t change /usr/lib/sddm/sddm.conf.d/default.conf

Create a new SDDM configuration file e.g /etc/sddm.conf.d/sddm.conf

Then add the following lines to it:

[Theme]
Current=breeze

See https://wiki.archlinux.org/title/SDDM#Configuration
https://wiki.archlinux.org/title/SDDM#Theme_settings

Don’t change the content of /usr/share/sddm/themes/breeze/theme.conf

Just create a new file named /usr/share/sddm/themes/breeze/theme.conf.user

Then add the following lines to it:

[General]
background=path_to_image
type=image

https://wiki.archlinux.org/title/SDDM#Customizing_a_theme

1 Like

Thanks a lot to everyone who replied. This is very helpful.
Let me add an extra question: how do I set the mouse pointer theme used with sddm?
I edited /usr/share/icons/default/index.theme, but maybe there is a more appropriate way as well?

[Theme]
Current=breeze
CursorTheme=Qogir-manjaro-dark
Font=Noto Sans,10,-1,5,400,0,0,0,0,0,0,0,0,0,0,1

Thanks. It looks like when there is an Inherits= line in /usr/share/icons/default/index.theme that one takes precedence though.
I’m not sure whether it is being set (in my case to xcursor-breeze) by default or by some package. At least I had to comment out that line.

1 Like

That sounds logical to me. :slight_smile: