From b4735a6daff23894a154487860b0adc68aaa5ebe Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Fri, 2 Dec 2022 18:29:13 -0500 Subject: [PATCH 1/2] Start a bluetooth role. --- ansible/environments/laptop/group_vars/all | 1 + ansible/playbook.yaml | 1 + ansible/roles/bluetooth/defaults/main.yaml | 1 + .../bluetooth/files/bluetooth_loader.conf | 1 + ansible/roles/bluetooth/tasks/common.yaml | 14 +++++++++ ansible/roles/bluetooth/tasks/freebsd.yaml | 9 ++++++ ansible/roles/bluetooth/tasks/linux.yaml | 21 ++++++++++++++ ansible/roles/bluetooth/tasks/main.yaml | 2 ++ ansible/roles/bluetooth/tasks/peruser.yaml | 29 +++++++++++++++++++ .../bluetooth/tasks/peruser_freebsd.yaml | 0 .../roles/bluetooth/tasks/peruser_linux.yaml | 0 11 files changed, 79 insertions(+) create mode 100644 ansible/roles/bluetooth/defaults/main.yaml create mode 100644 ansible/roles/bluetooth/files/bluetooth_loader.conf create mode 100644 ansible/roles/bluetooth/tasks/common.yaml create mode 100644 ansible/roles/bluetooth/tasks/freebsd.yaml create mode 100644 ansible/roles/bluetooth/tasks/linux.yaml create mode 100644 ansible/roles/bluetooth/tasks/main.yaml create mode 100644 ansible/roles/bluetooth/tasks/peruser.yaml create mode 100644 ansible/roles/bluetooth/tasks/peruser_freebsd.yaml create mode 100644 ansible/roles/bluetooth/tasks/peruser_linux.yaml diff --git a/ansible/environments/laptop/group_vars/all b/ansible/environments/laptop/group_vars/all index d3471aa..afdcfce 100644 --- a/ansible/environments/laptop/group_vars/all +++ b/ansible/environments/laptop/group_vars/all @@ -1 +1,2 @@ timezone: "America/New_York" +install_bluetooth: true diff --git a/ansible/playbook.yaml b/ansible/playbook.yaml index 53cd82c..b06d0bd 100644 --- a/ansible/playbook.yaml +++ b/ansible/playbook.yaml @@ -32,6 +32,7 @@ - autofs - exfat - bhyve + - bluetooth - media - kubernetes - google_cloud_sdk diff --git a/ansible/roles/bluetooth/defaults/main.yaml b/ansible/roles/bluetooth/defaults/main.yaml new file mode 100644 index 0000000..0272161 --- /dev/null +++ b/ansible/roles/bluetooth/defaults/main.yaml @@ -0,0 +1 @@ +install_bluetooth: false diff --git a/ansible/roles/bluetooth/files/bluetooth_loader.conf b/ansible/roles/bluetooth/files/bluetooth_loader.conf new file mode 100644 index 0000000..ffce4e4 --- /dev/null +++ b/ansible/roles/bluetooth/files/bluetooth_loader.conf @@ -0,0 +1 @@ +ng_ubt_load="YES" diff --git a/ansible/roles/bluetooth/tasks/common.yaml b/ansible/roles/bluetooth/tasks/common.yaml new file mode 100644 index 0000000..d7c1735 --- /dev/null +++ b/ansible/roles/bluetooth/tasks/common.yaml @@ -0,0 +1,14 @@ +- import_tasks: tasks/freebsd.yaml + when: 'os_flavor == "freebsd"' + +- import_tasks: tasks/linux.yaml + when: 'os_flavor == "linux"' + +- include_tasks: + file: tasks/peruser.yaml + apply: + become: yes + become_user: "{{ initialize_user }}" + loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`].key') }}" + loop_control: + loop_var: initialize_user diff --git a/ansible/roles/bluetooth/tasks/freebsd.yaml b/ansible/roles/bluetooth/tasks/freebsd.yaml new file mode 100644 index 0000000..42acef1 --- /dev/null +++ b/ansible/roles/bluetooth/tasks/freebsd.yaml @@ -0,0 +1,9 @@ +- name: Install loader.conf + copy: + src: "files/{{ item }}_loader.conf" + dest: "/boot/loader.conf.d/{{ item }}.conf" + mode: 0644 + owner: root + group: wheel + loop: + - bluetooth diff --git a/ansible/roles/bluetooth/tasks/linux.yaml b/ansible/roles/bluetooth/tasks/linux.yaml new file mode 100644 index 0000000..429ad91 --- /dev/null +++ b/ansible/roles/bluetooth/tasks/linux.yaml @@ -0,0 +1,21 @@ +# - name: Build aur packages +# register: buildaur +# become_user: "{{ build_user.name }}" +# command: "aurutils-sync --no-view {{ item }}" +# args: +# creates: "/var/cache/pacman/custom/{{ item }}-*.pkg.tar.*" +# loop: +# - foo + +# - name: Update cache +# when: buildaur.changed +# pacman: +# name: [] +# state: present +# update_cache: true + +# - name: Install packages +# package: +# name: +# - foo +# state: present diff --git a/ansible/roles/bluetooth/tasks/main.yaml b/ansible/roles/bluetooth/tasks/main.yaml new file mode 100644 index 0000000..7907fb3 --- /dev/null +++ b/ansible/roles/bluetooth/tasks/main.yaml @@ -0,0 +1,2 @@ +- import_tasks: tasks/common.yaml + when: install_bluetooth diff --git a/ansible/roles/bluetooth/tasks/peruser.yaml b/ansible/roles/bluetooth/tasks/peruser.yaml new file mode 100644 index 0000000..111e886 --- /dev/null +++ b/ansible/roles/bluetooth/tasks/peruser.yaml @@ -0,0 +1,29 @@ +- include_role: + name: per_user + +# - name: Create directories +# file: +# name: "{{ account_homedir.stdout }}/{{ item }}" +# state: directory +# mode: 0700 +# owner: "{{ account_name.stdout }}" +# group: "{{ group_name.stdout }}" +# loop: +# - ".config/foo" + +# - name: Copy files +# copy: +# src: "files/{{ item.src }}" +# dest: "{{ account_homedir.stdout }}/{{ item.dest }}" +# mode: 0600 +# owner: "{{ account_name.stdout }}" +# group: "{{ group_name.stdout }}" +# loop: +# - src: foo.conf +# dest: .config/foo/foo.conf + +- import_tasks: tasks/peruser_freebsd.yaml + when: 'os_flavor == "freebsd"' + +- import_tasks: tasks/peruser_linux.yaml + when: 'os_flavor == "linux"' diff --git a/ansible/roles/bluetooth/tasks/peruser_freebsd.yaml b/ansible/roles/bluetooth/tasks/peruser_freebsd.yaml new file mode 100644 index 0000000..e69de29 diff --git a/ansible/roles/bluetooth/tasks/peruser_linux.yaml b/ansible/roles/bluetooth/tasks/peruser_linux.yaml new file mode 100644 index 0000000..e69de29 From e35f622a0dfa93d1fbeab17e285e28c9510ce603 Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Sat, 18 Feb 2023 12:19:58 -0500 Subject: [PATCH 2/2] Enable bluetooth in linux. --- ansible/roles/blank/tasks/linux.yaml | 8 ++++++++ .../bluetooth/files/bluetooth_loader.conf | 1 - ansible/roles/bluetooth/tasks/freebsd.yaml | 9 --------- ansible/roles/bluetooth/tasks/linux.yaml | 19 ++++++++++++++----- 4 files changed, 22 insertions(+), 15 deletions(-) delete mode 100644 ansible/roles/bluetooth/files/bluetooth_loader.conf diff --git a/ansible/roles/blank/tasks/linux.yaml b/ansible/roles/blank/tasks/linux.yaml index 429ad91..43ba876 100644 --- a/ansible/roles/blank/tasks/linux.yaml +++ b/ansible/roles/blank/tasks/linux.yaml @@ -19,3 +19,11 @@ # name: # - foo # state: present + +# - name: Enable services +# systemd: +# enabled: yes +# name: "{{ item }}" +# daemon_reload: yes +# loop: +# - foo.service diff --git a/ansible/roles/bluetooth/files/bluetooth_loader.conf b/ansible/roles/bluetooth/files/bluetooth_loader.conf deleted file mode 100644 index ffce4e4..0000000 --- a/ansible/roles/bluetooth/files/bluetooth_loader.conf +++ /dev/null @@ -1 +0,0 @@ -ng_ubt_load="YES" diff --git a/ansible/roles/bluetooth/tasks/freebsd.yaml b/ansible/roles/bluetooth/tasks/freebsd.yaml index 42acef1..e69de29 100644 --- a/ansible/roles/bluetooth/tasks/freebsd.yaml +++ b/ansible/roles/bluetooth/tasks/freebsd.yaml @@ -1,9 +0,0 @@ -- name: Install loader.conf - copy: - src: "files/{{ item }}_loader.conf" - dest: "/boot/loader.conf.d/{{ item }}.conf" - mode: 0644 - owner: root - group: wheel - loop: - - bluetooth diff --git a/ansible/roles/bluetooth/tasks/linux.yaml b/ansible/roles/bluetooth/tasks/linux.yaml index 429ad91..0ee1f95 100644 --- a/ansible/roles/bluetooth/tasks/linux.yaml +++ b/ansible/roles/bluetooth/tasks/linux.yaml @@ -14,8 +14,17 @@ # state: present # update_cache: true -# - name: Install packages -# package: -# name: -# - foo -# state: present +- name: Install packages + package: + name: + - bluez + - bluez-utils + state: present + +- name: Enable services + systemd: + enabled: yes + name: "{{ item }}" + daemon_reload: yes + loop: + - bluetooth.service