mirror of
https://github.com/fscotto/infra.git
synced 2026-05-30 15:39:58 +00:00
Clean up Arch profile: remove i3/Void-specific config and fix GNOME integration
- Remove XFCE/i3-specific packages and dotfiles from Arch path (xarchiver, udiskie, Thunar, xfce-polkit, clipman, screenshooter) - Separate per-OS dotfiles: mimeapps, udiskie config, GTK theme script, udiskie-password, dbus-session and ssh-agent fragments moved to Void-only - Add mimeapps.arch.list with Nautilus/GNOME associations for nymph - Move dunst/rofi directory creation from common to profile_desktop_i3 - Add gnome-keyring PAM hooks for GDM (gdm-password) in profile_desktop_gnome - Remove ssh-agent.service from desktop_systemd_user_services on Arch; drop ssh-agent dependency and hardcoded socket from emacs.service - Add ttf-hack-nerd to Arch font packages - Fix rustup bootstrap: use rustup-init on Void, rustup toolchain install on Arch Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -64,7 +64,6 @@ arch_desktop_common_packages:
|
||||
- brightnessctl
|
||||
- dex
|
||||
- pinentry
|
||||
- udiskie
|
||||
- xdg-desktop-portal
|
||||
- xdg-desktop-portal-gtk
|
||||
- xdg-user-dirs
|
||||
@@ -116,12 +115,12 @@ arch_profile_packages:
|
||||
- texlive-binextra
|
||||
- texlive-latex
|
||||
- texlive-latexextra
|
||||
- ttf-hack-nerd
|
||||
- ttf-liberation
|
||||
- ttf-nerd-fonts-symbols
|
||||
- ctags
|
||||
- uv
|
||||
- virt-manager
|
||||
- xarchiver
|
||||
- xournalpp
|
||||
- zstd
|
||||
|
||||
@@ -135,7 +134,6 @@ enabled_services:
|
||||
- ufw
|
||||
|
||||
desktop_systemd_user_services:
|
||||
- ssh-agent.service
|
||||
- emacs.service
|
||||
- syncthing.service
|
||||
- rclone-pcloud.service
|
||||
|
||||
@@ -50,14 +50,6 @@ desktop_common_dotfiles:
|
||||
src: .config/alacritty/
|
||||
dest: .config/alacritty/
|
||||
mode: preserve
|
||||
- name: Thunar config
|
||||
src: .config/Thunar/
|
||||
dest: .config/Thunar/
|
||||
mode: preserve
|
||||
- name: MIME application defaults
|
||||
src: .config/mimeapps.list
|
||||
dest: .config/mimeapps.list
|
||||
mode: "0644"
|
||||
- name: fastfetch config
|
||||
src: .config/fastfetch/
|
||||
dest: .config/fastfetch/
|
||||
@@ -78,10 +70,6 @@ desktop_common_dotfiles:
|
||||
src: .config/mpv/
|
||||
dest: .config/mpv/
|
||||
mode: preserve
|
||||
- name: Udiskie config
|
||||
src: .config/udiskie/
|
||||
dest: .config/udiskie/
|
||||
mode: preserve
|
||||
- name: Bash cargo env fragment
|
||||
src: .bashrc.d/08-cargo-env.sh
|
||||
dest: .bashrc.d/08-cargo-env.sh
|
||||
@@ -94,14 +82,6 @@ desktop_common_dotfiles:
|
||||
src: .bashrc.d/12-manpages.sh
|
||||
dest: .bashrc.d/12-manpages.sh
|
||||
mode: "0644"
|
||||
- name: Bash DBus session fragment
|
||||
src: .bashrc.d/14-dbus-session.sh
|
||||
dest: .bashrc.d/14-dbus-session.sh
|
||||
mode: "0644"
|
||||
- name: Bash SSH agent socket fragment
|
||||
src: .bashrc.d/16-ssh-agent-socket.sh
|
||||
dest: .bashrc.d/16-ssh-agent-socket.sh
|
||||
mode: "0644"
|
||||
- name: Bash editor fragment
|
||||
src: .bashrc.d/20-editor-desktop.sh
|
||||
dest: .bashrc.d/20-editor-desktop.sh
|
||||
@@ -138,14 +118,6 @@ desktop_common_dotfiles:
|
||||
src: .authinfo.gpg
|
||||
dest: .authinfo.gpg
|
||||
mode: "0600"
|
||||
- name: GTK theme setup script
|
||||
src: .local/bin/setup-gtk-theme
|
||||
dest: .local/bin/setup-gtk-theme
|
||||
mode: "0755"
|
||||
- name: Udiskie password helper
|
||||
src: .local/bin/udiskie-password
|
||||
dest: .local/bin/udiskie-password
|
||||
mode: "0755"
|
||||
- name: Calibre database Flatpak wrapper
|
||||
src: .local/bin/calibredb
|
||||
dest: .local/bin/calibredb
|
||||
@@ -160,6 +132,10 @@ desktop_arch_dotfiles:
|
||||
src: .config/systemd/user/
|
||||
dest: .config/systemd/user/
|
||||
mode: preserve
|
||||
- name: MIME application defaults
|
||||
src: .config/mimeapps.arch.list
|
||||
dest: .config/mimeapps.list
|
||||
mode: "0644"
|
||||
|
||||
desktop_emacs_dotfiles:
|
||||
- name: Emacs config
|
||||
|
||||
@@ -88,10 +88,38 @@ desktop_void_dotfiles:
|
||||
src: .config/service/
|
||||
dest: .config/service/
|
||||
mode: preserve
|
||||
- name: Thunar config
|
||||
src: .config/Thunar/
|
||||
dest: .config/Thunar/
|
||||
mode: preserve
|
||||
- name: MIME application defaults
|
||||
src: .config/mimeapps.list
|
||||
dest: .config/mimeapps.list
|
||||
mode: "0644"
|
||||
- name: Bash DBus session fragment
|
||||
src: .bashrc.d/14-dbus-session.sh
|
||||
dest: .bashrc.d/14-dbus-session.sh
|
||||
mode: "0644"
|
||||
- name: Bash SSH agent socket fragment
|
||||
src: .bashrc.d/16-ssh-agent-socket.sh
|
||||
dest: .bashrc.d/16-ssh-agent-socket.sh
|
||||
mode: "0644"
|
||||
- name: Bash runit desktop fragment
|
||||
src: .bashrc.d/15-runit-desktop.sh
|
||||
dest: .bashrc.d/15-runit-desktop.sh
|
||||
mode: "0644"
|
||||
- name: GTK theme setup script
|
||||
src: .local/bin/setup-gtk-theme
|
||||
dest: .local/bin/setup-gtk-theme
|
||||
mode: "0755"
|
||||
- name: Udiskie password helper
|
||||
src: .local/bin/udiskie-password
|
||||
dest: .local/bin/udiskie-password
|
||||
mode: "0755"
|
||||
- name: Udiskie config
|
||||
src: .config/udiskie/
|
||||
dest: .config/udiskie/
|
||||
mode: preserve
|
||||
- name: Turnstile environment update script
|
||||
src: .local/bin/update-turnstile-env
|
||||
dest: .local/bin/update-turnstile-env
|
||||
|
||||
@@ -19,10 +19,7 @@
|
||||
loop:
|
||||
- "{{ user_home }}/.config"
|
||||
- "{{ user_home }}/.config/autostart"
|
||||
- "{{ user_home }}/.config/dunst"
|
||||
- "{{ user_home }}/.config/alacritty"
|
||||
- "{{ user_home }}/.config/Thunar"
|
||||
- "{{ user_home }}/.config/rofi"
|
||||
- "{{ user_home }}/.config/systemd"
|
||||
- "{{ user_home }}/.config/systemd/user"
|
||||
- "{{ user_home }}/.bashrc.d"
|
||||
@@ -504,14 +501,27 @@
|
||||
path: "{{ user_home }}/.cargo/bin/rustc"
|
||||
register: rustup_initialized
|
||||
|
||||
- name: Run rustup-init with cargo env sourced
|
||||
- name: Run rustup-init with cargo env sourced (Void)
|
||||
ansible.builtin.shell:
|
||||
cmd: . ~/.cargo/env && rustup-init -y --no-modify-path
|
||||
creates: "{{ user_home }}/.cargo/bin/rustc"
|
||||
become_user: "{{ username }}"
|
||||
environment:
|
||||
HOME: "{{ user_home }}"
|
||||
when: not rustup_initialized.stat.exists
|
||||
when:
|
||||
- not rustup_initialized.stat.exists
|
||||
- "'void' in group_names"
|
||||
|
||||
- name: Install Rust stable toolchain via rustup (Arch)
|
||||
ansible.builtin.command:
|
||||
cmd: rustup toolchain install stable
|
||||
creates: "{{ user_home }}/.cargo/bin/rustc"
|
||||
become_user: "{{ username }}"
|
||||
environment:
|
||||
HOME: "{{ user_home }}"
|
||||
when:
|
||||
- not rustup_initialized.stat.exists
|
||||
- "'arch' in group_names"
|
||||
|
||||
- name: Ensure cargo env is sourced in shell profile
|
||||
ansible.builtin.lineinfile:
|
||||
|
||||
@@ -16,3 +16,27 @@
|
||||
force: true
|
||||
owner: root
|
||||
group: root
|
||||
|
||||
- name: Enable gnome-keyring PAM auth hook for GDM
|
||||
tags: [gnome]
|
||||
ansible.builtin.lineinfile:
|
||||
path: /etc/pam.d/gdm-password
|
||||
insertafter: '^auth\s+include\s+system-local-login$'
|
||||
line: "auth optional pam_gnome_keyring.so"
|
||||
state: present
|
||||
|
||||
- name: Enable gnome-keyring PAM session hook for GDM
|
||||
tags: [gnome]
|
||||
ansible.builtin.lineinfile:
|
||||
path: /etc/pam.d/gdm-password
|
||||
insertafter: '^session\s+include\s+system-local-login$'
|
||||
line: "session optional pam_gnome_keyring.so auto_start"
|
||||
state: present
|
||||
|
||||
- name: Enable gnome-keyring PAM password hook for GDM
|
||||
tags: [gnome]
|
||||
ansible.builtin.lineinfile:
|
||||
path: /etc/pam.d/gdm-password
|
||||
insertafter: '^password\s+include\s+system-local-login$'
|
||||
line: "password optional pam_gnome_keyring.so use_authtok"
|
||||
state: present
|
||||
|
||||
@@ -8,8 +8,10 @@
|
||||
group: "{{ user_group }}"
|
||||
mode: "0755"
|
||||
loop:
|
||||
- "{{ user_home }}/.config/dunst"
|
||||
- "{{ user_home }}/.config/i3"
|
||||
- "{{ user_home }}/.config/i3blocks"
|
||||
- "{{ user_home }}/.config/rofi"
|
||||
when: "'i3' in (desktop_sessions_enabled | default([]))"
|
||||
|
||||
- name: Install allowed emptty X11 sessions
|
||||
|
||||
Reference in New Issue
Block a user