chore: rework directory structure

Signed-off-by: Matej Focko <me@mfocko.xyz>
This commit is contained in:
Matej Focko 2023-08-27 11:43:02 +02:00
parent 1fbdeb0d21
commit 01225fd44d
Signed by: mfocko
GPG key ID: 7C47D46246790496
169 changed files with 1410 additions and 1690 deletions

View file

@ -1,20 +1,59 @@
--- ---
- name: Bootstrap installation - name: Bootstrap fresh installation
hosts: all hosts: all
gather_facts: yes gather_facts: true
roles: roles:
- role: fedora # Handle distribution-specific changes before the generic ones
become: yes - role: system/fedora
become_method: sudo become: true
vars:
# set to "local" or "remote"
source: "local"
when: ansible_distribution == "Fedora" when: ansible_distribution == "Fedora"
- flatpaks
- ssh # Upgrade all packages and install the basic-bitch ones
- shell - role: system/base
- role: git become: true
vars:
git_email: <insert-email> # Enable Flathub repository and install configured flatpaks
gpg_signingkey: <insert-id> - system/flatpak
- vscode
# Install Podman and configure UIDs/GIDs for rootless usage
- role: system/podman
become: true
# Install and configure SSH server
- role: system/sshd
become: true
# Handle basic user configuration
- user/base
# Shell utilities
- user/shell/zsh
- user/shell/tmux
- user/editors/neovim
# Configure git
- user/git
# Configure ssh
- user/ssh
# Configure Alacritty terminal
- role: user/terminals/alacritty
tags: alacritty
# Configure Kitty terminal
- role: user/terminals/kitty
tags: kitty
# Install Bitwarden CLI
- user/secrets/bw
# TODO: Install HashiCorp Vault
# - user/secrets/hcv
# Install and configure Emacs
- role: user/editors/emacs
tags: emacs
# Install and configure VSCode
- user/editors/vscode

View file

@ -1,10 +0,0 @@
---
- name: Fedora repository setup
hosts: all
roles:
- role: fedora/repositories
become: yes
become_method: sudo
vars:
# set to "local" or "remote"
source: "local"

View file

@ -1,9 +0,0 @@
---
- name: Fedora upgrade
hosts: all
roles:
- role: fedora/upgrade
become: yes
become_method: sudo
vars:
releasever: 33

View file

@ -1,4 +0,0 @@
---
dependencies:
- fedora/repositories
- fedora/packages

View file

@ -1,14 +0,0 @@
---
- name: Upgrade all packages
dnf:
name: "*"
state: latest
- name: Install playerctl and flameshot
dnf:
name:
- playerctl
- flameshot
state: present
- include: shell.yml

View file

@ -1,10 +0,0 @@
---
- name: Install all packages for shell
dnf:
name:
- zsh
- tmux
- neovim
- emacs
- alacritty
state: present

View file

@ -1,38 +0,0 @@
---
- name: Get version of Fedora
shell: rpm -E %fedora
register: fedora_version
tags: install_new_repos
- name: Install RPMFusion RPMs with GPG keys
dnf:
name:
- "https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-{{ fedora_version.stdout }}.noarch.rpm"
- "https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-{{ fedora_version.stdout }}.noarch.rpm"
disable_gpg_check: yes
state: present
tags: install_new_repos
- name: Install Google Chrome repository
template:
src: templates/google-chrome.repo.j2
dest: /etc/yum.repos.d/google-chrome.repo
tags: install_new_repos
- name: Install repositories
template:
src: templates/{{ source }}/{{ item }}.repo.j2
dest: /etc/yum.repos.d/{{ item }}.repo
loop:
- fedora-modular
- fedora-updates-modular
- fedora-updates-testing-modular
- fedora-updates-testing
- fedora-updates
- fedora
- rpmfusion-free-updates-testing
- rpmfusion-free-updates
- rpmfusion-free
- rpmfusion-nonfree-updates-testing
- rpmfusion-nonfree-updates
- rpmfusion-nonfree

View file

@ -1,35 +0,0 @@
[fedora-modular]
name=Fedora Modular $releasever - $basearch
baseurl=https://mirror.gauss.mfocko.xyz/fedora/releases/$releasever/Modular/$basearch/os/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-$releasever&arch=$basearch
enabled=1
#metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[fedora-modular-debuginfo]
name=Fedora Modular $releasever - $basearch - Debug
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Modular/$basearch/debug/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[fedora-modular-source]
name=Fedora Modular $releasever - Source
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Modular/source/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,38 +0,0 @@
[updates-modular]
name=Fedora Modular $releasever - $basearch - Updates
failovermethod=priority
baseurl=https://mirror.gauss.mfocko.xyz/fedora/updates/$releasever/Modular/$basearch/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-modular-f$releasever&arch=$basearch
enabled=1
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-modular-debuginfo]
name=Fedora Modular $releasever - $basearch - Updates - Debug
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/Modular/$basearch/debug/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-modular-debug-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-modular-source]
name=Fedora Modular $releasever - Updates Source
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/Modular/SRPMS/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-modular-source-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,36 +0,0 @@
[updates-testing-modular]
name=Fedora Modular $releasever - $basearch - Test Updates
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/testing/$releasever/Modular/$basearch/
baseurl=https://mirror.gauss.mfocko.xyz/fedora/updates/testing/$releasever/Modular/$basearch/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-modular-f$releasever&arch=$basearch
enabled=1
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-testing-modular-debuginfo]
name=Fedora Modular $releasever - $basearch - Test Updates Debug
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/Modular/$basearch/debug/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-modular-debug-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-testing-modular-source]
name=Fedora Modular $releasever - Test Updates Source
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/Modular/SRPMS/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-modular-source-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,35 +0,0 @@
[updates-testing]
name=Fedora $releasever - $basearch - Test Updates
baseurl=https://mirror.gauss.mfocko.xyz/fedora/updates/testing/$releasever/Everything/$basearch/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch
enabled=1
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-testing-debuginfo]
name=Fedora $releasever - $basearch - Test Updates Debug
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/testing/$releasever/Everything/$basearch/debug/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-testing-source]
name=Fedora $releasever - Test Updates Source
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/testing/$releasever/Everything/SRPMS/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-source-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,35 +0,0 @@
[updates]
name=Fedora $releasever - $basearch - Updates
baseurl=https://mirror.gauss.mfocko.xyz/fedora/updates/$releasever/Everything/$basearch/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
enabled=1
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-debuginfo]
name=Fedora $releasever - $basearch - Updates - Debug
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/Everything/$basearch/debug/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-source]
name=Fedora $releasever - Updates Source
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/Everything/SRPMS/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-source-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,35 +0,0 @@
[fedora]
name=Fedora $releasever - $basearch
baseurl=https://mirror.gauss.mfocko.xyz/fedora/releases/$releasever/Everything/$basearch/os/
#metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
enabled=1
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[fedora-debuginfo]
name=Fedora $releasever - $basearch - Debug
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[fedora-source]
name=Fedora $releasever - Source
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/source/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,31 +0,0 @@
[rpmfusion-free-updates-testing]
name=RPM Fusion for Fedora $releasever - Free - Test Updates
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/testing/$releasever/$basearch/
baseurl=https://mirror.gauss.mfocko.xyz/rpmfusion/free/fedora/updates/testing/$releasever/$basearch/
#metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-testing-$releasever&arch=$basearch
enabled=1
enabled_metadata=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-updates-testing-debuginfo]
name=RPM Fusion for Fedora $releasever - Free - Test Updates Debug
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/testing/$releasever/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-testing-debug-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-updates-testing-source]
name=RPM Fusion for Fedora $releasever - Free - Test Updates Source
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/testing/$releasever/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-testing-source-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever

View file

@ -1,31 +0,0 @@
[rpmfusion-free-updates]
name=RPM Fusion for Fedora $releasever - Free - Updates
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/$releasever/$basearch/
baseurl=https://mirror.gauss.mfocko.xyz/rpmfusion/free/fedora/updates/$releasever/$basearch/
#metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-$releasever&arch=$basearch
enabled=1
enabled_metadata=1
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-updates-debuginfo]
name=RPM Fusion for Fedora $releasever - Free - Updates Debug
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/$releasever/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-debug-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-updates-source]
name=RPM Fusion for Fedora $releasever - Free - Updates Source
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/$releasever/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-source-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever

View file

@ -1,33 +0,0 @@
[rpmfusion-free]
name=RPM Fusion for Fedora $releasever - Free
#baseurl=http://download1.rpmfusion.org/free/fedora/releases/$releasever/Everything/$basearch/os/
baseurl=https://mirror.gauss.mfocko.xyz/rpmfusion/free/fedora/releases/$releasever/Everything/$basearch/os/
#metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-$releasever&arch=$basearch
enabled=1
metadata_expire=14d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-debuginfo]
name=RPM Fusion for Fedora $releasever - Free - Debug
#baseurl=http://download1.rpmfusion.org/free/fedora/releases/$releasever/Everything/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-source]
name=RPM Fusion for Fedora $releasever - Free - Source
#baseurl=http://download1.rpmfusion.org/free/fedora/releases/$releasever/Everything/source/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever

View file

@ -1,31 +0,0 @@
[rpmfusion-nonfree-updates-testing]
name=RPM Fusion for Fedora $releasever - Nonfree - Test Updates
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/testing/$releasever/$basearch/
baseurl=https://mirror.gauss.mfocko.xyz/rpmfusion/nonfree/fedora/updates/testing/$releasever/$basearch/
#metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-testing-$releasever&arch=$basearch
enabled=1
enabled_metadata=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-updates-testing-debuginfo]
name=RPM Fusion for Fedora $releasever - Nonfree - Test Updates Debug
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/testing/$releasever/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-testing-debug-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-updates-testing-source]
name=RPM Fusion for Fedora $releasever - Nonfree - Test Updates Source
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/testing/$releasever/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-testing-source-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever

View file

@ -1,31 +0,0 @@
[rpmfusion-nonfree-updates]
name=RPM Fusion for Fedora $releasever - Nonfree - Updates
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/$releasever/$basearch/
baseurl=https://mirror.gauss.mfocko.xyz/rpmfusion/nonfree/fedora/updates/$releasever/$basearch/
#metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-released-$releasever&arch=$basearch
enabled=1
enabled_metadata=1
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-updates-debuginfo]
name=RPM Fusion for Fedora $releasever - Nonfree - Updates Debug
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/$releasever/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-released-debug-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-updates-source]
name=RPM Fusion for Fedora $releasever - Nonfree - Updates Source
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/$releasever/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-released-source-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever

View file

@ -1,34 +0,0 @@
[rpmfusion-nonfree]
name=RPM Fusion for Fedora $releasever - Nonfree
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/releases/$releasever/Everything/$basearch/os/
baseurl=https://mirror.gauss.mfocko.xyz/rpmfusion/nonfree/fedora/releases/$releasever/Everything/$basearch/os/
#metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-$releasever&arch=$basearch
enabled=1
enabled_metadata=1
metadata_expire=14d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-debuginfo]
name=RPM Fusion for Fedora $releasever - Nonfree - Debug
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/releases/$releasever/Everything/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-source]
name=RPM Fusion for Fedora $releasever - Nonfree - Source
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/releases/$releasever/Everything/source/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever

View file

@ -1,36 +0,0 @@
[fedora-modular]
name=Fedora Modular $releasever - $basearch
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Modular/$basearch/os/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-$releasever&arch=$basearch
enabled=1
countme=1
#metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[fedora-modular-debuginfo]
name=Fedora Modular $releasever - $basearch - Debug
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Modular/$basearch/debug/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[fedora-modular-source]
name=Fedora Modular $releasever - Source
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Modular/source/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-modular-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,36 +0,0 @@
[updates-modular]
name=Fedora Modular $releasever - $basearch - Updates
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Modular/$basearch/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-modular-f$releasever&arch=$basearch
enabled=1
countme=1
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-modular-debuginfo]
name=Fedora Modular $releasever - $basearch - Updates - Debug
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Modular/$basearch/debug/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-modular-debug-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-modular-source]
name=Fedora Modular $releasever - Updates Source
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Modular/SRPMS/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-modular-source-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,36 +0,0 @@
[updates-testing-modular]
name=Fedora Modular $releasever - $basearch - Test Updates
#baseurl=http://download.example/pub/fedora/linux/updates/testing/$releasever/Modular/$basearch/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-modular-f$releasever&arch=$basearch
enabled=0
countme=1
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-testing-modular-debuginfo]
name=Fedora Modular $releasever - $basearch - Test Updates Debug
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Modular/$basearch/debug/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-modular-debug-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-testing-modular-source]
name=Fedora Modular $releasever - Test Updates Source
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Modular/SRPMS/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-modular-source-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,36 +0,0 @@
[updates-testing]
name=Fedora $releasever - $basearch - Test Updates
#baseurl=http://download.example/pub/fedora/linux/updates/testing/$releasever/Everything/$basearch/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-f$releasever&arch=$basearch
enabled=0
countme=1
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-testing-debuginfo]
name=Fedora $releasever - $basearch - Test Updates Debug
#baseurl=http://download.example/pub/fedora/linux/updates/testing/$releasever/Everything/$basearch/debug/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-debug-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-testing-source]
name=Fedora $releasever - Test Updates Source
#baseurl=http://download.example/pub/fedora/linux/updates/testing/$releasever/Everything/SRPMS/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-testing-source-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,36 +0,0 @@
[updates]
name=Fedora $releasever - $basearch - Updates
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Everything/$basearch/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
enabled=1
countme=1
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-debuginfo]
name=Fedora $releasever - $basearch - Updates - Debug
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Everything/$basearch/debug/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[updates-source]
name=Fedora $releasever - Updates Source
#baseurl=http://download.example/pub/fedora/linux/updates/$releasever/Everything/SRPMS/
metalink=https://mirrors.fedoraproject.org/metalink?repo=updates-released-source-f$releasever&arch=$basearch
enabled=0
repo_gpgcheck=0
type=rpm
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,36 +0,0 @@
[fedora]
name=Fedora $releasever - $basearch
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
enabled=1
countme=1
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[fedora-debuginfo]
name=Fedora $releasever - $basearch - Debug
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
[fedora-source]
name=Fedora $releasever - Source
#baseurl=http://download.example/pub/fedora/linux/releases/$releasever/Everything/source/tree/
metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
repo_gpgcheck=0
type=rpm
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False

View file

@ -1,30 +0,0 @@
[rpmfusion-free-updates-testing]
name=RPM Fusion for Fedora $releasever - Free - Test Updates
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/testing/$releasever/$basearch/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-testing-$releasever&arch=$basearch
enabled=1
enabled_metadata=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-updates-testing-debuginfo]
name=RPM Fusion for Fedora $releasever - Free - Test Updates Debug
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/testing/$releasever/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-testing-debug-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-updates-testing-source]
name=RPM Fusion for Fedora $releasever - Free - Test Updates Source
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/testing/$releasever/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-testing-source-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever

View file

@ -1,30 +0,0 @@
[rpmfusion-free-updates]
name=RPM Fusion for Fedora $releasever - Free - Updates
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/$releasever/$basearch/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-$releasever&arch=$basearch
enabled=1
enabled_metadata=1
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-updates-debuginfo]
name=RPM Fusion for Fedora $releasever - Free - Updates Debug
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/$releasever/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-debug-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-updates-source]
name=RPM Fusion for Fedora $releasever - Free - Updates Source
#baseurl=http://download1.rpmfusion.org/free/fedora/updates/$releasever/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-source-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever

View file

@ -1,32 +0,0 @@
[rpmfusion-free]
name=RPM Fusion for Fedora $releasever - Free
#baseurl=http://download1.rpmfusion.org/free/fedora/releases/$releasever/Everything/$basearch/os/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-$releasever&arch=$basearch
enabled=1
metadata_expire=14d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-debuginfo]
name=RPM Fusion for Fedora $releasever - Free - Debug
#baseurl=http://download1.rpmfusion.org/free/fedora/releases/$releasever/Everything/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever
[rpmfusion-free-source]
name=RPM Fusion for Fedora $releasever - Free - Source
#baseurl=http://download1.rpmfusion.org/free/fedora/releases/$releasever/Everything/source/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=free-fedora-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-$releasever

View file

@ -1,30 +0,0 @@
[rpmfusion-nonfree-updates-testing]
name=RPM Fusion for Fedora $releasever - Nonfree - Test Updates
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/testing/$releasever/$basearch/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-testing-$releasever&arch=$basearch
enabled=1
enabled_metadata=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-updates-testing-debuginfo]
name=RPM Fusion for Fedora $releasever - Nonfree - Test Updates Debug
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/testing/$releasever/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-testing-debug-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-updates-testing-source]
name=RPM Fusion for Fedora $releasever - Nonfree - Test Updates Source
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/testing/$releasever/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-testing-source-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever

View file

@ -1,30 +0,0 @@
[rpmfusion-nonfree-updates]
name=RPM Fusion for Fedora $releasever - Nonfree - Updates
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/$releasever/$basearch/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-released-$releasever&arch=$basearch
enabled=1
enabled_metadata=1
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-updates-debuginfo]
name=RPM Fusion for Fedora $releasever - Nonfree - Updates Debug
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/$releasever/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-released-debug-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-updates-source]
name=RPM Fusion for Fedora $releasever - Nonfree - Updates Source
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/$releasever/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-released-source-$releasever&arch=$basearch
enabled=0
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever

View file

@ -1,33 +0,0 @@
[rpmfusion-nonfree]
name=RPM Fusion for Fedora $releasever - Nonfree
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/releases/$releasever/Everything/$basearch/os/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-$releasever&arch=$basearch
enabled=1
enabled_metadata=1
metadata_expire=14d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-debuginfo]
name=RPM Fusion for Fedora $releasever - Nonfree - Debug
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/releases/$releasever/Everything/$basearch/debug/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
[rpmfusion-nonfree-source]
name=RPM Fusion for Fedora $releasever - Nonfree - Source
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/releases/$releasever/Everything/source/SRPMS/
metalink=https://mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
type=rpm-md
gpgcheck=1
repo_gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever

View file

@ -1,24 +0,0 @@
---
- name: Switch to remote repositories
include_role:
name: fedora/repositories
vars:
source: "remote"
- name: Update all packages
dnf:
name: "*"
state: latest
- name: Install system-upgrade plugin
dnf:
name: dnf-plugin-system-upgrade
- name: Switch to local repositories
include_role:
name: fedora/repositories
vars:
source: "local"
- name: Start the release update
shell: dnf system-upgrade download -y --releasever={{ releasever }}

View file

@ -1,17 +0,0 @@
---
- name: Enable flathub
become: yes
become_method: sudo
community.general.flatpak_remote:
name: flathub
state: present
flatpakrepo_url: https://dl.flathub.org/repo/flathub.flatpakrepo
- name: Install flatpak apps
community.general.flatpak:
name: "{{ item }}"
state: present
loop:
- com.spotify.Client
- com.discordapp.Discord
- org.telegram.desktop

View file

@ -1,5 +0,0 @@
---
- name: Create git config
template:
src: templates/gitconfig.j2
dest: ~/.gitconfig

View file

@ -1,36 +0,0 @@
[alias]
scommit = commit --signoff
graph = log --oneline --decorate --graph --all
[commit]
gpgsign = true
[core]
editor = code --wait
excludesfile = ~/.gitignore
[diff]
tool = vscode-difftool
[difftool "vscode-difftool"]
cmd = code --wait --diff $LOCAL $REMOTE
[gpg]
program = gpg2
[init]
defaultBranch = main
[pull]
rebase = true
[rebase]
autoStash = true
[tag]
gpgSign = true
[user]
name = Matej Focko
email = {{ git_email }}
signingkey = {{ gpg_signingkey }}

View file

@ -1,10 +0,0 @@
---
- name: Create directories for configuration
file:
path: ~/.ghc
state: directory
- name: Install ghci.conf
template:
src: templates/ghci.conf.j2
dest: ~/.ghc/ghci.conf

View file

@ -1,5 +0,0 @@
---
- name: Install alacritty configuration
copy:
src: templates/alacritty
dest: ~/.config/

View file

@ -1,8 +0,0 @@
---
- name: Install Doom Emacs
block:
- git:
repo: https://github.com/hlissner/doom-emacs
dest: ~/.emacs.d
depth: 1
# - shell: ~/.emacs.d/bin/doom install -y

View file

@ -1,16 +0,0 @@
---
- name: Set default shell
become: yes
become_method: sudo
user:
name: mfocko
shell: /bin/zsh
# - name: Install Nord theme for Konsole
# shell: wget -O ~/.local/share/konsole/nord.colorscheme https://raw.githubusercontent.com/arcticicestudio/nord-konsole/develop/src/nord.colorscheme
- include: nvim.yml
- include: emacs.yml
- include: zsh.yml
- include: tmux.yml
- include: alacritty.yml

View file

@ -1,12 +0,0 @@
---
- name: Create init.vim
block:
- file:
path: ~/.config/nvim
state: directory
- template:
src: templates/init.vim.j2
dest: ~/.config/nvim/init.vim
- name: Install vim-plug
shell: sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'

View file

@ -1,56 +0,0 @@
---
- name: Create directories in `~/.local`
file:
path: "{{ item }}"
state: directory
loop:
- ~/.local/bin
- ~/.local/share
- name: Check for oh-my-zsh
stat:
path: ~/.oh-my-zsh
register: ohmyzsh_directory
- name: Install oh-my-zsh
shell: sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
when: not ohmyzsh_directory.stat.exists
- name: Clone zsh-autosuggestions
git:
repo: https://github.com/zsh-users/zsh-autosuggestions
dest: ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
- name: Clone zsh-syntax-highlighting
git:
repo: https://github.com/zsh-users/zsh-syntax-highlighting.git
dest: ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting
- name: Clone starship
shell: sh -c "$(curl -fsSL https://starship.rs/install.sh)" "" -f -b $HOME/.local/bin
- name: Create zshrc
template:
src: templates/zshrc.j2
dest: ~/.zshrc
- name: Create starship configuration
template:
src: templates/starship.toml.j2
dest: ~/.config/starship.toml
- name: Install script for toolbox name retrieval
template:
src: templates/scripts/toolbox_name.sh
dest: ~/.local/bin/toolbox_name.sh
- name: Install script for paste.sr.ht
template:
src: templates/scripts/srht.py
dest: ~/.local/bin/srht.py
- name: Symlink paste.sr.ht
ansible.builtin.file:
src: ./srht.py
dest: ~/.local/bin/srht
state: link

View file

@ -1,75 +0,0 @@
import:
# - /home/mfocko/.config/alacritty/colors/ayu_dark.yml
# - /home/mfocko/.config/alacritty/colors/ayu_mirage.yml
# - /home/mfocko/.config/alacritty/colors/breeze.yml
# - /home/mfocko/.config/alacritty/colors/campbell.yml
# - /home/mfocko/.config/alacritty/colors/default.yml
# - /home/mfocko/.config/alacritty/colors/gruvbox_dark.yml
# - /home/mfocko/.config/alacritty/colors/gruvbox_light.yml
# - /home/mfocko/.config/alacritty/colors/monokai/classic.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro_filter_machine.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro_filter_octagon.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro_filter_ristretto.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro_filter_spectrum.yml
# - /home/mfocko/.config/alacritty/colors/night_owl.yml
# - /home/mfocko/.config/alacritty/colors/nord.yml
# - /home/mfocko/.config/alacritty/colors/ocean.yml
# - /home/mfocko/.config/alacritty/colors/one_dark.yml
# - /home/mfocko/.config/alacritty/colors/one_dark_pro.yml
# - /home/mfocko/.config/alacritty/colors/one_light.yml
# - /home/mfocko/.config/alacritty/colors/outrun_electric.yml
# - /home/mfocko/.config/alacritty/colors/rainier.yml
# - /home/mfocko/.config/alacritty/colors/rainier_retro.yml
# - /home/mfocko/.config/alacritty/colors/rose-pine.yml
# - /home/mfocko/.config/alacritty/colors/rose-pine-dawn.yml
# - /home/mfocko/.config/alacritty/colors/rose-pine-moon.yml
# - /home/mfocko/.config/alacritty/colors/solarized_dark.yml
# - /home/mfocko/.config/alacritty/colors/solarized_light.yml
# - /home/mfocko/.config/alacritty/colors/tokyo_night.yml
# - /home/mfocko/.config/alacritty/colors/tokyo_night_storm.yml
- /home/mfocko/.config/alacritty/colors/tomorrow_day.yml
# - /home/mfocko/.config/alacritty/colors/tomorrow_night.yml
# - /home/mfocko/.config/alacritty/colors/tomorrow_night_bright.yml
env:
TERM: alacritty
window:
dynamic_padding: true
decorations: none
font:
normal:
# family: BlexMono Nerd Font
# family: CascadiaMonoPL Nerd Font
# family: CozetteVector
# family: FiraCode Nerd Font
# family: Hack Nerd Font
# family: Inconsolata Nerd Font
# family: InputMonoNarrow Nerd Font
# family: Iosevka Term
# family: Iosevka Term Slab
family: JetBrainsMonoNL Nerd Font
# family: RecMonoLinear Nerd Font
# family: RobotoMono Nerd Font
# family: SauceCodePro Nerd Font
# family: SFMono Nerd Font
# family: VictorMono Nerd Font
size: 15.0
cursor:
# Block, Underline, Beam
style: Beam
thickness: 0.33
blinking: On
key_bindings:
- key: F11
action: ToggleFullscreen
- key: N
mods: Control|Shift
action: SpawnNewInstance
- key: K
mods: Control|Shift
action: ClearHistory

View file

@ -1,33 +0,0 @@
# Colors (Solarized Dark)
colors:
# Default colors
primary:
background: "#002b36" # base03
foreground: "#839496" # base0
# Cursor colors
cursor:
text: "#002b36" # base03
cursor: "#839496" # base0
# Normal colors
normal:
black: "#073642" # base02
red: "#dc322f" # red
green: "#859900" # green
yellow: "#b58900" # yellow
blue: "#268bd2" # blue
magenta: "#d33682" # magenta
cyan: "#2aa198" # cyan
white: "#eee8d5" # base2
# Bright colors
bright:
black: "#002b36" # base03
red: "#cb4b16" # orange
green: "#586e75" # base01
yellow: "#657b83" # base00
blue: "#839496" # base0
magenta: "#6c71c4" # violet
cyan: "#93a1a1" # base1
white: "#fdf6e3" # base3

View file

@ -1,158 +0,0 @@
" Sample config for pb071 students, available at fi.muni.cz/pb071
" ===============================================================
" Requires VIM-8.0 to enable linting, on aisa run:
" $ module add vim-8.0
" However, the linting will fail silently, if version is older.
"
" Comes with plugin manager Plug: we added 2 colorschemes
" and linting plugin ALE, which uses clang-tidy and gcc
" to highlight some syntax errors.
"
" Install Plug first in bash:
" $ curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
" Then run vim and install the plugins using command in normal mode:
" :PlugInstall
"
" Most of the settings come from vimconfig.com.
" We added few handy key mappings:
"
" Ctrl+Up/Down Move line or a block of selected lines
" Ctrl+j/k
" <leader>pp Toggle paste mode on and off
" <leader><cr> Disable search highlight
"
" <cr> is carriage return, "Enter"
" <leader> is backspace, "\", complete the combination in 1 second
set nocompatible
set encoding=utf-8
"""""
""""" Plugin manager Plug from https://github.com/junegunn/vim-plug
"""""
call plug#begin('~/.vim/plugged')
Plug 'vim-airline/vim-airline' " status bar mod
Plug 'vim-airline/vim-airline-themes'
" Plug 'tomasiser/vim-code-dark' " colorscheme codedark
" Plug 'romainl/Apprentice' " colorscheme apprentice
Plug 'w0rp/ale'
Plug 'romainl/vim-cool'
" Plug 'drewtempelmeyer/palenight.vim'
" Plug 'connorholyday/vim-snazzy'
" Plug 'altercation/vim-colors-solarized'
Plug 'scrooloose/nerdtree'
Plug 'arcticicestudio/nord-vim'
call plug#end()
" Setup linting for c99
let g:ale_completion_enabled = 1
let g:ale_linters = {'c': ['gcc', 'clangtidy', 'clang-format']}
let g:ale_c_gcc_executable = 'gcc'
let g:ale_c_gcc_options = '-std=c99 -Wall -Wextra -pedantic'
let g:ale_c_clang_executable = 'gcc'
let g:ale_c_clang_options = '-std=c99 -Wall -Wextra -pedantic'
let g:ale_c_clangtidy_executable = 'clang-tidy'
let g:ale_c_clangtidy_options = '-std=c99 -Wall -Wextra -pedantic'
"""""
""""" Colors
"""""
syntax on
" hi Normal ctermbg=none
" hi NonText ctermbg=none
" Color schemes belong to ~/.vim/colors
" Find yours at https://vimcolors.com
set background=dark
" colorscheme codedark
colorscheme nord
" colorscheme solarized
" colorscheme palenight
" let g:SnazzyTransparent = 1
" colorscheme snazzy
" If using plugin vim-airline
let g:airline_theme = 'nord'
if &term =~ '256color'
" disable Background Color Erase (BCE) so that color schemes
" render properly when inside 256-color tmux and GNU screen.
" see also http://snk.tuxfamily.org/log/vim-256color-bce.html
set t_ut=
endif
" If you happen to still have a problem on some terminal, uncomment:
" set t_Co=256
" set t_ut=
" Color 81. character in line to visualize long lines
highlight ColorColumn ctermbg=magenta
call matchadd('ColorColumn', '\%81v', 100)
"""""
""""" General
"""""
set relativenumber " Show line numbers
set linebreak " Break lines at word (requires Wrap lines)
set showbreak=+++ " Wrap-broken line prefix
set textwidth=80 " Line wrap (number of cols)
set showmatch " Highlight matching brace
set showcmd " Show last command on right
set cursorline " Highlight current line
set hlsearch " Highlight all search results
set smartcase " Enable smart-case search
set ignorecase " Always case-insensitive
set incsearch " Searches for strings incrementally
set autoindent " Auto-indent new lines
set cindent " Use 'C' style program indenting
set shiftwidth=4 " Number of auto-indent spaces
set smartindent " Enable smart-indent
set smarttab " Enable smart-tabs
set softtabstop=4 expandtab " Number of spaces per Tab
set wrap " Wrap lines
"""""
""""" Advanced
"""""
set ruler " Show row and column ruler information
set undolevels=1000 " Number of undo levels
set backspace=indent,eol,start " Backspace behaviour
set guicursor=
"""""
""""" Key mapping
"""""
" Move lines using Ctrl+Up/Down in normal, insert and visual modes
nnoremap <C-Up> :m-2<CR>
nnoremap <C-Down> :m+<CR>
inoremap <C-Up> <Esc>:m-2<CR>
inoremap <C-Down> <Esc>:m+<CR>
vnoremap <C-Up> :m '<-2<CR>gv=gv
vnoremap <C-Down> :m '>+1<CR>gv=gv
" or Ctrl+j/k
nnoremap <C-j> :m .+1<CR>==
nnoremap <C-k> :m .-2<CR>==
inoremap <C-j> <ESC>:m .+1<CR>==gi
inoremap <C-k> <ESC>:m .-2<CR>==gi
vnoremap <C-j> :m '>+1<CR>gv=gv
vnoremap <C-k> :m '<-2<CR>gv=gv
" Toggle paste mode on and off
" \ + pp
map <leader>pp :setlocal paste!<cr>
" Disable search highlight when <leader><cr> is pressed
map <silent> <leader><cr> :noh<cr>
" Tab support
nnoremap <silent> <C-n> :tabnext<CR>
nnoremap <silent> <C-p> :tabprevious<CR>
nnoremap <silent> <C-S-t> :tabnew<CR>
" NERDTree
nmap <silent> <F7> :NERDTreeToggle<CR>
:set guicursor=

View file

@ -1,39 +0,0 @@
#!/usr/bin/env python3
import os
import click
import requests
@click.command()
@click.option("--public", "visibility", flag_value="public")
@click.option("--unlisted", "visibility", flag_value="unlisted", default=True)
@click.option("--private", "visibility", flag_value="private")
@click.argument("src", type=click.File("r"), nargs=-1)
def paste(visibility, src):
request = {
"visibility": visibility,
"files": [
{"filename": s.name.split("/")[-1], "contents": s.read()}
for s in src
],
}
response = requests.post(
"https://paste.sr.ht/api/pastes",
json=request,
headers={"Authorization": f"token {os.getenv('SRHT_LEGACY')}"},
).json()
if "sha" in response:
click.secho(
f"Pasted: https://paste.sr.ht/~mfocko/{response['sha']}",
fg="green",
)
else:
click.secho(response, fg="red")
if __name__ == "__main__":
paste()

View file

@ -1,44 +0,0 @@
add_newline = false
format = """$username\
$hostname\
${custom.toolbox}\
$git_branch\
$git_commit\
$git_state\
$git_status\
$nix_shell\
$jobs\
$time\
$cmd_duration\
$line_break\
$directory\
$character"""
[username]
format = "[$user]($style)@"
show_always = true
[hostname]
format = "[$hostname]($style) "
ssh_only = false
[cmd_duration]
format = "\\(took [$duration]($style)\\) "
[time]
disabled = false
format = "at [$time]($style) "
[directory]
format = "[$path]($style)[$read_only]($read_only_style) "
[custom.toolbox]
when = "ls /run/.containerenv"
symbol = " "
command = "bash ~/.local/bin/toolbox_name.sh"
format = "in [$symbol($output )]($style)"
style = "bold purple"
[character]
success_symbol = "[λ](bold green)"
error_symbol = "[λ](bold red)"

View file

@ -1,42 +0,0 @@
export ZSH=/home/mfocko/.oh-my-zsh
CASE_SENSITIVE="true"
ENABLE_CORRECTION="true"
plugins=(git common-aliases history systemd sudo zsh-autosuggestions zsh-syntax-highlighting fzf)
export PATH="$PATH:$HOME/.local/bin"
source $ZSH/oh-my-zsh.sh
export ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=10'
export EDITOR=nvim
export CC=gcc
export CFLAGS="-std=c11 -Wall -Werror"
export CXXFLAGS="-std=c++14 -Wall -Werror"
# export LDLIBS="-lm -lkarel -lcurses"
export LDLIBS="-lm"
export LANG="en_US.UTF-8"
### gpg ###
export GPG_TTY="$(tty)"
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
gpgconf --launch gpg-agent
alias q="exit"
alias k="exit"
alias vim="nvim"
alias ts="tmux new -As default"
alias Reset="reset && tmux clear-history"
alias gcs="git commit -v -s"
function e() {
if [ $# -gt 0 ]; then
emacs $1 &
else
emacs . &
fi
}
eval "$(starship init zsh)"

View file

@ -1,24 +0,0 @@
---
- name: Check if SSH key exists
stat:
path: ~/.ssh/id_ed25519
register: ssh_key
- name: Generate SSH key
user:
name: mfocko
generate_ssh_key: yes
ssh_key_type: ed25519
ssh_key_comment: "$HOSTNAME-{{ ansible_facts['distribution'] }}"
when: not ssh_key.stat.exists
- name: Install SSH config
template:
src: templates/ssh_config.j2
dest: ~/.ssh/config
mode: 0600
- name: Enable sshd
systemd:
name: sshd
enabled: yes

View file

@ -1,38 +0,0 @@
# Public
Host github.com
User git
Hostname github.com
Host gitlab.com
User git
Hostname gitlab.com
# FI
Host gitlab.fi.muni.cz
User git
Hostname gitlab.fi.muni.cz
Host aisa anxur
User xfocko
Hostname %h.fi.muni.cz
# Private
Host maxwell
User mfocko
Hostname maxwell.mfocko.xyz
Port 6969
Host poincare
User mfocko
Hostname mfocko.xyz
Port 10022
Host git.mfocko.xyz
User git
Hostname git.mfocko.xyz
Port 2222
Host git.maxwell.mfocko.xyz
User git
Hostname git.maxwell.mfocko.xyz
Port 6969

View file

@ -1,32 +0,0 @@
---
- name: Create directories for VSCode
file:
path: "{{ item }}"
state: directory
loop:
- ~/.local/bin
- ~/.local/share
- "$HOME/.config/Code - Insiders/User"
- name: Install VSCode script
template:
src: templates/update.sh.j2
dest: ~/.local/bin/code-update.sh
- name: Create app info for VSCode
template:
src: templates/code.desktop.j2
dest: ~/.local/share/visual-studio-code-insiders.desktop
- name: Create app info for VSCode URL handler
template:
src: templates/code-url.desktop.j2
dest: ~/.local/share/visual-studio-code-insiders-url-handler.desktop
- name: Install VSCode configuration
template:
src: templates/{{ item }}.json.j2
dest: "~/.config/Code - Insiders/User/{{ item }}.json"
loop:
- settings
- keybindings

View file

@ -1,34 +0,0 @@
[
{
"key": "alt+f",
"command": "workbench.action.toggleMaximizedPanel"
},
{
"key": "f7",
"command": "workbench.view.explorer"
},
{
"key": "f7",
"command": "workbench.action.toggleSidebarVisibility",
"when": "explorerViewletVisible"
},
{
"key": "ctrl+shift+e",
"command": "-workbench.view.explorer"
},
{
"key": "ctrl+shift+k",
"command": "workbench.action.terminal.clear",
"when": "terminalFocus"
},
{
"key": "ctrl+pagedown",
"command": "workbench.action.terminal.focusNext",
"when": "terminalFocus"
},
{
"key": "ctrl+pageup",
"command": "workbench.action.terminal.focusPrevious",
"when": "terminalFocus"
}
]

View file

@ -1,56 +0,0 @@
{
"breadcrumbs.enabled": false,
"editor.cursorBlinking": "phase",
"editor.cursorStyle": "underline",
// "editor.fontFamily": "BlexMono Nerd Font",
"editor.fontFamily": "CaskaydiaCovePL Nerd Font",
// "editor.fontFamily": "FiraCode Nerd Font",
// "editor.fontFamily": "Hack Nerd Font",
// "editor.fontFamily": "Hasklug Nerd Font",
// "editor.fontFamily": "InputMono Nerd Font",
// "editor.fontFamily": "InputMonoNarrow Nerd Font",
// "editor.fontFamily": "InputMonoCondensed Nerd Font",
// "editor.fontFamily": "InputMonoCompressed Nerd Font",
// "editor.fontFamily": "'Iosevka Term', 'InputMonoCompressed Nerd Font'",
// "editor.fontFamily": "'Iosevka Term Extended', 'InputMonoCompressed Nerd Font'",
// "editor.fontFamily": "'Iosevka Term Slab', 'InputMonoCompressed Nerd Font'",
// "editor.fontFamily": "'Iosevka Term Slab Extended', 'InputMonoCompressed Nerd Font'",
// "editor.fontFamily": "JetBrainsMono Nerd Font",
// "editor.fontFamily": "MonoLisa Nerd Font",
// "editor.fontFamily": "RecMonoLinear Nerd Font",
// "editor.fontFamily": "RobotoMono Nerd Font",
// "editor.fontFamily": "SFMono Nerd Font",
// "editor.fontFamily": "VictorMono Nerd Font",
// "editor.fontWeight": 350,
"editor.fontSize": 16,
"editor.fontLigatures": true,
"terminal.integrated.fontSize": 15,
"editor.highlightActiveIndentGuide": true,
"editor.lineNumbers": "relative",
"editor.minimap.enabled": false,
"editor.minimap.maxColumn": 80,
"editor.renderIndentGuides": true,
"editor.renderWhitespace": "all",
"editor.rulers": [
80,
100,
],
"git.autofetch": true,
"window.menuBarVisibility": "toggle",
"window.titleBarStyle": "custom",
"window.zoomLevel": 0,
"workbench.activityBar.visible": true,
"workbench.colorTheme": "Default Dark+",
"workbench.settings.editor": "json",
"workbench.editor.showTabs": true,
}

View file

@ -0,0 +1,12 @@
---
- name: Upgrade all packages
ansible.builtin.include_tasks: upgrade.yml
- name: Install basic packages
ansible.builtin.package:
name:
- ansible
- curl
- git
- make
- wget

View file

@ -0,0 +1,19 @@
---
- name: Upgrade all packages with apt
ansible.builtin.apt:
name: "*"
state: latest
update_cache: true
when: ansible_distribution == "Ubuntu"
- name: Upgrade all packages with dnf
ansible.builtin.dnf:
name: "*"
state: latest
when: ansible_distribution in [ "AlmaLinux", "CentOS", "Fedora" ]
- name: Upgrade all packages with zypper
community.general.packaging.os.zypper:
name: "*"
state: latest
when: ansible_distribution == "openSUSE"

View file

@ -0,0 +1,3 @@
---
- name: Enable Fedora repos
ansible.builtin.include_tasks: repositories.yml

View file

@ -0,0 +1,18 @@
---
- name: Install RPMFusion RPMs with GPG keys
ansible.builtin.dnf:
name:
- "https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-{{ ansible_distribution_version }}.noarch.rpm"
- "https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-{{ ansible_distribution_version }}.noarch.rpm"
disable_gpg_check: true
state: present
tags: system-fedora-rpmfusion
- name: Install Google Chrome repository
ansible.builtin.copy:
src: files/google-chrome.repo
dest: /etc/yum.repos.d/google-chrome.repo
mode: 0640
owner: root
group: root
tags: system-fedora-chrome

View file

@ -0,0 +1,3 @@
---
flatpak:
apps: []

View file

@ -0,0 +1,15 @@
---
- name: Enable Flathub
community.general.packaging.os.flatpak_remote:
name: flathub
state: present
flatpakrepo_url: https://dl.flathub.org/repo/flathub.flatpakrepo
become: true
tags: system-flatpak-enable-flathub
- name: Install flatpak apps
community.general.packaging.os.flatpak:
name: "{{ item }}"
state: present
loop: "{{ flatpak.apps }}"
when: flatpak.apps

86
roles/user/base/files/srht.py Executable file
View file

@ -0,0 +1,86 @@
#!/usr/bin/env python3
import os
import click
import requests
def get_username():
response = requests.post(
"https://meta.sr.ht/query",
json={"query": "{ me { canonicalName } }"},
headers={"Authorization": f"Bearer {os.getenv('SRHT')}"},
).json()
return response["data"]["me"]["canonicalName"]
@click.group()
def cli():
pass
@cli.command(help="Prints out canonical name of the authenticated user")
def whoami():
click.echo(get_username())
@cli.command(help="Provides paste to the paste.sr.ht")
@click.option(
"--public",
"visibility",
flag_value="public",
help="Public paste that is visible on the user's profile",
)
@click.option(
"--unlisted",
"visibility",
flag_value="unlisted",
default=True,
help="Unlisted paste that is accessible via a link",
)
@click.option(
"--private",
"visibility",
flag_value="private",
help="Private paste that is accessible only to the authenticated user",
)
@click.argument(
"src",
type=click.File("r"),
nargs=-1,
)
def paste(visibility, src):
request = {
"visibility": visibility,
"files": [
{"filename": s.name.split("/")[-1], "contents": s.read()}
for s in src
],
}
response = requests.post(
"https://paste.sr.ht/api/pastes",
json=request,
headers={"Authorization": f"token {os.getenv('SRHT_LEGACY')}"},
).json()
if "sha" in response:
click.secho("*** Paste link ***", fg="green")
click.secho(
f"https://paste.sr.ht/{response['user']['canonical_name']}/{response['sha']}"
)
click.secho("\n*** Files ***", fg="green")
for file in response["files"]:
filename = file["filename"]
blob_id = file["blob_id"]
click.secho(f"https://paste.sr.ht/blob/{blob_id}\t{filename}")
else:
click.secho(response, fg="red")
if __name__ == "__main__":
cli()

View file

@ -1,3 +1,3 @@
#!/bin/bash #!/bin/sh
cat /run/.containerenv | grep -E '^name=' | sed -e 's/name=\"\(.*\)\"/\1/' cat /run/.containerenv | grep -E '^name=' | sed -e 's/name=\"\(.*\)\"/\1/'

View file

@ -0,0 +1,8 @@
---
- name: Install basic desktop utilities
ansible.builtin.package:
name:
- playerctl
- flameshot
state: present
become: true

View file

@ -0,0 +1,9 @@
---
- name: Initialize directory structure
ansible.builtin.include_tasks: structure.yml
- name: Scripts
ansible.builtin.include_tasks: scripts.yml
- name: Desktop utilities
ansible.builtin.include_tasks: desktop-utilities.yml

View file

@ -0,0 +1,12 @@
---
- name: Install script for toolbox name retrieval
ansible.builtin.copy:
src: files/toolbox_name.sh
dest: ~/.local/bin/toolbox_name
mode: 0700
- name: Install script for paste.sr.ht
ansible.builtin.copy:
src: files/srht.py
dest: ~/.local/bin/srht
mode: 0700

View file

@ -0,0 +1,20 @@
---
- name: Create directories in `~/.local`
ansible.builtin.file:
path: "{{ item }}"
state: directory
mode: 0700
owner: "{{ target_user }}"
group: "{{ target_user }}"
loop:
- ~/.local/bin
- ~/.local/share
- ~/.ssh
- name: Create empty file for tokens
ansible.builtin.file:
path: ~/.tokens
state: touch
mode: 0600
owner: "{{ target_user }}"
group: "{{ target_user }}"

View file

@ -0,0 +1,6 @@
---
- name: Install Emacs
ansible.builtin.package:
name: emacs
state: present
become: true

View file

@ -0,0 +1,11 @@
---
- name: Packages
ansible.builtin.include_tasks: install.yml
tags: install
- name: Clone Doom Emacs from GitHub
ansible.builtin.git:
repo: https://github.com/hlissner/doom-emacs
dest: ~/.emacs.d
depth: 1
tags: user-emacs-doom

View file

@ -0,0 +1,6 @@
---
- name: Install NeoVim
ansible.builtin.package:
name: neovim
state: present
become: true

View file

@ -0,0 +1,10 @@
---
- name: Packages
ansible.builtin.include_tasks: install.yml
tags: install
- name: Install NvChad
ansible.builtin.git:
repo: https://github.com/NvChad/NvChad
dest: ~/.config/nvim
depth: 1

View file

@ -0,0 +1,78 @@
[
{
"key": "alt+f",
"command": "workbench.action.toggleMaximizedPanel"
},
{
"key": "f7",
"command": "workbench.view.explorer"
},
{
"key": "f7",
"command": "workbench.action.toggleSidebarVisibility",
"when": "explorerViewletVisible"
},
{
"key": "ctrl+shift+e",
"command": "-workbench.view.explorer"
},
{
"key": "ctrl+shift+k",
"command": "workbench.action.terminal.clear",
"when": "terminalFocus"
},
{
"key": "ctrl+pagedown",
"command": "workbench.action.terminal.focusNext",
"when": "terminalFocus"
},
{
"key": "ctrl+pageup",
"command": "workbench.action.terminal.focusPrevious",
"when": "terminalFocus"
},
{
"key": "ctrl+k k",
"command": "workbench.action.focusAboveGroup"
},
{
"key": "ctrl+k ctrl+up",
"command": "-workbench.action.focusAboveGroup"
},
{
"key": "ctrl+k j",
"command": "workbench.action.focusBelowGroup"
},
{
"key": "ctrl+k ctrl+down",
"command": "-workbench.action.focusBelowGroup"
},
{
"key": "ctrl+k h",
"command": "workbench.action.focusLeftGroup"
},
{
"key": "ctrl+k ctrl+left",
"command": "-workbench.action.focusLeftGroup"
},
{
"key": "ctrl+k l",
"command": "workbench.action.focusRightGroup"
},
{
"key": "ctrl+k ctrl+right",
"command": "-workbench.action.focusRightGroup"
},
{
"key": "shift+alt+m",
"command": "workbench.action.customizeLayout"
},
{
"key": "ctrl+k ctrl+z",
"command": "workbench.action.toggleCenteredLayout"
},
{
"key": "alt+b",
"command": "workbench.action.toggleAuxiliaryBar"
}
]

View file

@ -0,0 +1,65 @@
{
"breadcrumbs.enabled": false,
"editor.cursorBlinking": "phase",
"editor.cursorStyle": "line",
// "editor.fontFamily": "BlexMono Nerd Font",
// "editor.fontFamily": "CaskaydiaCovePL Nerd Font",
// "editor.fontFamily": "CozetteVector", // ASCII drawing || table issues
// "editor.fontFamily": "Fantasque Sans Mono", // ASCII drawing || table issues
// "editor.fontFamily": "FiraCode Nerd Font",
// "editor.fontFamily": "Hack Nerd Font",
// "editor.fontFamily": "Hasklug Nerd Font",
// "editor.fontFamily": "Inconsolata Nerd Font", // ASCII drawing || table issues
// "editor.fontFamily": "InputMono Nerd Font", // ASCII drawing || table issues
// "editor.fontFamily": "InputMonoNarrow Nerd Font",
// "editor.fontFamily": "InputMonoCondensed Nerd Font",
// "editor.fontFamily": "InputMonoCompressed Nerd Font",
// "editor.fontFamily": "'Iosevka Term', 'InputMonoCompressed Nerd Font'",
// "editor.fontFamily": "'Iosevka Term Extended', 'InputMonoCompressed Nerd Font'",
// "editor.fontFamily": "'Iosevka Term Slab', 'InputMonoCompressed Nerd Font'",
// "editor.fontFamily": "'Iosevka Term Slab Extended', 'InputMonoCompressed Nerd Font'",
// "editor.fontFamily": "Pragmasevka",
// "editor.fontFamily": "Iosevka Comfy",
// "editor.fontFamily": "JetBrainsMono Nerd Font",
// "editor.fontFamily": "JuliaMono Nerd Font",
// "editor.fontFamily": "'Martian Mono Nr Rg', 'Hack Nerd Font'", // ASCII drawing || table issues
// "editor.fontFamily": "MartianMono Nerd Font",
// "editor.fontFamily": "Monocraft", // ASCII drawing || table issues
// "editor.fontFamily": "MonoLisa Nerd Font", // ASCII drawing || table issues
// "editor.fontFamily": "MPLUS1Code Nerd Font", // ASCII drawing || table issues
// "editor.fontFamily": "MPLUSCodeLatin50 Nerd Font", // ASCII drawing || table issues
// "editor.fontFamily": "MPLUSCodeLatin60 Nerd Font",
// "editor.fontFamily": "MPLUSCodeLatin Nerd Font", // ASCII drawing || table issues
// "editor.fontFamily": "PragmataPro",
// "editor.fontFamily": "PragmataPro Mono",
// "editor.fontFamily": "PragmataPro Liga",
"editor.fontFamily": "PragmataPro Mono Liga",
// "editor.fontFamily": "RecMonoLinear Nerd Font",
// "editor.fontFamily": "RobotoMono Nerd Font",
// "editor.fontFamily": "SauceCodePro Nerd Font",
// "editor.fontFamily": "SFMono Nerd Font",
// "editor.fontFamily": "VictorMono Nerd Font", // ASCII drawing || table issues
// "editor.fontWeight": 350,
// "editor.fontSize": 15,
"editor.fontSize": 18,
// "editor.fontSize": 17,
"editor.fontLigatures": true,
// "editor.fontLigatures": "'ss01'", // italics for Cascadia Code
// "editor.fontLigatures": "'ss08'", // PragmataPro stylistic set for Iosevka
"terminal.integrated.fontSize": 15,
"editor.lineNumbers": "relative",
"editor.minimap.enabled": false,
"editor.minimap.maxColumn": 80,
// "editor.renderWhitespace": "all",
"editor.rulers": [80, 100],
"window.menuBarVisibility": "toggle",
"window.titleBarStyle": "custom",
"workbench.settings.editor": "json",
"workbench.editor.showTabs": true,
"remote.containers.dockerPath": "podman",
"diffEditor.ignoreTrimWhitespace": false,
"editor.guides.indentation": true,
"editor.guides.highlightActiveIndentation": true,
"diffEditor.renderSideBySide": false,
"workbench.colorTheme": "Vampiro"
}

View file

@ -0,0 +1,40 @@
---
- name: Create directories for VSCode
ansible.builtin.file:
path: "{{ item }}"
state: directory
mode: 0740
loop:
- ~/.local/bin
- ~/.local/share
- "$HOME/.config/Code - Insiders/User"
- name: Install VSCode script
ansible.builtin.copy:
src: files/update.sh
dest: ~/.local/bin/code-update.sh
mode: 0640
- name: Create app info for VSCode
ansible.builtin.copy:
src: files/code{{ item }}.desktop
dest: ~/.local/share/visual-studio-code-insiders{{ item }}.desktop
mode: 0640
loop:
- ""
- "-url-handler"
- name: Install VSCode configuration
ansible.builtin.copy:
src: files/{{ item }}.json
dest: "~/.config/Code - Insiders/User/{{ item }}.json"
mode: 0640
loop:
- settings
- keybindings
- name: Install VSCode
ansible.builtin.command:
cmd: bash ~/.local/bin/code-update.sh
creates: /opt/VSCode-linux-x64
become: true

View file

@ -0,0 +1,6 @@
---
- name: Create git config
ansible.builtin.template:
src: templates/gitconfig
dest: ~/.gitconfig
mode: 0640

View file

@ -0,0 +1,42 @@
[alias]
scommit = commit --signoff
graph = log --oneline --decorate --graph --all
[commit]
gpgsign = true
[core]
editor = code --wait
excludesfile = /home/{{ target_user }}/.gitignore
[diff]
tool = vscode-difftool
[difftool "vscode-difftool"]
cmd = code --wait --diff $LOCAL $REMOTE
[gpg]
program = gpg2
[init]
defaultBranch = main
[pull]
rebase = true
[rebase]
autoStash = true
[tag]
gpgSign = true
[user]
name = {{ fullname }}
email = {{ git_email }}
signingkey = {{ gpg_signingkey }}
[includeIf "gitdir:~/git/github.com/packit/"]
path = /home/mfocko/git/github.com/packit/.gitconfig
[includeIf "gitdir:~/git/gitlab.fi.muni.cz/"]
path = /home/mfocko/git/gitlab.fi.muni.cz/.gitconfig

View file

@ -0,0 +1,6 @@
---
- name: Install GHC
ansible.builtin.package:
name: ghc
state: present
become: true

View file

@ -0,0 +1,16 @@
---
- name: Packages
ansible.builtin.include_tasks: install.yml
tags: install
- name: Create directory for GHC config
ansible.builtin.file:
path: ~/.ghc
state: directory
mode: 0740
- name: Install ghci.conf
ansible.builtin.copy:
src: files/ghci.conf
dest: ~/.ghc/ghci.conf
mode: 0640

View file

@ -0,0 +1,38 @@
---
- name: Download the latest release
ansible.builtin.unarchive:
src: https://vault.bitwarden.com/download/\?app\=cli\&platform\=linux
dest: ~/.local/bin/
remote_src: yes
creates: ~/.local/bin/bw
- name: Make it executable
ansible.builtin.file:
path: ~/.local/bin/bw
mode: u+x
- name: Run the CLI to create initial file
ansible.builtin.command:
cmd: bw
creates: ~/.config/Bitwarden CLI/data.json
- name: Create data stores for specific deployments
ansible.builtin.copy:
src: ~/.config/Bitwarden CLI/data.json
dest: ~/.config/Bitwarden CLI/{{ item }}.json
mode: 0600
force: false
remote_src: true
loop:
- vault.bitwarden.com
- vault.mfocko.xyz
- name: Symlink to the self-hosted deployment
ansible.builtin.file:
src: ~/.config/Bitwarden CLI/vault.mfocko.xyz.json
path: ~/.config/Bitwarden CLI/data.json
force: true
state: link
# - name: Switch the server on the self-hosted “login”
# ansible.builtin.command:
# cmd: bw config server https://vault.mfocko.xyz

View file

@ -24,7 +24,7 @@ bind - resize-pane -D 2
bind-key 'C-,' previous-window bind-key 'C-,' previous-window
bind-key 'C-.' next-window bind-key 'C-.' next-window
bind-key r clear-history bind-key K clear-history
bind-key R source-file ~/.tmux.conf \; display "Reloaded config file ~/.tmux.conf" bind-key R source-file ~/.tmux.conf \; display "Reloaded config file ~/.tmux.conf"
bind-key b set status bind-key b set status
bind-key P command-prompt -p 'save history to filename:' -I '~/tmux.history' 'capture-pane -S - ; save-buffer %1 ; delete-buffer' bind-key P command-prompt -p 'save history to filename:' -I '~/tmux.history' 'capture-pane -S - ; save-buffer %1 ; delete-buffer'

View file

@ -0,0 +1,6 @@
---
- name: Install tmux
ansible.builtin.package:
name: tmux
state: present
become: true

View file

@ -1,20 +1,27 @@
--- ---
- name: Packages
ansible.builtin.include_tasks: install.yml
tags: install
- name: Create .tmux - name: Create .tmux
file: ansible.builtin.file:
path: ~/.tmux path: ~/.tmux
state: directory state: directory
mode: 0700
- name: Clone tpm - name: Clone tpm
git: ansible.builtin.git:
repo: https://github.com/tmux-plugins/tpm repo: https://github.com/tmux-plugins/tpm
dest: ~/.tmux/plugins/tpm dest: ~/.tmux/plugins/tpm
- name: Create tmux.conf - name: Create tmux.conf
template: ansible.builtin.copy:
src: templates/tmux.conf.j2 src: files/tmux.conf
dest: ~/.tmux.conf dest: ~/.tmux.conf
mode: 0600
- name: Create tmux status configuration - name: Create tmux status configuration
template: ansible.builtin.copy:
src: templates/tmux_status.conf.j2 src: files/tmux_status.conf
dest: ~/.tmux/status.conf dest: ~/.tmux/status.conf
mode: 0600

View file

@ -0,0 +1,65 @@
add_newline = false
format = """$username\
$hostname\
$directory\
$git_branch\
$git_commit\
$git_state\
$git_status\
${custom.toolbox}\
$nix_shell\
$jobs\
$time\
$cmd_duration\
$line_break\
$character"""
[username]
format = "[$user@]($style)"
show_always = true
style_user = "blue"
[hostname]
format = "[$hostname]($style) "
ssh_only = false
style = "blue"
[directory]
style = "yellow"
[git_branch]
format = "[$branch]($style)"
style = "cyan"
[git_state]
format = '\([$state( $progress_current/$progress_total)]($style)\) '
style = "cyan"
[git_status]
format = "[[(*$conflicted$untracked$modified$staged$renamed$deleted)](218) ($ahead_behind$stashed)]($style)"
style = "cyan"
conflicted = ""
untracked = ""
modified = ""
staged = ""
renamed = ""
deleted = ""
stashed = "≡"
[custom.toolbox]
when = "ls /run/.containerenv"
symbol = " "
command = "~/.local/bin/toolbox_name.sh"
format = "in [$symbol($output )]($style)"
style = "bold purple"
[time]
disabled = true
[cmd_duration]
format = "[$duration]($style) "
[character]
success_symbol = "[λ](green)"
error_symbol = "[λ](red)"
vimcmd_symbol = "[](green)"

View file

@ -0,0 +1,173 @@
export ZSH="/home/mfocko/.oh-my-zsh"
ENABLE_CORRECTION=true
plugins=(git common-aliases history systemd sudo zsh-autosuggestions zsh-syntax-highlighting zsh-aliases-exa fzf direnv taskwarrior autojump)
source $ZSH/oh-my-zsh.sh
### add .local/bin to PATH ###
export GOPATH=$HOME/.go
export PATH=$HOME/.go/bin:$HOME/.npm/bin:$HOME/.emacs.d/bin:$HOME/.local/bin:$PATH
### zsh autosuggestions color ###
ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE="fg=8,bold,underline"
### Ruby gems ###
if which ruby >/dev/null && which gem >/dev/null; then
PATH="$(ruby -r rubygems -e 'puts Gem.user_dir')/bin:$PATH"
fi
### NeoVim ###
export EDITOR=nvim
alias vim=nvim
alias alacrittyconf="$EDITOR ~/.config/alacritty/alacritty.yml"
alias kittyconf="$EDITOR ~/.config/kitty/kitty.conf"
### git aliases ###
export GIT_EDITOR=$EDITOR
alias gcs="git commit -v -s"
### tokens ###
source ~/.tokens
### gpg as ssh key ###
function gpg_for_ssh() {
export GPG_TTY=$(tty)
export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
gpgconf --launch gpg-agent
}
gpg_for_ssh
### direnv & nixpkg ###
if [[ $(command -v direnv 2> /dev/null) ]]; then
eval "$(direnv hook zsh)";
fi
if [ -e /home/mfocko/.nix-profile/etc/profile.d/nix.sh ]; then
. /home/mfocko/.nix-profile/etc/profile.d/nix.sh;
fi # added by Nix installer
### Rust ###
# export RUSTUP_HOME=/opt/rustup
# export CARGO_HOME=/opt/cargo
# export PATH=/opt/cargo/bin:$PATH
export PATH=~/.cargo/bin:$PATH
# [[ -s "/opt/cargo/env" ]] && source /opt/cargo/env
### Go ###
export PATH="$HOME/.go/bin:$PATH"
### SDKMan ###
export SDKMAN_DIR="/opt/sdkman"
[[ -s "/opt/sdkman/bin/sdkman-init.sh" ]] && source "/opt/sdkman/bin/sdkman-init.sh"
### Bitwarden ###
eval "$(bw completion --shell zsh); compdef _bw bw;"
function bwu() {
local VAULT=$(readlink ~/.config/Bitwarden\ CLI/data.json | cut -d'/' -f6 | cut -d'.' -f-3)
local PASS=$(yad --text "Master password for Bitwarden Vault @ $VAULT:" --center --button "yad-ok" --entry --hide-text)
export BW_SESSION=$(bw unlock --raw "$PASS")
}
# alias bwu='export BW_SESSION="$(bw unlock --raw)"'
alias bwl='export BW_SESSION='
alias bwrh='ln -sf $HOME/.config/Bitwarden\ CLI/{vault.bitwarden.com,data}.json'
alias bwvps='ln -sf $HOME/.config/Bitwarden\ CLI/{vault.mfocko.xyz,data}.json'
function gen_pass() {
LENGTH=12
if [[ -n $1 ]]; then
LENGTH=$1
fi
bw generate -uln --length $LENGTH
}
function gen_passphrase() {
LENGTH=2
if [[ -n $1 ]]; then
LENGTH=$1
fi
bw generate -p --words $LENGTH
}
# HashiCorp Vault
export VAULT_ADDR="https://hvault.mfocko.xyz"
function hcvu() {
local PASS=$(yad --text "Password for HashiCorp Vault @ mfocko.xyz:" --center --button "yad-ok" --entry --hide-text)
vault login -method=userpass -no-print username=$(whoami) password=$PASS
}
### public_html ###
function from_phrase() {
bw list items --search $2 | jq --raw-output ".[] | select(.folderId == \"$1\") | .fields[] | select(.value == \"$3\") | .name"
}
function to_phrase() {
bw list items --search $2 | jq --raw-output ".[] | select(.folderId == \"$1\") | .fields[] | select(.name == \"$3\") | .value"
}
function get_link() {
FOLDER=$(bw list folders --search public_html | jq --raw-output ".[0].id")
if [[ "$1" == "aisa" ]]; then
PREFIX="https://fi.muni.cz/~xfocko";
elif [[ "$1" == "poincare" ]]; then
PREFIX="https://me.mfocko.xyz";
fi;
echo $PREFIX/$(to_phrase $FOLDER $1 $2)
}
function ls_links() {
FOLDER=$(bw list folders --search public_html | jq --raw-output ".[0].id")
bw list items --search $1 | jq ".[] | select(.folderId == \"$FOLDER\") | .fields[].name"
}
### Red Hat ###
alias rh_vpn='echo "$(bw get password Red\ Hat\ -\ SSO)$(bw get totp Red\ Hat\ -\ SSO)" | nmcli --ask connection up Brno\ \(BRQ\)'
alias rh_vpn_rdu2='echo "$(bw get password Red\ Hat\ -\ SSO)$(bw get totp Red\ Hat\ -\ SSO)" | nmcli --ask connection up Raleigh\ \(RDU2\)'
alias rh_wifi='echo -e "\n$(bw get password Red\ Hat\ -\ SSO)$(bw get totp Red\ Hat\ -\ SSO)" | nmcli --ask connection up Red\ Hat'
alias rh_ticket='echo "$(bw get password Red\ Hat\ -\ Kerberos)" | kinit mfocko@REDHAT.COM'
### Fedora ###
alias fk='echo "$(bw get password Fedora\ Accounts)$(bw get totp Fedora\ Accounts)" | fkinit'
### FI ###
alias fi_vpn='echo "$(bw get password Faculty\ Pass)" | nmcli --ask connection up VPN\ FI\ MU'
### C(XX)FLAGS ###
# export CC=gcc
# export CFLAGS="-std=c11 -Wall -Werror"
# export CXXFLAGS="-std=c++14 -Wall -Werror"
# export LDLIBS="-lm -lkarel -lcurses"
# export LDLIBS="-lm"
export LANG=en_US.UTF-8
### Lazy aliases ###
alias q="exit"
alias k="exit"
alias ts="tmux new -As default"
alias Reset="reset && tmux clear-history"
### Java ###
export PATH="/opt/jdk-18/bin:$PATH"
### fzf ###
# source $HOME/.oh-my-zsh/custom/plugins/fzf-tab-completion/zsh/fzf-zsh-completion.sh
# bindkey '^I' fzf_completion
# if [[ "$TMUX" == "" && "$VSCODE_SHELL_INTEGRATION" == "" ]]; then
# tmux new -s
# fi;
### sprunge ###
function sprunge_paste() {
echo "Paste your code: "
cat - | curl -F 'sprunge=<-' http://sprunge.us
}
### Starship ###
eval "$(starship init zsh)"

View file

@ -0,0 +1,23 @@
---
- name: Install zsh
ansible.builtin.package:
name:
- zsh
- autojump
state: present
become: true
- name: Install fzf for fuzzy finding
ansible.builtin.package:
name: fzf
state: present
become: true
when: ansible_distribution not in [ "AlmaLinux" ]
# “yet another dialog” for the functions in zshrc
- name: Install yad for prompts from shell
ansible.builtin.package:
name: yad
state: present
become: true
when: ansible_distribution not in [ "AlmaLinux" ]

View file

@ -0,0 +1,18 @@
---
- name: Packages
ansible.builtin.include_tasks: install.yml
tags: install
- name: Plugin oh-my-zsh
ansible.builtin.include_tasks: oh-my-zsh.yml
tags: zsh-oh-my-zsh
- name: Plugin starship
ansible.builtin.include_tasks: starship.yml
- name: Set default shell
become: true
ansible.builtin.user:
name: "{{ target_user }}"
shell: /bin/zsh
tags: zsh/set-default-shell

View file

@ -0,0 +1,35 @@
---
- name: Fetch the oh-my-zsh installer
ansible.builtin.get_url:
url: https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh
dest: /tmp/oh-my-zsh.sh
mode: 0700
- name: Install oh-my-zsh
ansible.builtin.command:
cmd: sh /tmp/oh-my-zsh.sh --unattended
creates: ~/.oh-my-zsh
- name: Clone zsh-autosuggestions
ansible.builtin.git:
repo: https://github.com/zsh-users/zsh-autosuggestions
dest: ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions
update: no
- name: Clone zsh-syntax-highlighting
ansible.builtin.git:
repo: https://github.com/zsh-users/zsh-syntax-highlighting.git
dest: ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting
update: no
- name: Clone zsh-aliases-exa
ansible.builtin.git:
repo: https://github.com/DarrinTisdale/zsh-aliases-exa.git
dest: ~/.oh-my-zsh/custom/plugins/zsh-aliases-exa
update: no
- name: Install the config
ansible.builtin.copy:
src: files/zshrc
dest: ~/.zshrc
mode: 0600

View file

@ -0,0 +1,17 @@
---
- name: Fetch the starship installer
ansible.builtin.get_url:
url: https://starship.rs/install.sh
dest: /tmp/starship.sh
mode: 0700
- name: Install starship
ansible.builtin.command:
cmd: sh /tmp/starship.sh -f -b $HOME/.local/bin
creates: ~/.local/bin/starship
- name: Install starship configuration
ansible.builtin.copy:
src: files/starship.toml
dest: ~/.config/starship.toml
mode: 0600

View file

@ -0,0 +1,58 @@
# Allow authentication via Kerberos
GSSAPIAuthentication no
# By default use the FIDO2 key from Yubikey
IdentityFile ~/.ssh/id_ed25519_sk
# PIV secrets, disabled by default
PKCS11Provider none
# PKCS11Provider libykcs11.so.2
# Needs to be done for using the SSH key from GnuPG via Yubikey
Match Host * exec "gpg-connect-agent UPDATESTARTUPTTY /bye"
# Public
Host github.com
User git
Hostname github.com
Host gitlab.com
User git
Hostname gitlab.com
# FI
Host gitlab.fi.muni.cz
User git
Hostname gitlab.fi.muni.cz
Host aisa anxur pontos0?
GSSAPIAuthentication yes
User xfocko
Hostname %h.fi.muni.cz
Host nymfe*
GSSAPIAuthentication yes
User xfocko
ProxyJump xfocko@aisa.fi.muni.cz
Hostname %h.fi.muni.cz
# Private
Host maxwell
User mfocko
Hostname maxwell.mfocko.xyz
Port 6969
Host poincare
User mfocko
Hostname mfocko.xyz
Port 10022
Host git.mfocko.xyz
User git
Hostname git.mfocko.xyz
Port 2222
Host git.maxwell.mfocko.xyz
User git
Hostname git.maxwell.mfocko.xyz
Port 6969

View file

@ -0,0 +1,14 @@
---
- name: Install SSH config
ansible.builtin.copy:
src: files/ssh_config
dest: ~/.ssh/config
mode: 0600
tags: user-ssh-config
- name: Install .ssh/authorized_keys
ansible.builtin.get_url:
url: https://gitlab.com/mfocko.keys
dest: ~/.ssh/authorized_keys
mode: 0600
tags: user-ssh-authorized-keys

View file

@ -0,0 +1,118 @@
import:
# - /home/mfocko/.config/alacritty/colors/ayu_dark.yml
# - /home/mfocko/.config/alacritty/colors/ayu_mirage.yml
# - /home/mfocko/.config/alacritty/colors/breeze.yml
# - /home/mfocko/.config/alacritty/colors/campbell.yml
- /home/mfocko/.config/alacritty/colors/codedark.yml
# - /home/mfocko/.config/alacritty/colors/codelight.yml
# - /home/mfocko/.config/alacritty/colors/default.yml
# - /home/mfocko/.config/alacritty/colors/dracula.yml
# - /home/mfocko/.config/alacritty/colors/gruvbox_dark.yml
# - /home/mfocko/.config/alacritty/colors/gruvbox_light.yml
# - /home/mfocko/.config/alacritty/colors/kanagawa.yml
# - /home/mfocko/.config/alacritty/colors/monokai/classic.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro_filter_machine.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro_filter_octagon.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro_filter_ristretto.yml
# - /home/mfocko/.config/alacritty/colors/monokai/pro_filter_spectrum.yml
# - /home/mfocko/.config/alacritty/colors/night_owl.yml
# - /home/mfocko/.config/alacritty/colors/nord.yml
# - /home/mfocko/.config/alacritty/colors/ocean.yml
# - /home/mfocko/.config/alacritty/colors/one_dark.yml
# - /home/mfocko/.config/alacritty/colors/one_dark_pro.yml
# - /home/mfocko/.config/alacritty/colors/one_light.yml
# - /home/mfocko/.config/alacritty/colors/onehalf_light.yml
# - /home/mfocko/.config/alacritty/colors/onehalf_dark.yml
# - /home/mfocko/.config/alacritty/colors/outrun_electric.yml
# - /home/mfocko/.config/alacritty/colors/rainier.yml
# - /home/mfocko/.config/alacritty/colors/rainier_retro.yml
# - /home/mfocko/.config/alacritty/colors/rose-pine.yml
# - /home/mfocko/.config/alacritty/colors/rose-pine-dawn.yml
# - /home/mfocko/.config/alacritty/colors/rose-pine-moon.yml
# - /home/mfocko/.config/alacritty/colors/solarized_dark.ymk
# - /home/mfocko/.config/alacritty/colors/solarized_light.yml
# - /home/mfocko/.config/alacritty/colors/tokyo_night.yml
# - /home/mfocko/.config/alacritty/colors/tokyo_night_storm.yml
# - /home/mfocko/.config/alacritty/colors/tomorrow_day.yml
# - /home/mfocko/.config/alacritty/colors/tomorrow_night.yml
# - /home/mfocko/.config/alacritty/colors/tomorrow_night_bright.yml
env:
TERM: alacritty
window:
padding:
x: 4
y: 4
dimensions:
columns: 144
lines: 37
dynamic_padding: true
decorations: none
font:
normal:
# family: Berkeley Mono Variable
# family: Cascadia Mono PL
# family: Comic Code Ligatures
# family: Commit Mono
# family: CozetteVector
# family: Fira Code
# family: Fragment Mono
# family: Hack
# family: IBM Plex Mono
# family: Inconsolata
# family: Input Mono Narrow
# family: Iosevka Term
# family: Iosevka Term Slab
# family: Iosevka Comfy
# family: Iosevka Comfy Motion
# family: Iosevka Comfy Wide
# family: Iosevka Mornfall
# family: Pragmasevka
# family: JetBrains Mono
# family: JuliaMono
# family: Maple Mono NF
# family: Martian Mono
# family: Monocraft Nerd Font
# family: MonoLisa Nerd Font
# family: Pragmata Pro Mono
# family: Rec Mono Linear
# family: Roboto Mono
# family: Source Code Pro
# family: SFMono Nerd Font
# family: Twilio Sans Mono
family: Victor Mono
style: "SemiLight"
size: 14.0
cursor:
# Block, Underline, Beam
style: Beam
thickness: 0.33
blinking: On
selection:
# This string contains all characters that are used as separators for
# "semantic words" in Alacritty.
semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
# When set to `true`, selected text will be copied to the primary clipboard.
save_to_clipboard: true
mouse:
hints:
launcher:
# This depends on your OS, on Mac its `open`
program: open
modifiers: Control
key_bindings:
- key: F11
action: ToggleFullscreen
- key: N
mods: Control|Shift
action: SpawnNewInstance
- key: K
mods: Control|Shift
action: ClearHistory

View file

@ -0,0 +1,28 @@
colors:
primary:
background: "#1e1e1e"
foreground: "#d4d4d4"
cursor:
text: "#d4d4d4"
cursor: "#d4d4d4"
normal:
black: "#1e1e1e"
red: "#f44747"
green: "#608b4e"
yellow: "#dcdcaa"
blue: "#569cd6"
magenta: "#c678dd"
cyan: "#56b6c2"
white: "#d4d4d4"
bright:
black: "#545454"
red: "#f44747"
green: "#608b4e"
yellow: "#dcdcaa"
blue: "#569cd6"
magenta: "#c678dd"
cyan: "#56b6c2"
white: "#d4d4d4"

View file

@ -0,0 +1,28 @@
colors:
primary:
background: "#ffffff"
foreground: "#1e1e1e"
cursor:
text: "#d4d4d4"
cursor: "#d4d4d4"
normal:
black: "#1e1e1e"
red: "#c72e0f"
green: "#009000"
yellow: "#795e25"
blue: "#007acc"
magenta: "#af00db"
cyan: "#56b6c2"
white: "#d4d4d4"
bright:
black: "#1e1e1e"
red: "#c72e0f"
green: "#009000"
yellow: "#795e25"
blue: "#007acc"
magenta: "#af00db"
cyan: "#56b6c2"
white: "#d4d4d4"

Some files were not shown because too many files have changed in this diff Show more