diff --git a/roles/1-prep/tasks/raspberry_pi.yml b/roles/1-prep/tasks/raspberry_pi.yml index 3c9ed54ad..232674dca 100644 --- a/roles/1-prep/tasks/raspberry_pi.yml +++ b/roles/1-prep/tasks/raspberry_pi.yml @@ -22,7 +22,7 @@ path: /boot/firmware/usercfg.txt line: "dtoverlay=i2c-rtc,{{ rtc_id }}=on" state: present - when: rtc_id is defined and rtc_id != "none" and is_ubuntu + when: rtc_id is defined and rtc_id != "none" and is_ubuntu # CLARIF: Ubuntu runs increasingly well on RPi hardware, starting in 2020 especially #- name: Enable bluetooth in /boot/firmware/syscfg.txt on Ubuntu (needs reboot) # lineinfile: @@ -31,15 +31,28 @@ # line: 'include btcfg.txt' # when: is_ubuntu -- name: 'Ensure packages are installed: dphys-swapfile, fake-hwclock, iw, rfkill, wireless-tools' +- name: '2021-07-27: SEE ALSO ~4 networking packages LATER installed by https://github.com/iiab/iiab/blob/master/roles/2-common/tasks/packages.yml' + meta: noop + +- name: '2021-07-27: SEE ALSO 4-5 networking packages LATER installed by https://github.com/iiab/iiab/blob/master/roles/2-common/tasks/network.yml' + meta: noop + +# 2021-07-27 explanation from @jvonau: The 3 BELOW (iw, rfkill, wireless-tools) +# are provided by RaspiOS. Ubuntu|Debian on the other hand are hit or miss: +# desktops might have some/all 3 preinstalled, while servers tend not to have +# these present at all, but are needed to be installed if you want to take full +# advantage of WiFi on Ubuntu and friends -- but it's only enforced on RPi +# hardware where we know in advance of the likelihood of WiFi being present. + +- name: 'Install packages: cloud-guest-utils, dphys-swapfile, fake-hwclock, iw, rfkill, wireless-tools' package: name: - - dphys-swapfile - - fake-hwclock - - iw - - rfkill - - wireless-tools - - cloud-guest-utils + - cloud-guest-utils # Contains 'growpart' for resizing a partition during boot, which is normally done with the aid of cloud-init + - dphys-swapfile # 2021-07-27: RaspiOS installs this regardless -- autogenerate and use a swap file + - fake-hwclock # 2021-07-27: RaspiOS installs this regardless -- save/restore system clock on machines without working RTC hardware + - iw # 2021-07-27: RaspiOS installs this regardless -- configure Linux wireless devices -- hard dependence for ap0 creation, SEE https://github.com/iiab/iiab/blob/master/roles/network/templates/hostapd/clone-wifi.service.j2 + - rfkill # 2021-07-27: RaspiOS installs this regardless -- enable & disable wireless devices + - wireless-tools # 2021-07-27: RaspiOS installs this regardless -- manipulate Linux Wireless Extensions state: present - name: Increase swap file size (to CONF_SWAPSIZE={{ pi_swap_file_size }} in /etc/dphys-swapfile) as kalite pip download fails diff --git a/roles/2-common/tasks/network.yml b/roles/2-common/tasks/network.yml index dc71f4a13..cc1615a58 100644 --- a/roles/2-common/tasks/network.yml +++ b/roles/2-common/tasks/network.yml @@ -1,23 +1,26 @@ +- name: '2021-07-27: SEE ALSO ~3 networking packages EARLIER installed by https://github.com/iiab/iiab/blob/master/roles/1-prep/tasks/raspberry_pi.yml' + meta: noop + +- name: '2021-07-27: SEE ALSO ~4 networking packages EARLIER installed by https://github.com/iiab/iiab/blob/master/roles/2-common/tasks/packages.yml' + meta: noop + - name: Install package networkd-dispatcher (OS's other than RaspiOS) package: - name: networkd-dispatcher + name: networkd-dispatcher # Dispatcher service for systemd-networkd connection status changes state: present when: not is_raspbian -# used in the network role -- name: 'Install network packages: hostapd, iproute2, iptables-persistent, netmask (debuntu)' +- name: 'Install network packages: hostapd, iproute2, iptables-persistent, netmask -- later used by https://github.com/iiab/iiab/tree/master/roles/network' package: name: - - iproute2 - - iptables-persistent - - hostapd - - netmask + - hostapd # IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP Authenticator -- has its service masked out of the box, and only used when IIAB's network roles detects the presence of WiFi and an AP is desired + - iproute2 # 2021-07-27: RaspiOS installs this regardless -- the new networking and traffic control tools, meant to replace net-tools + - iptables-persistent # Boot-time loader for netfilter rules, iptables (firewall) plugin -- however 'netfilter' is ever moving forward so keep an eye on it! + - netmask # Handy utility -- helps determine network masks state: present - when: is_debuntu - name: Install /etc/network/if-pre-up.d/iptables from template (0755, debuntu) template: src: iptables dest: /etc/network/if-pre-up.d/iptables mode: '0755' - when: is_debuntu diff --git a/roles/2-common/tasks/packages.yml b/roles/2-common/tasks/packages.yml index 4f4ed6730..2c8e069d5 100644 --- a/roles/2-common/tasks/packages.yml +++ b/roles/2-common/tasks/packages.yml @@ -14,46 +14,46 @@ # state: present # when: is_redhat -- name: "Install 6 deb/apt packages: avahi-daemon, exfat-fuse, exfat-utils, inetutils-syslogd, libnss-mdns, wpasupplicant" - package: - name: - #- avahi-discover - - avahi-daemon - - exfat-fuse # Should no longer be nec with 5.4+ kernels - - exfat-utils # Likewise! - - inetutils-syslogd # Error logging facility - - libnss-mdns # Provides name resolution via mDNS (Multicast DNS) using Zeroconf/Bonjour e.g. Avahi - - wpasupplicant - state: present - #when: is_debuntu +- name: '2021-07-27: SEE ALSO ~3 networking packages EARLIER installed by https://github.com/iiab/iiab/blob/master/roles/1-prep/tasks/raspberry_pi.yml' + meta: noop -- name: "Install 18 common packages: acpid, bzip2, curl, gawk, htop, i2c-tools, logrotate, mlocate, net-tools, ntfs-3g, pandoc, pastebinit, rsync, sqlite3, tar, unzip, usbutils, wget" +- name: '2021-07-27: SEE ALSO 4-5 networking packages LATER installed by https://github.com/iiab/iiab/blob/master/roles/2-common/tasks/network.yml' + meta: noop + +- name: "Install 20 common packages: acpid, avahi-daemon, bzip2, curl, gawk, htop, i2c-tools, libnss-mdns, logrotate, mlocate, net-tools, pandoc, pastebinit, rsync, sqlite3, tar, unzip, usbutils, wget, wpasupplicant" package: name: - - acpid # Daemon for ACPI (power mgmt) events - - bzip2 # 2021-04-26: Prob not used, but can't hurt? - - curl # Used to install roles/nodejs and roles/nodered - #- etckeeper # "nobody is really using etckeeper and it's bloating the filesystem every time apt runs" per @jvonau at https://github.com/iiab/iiab/issues/1146 + - acpid # Daemon for ACPI (power mgmt) events + - avahi-daemon # 2021-07-27: RaspiOS (and package libnss-mnds, below) install this regardless -- holdover from the XO days and used to advertise ssh/admin-console being available via avahi-daemon + #- avahi-discover # 2021-07-27: Commented out long ago + - bzip2 # 2021-04-26: Prob not used, but can't hurt? + - curl # Used to install roles/nodejs and roles/nodered + #- etckeeper # "nobody is really using etckeeper and it's bloating the filesystem every time apt runs" per @jvonau at https://github.com/iiab/iiab/issues/1146 + #- exfat-fuse # 2021-07-27: Should no longer be nec with 5.4+ kernels, so let's try commenting it out + #- exfat-utils # Ditto! See also 'ntfs-3g' below - gawk - htop - - i2c-tools # Low-level bus/chip/register/EEPROM tools e.g. for RTC - #- iproute2 # Installed by roles/2-common/tasks/network.yml + - i2c-tools # Low-level bus/chip/register/EEPROM tools e.g. for RTC + #- inetutils-syslogd # 2021-07-27: Error logging facility -- holdover from the XO days, journalctl has replaced this in newer distros + #- iproute2 # Installed by roles/2-common/tasks/network.yml - logrotate - #- lynx # Installed by 1-prep's roles/iiab-admin/tasks/access.yml - #- make # 2021-07-27: Currently used by roles/pbx and no other roles + - libnss-mdns # 2021-07-27: RaspiOS (and package avahi-daemon, above) install this regardless -- client-side library -- provides name resolution via mDNS (Multicast DNS) using Zeroconf/Bonjour e.g. Avahi + #- lynx # Installed by 1-prep's roles/iiab-admin/tasks/access.yml + #- make # 2021-07-27: Currently used by roles/pbx and no other roles - mlocate - - net-tools # 2021-04-26: @jvonau suggests possibly deleting this...unless oldtimers really want these older commands in iiab-diagnostics output? - - ntfs-3g # Possibly no longer nec, similar to exfat packages above? + - net-tools # 2021-04-26: @jvonau suggests possibly deleting this...unless oldtimers really want these older commands in iiab-diagnostics output? + #- ntfs-3g # 2021-07-27: Should no longer be nec, similar to exfat packages above -- but see this symlink warning: https://superuser.com/questions/1050544/mount-with-kernel-ntfs-and-not-ntfs-3g #- openssh-server # ssh (Raspbian) or openssh-server (other OS's) already installed by 1-prep's roles/sshd/tasks/main.yml - - pandoc # For /usr/bin/iiab-refresh-wiki-docs - - pastebinit # For /usr/bin/iiab-diagnostics + - pandoc # For /usr/bin/iiab-refresh-wiki-docs + - pastebinit # For /usr/bin/iiab-diagnostics - rsync - #- screen # Installed by 1-prep's roles/iiab-admin/tasks/access.yml + #- screen # Installed by 1-prep's roles/iiab-admin/tasks/access.yml - sqlite3 - #- sudo # Installed by 1-prep's roles/iiab-admin/tasks/sudo-prereqs.yml + #- sudo # Installed by 1-prep's roles/iiab-admin/tasks/sudo-prereqs.yml - tar - unzip - #- usbmount # Moved to roles/usb_lib/tasks/install.yml - - usbutils # 2021-04-26: Also move to roles/usb_lib/tasks/install.yml ? + #- usbmount # Moved to roles/usb_lib/tasks/install.yml + - usbutils # 2021-07-27: RaspiOS installs this regardless -- move to roles/usb_lib/tasks/install.yml ? - wget + - wpasupplicant # 2021-07-27: RaspiOS installs this regardless -- client library for connections to a WiFi AP state: present