mirror of
https://github.com/iiab/iiab.git
synced 2025-02-13 19:52:06 +00:00
84 lines
2.7 KiB
YAML
84 lines
2.7 KiB
YAML
- name: Disable built-in serial uart in /boot/firmware/usercfg.txt on Ubuntu < 20.10 on RPi
|
|
lineinfile:
|
|
path: /boot/firmware/usercfg.txt
|
|
line: "enable_uart=0"
|
|
state: present
|
|
when: rpi_model != "none" and is_ubuntu and (ansible_distribution_version is version('20.10', '<'))
|
|
#when: rpi_model != "none" and is_ubuntu and (ansible_distribution_release == "focal")
|
|
# 2020-10-27 #2585: Ubuntu Desktop 20.10 has no /boot/firmware/usercfg.txt
|
|
|
|
- name: Install pi-bluetooth package on Ubuntu on RPi
|
|
package:
|
|
name: pi-bluetooth
|
|
state: present
|
|
when: rpi_model != "none" and is_ubuntu
|
|
|
|
- name: Install bluetooth packages
|
|
package:
|
|
name:
|
|
- bluetooth
|
|
- bluez
|
|
- bluez-tools
|
|
state: present
|
|
|
|
- name: Create bluetooth services
|
|
template:
|
|
backup: no
|
|
src: "{{ item.src }}"
|
|
dest: "{{ item.dest }}"
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
with_items:
|
|
- { src: 'bt-agent.service.j2', dest: '/etc/systemd/system/bt-agent.service' }
|
|
- { src: 'bt-pan.service.j2', dest: '/etc/systemd/system/bt-pan.service' }
|
|
- { src: 'bt-term.service.j2', dest: '/etc/systemd/system/bt-term.service' }
|
|
- { src: 'network.conf.j2', dest: '/etc/bluetooth/network.conf' }
|
|
|
|
- name: Create bluetooth utility scripts
|
|
template:
|
|
backup: no
|
|
src: "{{ item.src }}"
|
|
dest: "{{ item.dest }}"
|
|
owner: root
|
|
group: root
|
|
mode: 0755
|
|
with_items:
|
|
- { src: 'iiab-bt-pan-on.j2', dest: '/usr/bin/iiab-bt-pan-on' }
|
|
- { src: 'iiab-bt-pan-off.j2', dest: '/usr/bin/iiab-bt-pan-off' }
|
|
- { src: 'iiab-bt-pan-discoverable-on.j2', dest: '/usr/bin/iiab-bt-pan-discoverable-on' }
|
|
- { src: 'iiab-bt-term-on.j2', dest: '/usr/bin/iiab-bt-term-on' }
|
|
- { src: 'iiab-bt-term-off.j2', dest: '/usr/bin/iiab-bt-term-off' }
|
|
|
|
# Bluetooth service needs /usr/lib/bluetooth/bluetoothd -C --noplugin=sap
|
|
# Copy and patch it
|
|
|
|
- name: Copy the bluetooth service
|
|
template:
|
|
dest: /etc/systemd/system/bluetooth.service
|
|
src: /lib/systemd/system/bluetooth.service
|
|
|
|
- name: Add -C --noplugin=sap to execStart of bluetooth service
|
|
lineinfile:
|
|
path: /etc/systemd/system/bluetooth.service
|
|
regexp: '^ExecStart=/usr/lib/bluetooth/bluetoothd'
|
|
line: 'ExecStart=/usr/lib/bluetooth/bluetoothd -C --noplugin=sap'
|
|
|
|
- name: Set discoverable not to timeout
|
|
lineinfile:
|
|
path: /etc/bluetooth/main.conf
|
|
regexp: '^#DiscoverableTimeout'
|
|
line: 'DiscoverableTimeout = 0'
|
|
|
|
|
|
# RECORD Bluetooth AS INSTALLED
|
|
|
|
- name: "Set 'bluetooth_installed: True'"
|
|
set_fact:
|
|
bluetooth_installed: True
|
|
|
|
- name: "Add 'bluetooth_installed: True' to {{ iiab_state_file }}"
|
|
lineinfile:
|
|
path: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml
|
|
regexp: '^bluetooth_installed'
|
|
line: 'bluetooth_installed: True'
|