Initial commit

This commit is contained in:
humocs-man
2026-02-17 17:27:26 +01:00
committed by GitHub
commit 302bbf2239
44 changed files with 4200 additions and 0 deletions
+92
View File
@@ -0,0 +1,92 @@
#!/usr/bin/bash
set -eoux pipefail
###############################################################################
# Example: Swap GNOME Desktop with COSMIC Desktop
###############################################################################
# This example demonstrates replacing the GNOME desktop environment with
# System76's COSMIC desktop from their COPR repository.
#
# COSMIC is a new desktop environment built in Rust by System76.
# https://github.com/pop-os/cosmic-epoch
#
# To use this script:
# 1. Rename to remove .example extension: mv 30-cosmic-desktop.sh.example 30-cosmic-desktop.sh
# 2. Build - scripts run in numerical order automatically
#
# WARNING: This removes GNOME and replaces it with COSMIC. Only use this if
# you want COSMIC as your desktop environment instead of GNOME.
###############################################################################
# Source helper functions
# shellcheck source=/dev/null
source /ctx/build/copr-helpers.sh
echo "::group:: Remove GNOME Desktop"
# Remove GNOME Shell and related packages
dnf5 remove -y \
gnome-shell \
gnome-shell-extension* \
gnome-terminal \
gnome-software \
gnome-control-center \
nautilus \
gdm
echo "GNOME desktop removed"
echo "::endgroup::"
echo "::group:: Install COSMIC Desktop"
# Install COSMIC desktop from System76's COPR
# Using isolated pattern to prevent COPR from persisting
copr_install_isolated "ryanabx/cosmic-epoch" \
cosmic-session \
cosmic-greeter \
cosmic-comp \
cosmic-panel \
cosmic-launcher \
cosmic-applets \
cosmic-settings \
cosmic-files \
cosmic-edit \
cosmic-term \
cosmic-workspaces
echo "COSMIC desktop installed successfully"
echo "::endgroup::"
echo "::group:: Configure Display Manager"
# Enable cosmic-greeter (COSMIC's display manager)
systemctl enable cosmic-greeter
# Set COSMIC as default session
mkdir -p /etc/X11/sessions
cat > /etc/X11/sessions/cosmic.desktop << 'COSMICDESKTOP'
[Desktop Entry]
Name=COSMIC
Comment=COSMIC Desktop Environment
Exec=cosmic-session
Type=Application
DesktopNames=COSMIC
COSMICDESKTOP
echo "Display manager configured"
echo "::endgroup::"
echo "::group:: Install Additional Utilities"
# Install additional utilities that work well with COSMIC
dnf5 install -y \
kitty \
flatpak \
xdg-desktop-portal-cosmic
echo "Additional utilities installed"
echo "::endgroup::"
echo "COSMIC desktop installation complete!"
echo "After booting, select 'COSMIC' session at the login screen"