switches from fedora to arch, reorg, etc
This commit is contained in:
@@ -1,15 +1,9 @@
|
||||
---
|
||||
- name: Configure DNF
|
||||
template:
|
||||
src: dnf.conf.j2
|
||||
dest: /etc/dnf/dnf.conf
|
||||
|
||||
- name: Create groups
|
||||
group:
|
||||
name: "{{ item.value.group }}"
|
||||
gid: "{{ item.value.uid }}"
|
||||
state: "{{ item.value.state }}"
|
||||
loop: "{{ init_users | dict2items }}"
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ init_groups }}"
|
||||
|
||||
- name: Ensure Users are Configured Correctly
|
||||
user:
|
||||
@@ -51,3 +45,15 @@
|
||||
template:
|
||||
src: motd.j2
|
||||
dest: /etc/motd
|
||||
|
||||
- name: Install galaxy collections
|
||||
community.general.ansible_galaxy_install:
|
||||
type: collection
|
||||
name: "{{ item }}"
|
||||
loop: "{{ ansible_galaxy_collections }}"
|
||||
|
||||
- name: start/enable docker daemon
|
||||
systemd:
|
||||
name: docker.service
|
||||
state: started
|
||||
enabled: true
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
---
|
||||
init_groups:
|
||||
- wheel
|
||||
- docker
|
||||
|
||||
remove_directories:
|
||||
- Templates
|
||||
- Videos
|
||||
@@ -10,7 +14,6 @@ remove_directories:
|
||||
- Desktop
|
||||
|
||||
create_directories:
|
||||
- bin
|
||||
- documents
|
||||
- music
|
||||
- downloads
|
||||
@@ -23,7 +26,7 @@ create_directories:
|
||||
init_users:
|
||||
opal:
|
||||
name: opal
|
||||
uid: 2000
|
||||
uid: 1000
|
||||
group: opal
|
||||
groups:
|
||||
- wheel
|
||||
@@ -31,3 +34,7 @@ init_users:
|
||||
state: present
|
||||
shell: /bin/bash
|
||||
create_home: true
|
||||
|
||||
ansible_galaxy_collections:
|
||||
- community.docker
|
||||
- ansible.posix
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
---
|
||||
- name: Ensure old versions of Docker are not installed.
|
||||
package:
|
||||
name:
|
||||
- docker
|
||||
- docker-common
|
||||
- docker-engine
|
||||
state: absent
|
||||
|
||||
- name: Add Docker GPG key.
|
||||
rpm_key:
|
||||
key: "{{ docker_yum_gpg_key }}"
|
||||
state: present
|
||||
|
||||
- name: Add Docker repository.
|
||||
get_url:
|
||||
url: "{{ docker_yum_repo_url }}"
|
||||
dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
|
||||
- name: Ensure Docker Users are in Docker Group
|
||||
user:
|
||||
name: "{{ item }}"
|
||||
groups: docker
|
||||
append: true
|
||||
with_items: "{{ docker_users }}"
|
||||
|
||||
- name: Install Docker.
|
||||
package:
|
||||
name: "{{ docker_package }}"
|
||||
state: "{{ docker_package_state }}"
|
||||
notify: restart docker
|
||||
|
||||
- name: Ensure /etc/docker/ directory exists.
|
||||
file:
|
||||
path: /etc/docker
|
||||
state: directory
|
||||
mode: 0755
|
||||
|
||||
- name: Ensure Docker is started and enabled at boot.
|
||||
service:
|
||||
name: docker
|
||||
state: "{{ docker_service_state }}"
|
||||
enabled: "{{ docker_service_enabled }}"
|
||||
ignore_errors: "{{ ansible_check_mode }}"
|
||||
@@ -1 +0,0 @@
|
||||
---
|
||||
@@ -1,6 +1,5 @@
|
||||
---
|
||||
flatpak_packages:
|
||||
- im.riot.Riot
|
||||
- org.signal.Signal
|
||||
- org.libreoffice.LibreOffice
|
||||
- com.calibre_ebook.calibre
|
||||
|
||||
@@ -1,24 +1,24 @@
|
||||
---
|
||||
- name: Pull Dotfiles Repository
|
||||
become: yes
|
||||
become_user: opal
|
||||
git:
|
||||
repo: "{{ dotfiles_repo }}"
|
||||
dest: "{{ dotfiles_dest }}"
|
||||
update: no
|
||||
|
||||
- name: Pull Cookbook Repository
|
||||
become: yes
|
||||
become_user: opal
|
||||
git:
|
||||
repo: "{{ cookbook_repo }}"
|
||||
dest: "{{ cookbook_dest }}"
|
||||
update: no
|
||||
|
||||
- name: Pull pfetch
|
||||
become: yes
|
||||
become_user: opal
|
||||
git:
|
||||
repo: "{{ pfetch_repo }}"
|
||||
dest: "{{ pfetch_dest }}"
|
||||
update: no
|
||||
|
||||
- name: Pull Org Files
|
||||
git:
|
||||
repo: "{{ org_repo }}"
|
||||
dest: "{{ org_dest }}"
|
||||
update: no
|
||||
|
||||
@@ -3,25 +3,13 @@ dotfiles_repo: https://codeberg.org/opalvaults/opalfiles.git
|
||||
dotfiles_dest: /home/opal/opalfiles
|
||||
|
||||
cookbook_repo: https://codeberg.org/opalvaults/sysadmin-cookbook.git
|
||||
cookbook_dest: /home/opal/projects/sysadmin-cookbook
|
||||
cookbook_dest: /home/opal/work/sysadmin-cookbook
|
||||
|
||||
doom_emacs_repo: https://github.com/doomemacs/doomemacs
|
||||
doom_emacs_dest: /home/opal/.config/emacs
|
||||
doom_emacs_install_cmd: /home/opal/.config/emacs/bin/doom -y install
|
||||
|
||||
pfetch_repo: https://github.com/dylanaraps/pfetch
|
||||
pfetch_dest: /home/opal/bin/pfetch
|
||||
|
||||
org_repo: git@codeberg.org:opalvaults/org-files.git
|
||||
org_dest: /home/opal/org
|
||||
|
||||
init_users:
|
||||
opal:
|
||||
name: opal
|
||||
uid: 2000
|
||||
group: opal
|
||||
groups: wheel
|
||||
state: present
|
||||
shell: /usr/bin/zsh
|
||||
create_home: true
|
||||
pfetch_dest: /home/opal/code/repos/pfetch
|
||||
|
||||
docker_compose_repo: https://codeberg.org/opalvaults/docker-compose.git
|
||||
docker_compose_dest: /home/opal/code/docker/compose
|
||||
|
||||
@@ -1,58 +1,41 @@
|
||||
---
|
||||
- name: upgrade packages
|
||||
dnf:
|
||||
name: "*"
|
||||
state: latest
|
||||
- name: Update packages (equiv. to pacman -Syu)
|
||||
pacman:
|
||||
update_cache: true
|
||||
upgrade: true
|
||||
|
||||
- name: install window manager packages
|
||||
dnf:
|
||||
pacman:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ wm_packages }}"
|
||||
|
||||
- name: install cli packages
|
||||
dnf:
|
||||
pacman:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ cli_packages }}"
|
||||
|
||||
- name: install general packages
|
||||
dnf:
|
||||
pacman:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ general_packages }}"
|
||||
|
||||
- name: install doom dependencies
|
||||
dnf:
|
||||
pacman:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ doom_dep_packages }}"
|
||||
|
||||
- name: install networking packages
|
||||
dnf:
|
||||
pacman:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ networking_packages }}"
|
||||
|
||||
- name: install font packages
|
||||
dnf:
|
||||
pacman:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ font_packages }}"
|
||||
|
||||
- name: install veracrypt from rpm
|
||||
dnf:
|
||||
name: "{{ veracrypt_url }}"
|
||||
state: present
|
||||
disable_gpg_check: True
|
||||
|
||||
- name: install rpmfusion for ffmpeg
|
||||
shell: 'sudo dnf install -y https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm'
|
||||
|
||||
- name: install ffmpeg/libs
|
||||
dnf:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop:
|
||||
- ffmpeg
|
||||
- ffmpeg-libs
|
||||
|
||||
@@ -8,87 +8,79 @@ wm_packages:
|
||||
- wofi
|
||||
- dunst
|
||||
- grim
|
||||
- grimshot
|
||||
- wdisplays
|
||||
- light
|
||||
- wlsunset
|
||||
|
||||
cli_packages:
|
||||
- alacritty
|
||||
- keychain
|
||||
- python3-pip
|
||||
- borgbackup
|
||||
- bat
|
||||
- exa
|
||||
- python-pip
|
||||
- ripgrep
|
||||
- stow
|
||||
- curl
|
||||
- make
|
||||
- libtool
|
||||
- tldr
|
||||
- gnupg2
|
||||
- gnupg
|
||||
- vim
|
||||
- trash-cli
|
||||
- lshw
|
||||
- git
|
||||
- fd-find
|
||||
- screen
|
||||
- htop
|
||||
- duf
|
||||
- discount
|
||||
- cmake
|
||||
- bash-completion
|
||||
- beets
|
||||
- lf
|
||||
|
||||
general_packages:
|
||||
- firefox
|
||||
- qutebrowser
|
||||
- emacs
|
||||
- emacs-nativecomp
|
||||
- ansible
|
||||
- syncthing
|
||||
- udiskie
|
||||
- transmission
|
||||
- transmission-qt
|
||||
- pavucontrol
|
||||
- alsa-sof-firmware
|
||||
- pipewire-pulseaudio
|
||||
- sof-firmware
|
||||
- gst-plugin-pipewire
|
||||
- pipewire
|
||||
- pipewire-alsa
|
||||
- pipewire-audio
|
||||
- pipewire-jack
|
||||
- pipewire-pulse
|
||||
- wireplumber
|
||||
- nicotine+
|
||||
- papirus-icon-theme
|
||||
- arc-theme
|
||||
- python3-tldextract
|
||||
- mpd
|
||||
- ncmpcpp
|
||||
- remove-retired-packages
|
||||
- ffmpeg
|
||||
- veracrypt
|
||||
- bluez
|
||||
- bluez-utils
|
||||
- docker
|
||||
|
||||
networking_packages:
|
||||
- nmap
|
||||
- nc
|
||||
- whois
|
||||
- bind-utils
|
||||
- telnet
|
||||
- network-manager-applet
|
||||
- nm-connection-editor
|
||||
- blueman
|
||||
- bluez
|
||||
- bluez-tools
|
||||
- wireguard-tools
|
||||
|
||||
doom_dep_packages:
|
||||
- libtool # Needed to compile vterm in Doom Emacs
|
||||
- cmake # Needed to compile vterm in Doom Emacs
|
||||
- discount # Markdown Compiler
|
||||
- ShellCheck # Shell linter for Doom Emacs
|
||||
- cmake # Needed to compile vterm in Doom Emacs
|
||||
- python3-pyflakes
|
||||
- python3-isort
|
||||
- pipenv
|
||||
- python3-nose2
|
||||
- python3-nose
|
||||
- python3-pytest
|
||||
- npm
|
||||
- shfmt
|
||||
- python3-lsp-black
|
||||
- python-pyflakes
|
||||
- python-isort
|
||||
- python-pipenv
|
||||
- python-nose2
|
||||
- python-nose
|
||||
- python-pytest
|
||||
- python-lsp-black
|
||||
|
||||
font_packages:
|
||||
- fontawesome5-fonts
|
||||
- abattis-cantarell-fonts
|
||||
- google-noto-cjk-fonts
|
||||
- awesome-terminal-fonts
|
||||
- cantarell-fonts
|
||||
- noto-fonts-cjk
|
||||
- ttf-iosevka-nerd
|
||||
|
||||
veracrypt_url: https://launchpad.net/veracrypt/trunk/1.25.9/+download/veracrypt-1.25.9-CentOS-8-x86_64.rpm
|
||||
|
||||
fedora_ver: 36
|
||||
# TODO: Get Yay working
|
||||
yay_packages:
|
||||
- grimshot
|
||||
- wlsunset
|
||||
- nerd-fonts-git
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
---
|
||||
- name: Install pip3 packages
|
||||
pip:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ pip_packages }}"
|
||||
@@ -1,5 +0,0 @@
|
||||
---
|
||||
pip_packages:
|
||||
- borgmatic
|
||||
- keep
|
||||
- beets
|
||||
16
site.yml
16
site.yml
@@ -1,5 +1,5 @@
|
||||
---
|
||||
- name: Initial Setup Including Keys, Packages, and Users.
|
||||
- name: Workstation setup
|
||||
hosts: workstation
|
||||
roles:
|
||||
- role: base
|
||||
@@ -10,15 +10,9 @@
|
||||
|
||||
- role: flatpak
|
||||
tags: flatpak_tag
|
||||
become: yes
|
||||
become_user: opal
|
||||
become_method: su
|
||||
|
||||
- role: pip
|
||||
tags: pip_tag
|
||||
become: yes
|
||||
become_user: opal
|
||||
become_method: su
|
||||
- role: git
|
||||
tags: git_tag
|
||||
|
||||
- role: copr
|
||||
tags: copr_tag
|
||||
- role: docker
|
||||
tags: docker_tag
|
||||
|
||||
Reference in New Issue
Block a user