Compare commits

..

5 Commits

Author SHA1 Message Date
5484dabcfe Fix default hostname 2023-10-21 13:41:29 +03:00
bccd836e3d Add hostname configuration 2023-10-05 23:56:20 +03:00
0f804bce19 Update default common packages list 2023-08-27 23:27:54 +03:00
Oleg Vasilev
acfcba52c1 Stupid ansible 2022-02-22 01:51:42 +03:00
Oleg Vasilev
ce41bd0da8 Major role refactoring 2022-02-22 01:46:02 +03:00
11 changed files with 85 additions and 99 deletions

View File

@@ -1,3 +1,3 @@
# archlinux-common # archlinux-common
Ansible role for configuring common things on Archlinux Ansible role for configuring common things on Archlinux

View File

@@ -1,9 +1,12 @@
--- ---
system_locales: common_hostname: "{{ inventory_hostname }}"
- "{{ system_locale_lang }}"
system_locale_lang: en_US.UTF-8 # https://sourceware.org/glibc/wiki/Locales
system_locales:
- en_US.UTF-8 UTF-8
system_locale_lang: "{{ (system_locales | first). split(' ')[0] }}"
system_locale_ctype: "{{ system_locale_lang }}" system_locale_ctype: "{{ system_locale_lang }}"
system_locale_numeric: "{{ system_locale_lang }}" system_locale_numeric: "{{ system_locale_lang }}"
@@ -18,3 +21,22 @@ system_locale_telephone: "{{ system_locale_lang }}"
system_locale_measurement: "{{ system_locale_lang }}" system_locale_measurement: "{{ system_locale_lang }}"
system_locale_identification: "{{ system_locale_lang }}" system_locale_identification: "{{ system_locale_lang }}"
system_locale_all: "" system_locale_all: ""
system_timezone: "Europe/Moscow"
pacman_mirrors:
- https://mirrors.kernel.org/archlinux/$repo/os/$arch
- https://mirror.surf/archlinux/$repo/os/$arch
- https://mirror.yandex.ru/archlinux/$repo/os/$arch
pacman_ignorepkg: []
pacman_parallel_downloads: 2
common_packages:
- less
- bash-completion
- htop
- nano
- bind
- wget
- curl

View File

@@ -1,13 +1,52 @@
--- ---
- name: Common | Configure system - name: Common | Set hostname
import_tasks: system.yml hostname:
name: "{{ common_hostname }}"
- name: Common | Configure pacman - name: Common | Set available locales
import_tasks: pacman.yml template:
src: locale.gen.j2
- name: Common | Packages dest: /etc/locale.gen
import_tasks: packages.yml mode: 0644
owner: root
group: root
notify: Common | Generate locales
- name: Common | Run handlers - name: Common | Run handlers
meta: flush_handlers meta: flush_handlers
- name: Common | Set system locale
template:
src: locale.conf.j2
mode: 0644
owner: root
group: root
dest: /etc/locale.conf
- name: Common | Set timezone
timezone:
name: "{{ system_timezone }}"
- name: Common | Deploy pacman main config
template:
src: pacman.conf.j2
dest: /etc/pacman.conf
mode: 0644
owner: root
group: root
- name: Common | Setup pacman repos
template:
src: mirrorlist.j2
dest: /etc/pacman.d/mirrorlist
mode: 0644
owner: root
group: root
- name: Common | Install useful common packages
pacman:
state: present
name: "{{ common_packages }}"

View File

@@ -1,34 +0,0 @@
---
- name: Common | Install useful packages
pacman:
state: present
update_cache: yes
# Move this to vars and add additional variable for custom packages
name:
- htop
- nano
- strace
- lsof
- wget
- curl
- go
- tcpdump
- nmap
- dosfstools
- arch-install-scripts
- gptfdisk
- bash-completion
- git
- bind
#- block:
# - name: Common | Install yay from aur
# aur:
# name: yay
# use: makepkg
# skip_installed: yes
# become: no

View File

@@ -1,17 +0,0 @@
---
- name: Common | Deploy pacman main config
template:
src: pacman.conf.j2
dest: /etc/pacman.conf
mode: 0644
owner: root
group: root
- name: Common | Setup pacman repos
template:
src: mirrorlist.j2
dest: /etc/pacman.d/mirrorlist
mode: 0644
owner: root
group: root

View File

@@ -1,23 +0,0 @@
---
- name: Common | Set or/and generate locales
template:
src: locale.gen.j2
dest: /etc/locale.gen
mode: 0644
owner: root
group: root
notify: Common | Generate locales
- name: Common | Set system locale
template:
src: locale.conf.j2
mode: 0644
owner: root
group: root
dest: /etc/locale.conf
- name: Common | Set timezone
timezone:
name: Europe/Moscow

View File

@@ -1,4 +1,5 @@
# {{ ansible_managed }} # {{ ansible_managed }}
LANG="{{ system_locale_lang }}" LANG="{{ system_locale_lang }}"
LC_CTYPE="{{ system_locale_ctype }}" LC_CTYPE="{{ system_locale_ctype }}"
LC_NUMERIC="{{ system_locale_numeric }}" LC_NUMERIC="{{ system_locale_numeric }}"

View File

@@ -1,4 +1,5 @@
# {{ ansible_managed }} # {{ ansible_managed }}
{% for item in system_locales %}
{{ item }} {% for locale in system_locales %}
{{ locale }}
{% endfor %} {% endfor %}

View File

@@ -1,4 +1,5 @@
# {{ ansible_managed }} # {{ ansible_managed }}
Server = http://mirror.zeym.org/archlinux/$repo/os/$arch
Server = http://mirror.yandex.ru/archlinux/$repo/os/$arch
{% for server in pacman_mirrors %}
Server = {{ server }}
{% endfor %}

View File

@@ -1,4 +1,5 @@
# {{ ansible_managed}} # {{ ansible_managed}}
[options] [options]
# The following paths are commented out with their default values listed. # The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths. # If you wish to use different paths, uncomment and update the paths.
@@ -16,7 +17,7 @@ HoldPkg = pacman glibc
Architecture = auto Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup # Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg = IgnorePkg = {{ pacman_ignorepkg | join(' ') }}
#IgnoreGroup = #IgnoreGroup =
#NoUpgrade = #NoUpgrade =
@@ -25,9 +26,9 @@ Architecture = auto
# Misc options # Misc options
#UseSyslog #UseSyslog
Color Color
#TotalDownload
CheckSpace CheckSpace
VerbosePkgLists VerbosePkgLists
ParallelDownloads = {{ pacman_parallel_downloads }}
# By default, pacman accepts packages signed by keys that its local keyring # By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages. # trusts (see pacman-key and its man page), as well as unsigned packages.
@@ -35,15 +36,15 @@ SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional LocalFileSigLevel = Optional
RemoteFileSigLevel = Required RemoteFileSigLevel = Required
#[testing]
#Include = /etc/pacman.d/mirrorlist
[core] [core]
Include = /etc/pacman.d/mirrorlist Include = /etc/pacman.d/mirrorlist
[extra] [extra]
Include = /etc/pacman.d/mirrorlist Include = /etc/pacman.d/mirrorlist
#[testing]
#Include = /etc/pacman.d/mirrorlist
#[community-testing] #[community-testing]
#Include = /etc/pacman.d/mirrorlist #Include = /etc/pacman.d/mirrorlist

View File

@@ -1,5 +0,0 @@
# {{ ansible_managed }}
[Time]
NTP=pool.ntp.org
FallbackNTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
RootDistanceMaxSec=10