From 1271f147ede7026d8d980ac967d934be86c8e972 Mon Sep 17 00:00:00 2001 From: Elysia <1391048988@qq.com> Date: Sun, 16 Nov 2025 19:40:41 +0800 Subject: [PATCH] Use copr repositories to replace local builds as much as possible. --- .../SPECS/hyprland-qt-support.spec | 1 - sdata/dist-fedora/SPECS/quickshell-git.spec | 6 +- sdata/dist-fedora/install-deps.sh | 60 ++++++++++--------- 3 files changed, 34 insertions(+), 33 deletions(-) diff --git a/sdata/dist-fedora/SPECS/hyprland-qt-support.spec b/sdata/dist-fedora/SPECS/hyprland-qt-support.spec index c4f8bf057..4cae243ae 100644 --- a/sdata/dist-fedora/SPECS/hyprland-qt-support.spec +++ b/sdata/dist-fedora/SPECS/hyprland-qt-support.spec @@ -25,7 +25,6 @@ BuildRequires: pkgconfig(hyprlang) %{summary}. %prep -wget --content-disposition -q -N -P %{_sourcedir} %{url}/archive/v%{version}/%{name}-%{version}.tar.gz %autosetup -p1 %build diff --git a/sdata/dist-fedora/SPECS/quickshell-git.spec b/sdata/dist-fedora/SPECS/quickshell-git.spec index a0b23bfd8..e90bdebe2 100644 --- a/sdata/dist-fedora/SPECS/quickshell-git.spec +++ b/sdata/dist-fedora/SPECS/quickshell-git.spec @@ -3,18 +3,19 @@ %bcond_with asan %global commit db1777c20b936a86528c1095cbcb1ebd92801402 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) %global commits 699 %global snapdate 20251030 %global tag 0.2.1 Name: quickshell-git -Version: %{tag}^%{commits}.git%(c=%{commit}; echo ${c:0:7}) +Version: %{tag}^%{commits}.git%{shortcommit} Release: 0%{?dist} Summary: Flexible QtQuick based desktop shell toolkit License: LGPL-3.0-only AND GPL-3.0-only URL: https://github.com/quickshell-mirror/quickshell -Source0: %{url}/archive/%{commit}/quickshell-%{commit}.tar.gz +Source0: %{url}/archive/%{commit}/quickshell-%{shortcommit}.tar.gz Conflicts: quickshell <= %{tag} @@ -53,7 +54,6 @@ Flexible toolkit for making desktop shells with QtQuick, targeting Wayland and X11. %prep -wget --content-disposition -q -N -P %{_sourcedir} %{url}/archive/%{commit}/quickshell-%{commit}.tar.gz %autosetup -n quickshell-%{commit} -p1 %build diff --git a/sdata/dist-fedora/install-deps.sh b/sdata/dist-fedora/install-deps.sh index 6374d5e7e..474e6c279 100644 --- a/sdata/dist-fedora/install-deps.sh +++ b/sdata/dist-fedora/install-deps.sh @@ -8,8 +8,8 @@ fi # Update System case $SKIP_SYSUPDATE in - true) sleep 0;; - *) v sudo dnf upgrade --refresh -y;; +true) sleep 0 ;; +*) v sudo dnf upgrade --refresh -y ;; esac # Remove version lock @@ -19,9 +19,8 @@ v sudo dnf versionlock delete quickshell-git 2>/dev/null v sudo dnf install @development-tools fedora-packager rpmdevtools fonts-rpm-macros qt6-rpm-macros -y # COPR repositories +v sudo dnf copr enable ririko66z/dots-hyprland -y v sudo dnf copr enable solopasha/hyprland -y -v sudo dnf copr enable errornointernet/quickshell -y -v sudo dnf copr enable errornointernet/packages -y v sudo dnf copr enable deltacopy/darkly -y v sudo dnf copr enable alternateved/eza -y v sudo dnf copr enable atim/starship -y @@ -35,15 +34,19 @@ v sudo dnf install geoclue2 brightnessctl ddcutil -y # Basic v sudo dnf install bc coreutils cliphist cmake curl wget2 ripgrep jq xdg-utils rsync yq -y +# Cursor themes +v sudo dnf install bibata-cursor-theme -y + # Fonts & Themes themes_deps=( - adw-gtk3-theme breeze-cursor-theme grub2-breeze-theme breeze-icon-theme{,-fedora} - kf6-breeze-icons sddm-breeze darkly eza fish fontconfig kitty matugen starship - jetbrains-mono-nl-fonts material-icons-fonts twitter-twemoji-fonts + adw-gtk3-theme breeze-cursor-theme grub2-breeze-theme breeze-icon-theme{,-fedora} kf6-breeze-icons + sddm-breeze breeze-plus-icon-theme darkly eza fish fontconfig kitty matugen florian-karsten-space-grotesk-fonts + starship gabarito-fonts jetbrains-mono-nerd-fonts google-material-symbols-vf-rounded-fonts material-icons-fonts + readex-pro-fonts-all google-roboto-flex-fonts google-rubik-vf-fonts twitter-twemoji-fonts ) -v sudo dnf install ${themes_deps[@]} -y +sudo dnf install ${themes_deps[@]} -y -# Hyprland +# Hyprland hyprland_deps=( hyprland hyprsunset @@ -56,8 +59,8 @@ v sudo dnf install hyprlang-devel -y # KDE v sudo dnf install bluedevil gnome-keyring NetworkManager plasma-nm polkit-kde dolphin plasma-systemsettings -y -# Microtex-git -v sudo dnf install --setopt="install_weak_deps=False" tinyxml2-devel gtkmm3.0-devel gtksourceviewmm3-devel cairomm-devel -y +# MicroTeX-git +v sudo dnf install microtex -y # Portal v sudo dnf install xdg-desktop-portal{,-gtk,-kde,-hyprland} -y @@ -69,14 +72,13 @@ v sudo dnf install python3{,.12}{,-devel} -y # Quickshell-git quickshell_deps=( - qt6-qtdeclarative qt6-qtbase jemalloc qt6-qtsvg pipewire-libs - libxcb wayland-devel qt6-qtwayland qt5-qtwayland libdrm breakpad + qt6-qtdeclarative qt6-qtbase jemalloc qt6-qtsvg pipewire-libs libxcb wayland-devel qt6-qtwayland + qt5-qtwayland libdrm breakpad ) # NOTE: Below are custom dependencies of illogical-impulse quickshell_custom_deps=( - qt6-qt5compat qt6-qtimageformats qt6-qtpositioning - qt6-qtquicktimeline qt6-qtsensors qt6-qttools qt6-qttranslations - qt6-qtvirtualkeyboard qt6-qtwayland kdialog kf6-syntax-highlighting + qt6-qt5compat qt6-qtimageformats qt6-qtpositioning qt6-qtquicktimeline qt6-qtsensors qt6-qttools + qt6-qttranslations qt6-qtvirtualkeyboard qt6-qtwayland kdialog kf6-syntax-highlighting ) quickshell_build_deps=( breakpad-static breakpad-devel gcc-c++ ninja-build mesa-libgbm-devel cli11-devel glib2-devel @@ -102,24 +104,24 @@ v sudo dnf install --setopt="install_weak_deps=False" mpvpaper plasma-systemmoni # Start building the missing RPM package locally. install_RPMS() { - rpmbuildroot=${REPO_ROOT}/cache/rpmbuild - x mkdir -p $rpmbuildroot/{BUILD,RPMS,SOURCES} - x cp -r ${REPO_ROOT}/sdata/dist-fedora/SPECS $rpmbuildroot/ - x cd $rpmbuildroot/SPECS - mapfile -t -d '' local_specs < <(find "$rpmbuildroot/SPECS" -maxdepth 1 -type f -name "*.spec" -print0) - for spec_file in ${local_specs[@]}; do - x rpmbuild -bb --define "_topdir $rpmbuildroot" $spec_file - done - mapfile -t -d '' local_rpms < <(find "$rpmbuildroot/RPMS" -maxdepth 2 -type f -name '*.rpm' -not -name '*debug*' -print0) - echo -e "${STY_BLUE}Next command:${STY_RST} sudo dnf install ${local_rpms[@]} -y" - x sudo dnf install "${local_rpms[@]}" -y - x cd ${REPO_ROOT} + rpmbuildroot=${REPO_ROOT}/cache/rpmbuild + x mkdir -p $rpmbuildroot/{BUILD,RPMS,SOURCES} + x cp -r ${REPO_ROOT}/sdata/dist-fedora/SPECS $rpmbuildroot/ + x cd $rpmbuildroot/SPECS + mapfile -t -d '' local_specs < <(find "$rpmbuildroot/SPECS" -maxdepth 1 -type f -name "*.spec" -print0) + for spec_file in ${local_specs[@]}; do + x spectool -g -C "$rpmbuildroot/SOURCES" $spec_file + x rpmbuild -bb --define "_topdir $rpmbuildroot" $spec_file + done + mapfile -t -d '' local_rpms < <(find "$rpmbuildroot/RPMS" -maxdepth 2 -type f -name '*.rpm' -not -name '*debug*' -print0) + echo -e "${STY_BLUE}Next command:${STY_RST} sudo dnf install ${local_rpms[@]} -y" + x sudo dnf install "${local_rpms[@]}" -y + x cd ${REPO_ROOT} } showfun install_RPMS v install_RPMS - # hyprland-qtutils depends on hyprland-qt-support v sudo dnf install hyprland-qtutils -y