Compare commits

6 Commits

Author SHA1 Message Date
Fabio Scotto di Santolo
525fa05352 Remove system-config-printer from Arch (GNOME uses gnome-control-center)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 10:58:29 +02:00
Fabio Scotto di Santolo
d7629d33d6 Expand and clean up Arch GNOME packages, remove alacritty from Arch
- arch_desktop_gnome_packages: add full GNOME app suite (baobab, gnome-console,
  loupe, papers, showtime, snapshot, sushi, gvfs backends, etc.), sort
  alphabetically, remove duplicates already in arch_packages_base
  (gnome-keyring, gvfs, gvfs-mtp, gvfs-smb, simple-scan)
- Remove alacritty from arch_profile_packages; move alacritty config and
  directory creation to Void-only (profile_desktop_i3 / desktop_void_dotfiles)
- Enable emacs user service via ansible.builtin.systemd (scope: user)
  instead of a manual symlink

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 10:55:54 +02:00
Fabio Scotto di Santolo
224e9bf1e8 Enable gdm without starting it during provisioning
Add enabled_services_only list to services_systemd role for services that
should be enabled at boot but not started immediately. Move gdm to this list
on Arch to avoid starting the display manager mid-provisioning.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 10:43:40 +02:00
Fabio Scotto di Santolo
238d8ab873 Switch to emacs-wayland on Arch, use package-provided emacs.service
- emacs → emacs-wayland in arch_profile_packages
- Remove custom emacs.service deployment: replace full .config/systemd/user/
  directory copy with individual service files (rclone-pcloud, syncthing)
- Remove emacs.service from desktop_systemd_user_services
- Enable package-provided /usr/lib/systemd/user/emacs.service via symlink
  in profile_desktop_gnome

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 10:41:10 +02:00
Fabio Scotto di Santolo
b483ef5b7e Move st to Void-only source tools, remove bookokrat
- bookokrat removed completely from desktop_source_tools
- st moved from common to desktop_void_source_tools (Void-only; uses X11/make)
- Build task loop extended to include desktop_void_source_tools on Void

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 10:37:51 +02:00
Fabio Scotto di Santolo
56c0335b40 Use pinentry-gnome3 for gpg-agent on Arch
Add gpg-agent.arch.conf with pinentry-gnome3 and without enable-ssh-support
(SSH is handled by gnome-keyring on GNOME). Deploy it from profile_desktop_gnome,
overriding the common conf that uses pinentry-gtk-2 for Void.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 10:35:06 +02:00
8 changed files with 78 additions and 28 deletions

View File

@@ -51,7 +51,6 @@ arch_packages_base:
- simple-scan - simple-scan
- speech-dispatcher - speech-dispatcher
- syncthing - syncthing
- system-config-printer
- tealdeer - tealdeer
- tmux - tmux
- tree-sitter-cli - tree-sitter-cli
@@ -69,23 +68,45 @@ arch_desktop_common_packages:
- xdg-user-dirs - xdg-user-dirs
arch_desktop_gnome_packages: arch_desktop_gnome_packages:
- baobab
- gdm - gdm
- gnome-backgrounds
- gnome-calculator
- gnome-calendar
- gnome-characters
- gnome-clocks
- gnome-console
- gnome-control-center - gnome-control-center
- gnome-disk-utility
- gnome-font-viewer
- gnome-session - gnome-session
- gnome-settings-daemon - gnome-settings-daemon
- gnome-shell - gnome-shell
- gnome-shell-extensions - gnome-shell-extensions
- gnome-tweaks - gnome-tweaks
- gvfs-afc
- gvfs-dnssd
- gvfs-goa
- gvfs-gphoto2
- gvfs-nfs
- gvfs-onedrive
- gvfs-wsdd
- loupe
- mutter - mutter
- nautilus - nautilus
- papers
- rygel
- showtime
- snapshot
- sushi
- xdg-desktop-portal-gnome - xdg-desktop-portal-gnome
- xdg-user-dirs-gtk
arch_profile_packages: arch_profile_packages:
- alacritty
- deluge - deluge
- dnsmasq - dnsmasq
- edk2-ovmf - edk2-ovmf
- emacs - emacs-wayland
- ffmpegthumbnailer - ffmpegthumbnailer
- firefox - firefox
- fontconfig - fontconfig
@@ -102,7 +123,6 @@ arch_profile_packages:
- noto-fonts - noto-fonts
- noto-fonts-emoji - noto-fonts-emoji
- pdfarranger - pdfarranger
- playerctl
- poppler - poppler
- poppler-glib - poppler-glib
- qemu-desktop - qemu-desktop
@@ -129,11 +149,12 @@ enabled_services:
- avahi-daemon - avahi-daemon
- bluetooth - bluetooth
- cups - cups
- gdm
- libvirtd - libvirtd
- ufw - ufw
enabled_services_only:
- gdm
desktop_systemd_user_services: desktop_systemd_user_services:
- emacs.service
- syncthing.service - syncthing.service
- rclone-pcloud.service - rclone-pcloud.service

View File

@@ -8,22 +8,11 @@ desktop_default_session: i3
desktop_default_session_env: xorg desktop_default_session_env: xorg
desktop_source_tools: desktop_source_tools:
- name: st
repo: https://codeberg.org/fscotto/st
build_cmd: make
binary_name: st
install_name: st
- name: gf - name: gf
repo: https://github.com/nakst/gf.git repo: https://github.com/nakst/gf.git
build_cmd: ./build.sh build_cmd: ./build.sh
binary_name: gf2 binary_name: gf2
install_name: gf install_name: gf
- name: bookokrat
repo: https://github.com/bugzmanov/bookokrat
build_cmd: cargo build --release
binary_name: bookokrat
install_name: bookokrat
build_output_path: target/release/bookokrat
- name: llmfit - name: llmfit
repo: https://github.com/AlexsJones/llmfit repo: https://github.com/AlexsJones/llmfit
build_cmd: cargo build --release build_cmd: cargo build --release
@@ -46,10 +35,6 @@ desktop_common_dotfiles:
src: .config/autostart/ src: .config/autostart/
dest: .config/autostart/ dest: .config/autostart/
mode: preserve mode: preserve
- name: alacritty config
src: .config/alacritty/
dest: .config/alacritty/
mode: preserve
- name: fastfetch config - name: fastfetch config
src: .config/fastfetch/ src: .config/fastfetch/
dest: .config/fastfetch/ dest: .config/fastfetch/
@@ -128,10 +113,14 @@ desktop_common_dotfiles:
mode: "0600" mode: "0600"
desktop_arch_dotfiles: desktop_arch_dotfiles:
- name: systemd user services - name: rclone pcloud systemd user service
src: .config/systemd/user/ src: .config/systemd/user/rclone-pcloud.service
dest: .config/systemd/user/ dest: .config/systemd/user/rclone-pcloud.service
mode: preserve mode: "0644"
- name: syncthing systemd user service
src: .config/systemd/user/syncthing.service
dest: .config/systemd/user/syncthing.service
mode: "0644"
- name: MIME application defaults - name: MIME application defaults
src: .config/mimeapps.arch.list src: .config/mimeapps.arch.list
dest: .config/mimeapps.list dest: .config/mimeapps.list

View File

@@ -1,4 +1,11 @@
--- ---
desktop_void_source_tools:
- name: st
repo: https://codeberg.org/fscotto/st
build_cmd: make
binary_name: st
install_name: st
void_packages_base: void_packages_base:
- 7zip - 7zip
- NetworkManager - NetworkManager
@@ -108,6 +115,10 @@ desktop_void_dotfiles:
src: .bashrc.d/15-runit-desktop.sh src: .bashrc.d/15-runit-desktop.sh
dest: .bashrc.d/15-runit-desktop.sh dest: .bashrc.d/15-runit-desktop.sh
mode: "0644" mode: "0644"
- name: alacritty config
src: .config/alacritty/
dest: .config/alacritty/
mode: preserve
- name: GTK theme setup script - name: GTK theme setup script
src: .local/bin/setup-gtk-theme src: .local/bin/setup-gtk-theme
dest: .local/bin/setup-gtk-theme dest: .local/bin/setup-gtk-theme

View File

@@ -19,7 +19,6 @@
loop: loop:
- "{{ user_home }}/.config" - "{{ user_home }}/.config"
- "{{ user_home }}/.config/autostart" - "{{ user_home }}/.config/autostart"
- "{{ user_home }}/.config/alacritty"
- "{{ user_home }}/.config/systemd" - "{{ user_home }}/.config/systemd"
- "{{ user_home }}/.config/systemd/user" - "{{ user_home }}/.config/systemd/user"
- "{{ user_home }}/.bashrc.d" - "{{ user_home }}/.bashrc.d"
@@ -541,8 +540,8 @@
file: source_tool.yml file: source_tool.yml
apply: apply:
tags: [packages] tags: [packages]
loop: "{{ desktop_source_tools }}" loop: "{{ desktop_source_tools + (desktop_void_source_tools | default([])) }}"
when: desktop_source_tools | length > 0 when: (desktop_source_tools + (desktop_void_source_tools | default([]))) | length > 0
loop_control: loop_control:
loop_var: source_tool loop_var: source_tool
label: "{{ source_tool.name }}" label: "{{ source_tool.name }}"

View File

@@ -17,6 +17,23 @@
owner: root owner: root
group: root group: root
- name: Enable emacs user service from package
tags: [services, emacs]
ansible.builtin.systemd:
name: emacs.service
enabled: true
scope: user
become_user: "{{ username }}"
- name: Deploy gpg-agent.conf for GNOME (pinentry-gnome3, no ssh-support)
tags: [dotfiles, dotfiles:desktop, gnome]
ansible.builtin.copy:
src: "{{ playbook_dir }}/../dotfiles/desktop/.gnupg/gpg-agent.arch.conf"
dest: "{{ user_home }}/.gnupg/gpg-agent.conf"
owner: "{{ username }}"
group: "{{ user_group }}"
mode: "0600"
- name: Enable gnome-keyring PAM auth hook for GDM - name: Enable gnome-keyring PAM auth hook for GDM
tags: [gnome] tags: [gnome]
ansible.builtin.lineinfile: ansible.builtin.lineinfile:

View File

@@ -8,6 +8,7 @@
group: "{{ user_group }}" group: "{{ user_group }}"
mode: "0755" mode: "0755"
loop: loop:
- "{{ user_home }}/.config/alacritty"
- "{{ user_home }}/.config/dunst" - "{{ user_home }}/.config/dunst"
- "{{ user_home }}/.config/i3" - "{{ user_home }}/.config/i3"
- "{{ user_home }}/.config/i3blocks" - "{{ user_home }}/.config/i3blocks"

View File

@@ -18,3 +18,12 @@
loop: "{{ host_enabled_services | default([]) }}" loop: "{{ host_enabled_services | default([]) }}"
loop_control: loop_control:
label: "{{ item }}" label: "{{ item }}"
- name: Enable systemd services without starting them
tags: [services, packages]
ansible.builtin.systemd:
name: "{{ item }}"
enabled: true
loop: "{{ enabled_services_only | default([]) }}"
loop_control:
label: "{{ item }}"

View File

@@ -0,0 +1,3 @@
pinentry-program /usr/bin/pinentry-gnome3
default-cache-ttl 600
max-cache-ttl 7200