# Alloy greetd configuration # # Boots into tuigreet on VT1. tuigreet prompts for user and password, # then execs alloy-session, which puts the user's chosen day/night # skeleton in place and execs sway. Pointing --cmd at bare sway would # start a session against whatever skeleton happens to be on disk, and # ~/.config/sway/config is one of the files the mode changes. # tuigreet's --theme below names ANSI slots (gray, black, # light_red ...); those slots carry Akari's tones because # alloy-vtrgb.service repaints the console palette with setvtrgb before # this greeter draws. The named colors here are meaningless without it. # # The screen has two surfaces, and every element belongs to one of them. # The login card is the only thing tuigreet paints a background for # (`container`, a bg); the clock above it and the status line below it # are drawn straight onto the console, whose background is slot 0 and # whose default text is slot 7. Slot 0 is the darkest tone in either # polarity, so anything outside the card has to be a light tone and # anything inside it a dark one. Getting that backwards is what the # earlier string did: `time` and `action` were dark_gray (slot 8, # content.muted) on slot 0, a ratio under 2:1, which left the clock and # the F-key hints all but invisible on the first screen of a boot. # # The slot names, per skelgen's ANSI_16 under a light theme: # # gray (7) surface.raised, the login card # white (15) surface.overlay, the lightest tone # black (0) content.primary, the ink, and the console background # dark_gray (8) content.muted # light_red (9) action.primary, the theme's warm accent # # All five are achromatic slots or the accent, so they invert with the # theme and this string reads the same way against the night table. # `yellow` is status.warning and does not belong on a prompt; the accent # is what an interactive element wants, and it clears 5:1 on the card # where yellow sat under 3:1. `title` follows `border` and `greet` # follows `text` in tuigreet, so neither needs naming here. # # Command must stay on a single line: greetd's TOML parser rejects the # multi-line basic-string / backslash-continuation form ("expected # equals sign on line, but found none"). [terminal] vt = 1 switch = true [default_session] command = "tuigreet --time --remember --asterisks --cmd alloy-session --theme 'container=gray;border=dark_gray;text=black;time=white;prompt=light_red;input=black;action=white;button=light_red'" user = "greeter"