Initial version
This commit is contained in:
commit
ebdb2ee8b1
9
inventory/group_vars/machina/vars.yml
Normal file
9
inventory/group_vars/machina/vars.yml
Normal file
@ -0,0 +1,9 @@
|
||||
cjdns_private_key: "{{ vault_cjdns_private_key }}"
|
||||
cjdns_public_key: "{{ vault_cjdns_public_key }}"
|
||||
cjdns_ipv6: "{{ vault_cjdns_ipv6 }}"
|
||||
cjdns_incoming_username: "{{ vault_cjdns_incoming_username }}"
|
||||
cjdns_incoming_password: "{{ vault_cjdns_incoming_password }}"
|
||||
cjdns_snoopy_username: "{{ vault_cjdns_snoopy_username }}"
|
||||
cjdns_snoopy_password: "{{ vault_cjdns_snoopy_password }}"
|
||||
cjdns_woodstock_username: "{{ vault_cjdns_woodstock_username }}"
|
||||
cjdns_woodstock_password: "{{ vault_cjdns_woodstock_password }}"
|
32
inventory/group_vars/machina/vault
Normal file
32
inventory/group_vars/machina/vault
Normal file
@ -0,0 +1,32 @@
|
||||
$ANSIBLE_VAULT;1.1;AES256
|
||||
36343161633137616464616236386334623262393334336338316563663937346461326462656134
|
||||
3164373839356632313830616339613630343238303036310a323939376666393466326164333061
|
||||
37653631393664396235383937323933313832333764386234323639636364376362313764396132
|
||||
6335653536616432300a363436353930336336393061343439376233653136303836316438623461
|
||||
35656533386463613864656134663037626662383837646535656231313538613735396638353438
|
||||
37623431356162366365613436626239353064633439623665663037393064633362333333626537
|
||||
30646663396537346661646531326466666266656162616261303963383032626330383837313933
|
||||
37643031323364333061363235396361626630613338626164363736383037636565313639663864
|
||||
61616437323930326636623062663238653531393762373862616466363839386335373732363466
|
||||
61613766353261323861616462653935333734306339383531326234336139623036663434336339
|
||||
64396533346661653235323862656561643737656561366635353637303034663338633132343466
|
||||
64343632326562333465646161633536353465376436653034333036636161323861336163303532
|
||||
39616162656239616533303734313534316632623663613736306130653338333232346165613763
|
||||
33346632373131633066323563343063663664356239653831313163386363353065333539616433
|
||||
35623537333830613066616361333933613838346362656164663466373137353330306435643730
|
||||
63343866373734326437653038313533613566353338653237393761663662326539326435613866
|
||||
39626437326363636137346335356163323239303865353734666263653137626237383436613133
|
||||
37643465613430613133626466646133623166393739373935366132393834373766343831353632
|
||||
61633964353530623134356564323235343966643131663434643137386230643339363661613930
|
||||
33313531646462636662316232346231303033383032343265356632653132353233303736366261
|
||||
32393330316534383862653037333061353339353538663865333439346637393836636264313564
|
||||
34636536373434373236643562323236363137366266396363326361363434346333383833363130
|
||||
36643335363039613732363366623865343330643234666639613934386430353430343534643365
|
||||
38663133623031316161653862323135396661303931393734633735366333333464616233303335
|
||||
36663038656631656366626539623739363964303139643430363138366537336563663233333164
|
||||
66656663636439313564386134653662363030393132646435396538363462613463333163346166
|
||||
63383239646634366537663331646530313337306231323836356331343566346163343536363630
|
||||
61316361366433393334666266346664326662653864356134393435366161663162333662653530
|
||||
39333036653965666438636438366262643861313033326564613837666633386630333138386230
|
||||
39323864376663376437643764386134313563633763323639373037656639346339633761376361
|
||||
376563656336353636613061323263353933
|
2
inventory/hosts
Normal file
2
inventory/hosts
Normal file
@ -0,0 +1,2 @@
|
||||
[machina]
|
||||
machina
|
10
machina.yml
Normal file
10
machina.yml
Normal file
@ -0,0 +1,10 @@
|
||||
---
|
||||
- import_playbook: playbooks/dnf-repos.yml hostlist=machina
|
||||
- import_playbook: playbooks/user.yml hostlist=machina
|
||||
- import_playbook: playbooks/packages.yml hostlist=machina
|
||||
- import_playbook: playbooks/python.yml hostlist=machina
|
||||
- import_playbook: playbooks/npm.yml hostlist=machina
|
||||
- import_playbook: playbooks/user.yml hostlist=machina
|
||||
- import_playbook: playbooks/spotify-install.yml hostlist=machina
|
||||
- import_playbook: playbooks/systemd-user.yml hostlist=machina
|
||||
- import_playbook: playbooks/cjdns.yml hostlist=machina
|
25
playbooks/cjdns.yml
Normal file
25
playbooks/cjdns.yml
Normal file
@ -0,0 +1,25 @@
|
||||
- hosts: "{{ hostlist }}"
|
||||
tasks:
|
||||
- name: Install cjdns and its tools
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- cjdns
|
||||
- cjdns-tools
|
||||
state: latest
|
||||
- name: Create the configuration file
|
||||
become: true
|
||||
template:
|
||||
src: cjdroute.conf.j2
|
||||
dest: /etc/cjdroute.conf
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0600'
|
||||
validate: 'cjdroute --cleanconf < %s'
|
||||
backup: true
|
||||
- name: Enable and start the service
|
||||
become: true
|
||||
systemd:
|
||||
name: cjdns.service
|
||||
enabled: true
|
||||
state: started
|
29
playbooks/dnf-repos.yml
Normal file
29
playbooks/dnf-repos.yml
Normal file
@ -0,0 +1,29 @@
|
||||
- hosts: "{{ hostlist }}"
|
||||
tasks:
|
||||
- name: Install the RPM Fusion Free GPG key
|
||||
become: true
|
||||
rpm_key:
|
||||
key: "https://rpmfusion.net/keys?action=AttachFile&do=get&target=RPM-GPG-KEY-rpmfusion-free-fedora-2020"
|
||||
fingerprint: E9A4 91A3 DE24 7814 E7E0 67EA E06F 8ECD D651 FF2E
|
||||
state: present
|
||||
- name: Enable the RPM Fusion Free repository
|
||||
become: true
|
||||
dnf:
|
||||
name: "https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-{{ansible_distribution_major_version}}.noarch.rpm"
|
||||
state: present
|
||||
- name: Install the RPM Fusion Non-free GPG key
|
||||
become: true
|
||||
rpm_key:
|
||||
key: "https://rpmfusion.net/keys?action=AttachFile&do=get&target=RPM-GPG-KEY-rpmfusion-nonfree-fedora-2020"
|
||||
fingerprint: 79BD B88F 9BBF 7391 0FD4 095B 6A2A F961 9484 3C65
|
||||
state: present
|
||||
- name: Enable the RPM Fusion Non-free repository
|
||||
become: true
|
||||
dnf:
|
||||
name: "https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-{{ansible_distribution_major_version}}.noarch.rpm"
|
||||
state: present
|
||||
- name: Enable the skidnik/termite repo
|
||||
become: true
|
||||
community.general.copr:
|
||||
name: "skidnik/termite"
|
||||
state: enabled
|
7
playbooks/npm.yml
Normal file
7
playbooks/npm.yml
Normal file
@ -0,0 +1,7 @@
|
||||
- hosts: "{{ hostlist }}"
|
||||
tasks:
|
||||
- name: Install diff-so-fancy
|
||||
community.general.npm:
|
||||
name: diff-so-fancy
|
||||
global: yes
|
||||
state: latest
|
191
playbooks/packages.yml
Normal file
191
playbooks/packages.yml
Normal file
@ -0,0 +1,191 @@
|
||||
- hosts: "{{ hostlist }}"
|
||||
tasks:
|
||||
- name: Install Ansible
|
||||
become: true
|
||||
dnf:
|
||||
name: ansible
|
||||
state: latest
|
||||
- name: Install some daemons
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- pcsc-lite
|
||||
- avahi
|
||||
- cups
|
||||
- libvirt-daemon
|
||||
- postgresql-server
|
||||
- zeromq
|
||||
- redis
|
||||
- mariadb-server
|
||||
- memcached
|
||||
- bind
|
||||
state: latest
|
||||
- name: Install Emacs
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- emacs
|
||||
- maildir-utils
|
||||
- emacs-gettext
|
||||
state: latest
|
||||
- name: Install my favourite command line tools
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- util-linux-user
|
||||
- fish
|
||||
- tar
|
||||
- exa
|
||||
- tmux
|
||||
- mc
|
||||
- fzf
|
||||
- zoxide
|
||||
- the_silver_searcher
|
||||
- pass
|
||||
- vim-enhanced
|
||||
- bat
|
||||
- git
|
||||
- git-email
|
||||
- git-extras
|
||||
- git-gui
|
||||
- vdirsyncer
|
||||
- offlineimap
|
||||
- msmtp
|
||||
- bpytop
|
||||
- pinentry-tty
|
||||
- ffmpeg
|
||||
- tar
|
||||
- gzip
|
||||
- bzip2
|
||||
- xz
|
||||
- khal
|
||||
- khard
|
||||
- krb5-workstation
|
||||
- whois
|
||||
- asciinema
|
||||
- bind-utils
|
||||
state: latest
|
||||
- name: Install development stuff
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- bats
|
||||
- podman
|
||||
- buildah
|
||||
- gdb
|
||||
- autoconf
|
||||
- autoconf-archive
|
||||
- automake
|
||||
- bison
|
||||
- byacc
|
||||
- flex
|
||||
- gcc
|
||||
- gcc-c++
|
||||
- intltool
|
||||
- libtool
|
||||
- yarnpkg
|
||||
- mercurial
|
||||
- cvs
|
||||
- subversion
|
||||
- d-feet
|
||||
- arduino
|
||||
- arduino-builder
|
||||
- fritzing
|
||||
- global
|
||||
- jq
|
||||
state: latest
|
||||
- name: Install my desktop environment
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- sway
|
||||
- mako
|
||||
- wob
|
||||
- swayidle
|
||||
- termite
|
||||
- waybar
|
||||
- swaylock
|
||||
- clipman
|
||||
- wl-clipboard
|
||||
- playerctl
|
||||
- bemenu
|
||||
- kde-connect
|
||||
- pinentry-gtk
|
||||
- epiphany
|
||||
- chromium
|
||||
- mplayer
|
||||
- gajim
|
||||
- youtube-dl
|
||||
- wshowkeys
|
||||
state: latest
|
||||
- name: Install my graphical applications
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- firefox-wayland
|
||||
- meld
|
||||
- nheko
|
||||
- nextcloud-client
|
||||
- calibre
|
||||
- kicad
|
||||
- qcad
|
||||
- openscad
|
||||
- libreoffice
|
||||
- gimp
|
||||
- gimagereader-gtk
|
||||
- blender
|
||||
- audacity
|
||||
- virt-manager
|
||||
- ImageMagick
|
||||
- inkscape
|
||||
- krita
|
||||
state: latest
|
||||
- name: Install some games
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- minetest
|
||||
- warsow
|
||||
- widelands
|
||||
state: latest
|
||||
- name: Install language packs
|
||||
become: true
|
||||
dnf:
|
||||
name:
|
||||
- aspell-en
|
||||
- aspell-is
|
||||
- autocorr-en
|
||||
- autocorr-hu
|
||||
- autocorr-is
|
||||
- gimp-help-en_GB
|
||||
- glibc-langpack-en
|
||||
- glibc-langpack-hu
|
||||
- glibc-langpack-is
|
||||
- hunspell-en
|
||||
- hunspell-en-GB
|
||||
- hunspell-en-US
|
||||
- hunspell-hu
|
||||
- hunspell-is
|
||||
- hyphen-en
|
||||
- hyphen-hu
|
||||
- hyphen-is
|
||||
- langpacks-core-en
|
||||
- langpacks-core-en_GB
|
||||
- langpacks-core-hu
|
||||
- langpacks-core-is
|
||||
- langpacks-core-font-en
|
||||
- langpacks-core-font-hu
|
||||
- langpacks-core-font-is
|
||||
- langpacks-en
|
||||
- langpacks-en_GB
|
||||
- langpacks-hu
|
||||
- langpacks-is
|
||||
- libreoffice-help-en
|
||||
- libreoffice-help-hu
|
||||
- libreoffice-langpack-en
|
||||
- libreoffice-langpack-hu
|
||||
- mythes-en
|
||||
- mythes-hu
|
||||
- tesseract-langpack-eng
|
||||
- tesseract-langpack-hun
|
||||
- tesseract-langpack-isl
|
6
playbooks/python.yml
Normal file
6
playbooks/python.yml
Normal file
@ -0,0 +1,6 @@
|
||||
- hosts: "{{ hostlist }}"
|
||||
tasks:
|
||||
- name: Install the xdg Python module
|
||||
pip:
|
||||
name: xdg
|
||||
extra_args: --user
|
13
playbooks/spotify-install.yml
Normal file
13
playbooks/spotify-install.yml
Normal file
@ -0,0 +1,13 @@
|
||||
- hosts: "{{ hostlist }}"
|
||||
tasks:
|
||||
- name: Pre-install Spotify requirements
|
||||
become: true
|
||||
dnf:
|
||||
name: lpf-spotify-client
|
||||
state: latest
|
||||
- name: Approve the Spotify LPF module
|
||||
command: sh -c 'echo y | env PAGER=/bin/cat lpf approve spotify-client'
|
||||
- name: Build the Spotify LPF module
|
||||
command: sh -c 'echo y | lpf build spotify-client'
|
||||
- name: Install the Spotify LPF module
|
||||
command: sh -c 'echo y | lpf install spotify-client'
|
18
playbooks/systemd-user.yml
Normal file
18
playbooks/systemd-user.yml
Normal file
@ -0,0 +1,18 @@
|
||||
- hosts: "{{ hostlist }}"
|
||||
tasks:
|
||||
- name: Enable Pipewire service
|
||||
systemd:
|
||||
name: pipewire.service
|
||||
enabled: true
|
||||
- name: Enable Pipewire-Pulse service
|
||||
systemd:
|
||||
name: pipewire-pulse.service
|
||||
enabled: true
|
||||
- name: Enable Pipewire socket
|
||||
systemd:
|
||||
name: pipewire.socket
|
||||
enabled: true
|
||||
- name: Enable Pipewire-Pulse socket
|
||||
systemd:
|
||||
name: pipewire-pulse.socket
|
||||
enabled: true
|
68
playbooks/templates/cjdroute.conf.j2
Normal file
68
playbooks/templates/cjdroute.conf.j2
Normal file
@ -0,0 +1,68 @@
|
||||
{
|
||||
"privateKey": "{{ cjdns_private_key }}",
|
||||
"publicKey": "{{ cjdns_public_key }}",
|
||||
"ipv6": "{{ cjdns_ipv6 }}",
|
||||
"authorizedPasswords": [
|
||||
{"password": "{{ cjdns_incoming_username }}", "user": "{{ cjdns_incoming_password }}"}
|
||||
|
||||
],
|
||||
"admin": {
|
||||
"bind": "127.0.0.1:11234",
|
||||
"password": "NONE"
|
||||
},
|
||||
"interfaces": {
|
||||
"UDPInterface": [
|
||||
{
|
||||
"bind": "0.0.0.0:40183",
|
||||
"connectTo": {
|
||||
"198.211.126.112:44970": {
|
||||
"login": "{{ cjdns_snoopy_username }}",
|
||||
"password": "{{ cjdns_snoopy_password }}",
|
||||
"publicKey": "2vvjxl91bnk2z3h33ys6ulm3rblxr4d427cg846ycgjhccvs1wf0.k",
|
||||
"peerName": "snoopy"
|
||||
},
|
||||
"165.227.155.27:47266": {
|
||||
"login": "{{ cjdns_woodstock_username }}",
|
||||
"password": "{{ cjdns_woodstock_password }}",
|
||||
"publicKey": "m6q1ks6pm72k4wur3knt77yukkku1c1vwzus1ympwvkkk7746sc0.k",
|
||||
"peerName": "woodstock"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"bind": "[::]:40183",
|
||||
"connectTo": {}
|
||||
}
|
||||
],
|
||||
"ETHInterface": [
|
||||
{
|
||||
"bind": "all",
|
||||
"beacon": 2,
|
||||
"connectTo": {}
|
||||
}
|
||||
]
|
||||
},
|
||||
"router": {
|
||||
"supernodes": [],
|
||||
"interface": {
|
||||
"type": "TUNInterface",
|
||||
"tunDevice": "cjdns"
|
||||
},
|
||||
"ipTunnel": {
|
||||
"allowedConnections": [],
|
||||
"outgoingConnections": []
|
||||
}
|
||||
},
|
||||
"security": [
|
||||
{ "setuser": "cjdns", "keepNetAdmin": 1 },
|
||||
{ "chroot": "/var/empty/cjdns" },
|
||||
{ "nofiles": 0 },
|
||||
{ "noforks": 1 },
|
||||
{ "seccomp": 1 },
|
||||
{ "setupComplete": 1 }
|
||||
],
|
||||
"logging": {},
|
||||
"noBackground": 0,
|
||||
"pipe": "cjdroute.sock",
|
||||
"version": 2
|
||||
}
|
16
playbooks/user.yml
Normal file
16
playbooks/user.yml
Normal file
@ -0,0 +1,16 @@
|
||||
- hosts: "{{ hostlist }}"
|
||||
tasks:
|
||||
- name: Add the user polesz
|
||||
become: true
|
||||
user:
|
||||
name: polesz
|
||||
comment: POLONKAI Gergely
|
||||
uid: 1000
|
||||
shell: /usr/bin/fish
|
||||
state: present
|
||||
- name: Add user polesz to some extra groups
|
||||
become: true
|
||||
user:
|
||||
name: polesz
|
||||
groups: cdrom,dialout,games,kvm,libvirt,pkg-build,printadmin,video,wheel
|
||||
append: true
|
Loading…
Reference in New Issue
Block a user