From 2a34831f87c87bd08f3eec0228dba1c52cef1310 Mon Sep 17 00:00:00 2001 From: Elysia <1391048988@qq.com> Date: Sun, 16 Nov 2025 14:40:19 +0800 Subject: [PATCH 1/8] Delete redundant spec files --- .../SPECS/Bibata-Modern-Classic.spec | 36 ------------- .../SPECS/JetBrainsMonoNerdFont-Regular.spec | 42 ---------------- sdata/dist-fedora/SPECS/MicroTeX.spec | 50 ------------------- sdata/dist-fedora/SPECS/breeze-plus.spec | 38 -------------- sdata/dist-fedora/SPECS/otf-SpaceGrotesk.spec | 44 ---------------- sdata/dist-fedora/SPECS/ttf-gabarito.spec | 46 ----------------- .../SPECS/ttf-material-symbols-variable.spec | 42 ---------------- sdata/dist-fedora/SPECS/ttf-roboto-flex.spec | 42 ---------------- .../dist-fedora/SPECS/ttf-rubik-variable.spec | 46 ----------------- 9 files changed, 386 deletions(-) delete mode 100644 sdata/dist-fedora/SPECS/Bibata-Modern-Classic.spec delete mode 100644 sdata/dist-fedora/SPECS/JetBrainsMonoNerdFont-Regular.spec delete mode 100644 sdata/dist-fedora/SPECS/MicroTeX.spec delete mode 100644 sdata/dist-fedora/SPECS/breeze-plus.spec delete mode 100644 sdata/dist-fedora/SPECS/otf-SpaceGrotesk.spec delete mode 100644 sdata/dist-fedora/SPECS/ttf-gabarito.spec delete mode 100644 sdata/dist-fedora/SPECS/ttf-material-symbols-variable.spec delete mode 100644 sdata/dist-fedora/SPECS/ttf-roboto-flex.spec delete mode 100644 sdata/dist-fedora/SPECS/ttf-rubik-variable.spec diff --git a/sdata/dist-fedora/SPECS/Bibata-Modern-Classic.spec b/sdata/dist-fedora/SPECS/Bibata-Modern-Classic.spec deleted file mode 100644 index 1522ae851..000000000 --- a/sdata/dist-fedora/SPECS/Bibata-Modern-Classic.spec +++ /dev/null @@ -1,36 +0,0 @@ -Name: Bibata-Modern-Classic -Version: 2.0.7 -Release: %autorelease -Summary: Open source, compact, and material designed cursor set. - -License: GPL-3.0 -URL: https://github.com/ful1e5/Bibata_Cursor -Source0: %{name}.tar.xz - -BuildArch: noarch - -%description -Open source, compact, and material designed cursor set. - -%prep -wget --content-disposition -q -N -P %{_sourcedir} %{url}/releases/download/v%{version}/Bibata-Modern-Classic.tar.xz -wget -q -O %{_buildrootdir}/LICENSE %{url}/raw/refs/heads/main/LICENSE -%setup -q -n %{name} - -%build -: - -%install -install -d -m 0755 %{buildroot}%{_iconsdir}/Bibata-Modern-Classic -cp -r * %{buildroot}%{_iconsdir}/Bibata-Modern-Classic - -install -d -m 0755 %{buildroot}%{_licensedir}/%{name} -install -m 0644 %{_buildrootdir}/LICENSE %{buildroot}%{_licensedir}/%{name}/ - -%files -%{_iconsdir}/Bibata-Modern-Classic -%license %{_licensedir}/%{name}/LICENSE - -%changelog -%autochangelog - diff --git a/sdata/dist-fedora/SPECS/JetBrainsMonoNerdFont-Regular.spec b/sdata/dist-fedora/SPECS/JetBrainsMonoNerdFont-Regular.spec deleted file mode 100644 index 01f1e0e08..000000000 --- a/sdata/dist-fedora/SPECS/JetBrainsMonoNerdFont-Regular.spec +++ /dev/null @@ -1,42 +0,0 @@ -Name: JetBrainsMonoNerdFont-Regular -Version: 1.2 -Release: %autorelease -Summary: JetBrainsMonoNerdFonts (TrueType Outlines) (Regulear) - -License: MIT -URL: https://github.com/Zhaopudark/JetBrainsMonoNerdFonts -Source0: %{name} - -BuildRequires: fonts-rpm-macros -BuildArch: noarch - -%description -An auto-updated compiling version of JetBrains Mono that has been patched with Nerd Fonts. - -%prep -wget --content-disposition -q -N -P %{_sourcedir} %{url}/releases/download/v%{version}/JetBrainsMonoNerdFont-Regular-v%{version}.ttf -wget -q -P %{_sourcedir} %{url}/raw/refs/heads/main/LICENSE - -%build -: - -%install -install -d -m 0755 %{buildroot}%{_fontdir} -install -m 0644 %{_sourcedir}/JetBrainsMonoNerdFont*ttf %{buildroot}%{_fontdir} - -install -d -m 0755 %{buildroot}%{_licensedir}/%{name} -install -m 0644 %{_sourcedir}/LICENSE %{buildroot}%{_licensedir}/%{name}/ - -%post -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%postun -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%files -%{_fontdir}/JetBrainsMonoNerdFont*ttf -%license %{_licensedir}/%{name}/LICENSE - -%changelog -%autochangelog - diff --git a/sdata/dist-fedora/SPECS/MicroTeX.spec b/sdata/dist-fedora/SPECS/MicroTeX.spec deleted file mode 100644 index ec8ae436f..000000000 --- a/sdata/dist-fedora/SPECS/MicroTeX.spec +++ /dev/null @@ -1,50 +0,0 @@ -%global commit0 0e3707f6dafebb121d98b53c64364d16fefe481d -%global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) -%global bumpver 100 - -Name: MicroTeX -Version: 0.0.1%{?bumpver:^%{bumpver}.git%{shortcommit0}} -Release: %autorelease -Summary: A dynamic, cross-platform, and embeddable LaTeX rendering library - -License: MIT -URL: https://github.com/NanoMichael/MicroTeX -Source0: %{name}-%{shortcommit0}.tar.gz - -BuildRequires: gcc-c++ cmake -BuildRequires: pkgconfig(tinyxml2) -BuildRequires: gtkmm3.0-devel gtksourceviewmm3-devel cairomm-devel - -%description -MicroTeX is a library for rendering LaTeX mathematical formulas, supporting multiple backends -such as GTK+, Qt, and Skia. It provides both library components and demo applications for -testing LaTeX rendering. - -%prep -curl -fsSL --retry 3 \ - https://codeload.github.com/NanoMichael/MicroTeX/tar.gz/%{shortcommit0} \ - -o %{_sourcedir}/%{name}-%{shortcommit0}.tar.gz -%setup -q -n %{name}-%{shortcommit0} - -%build -mkdir -p build -cd build -cmake .. -make -j$(nproc) - -%install -mkdir -p %{buildroot}/opt/MicroTeX -cp build/LaTeX %{buildroot}/opt/MicroTeX/ -cp -r build/res %{buildroot}/opt/MicroTeX/ - -install -Dpm 0644 LICENSE %{buildroot}%{_licensedir}/%{name}/LICENSE -install -Dpm 0644 res/greek/LICENSE %{buildroot}%{_licensedir}/%{name}/LICENSE-greek -install -Dpm 0644 res/cyrillic/LICENSE %{buildroot}%{_licensedir}/%{name}/LICENSE-cyrillic - -%files -/opt/MicroTeX/ -%license %{_licensedir}/%{name}/ - -%changelog -%autochangelog - diff --git a/sdata/dist-fedora/SPECS/breeze-plus.spec b/sdata/dist-fedora/SPECS/breeze-plus.spec deleted file mode 100644 index d37ff8e41..000000000 --- a/sdata/dist-fedora/SPECS/breeze-plus.spec +++ /dev/null @@ -1,38 +0,0 @@ -Name: breeze-plus -Version: 6.19.0 -Release: %autorelease -Summary: Breeze theme with additional icons - -License: LGPL-2.1 -URL: https://github.com/mjkim0727/breeze-plus -Source0: %{name}-%{version}.tar.gz - -BuildArch: noarch - -%description -Breeze icon theme with additional icons for applications not covered by the -official Breeze theme. Includes icons for Wine, third-party apps, and more. - -%prep -wget --content-disposition -q -N -P %{_sourcedir} %{url}/archive/refs/tags/%{version}.tar.gz -%setup -q - -%build -: - -%install -install -d -m 0755 %{buildroot}%{_iconsdir}/breeze-plus -cp -r src/breeze-plus %{buildroot}%{_iconsdir}/ -cp -r src/breeze-plus-dark %{buildroot}%{_iconsdir}/ - -install -d -m 0755 %{buildroot}%{_licensedir}/%{name} -install -m 0644 LICENSE %{buildroot}%{_licensedir}/%{name}/ - -%files -%{_iconsdir}/breeze-plus/ -%{_iconsdir}/breeze-plus-dark/ -%license %{_licensedir}/%{name}/LICENSE - -%changelog -%autochangelog - diff --git a/sdata/dist-fedora/SPECS/otf-SpaceGrotesk.spec b/sdata/dist-fedora/SPECS/otf-SpaceGrotesk.spec deleted file mode 100644 index e42e4bc8e..000000000 --- a/sdata/dist-fedora/SPECS/otf-SpaceGrotesk.spec +++ /dev/null @@ -1,44 +0,0 @@ -Name: otf-SpaceGrotesk -Version: 2.0.0 -Release: %autorelease -Summary: Space Grotesk: a proportional variant of the original fixed-width Space Mono family - -License: OFL-1.1 -URL: https://github.com/floriankarsten/space-grotesk -Source0: %{name}-%{version} - -BuildRequires: fonts-rpm-macros -BuildArch: noarch - -%description -Space Grotesk is a proportional sans-serif typeface variant based on Colophon Foundry's fixed-width Space Mono family (2016). -Originally designed by Florian Karsten in 2018, -Space Grotesk retains the monospace's idiosyncratic details while optimizing for improved readability at non-display sizes. - -%prep -wget --content-disposition -q -N -P %{_sourcedir} %{url}/releases/download/%{version}/SpaceGrotesk-%{version}.zip -unzip %{_sourcedir}/SpaceGrotesk-%{version}.zip - -%build -: - -%install -install -d -m 0755 %{buildroot}%{_fontdir} -install -m 0644 %{_buildrootdir}/SpaceGrotesk-%{version}/otf/SpaceGrotesk*otf %{buildroot}%{_fontdir} - -install -d -m 0755 %{buildroot}%{_licensedir}/%{name} -install -m 0644 %{_buildrootdir}/SpaceGrotesk-%{version}/OFL.txt %{buildroot}%{_licensedir}/%{name}/ - -%post -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%postun -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%files -%{_fontdir}/SpaceGrotesk*otf -%license %{_licensedir}/%{name}/OFL.txt - -%changelog -%autochangelog - diff --git a/sdata/dist-fedora/SPECS/ttf-gabarito.spec b/sdata/dist-fedora/SPECS/ttf-gabarito.spec deleted file mode 100644 index a46341bf9..000000000 --- a/sdata/dist-fedora/SPECS/ttf-gabarito.spec +++ /dev/null @@ -1,46 +0,0 @@ -%global commit0 1f3fb39d6449eefa880543f109f33ede0cd4064f -%global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) -%global bumpver 100 - -Name: ttf-gabarito -Version: 1.000%{?bumpver:^%{bumpver}.git%{shortcommit0}} -Release: %autorelease -Summary: Gabarito Font - -License: OFL-1.1 -URL: https://github.com/naipefoundry/gabarito -Source0: gabarito-%{shortcommit0}.tar.gz - -BuildRequires: fonts-rpm-macros -BuildArch: noarch - -%description -Gabarito is a light-hearted geometric sans typeface with 6 weights ranging from Regular to Black originally designed for an online learning platform in Brazil. - -%prep -wget --content-disposition -q -N -P %{_sourcedir} https://codeload.github.com/naipefoundry/gabarito/tar.gz/%{shortcommit0} -%setup -q -n gabarito-%{shortcommit0} - -%build -: - -%install -install -d -m 0755 %{buildroot}%{_fontdir} -install -m 0644 fonts/ttf/Gabarito*.ttf %{buildroot}%{_fontdir} - -install -d -m 0755 %{buildroot}%{_licensedir}/%{name} -install -m 0644 OFL.txt %{buildroot}%{_licensedir}/%{name}/ - -%post -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%postun -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%files -%{_fontdir}/Gabarito*ttf -%license %{_licensedir}/%{name}/OFL.txt - -%changelog -%autochangelog - diff --git a/sdata/dist-fedora/SPECS/ttf-material-symbols-variable.spec b/sdata/dist-fedora/SPECS/ttf-material-symbols-variable.spec deleted file mode 100644 index 989540ec3..000000000 --- a/sdata/dist-fedora/SPECS/ttf-material-symbols-variable.spec +++ /dev/null @@ -1,42 +0,0 @@ -Name: ttf-material-symbols-variable -Version: 4.0.0 -Release: %autorelease -Summary: Material Design icons by Google (Material Symbols) - -License: Apache-2.0 -URL: https://github.com/google/material-design-icons -Source0: %{name}-%{version} - -BuildRequires: fonts-rpm-macros -BuildArch: noarch - -%description -Google Material Symbols Rounded - -%prep -wget --content-disposition -q -N -P %{_sourcedir} %{url}/raw/refs/heads/master/variablefont/MaterialSymbolsRounded%5BFILL,GRAD,opsz,wght%5D.ttf -wget -q -N -P %{_sourcedir} %{url}/raw/refs/heads/master/LICENSE - -%build -: - -%install -install -d -m 0755 %{buildroot}%{_fontdir}/variable-fonts -install -m 0644 %{_sourcedir}/MaterialSymbolsRounded*ttf %{buildroot}%{_fontdir}/variable-fonts/ - -install -d -m 0755 %{buildroot}%{_licensedir}/%{name} -install -m 0644 %{_sourcedir}/LICENSE %{buildroot}%{_licensedir}/%{name}/ - -%post -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%postun -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%files -%{_fontdir}/variable-fonts/MaterialSymbolsRounded*ttf -%license %{_licensedir}/%{name}/LICENSE - -%changelog -%autochangelog - diff --git a/sdata/dist-fedora/SPECS/ttf-roboto-flex.spec b/sdata/dist-fedora/SPECS/ttf-roboto-flex.spec deleted file mode 100644 index e95917bf1..000000000 --- a/sdata/dist-fedora/SPECS/ttf-roboto-flex.spec +++ /dev/null @@ -1,42 +0,0 @@ -Name: ttf-roboto-flex -Version: 3.200 -Release: %autorelease -Summary: Roboto Flex - -License: OFL-1.1 -URL: https://github.com/googlefonts/roboto-flex -Source0: %{name} - -BuildRequires: fonts-rpm-macros -BuildArch: noarch - -%description -: - -%prep -wget --content-disposition -q -N -P %{_sourcedir} %{url}/raw/refs/heads/main/fonts/RobotoFlex%5BGRAD,XOPQ,XTRA,YOPQ,YTAS,YTDE,YTFI,YTLC,YTUC,opsz,slnt,wdth,wght%5D.ttf -wget -q -O %{_sourcedir}/OFL.txt %{url}/raw/refs/heads/main/OFL.txt - -%build -: - -%install -install -d -m 0755 %{buildroot}%{_fontdir} -install -m 0644 %{_sourcedir}/RobotoFlex*ttf %{buildroot}%{_fontdir} - -install -d -m 0755 %{buildroot}%{_licensedir}/%{name} -install -m 0644 %{_sourcedir}/OFL.txt %{buildroot}%{_licensedir}/%{name}/ - -%post -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%postun -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%files -%{_fontdir}/RobotoFlex*ttf -%license %{_licensedir}/%{name}/OFL.txt - -%changelog -%autochangelog - diff --git a/sdata/dist-fedora/SPECS/ttf-rubik-variable.spec b/sdata/dist-fedora/SPECS/ttf-rubik-variable.spec deleted file mode 100644 index ec276be74..000000000 --- a/sdata/dist-fedora/SPECS/ttf-rubik-variable.spec +++ /dev/null @@ -1,46 +0,0 @@ -%global commit0 e337a5f69a9bea30e58d05bd40184d79cc099628 -%global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) -%global bumpver 100 - -Name: ttf-rubik-variable -Version: 1.0%{?bumpver:^%{bumpver}.git%{shortcommit0}} -Release: %autorelease -Summary: Rubik fonts variable - -License: OFL-1.1 -URL: https://github.com/googlefonts/rubik -Source0: rubik-%{shortcommit0}.tar.gz - -BuildRequires: fonts-rpm-macros -BuildArch: noarch - -%description -: - -%prep -wget --content-disposition -q -N -P %{_sourcedir} https://codeload.github.com/googlefonts/rubik/tar.gz/%{shortcommit0} -%setup -q -n rubik-%{shortcommit0} - -%build -: - -%install -install -d -m 0755 %{buildroot}%{_fontdir}/variable-fonts -install -m 0644 fonts/variable/Rubik*ttf %{buildroot}%{_fontdir}/variable-fonts/ - -install -d -m 0755 %{buildroot}%{_licensedir}/%{name} -install -m 0644 OFL.txt %{buildroot}%{_licensedir}/%{name}/ - -%post -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%postun -/usr/bin/fc-cache -fv >/dev/null 2>&1 || : - -%files -%{_fontdir}/variable-fonts/Rubik*ttf -%license %{_licensedir}/%{name}/OFL.txt - -%changelog -%autochangelog - 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 2/8] 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 From f33bc7663ebae9b99ef9a75279e1eab34fb161c5 Mon Sep 17 00:00:00 2001 From: Elysia <1391048988@qq.com> Date: Sun, 16 Nov 2025 19:42:21 +0800 Subject: [PATCH 3/8] Update dependencies for sync-dist-arch. --- sdata/dist-fedora/install-deps.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdata/dist-fedora/install-deps.sh b/sdata/dist-fedora/install-deps.sh index 474e6c279..df82d6b37 100644 --- a/sdata/dist-fedora/install-deps.sh +++ b/sdata/dist-fedora/install-deps.sh @@ -78,7 +78,7 @@ quickshell_deps=( # 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-qttranslations qt6-qtvirtualkeyboard qt6-qtwayland kdialog kf6-syntax-highlighting kf6-kirigami ) quickshell_build_deps=( breakpad-static breakpad-devel gcc-c++ ninja-build mesa-libgbm-devel cli11-devel glib2-devel From 8574dbcb02d85d58b63e3e1bd16027b008ebd975 Mon Sep 17 00:00:00 2001 From: Elysia <1391048988@qq.com> Date: Sun, 16 Nov 2025 19:45:59 +0800 Subject: [PATCH 4/8] This may improve compatibility --- sdata/subcmd-install/2.setups.sh | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/sdata/subcmd-install/2.setups.sh b/sdata/subcmd-install/2.setups.sh index 2e585832c..adb7c08a5 100644 --- a/sdata/subcmd-install/2.setups.sh +++ b/sdata/subcmd-install/2.setups.sh @@ -2,19 +2,22 @@ # It's not for directly running. function prepare_systemd_user_service(){ - if [[ ! -d "${XDG_CONFIG_HOME}/systemd/user" ]]; then - x mkdir -p "${XDG_CONFIG_HOME}/systemd/user" - fi - if [[ ! -e "${XDG_CONFIG_HOME}/systemd/user/ydotool.service" ]]; then - x ln -s /usr/lib/systemd/system/ydotool.service "${XDG_CONFIG_HOME}/systemd/user/ydotool.service" + if [[ ! -e "/usr/lib/systemd/user/ydotool.service" ]]; then + x ln -s /usr/lib/systemd/{system,user}/ydotool.service fi } function setup_user_group(){ - if [[ -z $(getent group i2c) ]]; then + if [[ -z $(getent group i2c) ]] && [[ "$OS_GROUP_ID" != "fedora" ]]; then x sudo groupadd i2c fi - x sudo usermod -aG video,i2c,input "$(whoami)" + + if [[ "$OS_GROUP_ID" == "fedora" ]]; then + # TODO: I'm not sure what the video group is for. I didn't join it, and it doesn't seem to be affecting anything. I may need to remove it later + x sudo usermod -aG video,input "$(whoami)" + else + x sudo usermod -aG video,i2c,input "$(whoami)" + fi } ##################################################################################### # These python packages are installed using uv into the venv (virtual environment). Once the folder of the venv gets deleted, they are all gone cleanly. So it's considered as setups, not dependencies. From 9adf310738b4456536cbc4e71ec4853ace332c72 Mon Sep 17 00:00:00 2001 From: ririko6z <165703299+ririko6z@users.noreply.github.com> Date: Sun, 16 Nov 2025 21:16:53 +0800 Subject: [PATCH 5/8] Update 2.setups.sh: Added some comments --- sdata/subcmd-install/2.setups.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sdata/subcmd-install/2.setups.sh b/sdata/subcmd-install/2.setups.sh index adb7c08a5..11dc189f1 100644 --- a/sdata/subcmd-install/2.setups.sh +++ b/sdata/subcmd-install/2.setups.sh @@ -3,12 +3,13 @@ function prepare_systemd_user_service(){ if [[ ! -e "/usr/lib/systemd/user/ydotool.service" ]]; then - x ln -s /usr/lib/systemd/{system,user}/ydotool.service + x sudo ln -s /usr/lib/systemd/{system,user}/ydotool.service fi } function setup_user_group(){ if [[ -z $(getent group i2c) ]] && [[ "$OS_GROUP_ID" != "fedora" ]]; then + # On Fedora this is not needed. Tested with desktop computer with NVIDIA video card. x sudo groupadd i2c fi @@ -30,6 +31,7 @@ v setup_user_group if [[ ! -z $(systemctl --version) ]]; then # TODO: Why fedora does not add i2c-dev? # TODO: Why fedora add uinput and udev rules? + # Regarding uinput and udev rules: the former is required for the virtual keyboard to function, while the latter enables input group users to utilize it. if [[ "$OS_GROUP_ID" == "fedora" ]]; then v bash -c "echo uinput | sudo tee /etc/modules-load.d/uinput.conf" v bash -c 'echo SUBSYSTEM==\"misc\", KERNEL==\"uinput\", MODE=\"0660\", GROUP=\"input\" | sudo tee /etc/udev/rules.d/99-uinput.rules' From 2ce060484a5bab95bcfb4327e96b202ec8c647ce Mon Sep 17 00:00:00 2001 From: Elysia <1391048988@qq.com> Date: Sun, 16 Nov 2025 21:24:02 +0800 Subject: [PATCH 6/8] fix a bug --- sdata/dist-fedora/install-deps.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdata/dist-fedora/install-deps.sh b/sdata/dist-fedora/install-deps.sh index df82d6b37..624fba6ca 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 @@ -44,7 +44,7 @@ themes_deps=( 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 ) -sudo dnf install ${themes_deps[@]} -y +v sudo dnf install ${themes_deps[@]} -y # Hyprland hyprland_deps=( From 11dd8c9efba66df6c650b70c982db7ab75eef8a7 Mon Sep 17 00:00:00 2001 From: "Celestial.y" Date: Sun, 16 Nov 2025 21:46:48 +0800 Subject: [PATCH 7/8] Apply suggestion from @clsty --- sdata/subcmd-install/2.setups.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/sdata/subcmd-install/2.setups.sh b/sdata/subcmd-install/2.setups.sh index 11dc189f1..27033cbd2 100644 --- a/sdata/subcmd-install/2.setups.sh +++ b/sdata/subcmd-install/2.setups.sh @@ -14,7 +14,6 @@ function setup_user_group(){ fi if [[ "$OS_GROUP_ID" == "fedora" ]]; then - # TODO: I'm not sure what the video group is for. I didn't join it, and it doesn't seem to be affecting anything. I may need to remove it later x sudo usermod -aG video,input "$(whoami)" else x sudo usermod -aG video,i2c,input "$(whoami)" From d2692cc95e8933b638542f80e546924f53f72d0d Mon Sep 17 00:00:00 2001 From: "Celestial.y" Date: Sun, 16 Nov 2025 21:48:29 +0800 Subject: [PATCH 8/8] Apply suggestion from @clsty --- sdata/subcmd-install/2.setups.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/sdata/subcmd-install/2.setups.sh b/sdata/subcmd-install/2.setups.sh index 27033cbd2..c321bd752 100644 --- a/sdata/subcmd-install/2.setups.sh +++ b/sdata/subcmd-install/2.setups.sh @@ -28,9 +28,7 @@ showfun setup_user_group v setup_user_group if [[ ! -z $(systemctl --version) ]]; then - # TODO: Why fedora does not add i2c-dev? - # TODO: Why fedora add uinput and udev rules? - # Regarding uinput and udev rules: the former is required for the virtual keyboard to function, while the latter enables input group users to utilize it. + # For Fedora, uinput is required for the virtual keyboard to function, and udev rules enable input group users to utilize it. if [[ "$OS_GROUP_ID" == "fedora" ]]; then v bash -c "echo uinput | sudo tee /etc/modules-load.d/uinput.conf" v bash -c 'echo SUBSYSTEM==\"misc\", KERNEL==\"uinput\", MODE=\"0660\", GROUP=\"input\" | sudo tee /etc/udev/rules.d/99-uinput.rules'