Adjust the README

This commit is contained in:
Gijs Burghoorn 2023-02-17 14:49:32 +01:00
parent f06b8f4b60
commit f6a0f2ec9d

View file

@ -1,27 +1,29 @@
<div align="center">
# Lemurs 🐒
A TUI Display/Login Manager written in Rust
</div>
<p align="center">
<!-- Icon by SVGRepo under CC0. Notice at the end of the file -->
<img src="./assets/text-icon.svg" height="200px" alt="Lemur Icon by SVGRepo" />
</p>
![Cover image](./cover.png)
> Note: the project is installable and working, but there might still be some
> limitations.
A minimal TUI [Display Manager/Login
Manager](https://wiki.archlinux.org/title/Display_manager) written in Rust
similar to [Ly](https://github.com/nullgemm/ly).
Lemurs provides a *Terminal User Interface* (TUI) for a [Display/Login
Managers](https://wiki.archlinux.org/title/Display_manager) in Rust for most
GNU/Linux and BSD distributions. It can work both with or without SystemD and
allows for configuration with _One-Time Password_ (OTP) tokens. Lemurs works on
most Unix systems including Linux, FreeBSD and NetBSD.
## Goal
The goal of this project is to create a small, robust and yet customizable
Login Manager which can serve as the front-end to your graphical GNU/Linux.
Lemurs uses Linux PAM as its method of authentication.
This project creates a small, robust and yet customizable Login Manager which
can serve as the front-end to your TTY, X11 or Wayland sessions. Lemurs uses
[_Pluggable Authentication Modules_][pam] (PAM) as its method of
authentication.
## Screenshot
![Cover image](./cover.png)
## Installation
[![Packaging status](https://repology.org/badge/vertical-allrepos/lemurs.svg)](https://repology.org/project/lemurs/versions)
There are two different ways to install Lemurs. Both require the rust toolchain
to be installed. I.e. there is currently no precompiled option.
@ -35,7 +37,7 @@ but you might have to set the default toolchain with `rustup default stable`.
paru -S lemurs-git # paru can be replaced by any other AUR helper
# Not needed if do don't have a window manager yet
sudo systemctl disable display-manager.service
sudo systemctl disable display-manager.service
sudo systemctl enable lemurs.service
```
@ -48,7 +50,7 @@ cd lemurs-git
makepkg -si
# Not needed if do don't have a window manager yet
sudo systemctl disable display-manager.service
sudo systemctl disable display-manager.service
sudo systemctl enable lemurs.service
```
@ -117,6 +119,12 @@ The flag `--config <CONFIG FIlE>` can be used to select another configuration
file instead. An example configuration can be found in the `extra` folder in
this repository.
## Documentation of Internals
To make Lemurs a lot of investigation happened into how the Login sequence of
many environments can be supported. [This document](./doc/internals.md)
describes information learned there. It can be useful when debugging.
## Preview & Debugging
Lemurs logs a lot of information of it running to a logging file. This is
@ -165,10 +173,15 @@ Tested on
## MSRV Policy
Lemurs has a *Minimum Supported Rust Version* policy of *N - 2*. This means that we only use Rust languages features that have been in Rust as of 2 releases.
Lemurs has a _Minimum Supported Rust Version_ policy of _N - 2_. This means that we only use Rust languages features that have been in Rust as of 2 releases.
## License
The icon used at the top of the repository is not a logo and taken as an icon
from the [SVGRepo](https://www.svgrepo.com/svg/252871/lemur). It is marked
under CC0 and therefore freely distributable and amendable under a new
license.
The project is made available under the MIT and APACHE license. See the
`LICENSE-MIT` and `LICENSE-APACHE` files, respectively, for more information.
@ -176,3 +189,5 @@ The project is made available under the MIT and APACHE license. See the
Please report any bugs and possible improvements as an issue within this
repository. Pull requests are also welcome.
[pam]: https://en.wikipedia.org/wiki/Pluggable_authentication_module