1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
# sddm-theme-udt
An SDDM login theme for the unified-desktop-theme (UDT) family. It draws the
current wallpaper on every screen, pins the login card to one screen, and takes
its colours from the UDT palette, including the wallpaper-snapped accent.
## How it is wired
`udt-accent`, in the UDT repo, writes the live palette to
`~/.local/share/udt/sddm-theme.conf` on every wallpaper change. Root installs
`/usr/share/sddm/themes/udt/theme.conf.user` as a symlink to that file, which
SDDM merges into the theme config at every greeter start. Wallpaper and accent
need no root re-run; only theme code changes do.
Set `uiScreen` in the root-owned `theme/theme.conf` to pin the login card to a
named screen; leave it empty for the primary screen. It does not belong in the
generated `theme.conf.user`, which is overwritten on every wallpaper change.
## Install
The theme code is copied by root, then SDDM is pointed at it. Both are one-time
root edits:
install -d /usr/share/sddm/themes/udt
cp -r <this repo>/theme/. /usr/share/sddm/themes/udt/
ln -sfn ~/.local/share/udt/sddm-theme.conf /usr/share/sddm/themes/udt/theme.conf.user
Select the theme by setting `Current=udt` under `[Theme]` in `/etc/sddm.conf`.
That file has the highest precedence in SDDM's config order
(`/usr/lib/sddm/sddm.conf.d`, then `/etc/sddm.conf.d`, then `/etc/sddm.conf`,
last wins), so a drop-in under `/etc/sddm.conf.d` does not work here: the stock
`Current=breeze` in `/etc/sddm.conf` overrides it.
The same file carries `[General] InputMethod`. SDDM ships with
`InputMethod=qtvirtualkeyboard`, which pops the on-screen keyboard over the
greeter, and the theme cannot switch that off. Blank it in `/etc/sddm.conf` to
disable the keyboard:
InputMethod=
## Test
sddm-greeter-qt6 --test-mode --theme "$PWD/theme"
## License
GPLv2 only. See `LICENSE`.
## Development Approach
This project is developed using AI-assisted tools. Code is generated with the help of AI based on human-provided specifications, design decisions, and iterative feedback.
All contributions are reviewed, tested, and curated by the maintainer before being included in the codebase. AI is used as a productivity and exploration tool, while human oversight remains central to all decisions.
The goal is to combine the flexibility of AI-assisted development with standard open-source practices such as transparency, review, and accountability.
|