Many updates over time

This commit is contained in:
2026-02-24 17:57:35 -07:00
parent 6b36273324
commit 0132ed6a8f
68 changed files with 1409 additions and 197 deletions

View File

@@ -4,10 +4,10 @@
# ------------------------------------------------------------------------------
# Copy profiles to /etc/profile.d/
- include_tasks: ../../../../functions/copy_etc-profile.d.yml
- include_tasks: ../../../shared/functions/copy_etc-profile.d.yml
# Copy scripts to /usr/local/bin
- include_tasks: ../../../../functions/copy_usr-local-bin.yml
- include_tasks: ../../../shared/functions/copy_usr-local-bin.yml
# Rsync /etc/vim
- name: Synchronizing /etc/vim

View File

@@ -0,0 +1,71 @@
---
# Copy sources.list
- name: Copying {{ ansible_distribution }} {{ ansible_distribution_major_version }} /etc/apt/sources.list
copy:
src: files/{{ ansible_distribution }}/{{ ansible_distribution_major_version }}/sources.list
dest: /etc/apt/sources.list
mode: 0644
when: modify_apt_sources == True
# Ignore apt translations
- name: Ignoring {{ ansible_distribution }} {{ ansible_distribution_major_version }} APT Translations
copy:
src: files/{{ ansible_distribution }}/99translations
dest: /etc/apt/apt.conf.d/99translations
mode: 0644
when: modify_apt_sources == True
# Physical Server
- name: Configuring {{ ansible_distribution }} {{ ansible_distribution_major_version }} Physical Server
apt:
update_cache: yes
state: present
name:
- ifenslave # NIC bonding and LACP
- bridge-utils # NIC bridging
- vlan # NIC VLAN tagging
- ethtool # LAN speed and blinking
- firmware-linux # Install all firmware including nonfree and misc
- kpartx # To examine subpartitions of VM images
- ntfs-3g # To examine NTFS VM images
- smartmontools # S.M.A.R.T hard drive tools
when: type == 'physical'
# Virtual Machine
# N/A - name: Configuring {{ ansible_distribution }} {{ ansible_distribution_major_version }} Virtual Machine
# N/A when: type == 'virtual'
# Install common apps (physical or virtual)
- name: Installing {{ ansible_distribution }} {{ ansible_distribution_major_version }} Applications
apt:
update_cache: yes
state: present
name:
- apt-transport-https # For https apt repos
- openssh-server # SSH server
- sudo # Sudo access for users
- net-tools # Deprecated ifconfig
- nmap # Port scanner
- ethtool # LAN information for debugging
- iperf # Network performance for debugging
- sysstat # Performance stats
- iotop # Data I/O top (for hard drive read/write analysis)
- iftop # Network top to watch network usage
- vim # Vim text editor
- nano # Nano text editor
- rsync # Rsync protocol
- curl # Web downloader
- wget # Web downloader
- htop # Graphical top alternative
- mlocate # Full-text search for all files
- zip # Zip utility
- unzip # Unzip utility
- gzip # Gzip utility
- git # Git source control
- nfs-common # Connect to a NFS server
- cifs-utils # Connect to a Samba server
- dos2unix # Convert dos line endings to unix and visa versa
- acl # I customize directories often with ACL
- dnsutils # Dig command and other dns commands
- ntp # Date sync

View File

@@ -0,0 +1,71 @@
---
# Copy sources.list
- name: Copying {{ ansible_distribution }} {{ ansible_distribution_major_version }} /etc/apt/sources.list
copy:
src: files/{{ ansible_distribution }}/{{ ansible_distribution_major_version }}/sources.list
dest: /etc/apt/sources.list
mode: 0644
when: modify_apt_sources == True
# Ignore apt translations
- name: Ignoring {{ ansible_distribution }} {{ ansible_distribution_major_version }} APT Translations
copy:
src: files/{{ ansible_distribution }}/99translations
dest: /etc/apt/apt.conf.d/99translations
mode: 0644
when: modify_apt_sources == True
# Physical Server
- name: Configuring {{ ansible_distribution }} {{ ansible_distribution_major_version }} Physical Server
apt:
update_cache: yes
state: present
name:
- ifenslave # NIC bonding and LACP
- bridge-utils # NIC bridging
- vlan # NIC VLAN tagging
- ethtool # LAN speed and blinking
- firmware-linux # Install all firmware including nonfree and misc
- kpartx # To examine subpartitions of VM images
- ntfs-3g # To examine NTFS VM images
- smartmontools # S.M.A.R.T hard drive tools
when: type == 'physical'
# Virtual Machine
# N/A - name: Configuring {{ ansible_distribution }} {{ ansible_distribution_major_version }} Virtual Machine
# N/A when: type == 'virtual'
# Install common apps (physical or virtual)
- name: Installing {{ ansible_distribution }} {{ ansible_distribution_major_version }} Applications
apt:
update_cache: yes
state: present
name:
- apt-transport-https # For https apt repos
- openssh-server # SSH server
- sudo # Sudo access for users
- net-tools # Deprecated ifconfig
- nmap # Port scanner
- ethtool # LAN information for debugging
- iperf # Network performance for debugging
- sysstat # Performance stats
- iotop # Data I/O top (for hard drive read/write analysis)
- iftop # Network top to watch network usage
- vim # Vim text editor
- nano # Nano text editor
- rsync # Rsync protocol
- curl # Web downloader
- wget # Web downloader
- htop # Graphical top alternative
- mlocate # Full-text search for all files
- zip # Zip utility
- unzip # Unzip utility
- gzip # Gzip utility
- git # Git source control
- nfs-common # Connect to a NFS server
- cifs-utils # Connect to a Samba server
- dos2unix # Convert dos line endings to unix and visa versa
- acl # I customize directories often with ACL
- dnsutils # Dig command and other dns commands
- ntp # Date sync

View File

@@ -0,0 +1,71 @@
---
# Copy sources.list
- name: Copying {{ ansible_distribution }} {{ ansible_distribution_major_version }} /etc/apt/sources.list
copy:
src: files/{{ ansible_distribution }}/{{ ansible_distribution_major_version }}/sources.list
dest: /etc/apt/sources.list
mode: 0644
when: modify_apt_sources == True
# Ignore apt translations
- name: Ignoring {{ ansible_distribution }} {{ ansible_distribution_major_version }} APT Translations
copy:
src: files/{{ ansible_distribution }}/99translations
dest: /etc/apt/apt.conf.d/99translations
mode: 0644
when: modify_apt_sources == True
# Physical Server
- name: Configuring {{ ansible_distribution }} {{ ansible_distribution_major_version }} Physical Server
apt:
update_cache: yes
state: present
name:
- ifenslave # NIC bonding and LACP
- bridge-utils # NIC bridging
- vlan # NIC VLAN tagging
- ethtool # LAN speed and blinking
- firmware-linux # Install all firmware including nonfree and misc
- kpartx # To examine subpartitions of VM images
- ntfs-3g # To examine NTFS VM images
- smartmontools # S.M.A.R.T hard drive tools
when: type == 'physical'
# Virtual Machine
# N/A - name: Configuring {{ ansible_distribution }} {{ ansible_distribution_major_version }} Virtual Machine
# N/A when: type == 'virtual'
# Install common apps (physical or virtual)
- name: Installing {{ ansible_distribution }} {{ ansible_distribution_major_version }} Applications
apt:
update_cache: yes
state: present
name:
- apt-transport-https # For https apt repos
- openssh-server # SSH server
- sudo # Sudo access for users
- net-tools # Deprecated ifconfig
- nmap # Port scanner
- ethtool # LAN information for debugging
- iperf # Network performance for debugging
- sysstat # Performance stats
- iotop # Data I/O top (for hard drive read/write analysis)
- iftop # Network top to watch network usage
- vim # Vim text editor
- nano # Nano text editor
- rsync # Rsync protocol
- curl # Web downloader
- wget # Web downloader
- htop # Graphical top alternative
- plocate # Full-text search for all files (a faster mlocate)
- zip # Zip utility
- unzip # Unzip utility
- gzip # Gzip utility
- git # Git source control
- nfs-common # Connect to a NFS server
- cifs-utils # Connect to a Samba server
- dos2unix # Convert dos line endings to unix and visa versa
- acl # I customize directories often with ACL
- dnsutils # Dig command and other dns commands
# NOTE, ntp is no longer used for Debian 13 as it uses systemd-timesyncd

View File

@@ -6,28 +6,38 @@
# Copy Debian 9 sources.list
- name: Copying Debian 9 apt/sources.list
copy: src=debian/9/sources.list dest=/etc/apt/sources.list mode=0644
when: ansible_os_family == "Debian" and ansible_distribution_major_version == "9"
when: modify_apt_sources == True and ansible_os_family == "Debian" and ansible_distribution_major_version == "9"
# Copy Debian 10 sources.list
- name: Copying Debian 10 apt/sources.list
copy: src=debian/10/sources.list dest=/etc/apt/sources.list mode=0644
when: ansible_os_family == "Debian" and ansible_distribution_major_version == "10"
when: modify_apt_sources == True and ansible_os_family == "Debian" and ansible_distribution_major_version == "10"
# Copy Debian 11 sources.list
- name: Copying Debian 11 apt/sources.list
copy: src=debian/11/sources.list dest=/etc/apt/sources.list mode=0644
when: ansible_os_family == "Debian" and ansible_distribution_major_version == "11"
when: modify_apt_sources == True and ansible_os_family == "Debian" and ansible_distribution_major_version == "11"
# Copy Debian 12 sources.list
- name: Copying Debian 12 apt/sources.list
copy: src=debian/12/sources.list dest=/etc/apt/sources.list mode=0644
when: modify_apt_sources == True and ansible_os_family == "Debian" and ansible_distribution_major_version == "12"
# Copy Debian 13 sources.list
- name: Copying Debian 13 apt/sources.list
copy: src=debian/13/sources.list dest=/etc/apt/sources.list mode=0644
when: modify_apt_sources == True and ansible_os_family == "Debian" and ansible_distribution_major_version == "13"
# Copy Ubuntu 16.04 sources.list
- name: Copying Ubuntu 16.04 apt/sources.list
copy: src=ubuntu/16.04/sources.list dest=/etc/apt/sources.list mode=0644
when: ansible_distribution == "Ubuntu" and ansible_distribution_version == "16.04"
when: modify_apt_sources == True and ansible_distribution == "Ubuntu" and ansible_distribution_version == "16.04"
# Ignore apt translations
- name: Ignoring apt tranlations
copy: src=debian/99translations dest=/etc/apt/apt.conf.d/99translations mode=0644
# Install common apps for all debian machines
# Install common apps for all Debian and Ubuntu Systems
- name: Installing common Debian/Ubuntu applications
apt:
update_cache: yes
@@ -50,7 +60,6 @@
- wget # Web downloader
- htop # Graphical top alternative
- mlocate # Full-text search for all files
- ntp # Date sync
- zip # Zip utility
- unzip # Unzip utility
- gzip # Gzip utility
@@ -60,3 +69,15 @@
- dos2unix # Convert dos line endings to unix and visa versa
- acl # I customize directories often with ACL
- dnsutils # Dig command and other dns commands
# Install common apps for all Debian <= 11 and Ubunt <= 22.04
- name: Installing common Debian <=11 and Ubuntu <= 22.04 applications
apt:
update_cache: yes
state: present
name:
- ntp # Date sync
when: (ansible_distribution == "Ubuntu" and ansible_distribution_version <= "22.04") or
(ansible_distribution == "Debian" and ansible_distribution_major_version <= "11")

View File

@@ -0,0 +1,5 @@
---
# Dynamically include proper file based on OS and Version
- name: "Configuring {{ ansible_distribution }} {{ ansible_distribution_major_version }} Server (physical or virtual)"
include_tasks: "{{ ansible_distribution }}_{{ ansible_distribution_major_version }}.yml"

View File

@@ -0,0 +1,5 @@
---
# Dynamically include proper file based on OS and Version
- name: Configuring Debian Server (physical or virtual)
include_tasks: "{{ ansible_distribution }}_{{ ansible_distribution_major_version }}.yml"

View File

@@ -1,19 +0,0 @@
---
# Debian Server
# ------------------------------------------------------------------------------
- name: Configuring Debian/Ubuntu physical OR virtual server
include_tasks: all.yml
# Physical Debian Server
# ------------------------------------------------------------------------------
- name: Configuring Debian/Ubuntu physical server
include_tasks: physical.yml
when: type == 'physical'
# Virtual Debian Server
# ------------------------------------------------------------------------------
- name: Configuring Debian/Ubuntu virtual server
include_tasks: virtual.yml
when: type == 'virtual'

View File

@@ -1,19 +0,0 @@
---
# ------------------------------------------------------------------------------
# These tasks run for physical Debian/Ubuntu servers
# ------------------------------------------------------------------------------
# Physical Debian/Ubuntu Server
- name: Installing physical Debian/Ubuntu server applications
apt:
update_cache: yes
state: present
name:
- ifenslave # NIC bonding and LACP
- bridge-utils # NIC bridging
- vlan # NIC VLAN tagging
- ethtool # LAN speed and blinking
- firmware-linux # Install all firmware including nonfree and misc
- kpartx # To examine subpartitions of VM images
- ntfs-3g # To examine NTFS VM images
- smartmontools # S.M.A.R.T hard drive tools

View File

@@ -1,5 +0,0 @@
---
# ------------------------------------------------------------------------------
# These tasks run for virtual Debian/Ubuntu servers
# ------------------------------------------------------------------------------

View File

@@ -1,19 +1,9 @@
---
# Debian server
# Run first to install base software required for agnostic/main.yml
# ------------------------------------------------------------------------------
- name: Configure debian/ubuntu server
include_tasks: debian/main.yml
when: ansible_os_family == "Debian"
# Manjaro server
# Run first to install base software required for agnostic/main.yml
# ------------------------------------------------------------------------------
- name: Configure Manjaro server
include_tasks: manjaro/main.yml
when: ansible_os_family == "Archlinux" and ansible_lsb.id == "ManjaroLinux"
# OS Specific main.yml
- name: "Configuring {{ ansible_distribution }} System"
include_tasks: "{{ ansible_distribution }}/main.yml"
# Any server (OS agnostic)
# ------------------------------------------------------------------------------
- name: Configure any server (OS agnostic)
include_tasks: agnostic/main.yml
- name: Configuring OS Agnostic System
include_tasks: Agnostic/main.yml