feat: ship Rust login manager and GitLab release pipeline
Replace the legacy Go implementation as the production path, quarantine the reference tree, add deterministic release packaging and version metadata, and run verification through GitLab CI.
This commit is contained in:
@@ -1,13 +1,46 @@
|
||||
# latchd config — see src/config/config.go for all defaults.
|
||||
# only include values you want to override.
|
||||
# latchd configuration. All paths are validated before the login screen starts.
|
||||
|
||||
# tty = 2
|
||||
# pam_service = "latchd"
|
||||
# system_shell = "/bin/sh"
|
||||
# focus_behaviour = "default"
|
||||
tty = 2
|
||||
main_log_path = "/var/log/latchd.log"
|
||||
client_log_path = "/var/log/latchd.client.log"
|
||||
pam_service = "latchd"
|
||||
system_shell = "/bin/sh"
|
||||
initial_path = "/usr/local/sbin:/usr/local/bin:/usr/bin"
|
||||
|
||||
[x11]
|
||||
display = ":1"
|
||||
server_path = "/usr/bin/X"
|
||||
xauth_path = "/usr/bin/xauth"
|
||||
server_timeout_secs = 60
|
||||
server_log_path = "/var/log/latchd.xorg.log"
|
||||
sessions_path = "/usr/share/xsessions"
|
||||
scripts_path = "/etc/latchd/wms"
|
||||
|
||||
[wayland]
|
||||
sessions_path = "/usr/share/wayland-sessions"
|
||||
scripts_path = "/etc/latchd/wayland"
|
||||
|
||||
[environment_switcher]
|
||||
include_tty_shell = false
|
||||
max_display_length = 18
|
||||
|
||||
# Power actions use an executable path and argv, never a shell command string.
|
||||
# Keep this section empty unless the installation explicitly wants console
|
||||
# power controls.
|
||||
[power_controls]
|
||||
# [[power_controls.entries]]
|
||||
# hint = "Hibernate"
|
||||
# key = "F3"
|
||||
# cmd = "systemctl hibernate"
|
||||
entries = []
|
||||
|
||||
[accounts]
|
||||
minimum_uid = 1000
|
||||
excluded_users = []
|
||||
enumerate = true
|
||||
faillock_path = "/usr/sbin/faillock"
|
||||
faillock_config = "/etc/security/faillock.conf"
|
||||
|
||||
[visual]
|
||||
background_enabled = true
|
||||
animations = true
|
||||
notifications = true
|
||||
reduced_motion = false
|
||||
max_wallpaper_bytes = 8388608
|
||||
# wallpaper_path = "/etc/latchd/wallpaper.png"
|
||||
|
||||
@@ -2,3 +2,4 @@
|
||||
auth include login
|
||||
account include login
|
||||
password include login
|
||||
session include login
|
||||
|
||||
@@ -9,6 +9,10 @@ StandardInput=tty
|
||||
TTYPath=/dev/tty2
|
||||
TTYReset=yes
|
||||
TTYVHangup=yes
|
||||
KillMode=control-group
|
||||
Restart=on-failure
|
||||
RestartSec=2s
|
||||
UMask=0077
|
||||
Type=idle
|
||||
|
||||
[Install]
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
#!/bin/sh
|
||||
# sourced by latchd before starting an X11 session.
|
||||
# runs the user's xprofile, xinitrc fragments, and xsession.
|
||||
|
||||
_xexec="$1"
|
||||
shift
|
||||
|
||||
# source shell profiles
|
||||
if [ -f /etc/profile ]; then
|
||||
. /etc/profile
|
||||
fi
|
||||
shell="${SHELL##*/}"
|
||||
case "$shell" in
|
||||
zsh) [ -f "$HOME/.zprofile" ] && . "$HOME/.zprofile" ;;
|
||||
bash) [ -f "$HOME/.bash_profile" ] && . "$HOME/.bash_profile" ;;
|
||||
*) [ -f "$HOME/.profile" ] && . "$HOME/.profile" ;;
|
||||
esac
|
||||
|
||||
# source x profiles
|
||||
[ -f /etc/xprofile ] && . /etc/xprofile
|
||||
[ -f "$HOME/.xprofile" ] && . "$HOME/.xprofile"
|
||||
|
||||
# run xinitrc.d scripts
|
||||
for _f in /etc/X11/xinit/xinitrc.d/*; do
|
||||
[ -x "$_f" ] && . "$_f"
|
||||
done
|
||||
|
||||
# run Xsession.d scripts
|
||||
for _f in /etc/X11/Xsession.d/*; do
|
||||
[ -x "$_f" ] && . "$_f"
|
||||
done
|
||||
|
||||
# load xresources
|
||||
if [ -f "$HOME/.Xresources" ]; then
|
||||
xrdb -merge "$HOME/.Xresources"
|
||||
fi
|
||||
|
||||
# run xsession
|
||||
[ -f "$HOME/.xsession" ] && . "$HOME/.xsession"
|
||||
|
||||
exec $_xexec "$@"
|
||||
Reference in New Issue
Block a user