Files
fluffy-pancake/build/10-build.sh
T
2026-02-28 17:35:52 +01:00

87 lines
1.8 KiB
Bash
Executable File

#!/usr/bin/bash
set -eoux pipefail
###############################################################################
# Main Build Script
###############################################################################
# Source helper functions
# shellcheck source=/dev/null
source /ctx/build/copr-helpers.sh
# Enable nullglob for all glob operations to prevent failures on empty matches
shopt -s nullglob
echo "::group:: Copy Bluefin Config from Common"
mkdir -p /usr/share/ublue-os/just/
cp -r /ctx/oci/common/bluefin/usr/share/ublue-os/just/* /usr/share/ublue-os/just/
echo "::endgroup::"
echo "::group:: Copy Custom Files"
mkdir -p /usr/share/ublue-os/homebrew/
cp /ctx/custom/brew/*.Brewfile /usr/share/ublue-os/homebrew/
find /ctx/custom/ujust -iname '*.just' -exec printf "\n\n" \; -exec cat {} \; \
>> /usr/share/ublue-os/just/60-custom.just
mkdir -p /etc/flatpak/preinstall.d/
cp /ctx/custom/flatpaks/*.preinstall /etc/flatpak/preinstall.d/
echo "::endgroup::"
echo "::group:: Install Packages"
# Base utilities
dnf5 install -y \
fastfetch \
btop
# Hyprland über COPR (isoliert)
copr_install_isolated "ashbuk/Hyprland-Fedora" \
hyprland \
xdg-desktop-portal-hyprland
# Quickshell aus COPR (isoliert)
copr_install_isolated " errornointernet/quickshell " \
quickshell
# Hyprland-Bausteine (isoliert)
copr_install_isolated "nett00n/hyprland" \
hyprpaper \
hypridle \
hyprlock \
hyprpolkitagent
# Desktop-Basis aus Fedora
dnf5 install -y \
foot \
fuzzel \
wlogout \
xdg-desktop-portal-gtk \
network-manager-applet
# Laptop-spezifische Komponenten
dnf5 install -y \
power-profiles-daemon \
upower \
bluez \
bluez-tools \
blueman
echo "::endgroup::"
echo "::group:: System Configuration"
systemctl enable podman.socket
systemctl enable bluetooth.service
echo "::endgroup::"
shopt -u nullglob
echo "Custom build complete!"