--- - name: Uninstall system package of squeezelite ansible.builtin.apt: name: squeezelite state: absent - name: Get the userland architecture # `ansible_architecture` is the *kernel's*: a Pi on a 64-bit kernel with an armhf # userland says aarch64. What decides whether a 32-bit binary runs is dpkg's. ansible.builtin.command: dpkg --print-architecture register: pi_squeezelite_custom_dpkg_arch changed_when: false check_mode: false # read-only - name: Decide between the prebuilt binary and a build on the device ansible.builtin.set_fact: pi_squeezelite_custom_build: >- {{ (pi_squeezelite_custom_build_from_source | string | lower == 'true') or (pi_squeezelite_custom_build_from_source | string | lower == 'auto' and (pi_squeezelite_custom_dpkg_arch.stdout | trim != 'armhf' or ansible_facts.distribution_major_version | int >= 13)) }} - name: Install dependencies ansible.builtin.apt: name: "{{ pi_squeezelite_custom_build_packages if pi_squeezelite_custom_build else pi_squeezelite_custom_runtime_packages }}" state: present cache_valid_time: 7200 - name: Remove old config file if present ansible.builtin.file: path: /etc/default/squeezelite state: absent - name: Copy over custom compile version of squeezelite ansible.builtin.copy: src: squeezelite dest: /opt/squeezelite mode: "700" notify: Restart squeezelite when: not pi_squeezelite_custom_build - name: Build squeezelite from source (needed on a 64-bit userland, see README) ansible.builtin.include_tasks: build.yml when: pi_squeezelite_custom_build - name: Install systemd service file ansible.builtin.template: src: squeezelite.service dest: /lib/systemd/system/ mode: "0644" notify: Restart squeezelite - name: Enable squeezelite autostart ansible.builtin.systemd: name: squeezelite state: started enabled: "yes" daemon_reload: "yes" - name: Add to sysdweb ansible.builtin.include_role: name: pi_sysdweb vars: pi_sysdweb_name: squeezelite # build with adapted Makefile.rpi: # OPTS = -DRESAMPLE -DDSD -DUSE_SSL -DLINKALL -I./include -I./include/opus -I./include/alac -I/usr/local/include -s -mfpu=vfp # -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s