QuickShell QML login greeter for greetd, styled after noctalia-shell lockscreen. Runs under niri compositor as _greeter user. Theme is live-synced from noctalia config via runit service. - shell.qml: QuickShell greeter UI + greetd auth flow - sync/: inotifywait theme sync daemon + runit service - greetd/: niri compositor config + wrapper scripts - install.sh: deployment helper - test/check-syntax.sh: 19 syntax/structural checks (0 failures) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
40 lines
1.3 KiB
Bash
Executable File
40 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
|
# install.sh — deploy noctalia-greeter to system paths
|
|
set -e
|
|
|
|
REPO_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
|
|
if [ "$(id -u)" -ne 0 ]; then
|
|
echo "Run as root: sudo ./install.sh" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "==> Installing noctalia-greeter..."
|
|
|
|
# QuickShell config (read by qs as _greeter)
|
|
install -Dm644 "$REPO_DIR/shell.qml" /home/moze/.config/noctalia-greeter/shell.qml
|
|
chown moze:moze /home/moze/.config/noctalia-greeter/shell.qml
|
|
|
|
# Sync daemon
|
|
install -Dm755 "$REPO_DIR/sync/noctalia-greeter-sync" /usr/local/bin/noctalia-greeter-sync
|
|
|
|
# Runit service
|
|
install -Dm755 "$REPO_DIR/sync/run" /etc/sv/noctalia-greeter-sync/run
|
|
|
|
# Greeter compositor config
|
|
install -Dm644 "$REPO_DIR/greetd/niri-greeter.kdl" /etc/greetd/niri-greeter.kdl
|
|
install -Dm755 "$REPO_DIR/greetd/start-greeter.sh" /etc/greetd/start-greeter.sh
|
|
|
|
# Theme staging dir
|
|
install -d -m755 /var/lib/noctalia-greeter-theme
|
|
chown moze:moze /var/lib/noctalia-greeter-theme
|
|
|
|
echo ""
|
|
echo "==> Next steps:"
|
|
echo " 1. Edit /etc/greetd/config.toml (see greetd/config.toml.example)"
|
|
echo " 2. Enable sync service: ln -s /etc/sv/noctalia-greeter-sync /var/service/"
|
|
echo " 3. Run initial sync: su -s /bin/sh moze -c /usr/local/bin/noctalia-greeter-sync &"
|
|
echo " 4. Restart greetd: sv restart greetd"
|
|
echo ""
|
|
echo "Done."
|