summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--installer-ansible.yml4
-rw-r--r--std.yml40
-rwxr-xr-xv-i1
3 files changed, 40 insertions, 5 deletions
diff --git a/installer-ansible.yml b/installer-ansible.yml
index f1b4a68..e924f06 100644
--- a/installer-ansible.yml
+++ b/installer-ansible.yml
@@ -1,8 +1,4 @@
# Ansible playbook to install stuff for v-i.
-# TODO:
-# - maybe install iwlwifi firmware?
-# - install liw-openpgp.pub and a gpg config to use my Yubikey
-
- hosts: image
tasks:
diff --git a/std.yml b/std.yml
index e0ab762..08724a9 100644
--- a/std.yml
+++ b/std.yml
@@ -116,7 +116,30 @@
name: ifupdown
state: absent
- - name: "configure networkd"
+ - name: "enable the non-free-firmware component on bookworm"
+ when: debian_release != "bullseye"
+ apt_repository:
+ repo: "deb http://deb.debian.org/debian {{ debian_release}} non-free-firmware"
+ state: present
+ update_cache: yes
+
+ - name: "install iwd and firmware for wifi"
+ apt:
+ name:
+ - firmware-brcm80211
+ - firmware-iwlwifi
+ - firmware-libertas
+ - firmware-misc-nonfree
+ - firmware-realtek
+ - firmware-ti-connectivity
+ - iwd
+
+ - name: "enable iwd"
+ systemd:
+ name: iwd
+ enabled: yes
+
+ - name: "configure networkd for Ethernet"
copy:
content: |
[Match]
@@ -126,6 +149,21 @@
DHCP=yes
dest: /etc/systemd/network/external.network
+ - name: "configure networkd for wireless"
+ copy:
+ content: |
+ [Match]
+ Name=wlan*
+
+ [Network]
+ DHCP=yes
+ dest: /etc/systemd/network/wireless.network
+
+ - name: "copy wireless credentials from host to target"
+ copy:
+ src: /var/lib/iwd/
+ dest: /var/lib/iwd/
+
- name: "enable networkd"
systemd:
name: systemd-networkd
diff --git a/v-i b/v-i
index 76a7946..96b76e6 100755
--- a/v-i
+++ b/v-i
@@ -549,6 +549,7 @@ def main():
log(f"reading Ansible vars from {filename}")
with open(filename) as f:
vars_dict = yaml.safe_load(f)
+ vars_dict["debian_release"] = system.debian_release
ansible_vars.update(vars_dict)
ansible_vars_json = json.dumps(ansible_vars, indent=4)
log(f"ansible_vars:\n{ansible_vars_json}")