feat(wayland): Add display manager greetd and greeter tuigreet
Sets up a login screen using tuigreet. From there the user is thrown into a shell. Other units/services (usually, the user service `river`) take care to start an actual wayland session for the user.
This commit is contained in:
parent
4a5faec829
commit
7fe5d085fd
2 changed files with 55 additions and 0 deletions
books
18
books/templates/greetd-config.toml.j2
Normal file
18
books/templates/greetd-config.toml.j2
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
[terminal]
|
||||||
|
# The VT to run the greeter on. Can be "next", "current" or a number
|
||||||
|
# designating the VT.
|
||||||
|
vt = 7
|
||||||
|
|
||||||
|
# The default session, also known as the greeter.
|
||||||
|
[default_session]
|
||||||
|
command = "tuigreet --cmd zsh"
|
||||||
|
user = "{{ greeter_user }}"
|
||||||
|
|
||||||
|
# `agreety` is the bundled agetty/login-lookalike. You can replace `/bin/sh`
|
||||||
|
# with whatever you want started, such as `sway`.
|
||||||
|
# command = "agreety --cmd /bin/sh"
|
||||||
|
|
||||||
|
# The user to run the command as. The privileges this user must have depends
|
||||||
|
# on the greeter. A graphical greeter may for example require the user to be
|
||||||
|
# in the `video` group.
|
||||||
|
#user = "_greeter"
|
|
@ -39,6 +39,43 @@
|
||||||
- xdg-desktop-portal-wlr
|
- xdg-desktop-portal-wlr
|
||||||
state: present
|
state: present
|
||||||
|
|
||||||
|
- name: Set up display manager
|
||||||
|
hosts: target_system
|
||||||
|
become: true
|
||||||
|
vars:
|
||||||
|
greeter_user: _greeter
|
||||||
|
tags:
|
||||||
|
- wayland
|
||||||
|
- greetd
|
||||||
|
- tuigreet
|
||||||
|
tasks:
|
||||||
|
- name: Ensure user group for greeter exists
|
||||||
|
ansible.builtin.group:
|
||||||
|
name: "{{ greeter_user }}"
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: Install greetd and tuigreet
|
||||||
|
community.general.xbps:
|
||||||
|
name:
|
||||||
|
- greetd
|
||||||
|
- tuigreet
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: Set up tuigreet config for greetd
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: greetd-config.toml.j2
|
||||||
|
dest: "/etc/greetd/config.toml"
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0644
|
||||||
|
force: true
|
||||||
|
|
||||||
|
- name: Activate greetd service
|
||||||
|
ansible.builtin.file:
|
||||||
|
src: "/etc/sv/greetd"
|
||||||
|
dest: "/etc/runit/runsvdir/default/greetd"
|
||||||
|
state: link
|
||||||
|
|
||||||
- name: Install audio and video for wayland
|
- name: Install audio and video for wayland
|
||||||
hosts: target_system
|
hosts: target_system
|
||||||
become: true
|
become: true
|
||||||
|
|
Loading…
Reference in a new issue