167 lines
No EOL
3.3 KiB
YAML
167 lines
No EOL
3.3 KiB
YAML
# ParticleOS System Definition
|
|
# apt-ostree system configuration for ParticleOS desktop
|
|
|
|
apiVersion: 1.0
|
|
name: particleos-desktop
|
|
version: 1.0.0
|
|
description: "ParticleOS Desktop - Atomic Ubuntu with apt-ostree"
|
|
|
|
# Base system configuration
|
|
base:
|
|
distribution: ubuntu
|
|
release: noble
|
|
architecture: amd64
|
|
|
|
# System packages (installed via apt-ostree)
|
|
packages:
|
|
# Core system
|
|
- ubuntu-minimal
|
|
- systemd
|
|
- systemd-sysv
|
|
- dbus
|
|
- dbus-user-session
|
|
- dbus-x11
|
|
|
|
# Desktop environment (KDE Plasma)
|
|
- kubuntu-desktop
|
|
- plasma-desktop
|
|
- plasma-workspace
|
|
- kde-plasma-desktop
|
|
- sddm
|
|
|
|
# apt-ostree and related tools
|
|
- apt-ostree
|
|
- ostree
|
|
- bootc
|
|
- flatpak
|
|
- flatpak-builder
|
|
|
|
# Development tools
|
|
- build-essential
|
|
- git
|
|
- curl
|
|
- wget
|
|
- vim
|
|
- nano
|
|
|
|
# System utilities
|
|
- htop
|
|
- fastfaetch
|
|
- tree
|
|
- rsync
|
|
- openssh-server
|
|
- network-manager
|
|
- plasma-nm
|
|
|
|
# Web browser (DEB package, no snap)
|
|
- firefox
|
|
|
|
# Multimedia
|
|
- pulseaudio
|
|
- pulseaudio-utils
|
|
- gstreamer1.0-plugins-base
|
|
- gstreamer1.0-plugins-good
|
|
- gstreamer1.0-plugins-bad
|
|
- gstreamer1.0-plugins-ugly
|
|
|
|
# Fonts
|
|
- fonts-ubuntu
|
|
- fonts-noto
|
|
- fonts-noto-cjk
|
|
|
|
|
|
|
|
# Package exclusions (conflicts or unwanted packages)
|
|
exclude:
|
|
- snapd
|
|
- ubuntu-advantage-tools
|
|
- ubuntu-advantage-desktop-daemon
|
|
- update-notifier
|
|
- update-manager
|
|
- unattended-upgrades
|
|
|
|
# Package sources (PPAs and repositories)
|
|
sources:
|
|
- name: "Mozilla PPA"
|
|
url: "ppa:mozillateam/ppa"
|
|
description: "Firefox DEB packages (no snap)"
|
|
- name: "Forgejo Repository"
|
|
url: "https://git.raines.xyz/api/packages/robojerk/debian"
|
|
description: "bootc and ostree packages"
|
|
|
|
# System configuration
|
|
config:
|
|
# Hostname
|
|
hostname: particleos
|
|
|
|
# Timezone
|
|
timezone: UTC
|
|
|
|
# Locale
|
|
locale: en_US.UTF-8
|
|
|
|
# Keyboard layout
|
|
keyboard: us
|
|
|
|
# Network configuration
|
|
network:
|
|
dhcp: true
|
|
hostname: particleos
|
|
|
|
# User configuration
|
|
users:
|
|
- name: particle
|
|
groups: [sudo, adm, dialout, cdrom, floppy, audio, dip, video, plugdev, games, users, input, netdev, gpio, i2c, spi]
|
|
shell: /bin/bash
|
|
password: "$6$rounds=656000$particleos$hashed_password_here"
|
|
|
|
# System services
|
|
services:
|
|
enabled:
|
|
- systemd-networkd
|
|
- systemd-resolved
|
|
- sddm
|
|
- NetworkManager
|
|
- ssh
|
|
disabled:
|
|
- snapd
|
|
- snapd.socket
|
|
- update-notifier
|
|
- update-manager
|
|
|
|
# OSTree configuration
|
|
ostree:
|
|
ref: particleos/desktop/1.0.0
|
|
repo: /ostree/repo
|
|
mode: archive
|
|
|
|
# Boot configuration
|
|
boot:
|
|
kernel: linux-image-generic
|
|
initramfs: true
|
|
cmdline: "quiet splash"
|
|
|
|
# Branding
|
|
branding:
|
|
name: "ParticleOS"
|
|
version: "1.0.0"
|
|
description: "Atomic Ubuntu Desktop"
|
|
logo: "/usr/share/particleos/logo.png"
|
|
wallpaper: "/usr/share/backgrounds/particleos/default.jpg"
|
|
|
|
# Live ISO configuration
|
|
live:
|
|
username: particle
|
|
password: particle
|
|
autologin: true
|
|
persistence: false
|
|
|
|
# Installation configuration
|
|
install:
|
|
target: /dev/sda
|
|
filesystem: ext4
|
|
bootloader: grub
|
|
partition_scheme: gpt
|
|
swap_size: 4G
|
|
root_size: 20G
|
|
home_size: auto |