feat: tilføj Ansible-playbook til Fedora KDE setup

- Opret site.yml som hovedindgang til playbooken
- Opdel tasks i separate filer: rpmfusion, repos, dnf, flatpak, system
- Pakkelister i vars/ for nem redigering uden at røre logikken
- Auto-detektér Fedora-version og Intel CPU via Ansible facts
- Tilføj README med kørselsvejledning og manuelle trin
This commit is contained in:
2026-05-22 18:13:05 +02:00
parent a147ff681e
commit 7d1de3ad8e
9 changed files with 266 additions and 0 deletions
@@ -0,0 +1,5 @@
---
- name: DNF - Installer pakker
ansible.builtin.dnf:
name: "{{ dnf_packages }}"
state: present
@@ -0,0 +1,6 @@
---
- name: Flatpak - Installer pakker
community.general.flatpak:
name: "{{ flatpak_packages }}"
method: system
state: present
+75
View File
@@ -0,0 +1,75 @@
---
# 1Password
- name: 1Password - GPG nøgle
ansible.builtin.rpm_key:
key: https://downloads.1password.com/linux/keys/1password.asc
state: present
- name: 1Password - repo
ansible.builtin.yum_repository:
name: 1password
description: 1Password Stable Channel
baseurl: https://downloads.1password.com/linux/rpm/stable/$basearch
enabled: true
gpgcheck: true
repo_gpgcheck: true
gpgkey: https://downloads.1password.com/linux/keys/1password.asc
state: present
# Sublime Text
- name: Sublime Text - GPG nøgle
ansible.builtin.rpm_key:
key: https://download.sublimetext.com/sublimehq-rpm-pub.gpg
state: present
- name: Sublime Text - repo
ansible.builtin.command:
cmd: dnf config-manager addrepo --from-repofile=https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo
args:
creates: /etc/yum.repos.d/sublime-text.repo
# LibreWolf
- name: LibreWolf - repo
ansible.builtin.command:
cmd: dnf config-manager addrepo --from-repofile=https://repo.librewolf.net/librewolf.repo
args:
creates: /etc/yum.repos.d/librewolf.repo
# Jottacloud
- name: Jottacloud - repo
ansible.builtin.yum_repository:
name: jotta-cli
description: Jottacloud CLI
baseurl: https://repo.jotta.cloud/redhat
gpgcheck: true
gpgkey: https://repo.jotta.cloud/public.gpg
state: present
# VSCodium
- name: VSCodium - repo
ansible.builtin.yum_repository:
name: gitlab.com_paulcarroty_vscodium_repo
description: gitlab.com_paulcarroty_vscodium_repo
baseurl: https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/rpms/
enabled: true
gpgcheck: true
repo_gpgcheck: true
gpgkey: https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg
metadata_expire: 1h
state: present
# Cider
- name: Cider - GPG nøgle
ansible.builtin.rpm_key:
key: https://repo.cider.sh/RPM-GPG-KEY
state: present
- name: Cider - repo
ansible.builtin.yum_repository:
name: cidercollective
description: Cider Collective Repository
baseurl: https://repo.cider.sh/rpm/RPMS
enabled: true
gpgcheck: true
gpgkey: https://repo.cider.sh/RPM-GPG-KEY
state: present
+60
View File
@@ -0,0 +1,60 @@
---
- name: RPM Fusion - Installer free og nonfree repos
ansible.builtin.dnf:
name:
- "https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-{{ ansible_distribution_major_version }}.noarch.rpm"
- "https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-{{ ansible_distribution_major_version }}.noarch.rpm"
state: present
- name: RPM Fusion - Aktiver Cisco OpenH264
ansible.builtin.command:
cmd: dnf config-manager setopt fedora-cisco-openh264.enabled=1
changed_when: false
- name: RPM Fusion - Opdater @core
ansible.builtin.dnf:
name: "@core"
state: latest
- name: RPM Fusion - Installer appstream data
ansible.builtin.dnf:
name: "rpmfusion-*-appstream-data"
state: present
- name: Multimedia - Swap ffmpeg-free til ffmpeg
ansible.builtin.command:
cmd: dnf swap -y ffmpeg-free ffmpeg --allowerasing
register: ffmpeg_swap
changed_when: "'Nothing to do' not in ffmpeg_swap.stdout"
failed_when: ffmpeg_swap.rc != 0 and 'already installed' not in ffmpeg_swap.stderr | default('')
- name: Multimedia - Opdater @multimedia
ansible.builtin.command:
cmd: dnf update -y @multimedia --setopt=install_weak_deps=False --exclude=PackageKit-gstreamer-plugin
changed_when: false
- name: Multimedia - Intel media driver (kun Intel CPU)
ansible.builtin.dnf:
name: intel-media-driver
state: present
when: ansible_processor | join(' ') | lower is search('intel')
- name: DVD - rpmfusion-free-release-tainted
ansible.builtin.dnf:
name: rpmfusion-free-release-tainted
state: present
- name: DVD - libdvdcss
ansible.builtin.dnf:
name: libdvdcss
state: present
- name: Firmware - rpmfusion-nonfree-release-tainted
ansible.builtin.dnf:
name: rpmfusion-nonfree-release-tainted
state: present
- name: Firmware - installer nonfree firmware
ansible.builtin.command:
cmd: dnf --repo=rpmfusion-nonfree-tainted install -y "*-firmware"
changed_when: false
+7
View File
@@ -0,0 +1,7 @@
---
- name: System - resolv.conf symlink (NetworkManager + systemd-resolved fix)
ansible.builtin.file:
src: /run/systemd/resolve/stub-resolv.conf
dest: /etc/resolv.conf
state: link
force: true