Use copr repositories to replace local builds as much as possible.

This commit is contained in:
Elysia
2025-11-16 19:40:41 +08:00
parent 2a34831f87
commit 1271f147ed
3 changed files with 34 additions and 33 deletions
@@ -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
+3 -3
View File
@@ -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
+31 -29
View File
@@ -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