Target Debian unstable

This commit is contained in:
Oliver Traber 2025-08-06 15:47:40 +02:00
parent b5d6a169bb
commit 64de7ba238
Signed by: Bluemedia
GPG key ID: C0674B105057136C
3 changed files with 10 additions and 34 deletions

View file

@ -1,6 +1,6 @@
# Personal Linux Desktop Setup
This repository contains an Ansible playbook to bootstrap workstations with my custom Hyprland-based desktop environment and commonly used applications. It's similar to a dotfiles repository but with extended functionality.
This repository contains an Ansible playbook to bootstrap workstations with my custom Hyprland-based desktop environment and commonly used applications. It's basically a dotfiles repository on steroids.
## Desktop Environment Components
@ -17,7 +17,7 @@ The desktop environment is primarily composed of the following components:
- [WezTerm](https://wezfurlong.org/wezterm/index.html) (terminal emulator)
- [Emote](https://flathub.org/apps/com.tomjwatson.Emote) (emoji picker)
- Hyprhelpr (custom bash script for common tasks)
- Additional background tools (e.g., PipeWire, polkit-kde-agent)
- Additional background tools (PipeWire, polkit-kde-agent, gnome-keyring etc.)
## Customization
@ -25,28 +25,29 @@ The playbook generates configuration files based on the host-specific variables
To add a new host, include its hostname in the inventory and create a corresponding `host_vars` file. Refer to the existing configurations for examples.
Even if the host-specific configuration is missing, the playbook will bring up a functional system using sensible defaults. This makes it possible to provision new systems without needing to know details like monitor descriptions for Hyprland in advance.
## Usage
This playbook is designed to be run on Debian `testing/sid` with only the "default tools" option selected during installation.
This playbook is intended to be run on Debian `unstable`, with only the `standard system utilities` option selected in `tasksel` during installation. Usage on other versions of Debian likely won't work, as Hyprland requires relatively recent versions of its dependencies to build.
### Steps to Set Up a New System
Run the following commands to set up a fully configured system:
```bash
# Install git
sudo apt update && sudo apt install -y git
# Install git and ansible
sudo apt update && sudo apt install -y git ansible
# Clone and prepare the repository
git clone https://git.bluemedia.dev/Bluemedia/desktop-config.git
cd desktop-config
bash prerequisites.sh
# Customize the applications you want to install
nano main.yml
# Run the playbook
ansible-playbook --ask-become-pass -i inventory/ main.yml
ansible-playbook -i inventory/ --ask-become-pass main.yml
# Reboot after the playbook completes
sudo reboot
@ -59,7 +60,7 @@ To update an already installed system, use the following commands:
```bash
cd desktop-config
git pull
ansible-playbook --ask-become-pass -i inventory/ main.yml
ansible-playbook -i inventory/ --ask-become-pass main.yml
# Reboot after the playbook completes
sudo reboot

View file

@ -1,16 +1,3 @@
- name: Set apt default-release to "testing"
become: yes
copy:
src: "{{ role_path }}/files/20-tum.conf"
dest: "/etc/apt/apt.conf.d/20-tum.conf"
- name: Add unstable repository
become: yes
ansible.builtin.apt_repository:
repo: "deb http://deb.debian.org/debian unstable main contrib non-free-firmware"
state: present
update_cache: true
- name: Install build dependencies
become: yes
apt:
@ -56,7 +43,7 @@
- libxcb-composite0-dev
- libxcb-res0-dev
- xwayland
- libzip4t64
- libzip5
- libre2-dev
# xdg-desktop-portal-hyprland
- qt6-wayland

View file

@ -1,15 +1,3 @@
- name: Add Mozilla repository
become: yes
deb822_repository:
name: mozilla
types: deb
uris: https://packages.mozilla.org/apt
suites: mozilla
components: main
signed_by: https://packages.mozilla.org/apt/repo-signing-key.gpg
state: present
enabled: yes
- name: Install packages
become: yes
apt: