diff --git a/files/etc/apt/preferences.d/limit-unstable b/files/etc/apt/preferences.d/limit-unstable new file mode 100644 index 0000000..3350f2c --- /dev/null +++ b/files/etc/apt/preferences.d/limit-unstable @@ -0,0 +1,3 @@ +Package: * +Pin: release a=unstable +Pin-Priority: 90 diff --git a/tasks/main.yml b/tasks/main.yml index a143553..0b368a4 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -3,6 +3,9 @@ setup: - include_tasks: "setup-{{ ansible_os_family|lower }}.yml" + when: ansible_os_family.lower() == 'archlinux' +- include_tasks: "setup-{{ ansible_distribution|lower }}.yml" + when: ansible_os_family.lower() != 'archlinux' - name: Install WireGuard package: diff --git a/tasks/setup-debian.yml b/tasks/setup-debian.yml index 28d6800..8adcba4 100644 --- a/tasks/setup-debian.yml +++ b/tasks/setup-debian.yml @@ -1,26 +1,28 @@ --- -- name: Update APT package cache - apt: - update_cache: true - cache_valid_time: 3600 - when: ansible_distribution == "Ubuntu" +- name: Setup WireGuard preference + copy: + src: etc/apt/preferences.d/limit-unstable + dest: /etc/apt/preferences.d/limit-unstable + owner: root + group: root + mode: 0644 tags: - wg-install -- name: Install required packages - package: - name: "{{ item }}" +- name: Add WireGuard key + apt_key: + keyserver: "keyserver.ubuntu.com" + id: "8B48AD6246925553" state: present - with_items: - - software-properties-common - - linux-headers-{{ ansible_kernel }} + run_once: true tags: - wg-install - name: Add WireGuard repository apt_repository: - repo: "ppa:wireguard/wireguard" + repo: "deb http://deb.debian.org/debian/ unstable main" state: present update_cache: yes + run_once: true tags: - wg-install diff --git a/tasks/setup-ubuntu.yml b/tasks/setup-ubuntu.yml new file mode 100644 index 0000000..c14591a --- /dev/null +++ b/tasks/setup-ubuntu.yml @@ -0,0 +1,25 @@ +--- +- name: Update APT package cache + apt: + update_cache: true + cache_valid_time: 3600 + tags: + - wg-install + +- name: Install required packages + package: + name: "{{ item }}" + state: present + with_items: + - software-properties-common + - linux-headers-{{ ansible_kernel }} + tags: + - wg-install + +- name: Add WireGuard repository + apt_repository: + repo: "ppa:wireguard/wireguard" + state: present + update_cache: yes + tags: + - wg-install