From cf52b63ed57527a6364750ca134ce693df08bc6a Mon Sep 17 00:00:00 2001 From: clsty Date: Thu, 6 Feb 2025 21:22:31 +0800 Subject: [PATCH 1/5] Switch to stable hyprland related packages (#1080) --- .../illogical-impulse-hyprland/PKGBUILD | 18 ++++++++++++++++++ .../illogical-impulse-portal/PKGBUILD | 2 +- .../illogical-impulse-widgets/PKGBUILD | 8 ++++---- install.sh | 17 +++-------------- scriptdata/options | 4 +--- 5 files changed, 27 insertions(+), 22 deletions(-) create mode 100644 arch-packages/illogical-impulse-hyprland/PKGBUILD diff --git a/arch-packages/illogical-impulse-hyprland/PKGBUILD b/arch-packages/illogical-impulse-hyprland/PKGBUILD new file mode 100644 index 00000000..ea7526eb --- /dev/null +++ b/arch-packages/illogical-impulse-hyprland/PKGBUILD @@ -0,0 +1,18 @@ +pkgname=illogical-impulse-hyprland +pkgver=1.0 +pkgrel=1 +pkgdesc='Illogical Impulse Hyprland relatated packages' +arch=(any) +license=(None) +depends=( + hyprutils + hyprlang + hypridle + hyprland-qt-support + hyprland-qtutils + hyprlock + xdg-desktop-portal-hyprland + hyprcursor + hyprwayland-scanner + hyprland +) diff --git a/arch-packages/illogical-impulse-portal/PKGBUILD b/arch-packages/illogical-impulse-portal/PKGBUILD index 69c94c96..5a6a3917 100644 --- a/arch-packages/illogical-impulse-portal/PKGBUILD +++ b/arch-packages/illogical-impulse-portal/PKGBUILD @@ -7,6 +7,6 @@ license=(None) depends=( xdg-desktop-portal xdg-desktop-portal-gtk - xdg-desktop-portal-hyprland-git + xdg-desktop-portal-hyprland ) diff --git a/arch-packages/illogical-impulse-widgets/PKGBUILD b/arch-packages/illogical-impulse-widgets/PKGBUILD index 3265e74d..4797920c 100644 --- a/arch-packages/illogical-impulse-widgets/PKGBUILD +++ b/arch-packages/illogical-impulse-widgets/PKGBUILD @@ -8,12 +8,12 @@ depends=( dart-sass python-pywayland python-psutil - hypridle-git - hyprutils-git - hyprlock-git + hypridle + hyprutils + hyprlock wlogout wl-clipboard - hyprpicker-git + hyprpicker anyrun-git ) diff --git a/install.sh b/install.sh index e4537a24..b744afa8 100755 --- a/install.sh +++ b/install.sh @@ -116,13 +116,15 @@ install-local-pkgbuild() { } # Install core dependencies from the meta-packages +try sudo pacman -R illogical-impulse-{microtex,pymyc-aur} +try sudo pacman -Rdd {hyprutils,hyprlang,hypridle,hyprland-qt-support,hyprland-qtutils,hyprlock,xdg-desktop-portal-hyprland,hyprcursor,hyprwayland-scanner,hyprland}-git metapkgs=(./arch-packages/illogical-impulse-{audio,python,backlight,basic,fonts-themes,gnome,gtk,portal,screencapture,widgets}) metapkgs+=(./arch-packages/illogical-impulse-ags) +metapkgs+=(./arch-packages/illogical-impulse-hyprland) metapkgs+=(./arch-packages/illogical-impulse-microtex-git) metapkgs+=(./arch-packages/illogical-impulse-oneui4-icons-git) [[ -f /usr/share/icons/Bibata-Modern-Classic/index.theme ]] || \ metapkgs+=(./arch-packages/illogical-impulse-bibata-modern-classic-bin) -try sudo pacman -R illogical-impulse-{microtex,pymyc-aur} for i in "${metapkgs[@]}"; do metainstallflags="--needed" @@ -134,19 +136,6 @@ done showfun install-python-packages v install-python-packages -# Why need cleanbuild? see https://github.com/end-4/dots-hyprland/issues/389#issuecomment-2040671585 -# Why install deps by running a seperate command? see pinned comment of https://aur.archlinux.org/packages/hyprland-git -case $SKIP_HYPR_AUR in - true) sleep 0;; - *) - hyprland_installflags="-S" - $ask || hyprland_installflags="$hyprland_installflags --noconfirm" - v yay $hyprland_installflags --asdeps hyprutils-git hyprlang-git hyprcursor-git hyprwayland-scanner-git - v yay $hyprland_installflags --answerclean=a hyprland-git - ;; -esac - - ## Optional dependencies if pacman -Qs ^plasma-browser-integration$ ;then SKIP_PLASMAINTG=true;fi case $SKIP_PLASMAINTG in diff --git a/scriptdata/options b/scriptdata/options index d90a4e93..2194ed14 100644 --- a/scriptdata/options +++ b/scriptdata/options @@ -14,7 +14,6 @@ If no option is specified, run default install process. -c, --clean Clean the build cache first -s, --skip-sysupdate Skip \"sudo pacman -Syu\" --skip-hyprland Skip installing the config for Hyprland - --skip-hypr-aur Skip installing hyprland-git --skip-fish Skip installing the config for Fish --skip-plasmaintg Skip installing plasma-browser-integration --skip-miscconf Skip copying the dirs and files to \".configs\" except for @@ -32,7 +31,7 @@ cleancache(){ # `man getopt` to see more para=$(getopt \ -o hfk:cs \ - -l help,force,fontset:,deplistfile:,clean,skip-sysupdate,skip-fish,skip-hyprland,skip-hypr-aur,skip-plasmaintg,skip-miscconf \ + -l help,force,fontset:,deplistfile:,clean,skip-sysupdate,skip-fish,skip-hyprland,skip-plasmaintg,skip-miscconf \ -n "$0" -- "$@") [ $? != 0 ] && echo "$0: Error when getopt, please recheck parameters." && exit 1 ##################################################################################### @@ -60,7 +59,6 @@ while true ; do -f|--force) ask=false;shift;; -s|--skip-sysupdate) SKIP_SYSUPDATE=true;shift;; --skip-hyprland) SKIP_HYPRLAND=true;shift;; - --skip-hypr-aur) SKIP_HYPR_AUR=true;shift;; --skip-fish) SKIP_FISH=true;shift;; --skip-miscconf) SKIP_MISCCONF=true;shift;; --skip-plasmaintg) SKIP_PLASMAINTG=true;shift;; From 106985cb849446941395679d696e2ed2a9864fb6 Mon Sep 17 00:00:00 2001 From: clsty Date: Thu, 6 Feb 2025 21:26:56 +0800 Subject: [PATCH 2/5] Fix PKGBUILD version --- arch-packages/illogical-impulse-portal/PKGBUILD | 2 +- arch-packages/illogical-impulse-widgets/PKGBUILD | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch-packages/illogical-impulse-portal/PKGBUILD b/arch-packages/illogical-impulse-portal/PKGBUILD index 5a6a3917..59bec311 100644 --- a/arch-packages/illogical-impulse-portal/PKGBUILD +++ b/arch-packages/illogical-impulse-portal/PKGBUILD @@ -1,6 +1,6 @@ pkgname=illogical-impulse-portal pkgver=1.0 -pkgrel=1 +pkgrel=2 pkgdesc='Illogical Impulse XDG Desktop Portals' arch=(any) license=(None) diff --git a/arch-packages/illogical-impulse-widgets/PKGBUILD b/arch-packages/illogical-impulse-widgets/PKGBUILD index 4797920c..1a85a4cf 100644 --- a/arch-packages/illogical-impulse-widgets/PKGBUILD +++ b/arch-packages/illogical-impulse-widgets/PKGBUILD @@ -1,6 +1,6 @@ pkgname=illogical-impulse-widgets pkgver=1.0 -pkgrel=1 +pkgrel=2 pkgdesc='Illogical Impulse Widget Dependencies' arch=(any) license=(None) From 2f727e2faf0a2241db501d76a5f64eded7404323 Mon Sep 17 00:00:00 2001 From: clsty Date: Thu, 6 Feb 2025 21:39:42 +0800 Subject: [PATCH 3/5] Minor fix for install script --- arch-packages/illogical-impulse-widgets/PKGBUILD | 1 - install.sh | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/arch-packages/illogical-impulse-widgets/PKGBUILD b/arch-packages/illogical-impulse-widgets/PKGBUILD index 1a85a4cf..20c361d3 100644 --- a/arch-packages/illogical-impulse-widgets/PKGBUILD +++ b/arch-packages/illogical-impulse-widgets/PKGBUILD @@ -16,4 +16,3 @@ depends=( hyprpicker anyrun-git ) - diff --git a/install.sh b/install.sh index b744afa8..b4778024 100755 --- a/install.sh +++ b/install.sh @@ -116,8 +116,8 @@ install-local-pkgbuild() { } # Install core dependencies from the meta-packages -try sudo pacman -R illogical-impulse-{microtex,pymyc-aur} -try sudo pacman -Rdd {hyprutils,hyprlang,hypridle,hyprland-qt-support,hyprland-qtutils,hyprlock,xdg-desktop-portal-hyprland,hyprcursor,hyprwayland-scanner,hyprland}-git +printf "\e[36m[$0]: Removing deprecated dependencies:\e[0m\n" +v for i in illogical-impulse-{microtex,pymyc-aur} {hyprutils,hyprlang,hypridle,hyprland-qt-support,hyprland-qtutils,hyprlock,xdg-desktop-portal-hyprland,hyprcursor,hyprwayland-scanner,hyprland}-git;do try sudo pacman --noconfirm -Rdd $i;done metapkgs=(./arch-packages/illogical-impulse-{audio,python,backlight,basic,fonts-themes,gnome,gtk,portal,screencapture,widgets}) metapkgs+=(./arch-packages/illogical-impulse-ags) metapkgs+=(./arch-packages/illogical-impulse-hyprland) From 05b1e6aebe528101160a6844d7eeab8859ca095e Mon Sep 17 00:00:00 2001 From: clsty Date: Thu, 6 Feb 2025 21:48:30 +0800 Subject: [PATCH 4/5] Add function handle-deprecated-dependencies --- install.sh | 22 ++-------------------- scriptdata/installers | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/install.sh b/install.sh index b4778024..9ec94769 100755 --- a/install.sh +++ b/install.sh @@ -81,24 +81,8 @@ if (( ${#pkglist[@]} != 0 )); then fi fi -# Convert old dependencies to non explicit dependencies so that they can be orphaned if not in meta packages -set-explicit-to-implicit() { - remove_bashcomments_emptylines ./scriptdata/previous_dependencies.conf ./cache/old_deps_stripped.conf - readarray -t old_deps_list < ./cache/old_deps_stripped.conf - pacman -Qeq > ./cache/pacman_explicit_packages - readarray -t explicitly_installed < ./cache/pacman_explicit_packages - - echo "Attempting to set previously explicitly installed deps as implicit..." - for i in "${explicitly_installed[@]}"; do for j in "${old_deps_list[@]}"; do - [ "$i" = "$j" ] && yay -D --asdeps "$i" - done; done - - return 0 -} - -$ask && echo "Attempt to set previously explicitly installed deps as implicit? " -$ask && showfun set-explicit-to-implicit -v set-explicit-to-implicit +showfun handle-deprecated-dependencies +v handle-deprecated-dependencies # https://github.com/end-4/dots-hyprland/issues/581 # yay -Bi is kinda hit or miss, instead cd into the relevant directory and manually source and install deps @@ -116,8 +100,6 @@ install-local-pkgbuild() { } # Install core dependencies from the meta-packages -printf "\e[36m[$0]: Removing deprecated dependencies:\e[0m\n" -v for i in illogical-impulse-{microtex,pymyc-aur} {hyprutils,hyprlang,hypridle,hyprland-qt-support,hyprland-qtutils,hyprlock,xdg-desktop-portal-hyprland,hyprcursor,hyprwayland-scanner,hyprland}-git;do try sudo pacman --noconfirm -Rdd $i;done metapkgs=(./arch-packages/illogical-impulse-{audio,python,backlight,basic,fonts-themes,gnome,gtk,portal,screencapture,widgets}) metapkgs+=(./arch-packages/illogical-impulse-ags) metapkgs+=(./arch-packages/illogical-impulse-hyprland) diff --git a/scriptdata/installers b/scriptdata/installers index 31181225..0fbe491e 100644 --- a/scriptdata/installers +++ b/scriptdata/installers @@ -135,3 +135,20 @@ install-python-packages (){ x cd - x deactivate # We don't need the virtual environment anymore } + +handle-deprecated-dependencies (){ + printf "\e[36m[$0]: Removing deprecated dependencies:\e[0m\n" + for i in illogical-impulse-{microtex,pymyc-aur} {hyprutils,hyprlang,hypridle,hyprland-qt-support,hyprland-qtutils,hyprlock,xdg-desktop-portal-hyprland,hyprcursor,hyprwayland-scanner,hyprland}-git;do try sudo pacman --noconfirm -Rdd $i;done +# Convert old dependencies to non explicit dependencies so that they can be orphaned if not in meta packages + remove_bashcomments_emptylines ./scriptdata/previous_dependencies.conf ./cache/old_deps_stripped.conf + readarray -t old_deps_list < ./cache/old_deps_stripped.conf + pacman -Qeq > ./cache/pacman_explicit_packages + readarray -t explicitly_installed < ./cache/pacman_explicit_packages + + echo "Attempting to set previously explicitly installed deps as implicit..." + for i in "${explicitly_installed[@]}"; do for j in "${old_deps_list[@]}"; do + [ "$i" = "$j" ] && yay -D --asdeps "$i" + done; done + + return 0 +} From 03360518da509e9bdeba677d570ab69e34983f2b Mon Sep 17 00:00:00 2001 From: clsty Date: Thu, 6 Feb 2025 22:22:26 +0800 Subject: [PATCH 5/5] Remove python Arch packages They are already included in scriptdata/requirements.txt --- arch-packages/illogical-impulse-widgets/PKGBUILD | 2 -- 1 file changed, 2 deletions(-) diff --git a/arch-packages/illogical-impulse-widgets/PKGBUILD b/arch-packages/illogical-impulse-widgets/PKGBUILD index 20c361d3..37a018c7 100644 --- a/arch-packages/illogical-impulse-widgets/PKGBUILD +++ b/arch-packages/illogical-impulse-widgets/PKGBUILD @@ -6,8 +6,6 @@ arch=(any) license=(None) depends=( dart-sass - python-pywayland - python-psutil hypridle hyprutils hyprlock