Ansible Role: common
This role configures a baseline set of common configurations for Debian-based systems, including time synchronization, essential packages, hostname, and specific developer tools.
Requirements
None.
Role Variables
Available variables are listed below, along with default values (see vars/main.yml):
# A list of common packages to install via apt.
common_packages:
- build-essential
- curl
- git
- iperf3
- neovim
- rsync
- smartmontools
- sudo
- systemd-timesyncd
- tree
- screen
- bat
- fd-find
- ripgrep
- nfs-common
- open-iscsi
- parted
# The hostname to configure.
hostname: "new-host"
Tasks
The role performs the following tasks:
- Configure Time: Sets up
systemd-timesyncdand timezone. - Configure Packages: Installs the list of
common_packages. - Configure Hostname: Sets the system hostname.
- Configure Extra-Packages:
- Installs
eza(modern ls replacement). - Installs
bottom(process viewer). - Installs
neovimfrom AppImage and clones a custom configuration.
- Installs
- Configure Bash: Sets up bash aliases and prompt.
- Configure SSH: Configures
sshd_configfor security.
Dependencies
None.
Example Playbook
- hosts: servers
roles:
- role: common
vars:
hostname: "my-server"
License
MIT
Author Information
This role was created in 2025 by TuDatTr.