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
|
||||
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
|
||||
hosts: target_system
|
||||
become: true
|
||||
|
|
Loading…
Reference in a new issue