diff --git a/roles/desktop/tasks/dkms.yml b/roles/desktop/tasks/dkms.yml new file mode 100644 index 0000000..51295ed --- /dev/null +++ b/roles/desktop/tasks/dkms.yml @@ -0,0 +1,13 @@ +#!/usr/bin/ansible-playbook +# vim:ft=ansible: +--- +- name: Install DKMS modules + block: + - name: Install hid-nintendo + include_role: + name: dkms + vars: + dkms_repo: "https://github.com/nicman23/dkms-hid-nintendo" + dkms_name: "nintendo-1.0" + become: yes + tags: [ dkms ] diff --git a/roles/desktop/tasks/main.yml b/roles/desktop/tasks/main.yml index 04cfe9e..6f077ec 100644 --- a/roles/desktop/tasks/main.yml +++ b/roles/desktop/tasks/main.yml @@ -39,6 +39,9 @@ - { src: "switch-rcm.rules", dest: "/etc/udev/rules.d/50-switch-rcm.rules", mode: "0644" } notify: reload udev tags: [ udev ] + - name: Configure custom kernel modules + include_tasks: dkms.yml + tags: [ dkms ] - name: Configure local Apache include_tasks: apache.yml - name: Configure SSH diff --git a/roles/dkms/handlers/main.yml b/roles/dkms/handlers/main.yml new file mode 100644 index 0000000..d96da58 --- /dev/null +++ b/roles/dkms/handlers/main.yml @@ -0,0 +1,9 @@ +#!/usr/bin/ansible-playbook +# vim:ft=ansible: +--- +- name: dkms autoinstall + command: + argv: + - /usr/sbin/dkms + - autoinstall + become: yes diff --git a/roles/dkms/tasks/main.yml b/roles/dkms/tasks/main.yml new file mode 100644 index 0000000..10bbb5d --- /dev/null +++ b/roles/dkms/tasks/main.yml @@ -0,0 +1,23 @@ +#!/usr/bin/ansible-playbook +# vim:ft=ansible: +--- +- name: Install DKMS module + block: + - name: Install packages + apt: + name: + - dkms + - name: Clone repository + git: + repo: "{{ dkms_repo }}" + dest: "/usr/src/{{ dkms_name }}" + register: r + - name: Add DKMS module + command: + argv: + - /usr/sbin/dkms + - add + - "/usr/src/{{ dkms_name }}" + notify: dkms autoinstall + when: r is changed + become: yes