Repository navigation
DeckLock 0.3.6
Added
- The login can have its own background pool, slideshow interval and layout,
through a[login]section withsame_as_lock = false
(decklock config set login.same_as_lock false,login.layout.clock_visible,
login.background_pool). Withsame_as_lock, the default, the login shows what
the lock screen shows, as before, and the file keeps no[login]section. Rest
stays one for both screens. Login setup migrates the login's media to the shared
library like the others and fails before migrating anything if one is unreadable. - Settings have three tabs: Lock screen, Login and Rest. Lock screen holds its
pool, interval and layout; Login holds "Same as the lock screen" (on by default)
and, when off, its own pool, interval and layout; Rest is unchanged and applies to
both screens. Each layout has its own "Restore defaults". The preview shows the
screen of the open tab, the login included, in an ordinary window. "Layout and
preferences" keeps the options shared by all screens. - "Apply to login" in the Login tab saves the settings and applies them to the login
screen through polkit: the session's authentication agent asks for the
administrator password, which DeckLock never sees. It runs the new
decklock setup login-appearance, which refreshes only the login's appearance and
media and refuses a login that does not use DeckLock; the greetd command,
compositor, keyboard and controller stay as they are. Packages install a polkit
action limited to/usr/bin/decklock setup. Without a polkit agent (common on
Hyprland, Sway, labwc or Wayfire) or withoutpkexec, the button shows the terminal
command instead. Setup run throughpkexecfinds the desktop user likesudodoes. - The lock, login and preview screens show the battery level on devices with a
system battery, in the top-right corner on its own row above the power buttons.
That row spans the width, so the help button in the top-left corner lines up with
the power buttons below it; without a battery the row takes no space. It is read
from the Linux power-supply class every 30 seconds; mains adapters and the
batteries of peripherals such as a controller are ignored. Rest mode hides it
together with the power buttons, and the settings preview shows it like the lock
screen. Themes style it through CSS:#battery, itsimageandlabel, the icon
size with-gtk-icon-size, and the.low(20 % or less, not charging) and
.chargingstates. Margins on#batterymove it within its row, and margins on
#top-barmove the whole top bar. - Layout option "Show battery percentage" (
layout.battery_percentage, on by
default); off shows the battery icon alone, with the level in its tooltip. - The lock screen, login and preview have a question-mark help button in the top-left
corner. It opens one short page in plain words, about unlocking or signing in,
inside the screen itself: a session lock shows no other window. F1 opens it too,
and Esc or its × close it. The full guide stays in settings.
Changed
- The login no longer shows a "DeckLock — Login" title; its help button takes the
top-left corner. Help buttons in every window are a plain question mark, which no
longer depends on the icon theme. The preview's help button opens the short lock
guide instead of the full guide. - The preview no longer shows a "Wayland · Preview" banner; it looks like the lock
screen. Its window title and the notice shown on submit still say it is a preview.
Fixed
decklock setup statusrecognizes a login generated for Hyprland, which starts
DeckLock from its Lua file; it reported it as not configured.- The A button confirms like Enter while the on-screen keyboard holds the controller,
at login and on the lock screen. The keyboard captures A along with the other
buttons and ignored it, so with the keyboard open the password could only be sent
with the keyboard's own Enter key, or by hiding the keyboard and clicking.
Compatibility and limitations
- "Apply to login" needs polkit's
pkexecand an authentication agent in the
session. GNOME, KDE Plasma, Xfce and Cinnamon bring one; on Hyprland install and
start one such ashyprpolkitagent. The real polkit dialog and a root write to
/etc/greetdthroughpkexecare not exercised by the suites, which use a fake
pkexecand run login setup as root through sudo. - The A button with a physical controller, the battery on real hardware and the
login help on a Steam Deck login remain outside what the suites establish.
What's Changed
New features
- feat: simplify the login corner, confirm with A and show the battery by @yan-vidal in #65
- feat: lock, login and rest settings, with the login applied from the interface by @yan-vidal in #66
Other changes
- ci(arm): scale an emulated guest's boot timeouts and name emergency mode by @yan-vidal in #67
- Release 0.3.6: lock, login and rest settings, and a simpler login corner by @yan-vidal in #68
- Date the 0.3.6 release 2026-10-11 by @yan-vidal in #69
Full Changelog: v0.3.5...v0.3.6