rdm
rdm copied to clipboard
A toy display manager written in Rust. Inspired by Slim it aims to provide a simple and elegant login screen.
rdm 
A display manager written in Rust. Inspired by Slim it aims to provide a simple and elegant login screen.
THIS IS A WIP AND HAS MAJOR ISSUES RELATED TO SECURITY!! USE AT YOUR OWN RISK!
Current Problems/Questions
- X authorization
- xauth cookie is generated but
- not copied to
~/.Xauthority XAUTHORITYenvironment variable is not set
- not copied to
- -> Investigate "best practices" and fix!
- xauth cookie is generated but
- Session setup / PAM usage
- Session setup works(tm) but I am still not sure whether all "best practices" are followed
- -> Review and validate
pam-sys/pam-authcrates
- -> Review and validate
reboot/poweroffetc. fail withFailed to power off system via logind: Interactive authentication required.- -> Investigate whether this has something to do with systemd
- Session setup works(tm) but I am still not sure whether all "best practices" are followed
systemd-logindsupport- Investigate what this actually means
- Do we need to link against
libsystemd.soand call APIs from there?
- Do we need to link against
- Implement or mark it as done
- Investigate what this actually means
dbussupport- Is this required (maybe for systemd integration)?
- If so what methods do we need to support?
- (multi-)
seat-API
- Architecture
- Stay with simple client or use server-client to encapsulate login process
- Likely related to multiseat support
- Split into more crates (likely not justified)
Goals
- [ ] Support common standards
- [x] Linux PAM (in review)
- [ ]
systemd-logind(?) - [ ]
dbus(?)
- [ ] Basic theming support