diff options
| author | Nippy <nippy@Nippy-Mac-mini.local> | 2026-09-19 22:28:12 +0200 |
|---|---|---|
| committer | Nippy <nippy@Nippy-Mac-mini.local> | 2026-09-19 22:28:12 +0200 |
| commit | c5ca121fde65cfa5c1729f779cf6b0f47b6ebb21 (patch) | |
| tree | ade5ca729f51cb849a6ec39ed45e21a9d8aa1af8 /raveos-app-installer/data | |
| parent | a95908de8949035c4b101500665cbddf7ac44e94 (diff) | |
| download | RaveOS-PKGBUILD-c5ca121fde65cfa5c1729f779cf6b0f47b6ebb21.tar.gz RaveOS-PKGBUILD-c5ca121fde65cfa5c1729f779cf6b0f47b6ebb21.zip | |
working fix/test
Diffstat (limited to 'raveos-app-installer/data')
| -rwxr-xr-x | raveos-app-installer/data/actions/corectrl.sh | 8 | ||||
| -rwxr-xr-x | raveos-app-installer/data/actions/discord.sh | 67 | ||||
| -rwxr-xr-x | raveos-app-installer/data/actions/steam.sh | 5 |
3 files changed, 51 insertions, 29 deletions
diff --git a/raveos-app-installer/data/actions/corectrl.sh b/raveos-app-installer/data/actions/corectrl.sh index 7f378d4..97a55ac 100755 --- a/raveos-app-installer/data/actions/corectrl.sh +++ b/raveos-app-installer/data/actions/corectrl.sh @@ -64,7 +64,13 @@ run_as_user mkdir -p "$HOME/.config/corectrl" if local_cfg="$(resolve_local_config corectrl.ini)"; then cp "$local_cfg" "$HOME/.config/corectrl/corectrl.ini" else - wget -q -O "$HOME/.config/corectrl/corectrl.ini" "${REPO_URL}corectrl.ini" || true + if wget -q -O "$HOME/.config/corectrl/corectrl.ini" "${REPO_URL}corectrl.ini"; then + echo "e3884788efc7ebd5fc004c4158e79bd84e26575cb0146169774e8039ab29968d $HOME/.config/corectrl/corectrl.ini" | sha256sum -c - >/dev/null || { + echo "ERROR: corectrl.ini checksum mismatch" + rm -f "$HOME/.config/corectrl/corectrl.ini" + exit 1 + } + fi fi chown "$USER:$USER" "$HOME/.config/corectrl/corectrl.ini" 2>/dev/null || true diff --git a/raveos-app-installer/data/actions/discord.sh b/raveos-app-installer/data/actions/discord.sh index c1b60c7..542fafc 100755 --- a/raveos-app-installer/data/actions/discord.sh +++ b/raveos-app-installer/data/actions/discord.sh @@ -48,17 +48,23 @@ remove_installed_packages() { fi } -find_discord_dir() { +find_discord_dirs() { local d - d="$(pacman -Qlq discord 2>/dev/null | grep '/resources/app.asar$' | head -1 | sed 's#/resources/app.asar$##')" - if [[ -z "$d" && -d /usr/lib/discord ]]; then - d="/usr/lib/discord" - fi - printf '%s\n' "$d" + for d in "$HOME"/.config/discord/app-*/resources/app.asar; do + [[ -f "$d" ]] && printf '%s\n' "$(dirname "$(dirname "$d")")" + done + for d in "$HOME/.local/share/discord" "$HOME/.local/share/Discord" /usr/lib/discord /opt/discord; do + [[ -f "$d/resources/app.asar" ]] && printf '%s\n' "$d" + done } if [[ "$ACTION" == "remove" ]]; then echo "Removing Discord + Vencord for $USER..." + while IFS= read -r dir; do + [[ -n "$dir" ]] || continue + run_as_user /usr/local/bin/VencordInstallerCli-linux -uninstall -location "$dir" 2>/dev/null || true + run_as_user /usr/local/bin/VencordInstallerCli-linux -uninstall-openasar -location "$dir" 2>/dev/null || true + done < <(find_discord_dirs) remove_installed_packages discord rm -f /etc/pacman.d/hooks/vencord-reinstall.hook rm -f /usr/local/bin/vencord-reinstall.sh @@ -78,10 +84,16 @@ TMPDIR=$(mktemp -d) chmod 755 "$TMPDIR" trap 'rm -rf "$TMPDIR"' EXIT -# Vencord Installer letöltése +# Vencord Installer letöltése (fix verzió + SHA256 ellenőrzés) echo "Downloading Vencord Installer..." -VENCORD_URL="https://github.com/Vencord/Installer/releases/latest/download/VencordInstallerCli-linux" +VENCORD_VERSION="1.4.2" +VENCORD_SHA256="52642c8521a866ad241c10337144a4f513672c54b9c86a8169954785054c815d" +VENCORD_URL="https://github.com/Vencord/Installer/releases/download/v${VENCORD_VERSION}/VencordInstallerCli-linux" wget -q -O "$TMPDIR/VencordInstallerCli-linux" "$VENCORD_URL" +echo "${VENCORD_SHA256} $TMPDIR/VencordInstallerCli-linux" | sha256sum -c - >/dev/null || { + echo "ERROR: Vencord installer checksum mismatch (version ${VENCORD_VERSION})" + exit 1 +} # Verify it's an ELF binary (not a malicious script) FILE_TYPE=$(file -b "$TMPDIR/VencordInstallerCli-linux") @@ -96,20 +108,23 @@ chmod +x "$TMPDIR/VencordInstallerCli-linux" cp "$TMPDIR/VencordInstallerCli-linux" /usr/local/bin/VencordInstallerCli-linux chmod +x /usr/local/bin/VencordInstallerCli-linux -# Vencord telepítése. Az újabb discord csomag a /usr/lib/discord-ba telepít, -# ezért ott root-ként, explicit -location-nel patchelünk. Régi bootstrap -# Discord (user home-ba települő) esetén user módban auto-detect. -DISCORD_DIR="$(find_discord_dir)" +# Vencord telepítése. Az új Discord bootstrap a user home-ba telepíti az +# app-<verzió> mappákat (~/.config/discord/app-*/resources/app.asar), ezért +# ezeket user-ként, explicit -location-nel patcheljük. Régi rendszer-szintű +# telepítés (/usr/lib/discord) esetén is működik. +mapfile -t DISCORD_DIRS < <(find_discord_dirs) echo "Installing Vencord..." -if [[ -n "$DISCORD_DIR" && -d "$DISCORD_DIR" ]]; then - echo "Discord location: $DISCORD_DIR" - /usr/local/bin/VencordInstallerCli-linux -install -location "$DISCORD_DIR" 2>/dev/null || true - /usr/local/bin/VencordInstallerCli-linux -openasar -location "$DISCORD_DIR" 2>/dev/null || true +if ((${#DISCORD_DIRS[@]})); then + for dir in "${DISCORD_DIRS[@]}"; do + echo "Discord location: $dir" + run_as_user /usr/local/bin/VencordInstallerCli-linux -install -location "$dir" || true + run_as_user /usr/local/bin/VencordInstallerCli-linux -install-openasar -location "$dir" || true + done else - echo "Discord bootstrap not found, trying user-mode auto-detect..." - run_as_user /usr/local/bin/VencordInstallerCli-linux -install 2>/dev/null || true - run_as_user /usr/local/bin/VencordInstallerCli-linux -openasar 2>/dev/null || true + echo "Discord app dir not found (indítsd el egyszer a Discordot), user-mode auto-detect..." + run_as_user /usr/local/bin/VencordInstallerCli-linux -install || true + run_as_user /usr/local/bin/VencordInstallerCli-linux -install-openasar || true fi # Pacman hook: Discord update után Vencord újratelepítés @@ -130,15 +145,11 @@ HOOK # Reinstall script - user neve bele van égetve telepítéskor cat > /usr/local/bin/vencord-reinstall.sh << SCRIPT #!/bin/bash -DISCORD_DIR="\$(pacman -Qlq discord 2>/dev/null | grep '/resources/app.asar$' | head -1 | sed 's#/resources/app.asar\$##')" -if [ -z "\$DISCORD_DIR" ]; then DISCORD_DIR="/usr/lib/discord"; fi -if [ -d "\$DISCORD_DIR" ]; then - /usr/local/bin/VencordInstallerCli-linux -install -location "\$DISCORD_DIR" || true - /usr/local/bin/VencordInstallerCli-linux -openasar -location "\$DISCORD_DIR" || true -else - runuser -u "$USER" -- env HOME="$HOME" /usr/local/bin/VencordInstallerCli-linux -install || true - runuser -u "$USER" -- env HOME="$HOME" /usr/local/bin/VencordInstallerCli-linux -openasar || true -fi +for dir in "$HOME"/.config/discord/app-*/; do + [ -f "\${dir}resources/app.asar" ] || continue + runuser -u "$USER" -- env HOME="$HOME" /usr/local/bin/VencordInstallerCli-linux -install -location "\${dir%/}" || true + runuser -u "$USER" -- env HOME="$HOME" /usr/local/bin/VencordInstallerCli-linux -install-openasar -location "\${dir%/}" || true +done SCRIPT chmod +x /usr/local/bin/vencord-reinstall.sh diff --git a/raveos-app-installer/data/actions/steam.sh b/raveos-app-installer/data/actions/steam.sh index ea85659..4427676 100755 --- a/raveos-app-installer/data/actions/steam.sh +++ b/raveos-app-installer/data/actions/steam.sh @@ -92,6 +92,11 @@ if local_cfg="$(resolve_local_config update-proton-ge)"; then cp "$local_cfg" "$HOME/.local/bin/update-proton-ge" else wget -q -O "$HOME/.local/bin/update-proton-ge" "${REPO_URL}update-proton-ge" + echo "10c9737aa38c01f87af353eb097ea23e778e21522f63037a9b3a108e239028df $HOME/.local/bin/update-proton-ge" | sha256sum -c - >/dev/null || { + echo "ERROR: update-proton-ge checksum mismatch" + rm -f "$HOME/.local/bin/update-proton-ge" + exit 1 + } fi chmod +x "$HOME/.local/bin/update-proton-ge" chown "$USER:$USER" "$HOME/.local/bin/update-proton-ge" |