feat(gparted): ksshaskpass -> seahorse
All checks were successful
Discord / discord commits (push) Has been skipped

This commit is contained in:
matt1432 2025-03-01 18:25:53 -05:00
parent e068e97a4d
commit cd6303019d
2 changed files with 41 additions and 19 deletions

View file

@ -86,6 +86,7 @@ in {
} }
else pkgs.discord; else pkgs.discord;
# FIXME: https://github.com/KaylorBen/nixcord/issues/84
vencord.unstable = false; vencord.unstable = false;
openASAR.enable = false; openASAR.enable = false;
@ -210,31 +211,52 @@ in {
.override {isNvidiaWayland = isNvidia;}; .override {isNvidiaWayland = isNvidia;};
GParted = let GParted = let
inherit (pkgs) writeShellScriptBin libsForQt5 gparted makeWrapper symlinkJoin; inherit
(pkgs)
# build deps
writeShellApplication
makeWrapper
symlinkJoin
# deps
gparted
psmisc
seahorse
;
newWrapper = writeShellScriptBin "Gparted" '' sudoWrapper = writeShellApplication {
( name = "GParted";
sleep 1.5 runtimeInputs = [
while killall -r -0 ksshaskpass > /dev/null 2>&1 gparted
do psmisc
sleep 0.1 "/run/wrappers"
if [[ $(hyprctl activewindow | grep Ksshaskpass) == "" ]]; then ];
killall -r ksshaskpass text = ''
fi (
done sleep 1.5
) &
exec env SUDO_ASKPASS="${libsForQt5.ksshaskpass}/bin/ksshaskpass" sudo -k -EA "${getExe gparted}" "$@" while killall -r -0 ssh-askpass > /dev/null 2>&1; do
''; sleep 0.1
if [[ $(hyprctl activewindow | grep ssh-askpass) == "" ]]; then
killall -r ssh-askpass
fi
done
) &
export SUDO_ASKPASS="${seahorse}/libexec/seahorse/ssh-askpass"
exec sudo -k -EA gparted "$@"
'';
};
in in
symlinkJoin { symlinkJoin {
name = "gparted"; name = "gparted";
paths = [gparted]; paths = [gparted];
buildInputs = [makeWrapper]; buildInputs = [makeWrapper];
postBuild = let postBuild = ''
in ''
mkdir $out/.wrapped mkdir $out/.wrapped
mv $out/bin/gparted $out/.wrapped mv $out/bin/gparted $out/.wrapped
cp ${getExe newWrapper} $out/bin/gparted cp ${getExe sudoWrapper} $out/bin/gparted
sed -i "s#Exec.*#Exec=$out/bin/gparted %f#" $out/share/applications/gparted.desktop sed -i "s#Exec.*#Exec=$out/bin/gparted %f#" $out/share/applications/gparted.desktop
''; '';

View file

@ -85,8 +85,8 @@ in {
"center,^(org.kde.polkit-kde-authentication-agent-1)$" "center,^(org.kde.polkit-kde-authentication-agent-1)$"
# For GParted auth # For GParted auth
"size 741 288,^(org.kde.ksshaskpass)$" "size 741 288,^(ssh-askpass)$"
"move cursor -370 -144,^(org.kde.ksshaskpass)$" "move cursor -370 -144,^(ssh-askpass)$"
]; ];
bind = map mkBind [ bind = map mkBind [