Premium frosted-glass SDDM login theme for DimArch OS.
- Frosted-glass login card with drop shadow
- Real-time clock (top-right)
- User avatar with priority chain:
.face.icon→.face→ThemeAvatarif configured →DAfallback - Session selector popup (capped at 5 visible items, scrollable)
- Power panel (shutdown / reboot / session)
- Multi-language: English and Russian included
- All visual parameters configurable via
theme.conf
Arch Linux / CachyOS:
sudo pacman -S sddm qt5-graphicaleffects ttf-inter-variable rsyncOptional (cursor theme):
sudo pacman -S bibata-cursor-themegit clone https://github.com/dmitrax/dimarch-sddm-theme
cd dimarch-sddm-theme
./install.shThe installer auto-detects your system name (/etc/os-release) and locale ($LANG).
sudo /usr/share/sddm/themes/dimarch/scripts/update-theme.sh# Set system name explicitly
sudo /usr/share/sddm/themes/dimarch/scripts/update-theme.sh --name "DimArch OS"
# Set locale explicitly
sudo /usr/share/sddm/themes/dimarch/scripts/update-theme.sh --locale ru
# Both at once
sudo /usr/share/sddm/themes/dimarch/scripts/update-theme.sh --name "DimArch OS" --locale ru| Code | Language |
|---|---|
en |
English |
ru |
Русский |
Add more by dropping a <code>.conf file into locale/.
Place your background image at:
/usr/share/sddm/themes/dimarch/backgrounds/login-lock.jpg
Or change BgSource in theme.conf.
UI scale is detected automatically at SDDM startup based on monitor height:
| Resolution | Scale |
|---|---|
| 4K (≥2160) | 1.5x |
| 1440p | 1.2x |
| 1080p | 1.0x |
| <1080p | 0.85x |
To override, set UiScale in theme.conf:
UiScale=1.3Note: on Wayland, SDDM may expose logical/effective monitor size rather than physical pixels. If the UI looks too small or too large, set
UiScalemanually.
The theme exposes PrimaryX, PrimaryY, PrimaryWidth and PrimaryHeight in theme.conf,
but these options are experimental.
SDDM may create a separate greeter view per monitor, so global monitor coordinates may behave differently depending on the backend and display setup.
Recommended default — leave at 0 unless you have tested your exact SDDM monitor mapping:
PrimaryX=0
PrimaryY=0
PrimaryWidth=0
PrimaryHeight=0sddm-greeter --test-mode --theme /usr/share/sddm/themes/dimarchPrimaryX/Y/Width/Heightare experimental — leave at0unless you have tested your exact SDDM monitor mapping.- In
sddm-greeter --test-mode, login and shutdown actions may print socket errors. This is expected. - If
.face.iconis not readable by SDDM, the theme falls back toThemeAvatarorDAmonogram. - SDDM Wayland backend is not tested with this theme.
For experimentation see branch
feature/sddm-wayland(planned).
- Glass card: semi-transparent frosted card with
layer.effect: DropShadow - Power buttons integrated into card footer (pill-shaped, matches form width)
- Auto-height layout: card height adapts to content — no empty zones
- Background auto-detection in
update-theme.sh— works with.jpg,.png,.webp - SessionPopup transparency matches card style
- Configurable card geometry:
CardContentTopMargin,CardFooterGap,CardBottomPadding,FooterHeight,FooterIconSpacing,FormWidthRatio CardHeight=0enables auto-height mode
- Scale fix: auto thresholds revised — 4K→1.5x, 1440p→1.2x, 1080p→1.0x, <1080p→0.85x
- UiScale override in
theme.conf— set explicitly if auto-detect is wrong - SessionPopup: capped at 5 visible items with proper scrolling for long lists
- Shadow quality:
samples = 2 * radius + 1— smooth, no cutoff artifacts - update-theme.sh: removed xrandr dependency — UI scale detected automatically at SDDM startup
- install.sh: excluded
.git,install.sh,.gitkeepand docs from theme installation
- Multi-monitor support:
PrimaryX/Y/Width/Heightintheme.conf - Auto UI scale based on monitor height
- All sizes scaled consistently across every component
- Localization system: all UI strings moved to
theme.conf - Added
locale/en.confandlocale/ru.conf update-theme.shreplacesupdate-system-name.sh— handles both name and locale- Auto-detect locale on install via
$LANG//etc/locale.conf
- Initial release