--- - name: Configure GRUB kernel parameters for NVIDIA hybrid graphics tags: [packages, nvidia] ansible.builtin.lineinfile: path: /etc/default/grub regexp: '^GRUB_CMDLINE_LINUX=' line: 'GRUB_CMDLINE_LINUX="{{ host_grub_cmdline_linux }}"' state: present register: nymph_grub_cmdline when: host_grub_cmdline_linux is defined - name: Regenerate GRUB configuration tags: [packages, nvidia] ansible.builtin.command: grub-mkconfig -o /boot/grub/grub.cfg changed_when: true when: - host_grub_cmdline_linux is defined - nymph_grub_cmdline is changed - name: Configure NVIDIA power management for hybrid graphics tags: [packages, nvidia] ansible.builtin.copy: dest: /etc/modprobe.d/nvidia-power-management.conf content: | options nvidia "NVreg_DynamicPowerManagement=0x02" owner: root group: root mode: "0644" - name: Install prime-run wrapper script for NVIDIA PRIME offload tags: [nvidia, dotfiles, dotfiles:host] ansible.builtin.copy: src: "{{ playbook_dir }}/../dotfiles/nymph/.local/bin/prime-run" dest: "{{ user_home }}/.local/bin/prime-run" owner: "{{ username }}" group: "{{ user_group }}" mode: "0755" force: false - name: Wrap alacritty with prime-run for NVIDIA PRIME offload tags: [nvidia, dotfiles, dotfiles:desktop, dotfiles:host] ansible.builtin.lineinfile: path: "{{ user_home }}/.config/i3/config" regexp: '^bindsym \$mod\+Return exec --no-startup-id /usr/bin/alacritty' line: 'bindsym $mod+Return exec --no-startup-id ~/.local/bin/prime-run /usr/bin/alacritty' when: "'i3' in (desktop_sessions_enabled | default([]))" - name: Deploy WirePlumber camera priority config tags: [dotfiles, dotfiles:host] ansible.builtin.copy: src: "{{ playbook_dir }}/../dotfiles/nymph/.config/wireplumber/wireplumber.conf.d/60-camera-priority.conf" dest: "{{ user_home }}/.config/wireplumber/wireplumber.conf.d/60-camera-priority.conf" owner: "{{ username }}" group: "{{ user_group }}" mode: "0644" force: true