diff --git a/wiki/linux/display_managers.md b/wiki/linux/display_managers.md new file mode 100644 index 0000000..f7b9a01 --- /dev/null +++ b/wiki/linux/display_managers.md @@ -0,0 +1,28 @@ +# Display Managers + +Display managers are graphical user interfaces that is displayed after booting. +Usually it also manages the login process before starting the window manager. + +## List of Display Managers + +The following display managers are featured in this wiki. + +- [LightDM](/wiki/linux/lightdm.md) is a lightweight GUI display manager. +- [Lemurs](/wiki/linux/lemurs.md) is a lightweight TUI display manager. + +## Use `xinitrc` as `xsession` + +Often a display manager needs a `xsession` to work. +For this `init-xsession` needs to be installed which is available on most +[Linux distributions](/wiki/linux.md#distributions) in a package of the same name. +When setting this up there should be no `~/.xsession` available. +If it is please use another setup or backup this file. +Make the `xinitrc` file executable as shown in the following command and link it to the `xsession` +file. + +```sh +chmod +x ~/.xinitrc +ln -s ~/.xsession ~/.xinitrc +``` + +Afterwards the session will start like the `xinitrc` diff --git a/wiki/linux/lemurs.md b/wiki/linux/lemurs.md new file mode 100644 index 0000000..38f7cd6 --- /dev/null +++ b/wiki/linux/lemurs.md @@ -0,0 +1,31 @@ +# Lemurs + +[Lemurs](https://github.com/coastalwhite/lemurs) is a lightweight TUI +[display manager](/wiki/linux/display_managers.md). +It is available for both [X](/wiki/linux/x_window_system.md) and Wayland. + +## Setup + +On most linux distributions LightDM can be installed with the `lemurs` package. + +This setup needs an `xsession`. +An alternative to this is using `xinitrc` as an `xsession`. +The process of this is desribed in the +[display manager entry](/wiki/linux/display_managers.md#use-xinitrc-as-xsession). +Make sure to have a working `xsession` or `xinitrc`. +If you are not sure about it, use the tests provided in the penultimate step. + +Before finishing the setup the functionality should be tested. +This can be done by using one or both of the following commands. + +```sh +systemctl start lemurs.service +``` + +Finally the [SystemD](/wiki/linux/systemd.md) lightdm service needs to be enabled and reboot the +system. + +```sh +systemctl enable lemurs.service` +reboot +``` diff --git a/wiki/linux/lightdm.md b/wiki/linux/lightdm.md new file mode 100644 index 0000000..a4f333f --- /dev/null +++ b/wiki/linux/lightdm.md @@ -0,0 +1,40 @@ +# LightDM + +[LightDM](https://github.com/canonical/lightdm/) is a lightweight GUI +[display manager](/wiki/linux/display_managers.md). +It is available for both [X](/wiki/linux/x_window_system.md) and Wayland. + +## Setup + +On most linux distributions LightDM can be installed with the `lightdm` package. +Additionally `lightdm-gtk-greeter` and `xorg-server-xephyr` are recommended. + +This setup needs an `xsession`. +An alternative to this is using `xinitrc` as an `xsession`. +The process of this is desribed in the +[display manager entry](/wiki/linux/display_managers.md#use-xinitrc-as-xsession). +Make sure to have a working `xsession` or `xinitrc`. +If you are not sure about it, use the tests provided in the penultimate step. + +Then edit the config file `~/.dmrc` and edit the file to the following contents. + +```txt +[Desktop] +Session=xinitrc +``` + +Before finishing the setup the functionality should be tested. +This can be done by using one or both of the following commands. + +```sh +lightdm --test-mode --debug +systemctl start lightdm.service +``` + +Finally the [SystemD](/wiki/linux/systemd.md) lightdm service needs to be enabled and reboot the +system. + +```sh +systemctl enable lightdm.service` +reboot +``` diff --git a/wiki/linux/plymout.md b/wiki/linux/plymout.md new file mode 100644 index 0000000..ddd88e4 --- /dev/null +++ b/wiki/linux/plymout.md @@ -0,0 +1,34 @@ +# Plymouth + +[Plymouth](https://www.freedesktop.org/Software/Plymouth) is a software that provides a better +graphical boot process. +It can change the native resolution early in the boot process and display splash screens. + +## Setup + +On most linux distributions LightDM can be installed with the `plymouth` package. + +Afterwards the kernel options need to be changed. +On [Arch Linux](/wiki/linux/arch-linux.md) systems this can be done by editing the file located at +`/boot/loader/entries/arch.conf`. +In the options line append `quiet` if you want to use the quiet-mode and `splash` if you want to +add a splash screen. + +If the splash screen option was selected edit the file `/etc/plymouth/plymouthd.conf` and ensure it +looks like the following lines. + +```txt +[Daemon] +Theme=fade-in +``` + +Then inside the file `/etc/mkinitcpio.conf` add the hook under the `HOOKS` section. +Add `plymouth` after `systemd` (if available) and before `encrypt` and `lvm2` (if available.) + +Finally regenerate the initial ramdisk as described +[in the mkinitcpio entry](/wiki/linux/mkinitcpio.md#manually-generate-initial-ramdisk). +For this run the following command. + +```sh +mkinitcpio -p linux +``` diff --git a/wiki/linux/x_window_system.md b/wiki/linux/x_window_system.md index 61308ea..d96dcd5 100644 --- a/wiki/linux/x_window_system.md +++ b/wiki/linux/x_window_system.md @@ -10,6 +10,12 @@ It is maintained by the [X.Org Foundation](https://x.org/wiki/). This section addresses various usages of the X Window System. +### Display Managers + +[Display managers](/wiki/linux/display_managers.md) are user interfaces displayed after booting. +They are featured in a [separate entry](/wiki/linux/display_managers.md). +This also includes any configuration needed for it like `xsession`. + ### Screen Locker The X Window System allows various screen lockers to be used.