Skip to content

[BUG] greeter.toml gets overwritten / monitor layout is incorrect #86

Description

@Yashaape

Submission checklist

  • I have searched existing issues and confirmed this is not a duplicate.
  • I am using the latest available version of noctalia-greeter.

Bug description

noctalia-greeter --version
noctalia-greeter 1.0.0

❯ cat /etc/greetd/config.toml
[terminal]
vt = 1

[default_session]
command = "/usr/bin/noctalia-greeter-session"
user = "greeter"

cat greeter.toml

noctalia-greeter greeter.toml

[session] default/last, [user] default, [appearance] scheme/password_style/hide_logo

[output] name/layout/scale, [cursor] theme/size/path, [keyboard] layout/variant/options/numlock

[appearance]
scheme = "Synced"

[output]
layout = "HDMI-A-1:0,0; DP-2:1920,0; DP-1:3120,480"
transforms = "DP-2:90"
[session]
last = "Hyprland (uwsm-managed)"

The issue I'm having is that I can't seem to make any changes to greeter.toml it keeps getting overwritten back to default which is the same greeter.toml I have pasted above just without the transforms part. I installed using pacman so I don't know if its recommended to compile this myself instead. The layout was automatically generated from autosync and its the same as my hyprland monitors.lua, however on the login screen the layout is as follows

| HDMI-A-1| --> |DP-2|
|
|
V
| DP-1 |

My Hyprland-uwsm session layout looks like this

| HDMI-A-1 | <-- | DP-2 (Vertical) | <-- | DP-1 (main)|

Things I've Tried
./print_greetd_config.sh
Configure greetd - copy and paste the block below.
On an existing greetd setup this replaces config.toml (a .bak copy is made first).

sudo useradd -r -s /usr/bin/nologin -d /var/lib/noctalia-greeter greeter 2>/dev/null || true

sudo cp -a /etc/greetd/config.toml /etc/greetd/config.toml.bak 2>/dev/null || true
sudo tee /etc/greetd/config.toml >/dev/null <<'GREETD_CONFIG'
[terminal]
vt = 1

[default_session]
command = "/usr/bin/noctalia-greeter-session"
user = "greeter"
GREETD_CONFIG

sudo systemctl enable --now greetd

Optional pinned desktop session (name must match the picker):
command = "/usr/bin/noctalia-greeter-session -- --session niri"

This at the very least stopped overwriting my greeter.toml, however then I would just reboot to a black screen and would have to use the tty to login

Steps to reproduce

  1. Make any appropriate config changes in /var/lib/noctalia-greeter/greeter.toml and save
  2. restart greetd

Expected behavior

I expected my monitor layout and orientation to change

Actual behavior

my changes to greeter.toml get overwritten and reverted back to default

Logs / error output


noctalia-greeter version

v1.0.0

Distribution

Arch-based

Environment information

Installation Method: Pacman from Cachyos

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions