57 lines
1.3 KiB
YAML
57 lines
1.3 KiB
YAML
---
|
|
- assert:
|
|
that:
|
|
- ansible_distribution == "Fedora"
|
|
- assets is defined
|
|
|
|
- set_fact:
|
|
asset_name: 'sunshine-{{ ansible_distribution | lower }}-{{ ansible_distribution_version }}-amd64.rpm'
|
|
- set_fact:
|
|
asset_query: '[?contains(name, `{{asset_name}}`)] | [0]'
|
|
- set_fact:
|
|
asset: '{{assets | json_query(asset_query)}}'
|
|
|
|
- name: download rpm file
|
|
get_url:
|
|
url: '{{asset.browser_download_url}}'
|
|
dest: '/tmp/{{asset_name}}'
|
|
environment: '{{proxy_environment}}'
|
|
|
|
- name: install package from rpm file
|
|
dnf:
|
|
name: '/tmp/{{asset_name}}'
|
|
|
|
- name: remove rpm file
|
|
file:
|
|
state: absent
|
|
path: '/tmp/{{asset_name}}'
|
|
|
|
- name: create udev rules for uinput
|
|
become: true
|
|
copy:
|
|
content: |
|
|
KERNEL=="uinput", SUBSYSTEM=="misc", OPTIONS+="static_node=uinput", TAG+="uaccess"
|
|
dest: /etc/udev/rules.d/60-sunshine.rules
|
|
|
|
- name: reload udev rules for uinput
|
|
become: true
|
|
command: udevadm control --reload-rules
|
|
|
|
- name: request udev events
|
|
become: true
|
|
command: udevadm trigger
|
|
|
|
- name: add uinput module
|
|
become: true
|
|
modprobe:
|
|
name: uinput
|
|
|
|
- name: stat sunshine
|
|
stat:
|
|
path: /usr/bin/sunshine
|
|
register: sunshine
|
|
|
|
- name: enable permissions for KMS capture
|
|
become: true
|
|
command: 'setcap cap_sys_admin+p {{ sunshine.stat.lnk_source }}'
|