From 39ce4d2950de7ae46dd666ba9bce26b186519740 Mon Sep 17 00:00:00 2001 From: zxp19821005 Date: Sat, 7 Feb 2026 19:21:04 +0800 Subject: [PATCH] update to 1.4.2.r0.g8059737 --- .SRCINFO | 13 +++++++------ PKGBUILD | 19 +++++++++++++------ miru-viewer.sh | 36 +++++++++++++++++++++++------------- 3 files changed, 43 insertions(+), 25 deletions(-) diff --git a/.SRCINFO b/.SRCINFO index 66b47d07598c..199d97ee253b 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,8 +1,8 @@ pkgbase = miru-viewer-git pkgdesc = GitHub Issue/Pull Request/Release viewer.(Use system-wide electron) - pkgver = 1.4.1.r1.g81254f2 + pkgver = 1.4.2.r0.g8059737 pkgrel = 1 - url = https://github.com/ytakahashi/miru + url = https://ghfast.top/https://github.com/ytakahashi/miru arch = any license = MIT makedepends = npm @@ -11,12 +11,13 @@ pkgbase = miru-viewer-git makedepends = nvm makedepends = gendesk makedepends = curl - depends = electron36 - provides = miru-viewer=1.4.1 + makedepends = jq + depends = electron40 + provides = miru-viewer=1.4.2 conflicts = miru-viewer - source = miru-viewer.git::git+https://github.com/ytakahashi/miru.git + source = miru-viewer.git::git+https://ghfast.top/https://github.com/ytakahashi/miru.git source = miru-viewer.sh sha256sums = SKIP - sha256sums = 291f50480f5a61bc9c68db7d44cd0412071128706baa868a9cb854f8779a1980 + sha256sums = 31ad33b633744f5361abd964be306cea53ae1050e760c787115f7eca60045ae6 pkgname = miru-viewer-git diff --git a/PKGBUILD b/PKGBUILD index 6df21a72789b..33441cb85751 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,13 +1,13 @@ # Maintainer: zxp19821005 _pkgname=miru pkgname="${_pkgname}-viewer-git" -pkgver=1.4.1.r1.g81254f2 -_electronversion=36 +pkgver=1.4.2.r0.g8059737 +_electronversion=40 _nodeversion=24 pkgrel=1 pkgdesc="GitHub Issue/Pull Request/Release viewer.(Use system-wide electron)" arch=('any') -url="https://github.com/ytakahashi/miru" +url="https://ghfast.top/https://github.com/ytakahashi/miru" license=('MIT') conflicts=("${pkgname%-git}") provides=("${pkgname%-git}=${pkgver%.r*}") @@ -21,13 +21,14 @@ makedepends=( 'nvm' 'gendesk' 'curl' + 'jq' ) source=( "${pkgname%-git}.git::git+${url}.git" "${pkgname%-git}.sh" ) sha256sums=('SKIP' - '291f50480f5a61bc9c68db7d44cd0412071128706baa868a9cb854f8779a1980') + '31ad33b633744f5361abd964be306cea53ae1050e760c787115f7eca60045ae6') pkgver() { cd "${srcdir}/${pkgname%-git}.git" set -o pipefail @@ -40,8 +41,14 @@ _ensure_local_nvm() { nvm install "${_nodeversion}" nvm use "${_nodeversion}" } +_get_electron_version() { + _elec_ver=$(jq -r '.devDependencies["electron"] // .dependencies["electron"]' "${srcdir}/${pkgname%-git}.git/package.json" | tr -d '^') + _main_ver=$(echo "${_elec_ver}" | cut -d. -f1) + echo -e "The electron version is: \033[1;31m${_main_ver}\033[0m" +} prepare() { cd "${srcdir}/${pkgname%-git}.git" + _get_electron_version sed -i-e " s/@electronversion@/${_electronversion}/g s/@appname@/${pkgname%-git}/g @@ -49,7 +56,6 @@ prepare() { s/@cfgdirname@/${_pkgname}/g s/@options@/env ELECTRON_OZONE_PLATFORM_HINT=auto/g " "${srcdir}/${pkgname%-git}.sh" - _ensure_local_nvm gendesk -q -f -n \ --pkgname="${_pkgname}-viewer-git" \ --pkgdesc="${pkgdesc}" \ @@ -85,6 +91,7 @@ prepare() { } build() { cd "${srcdir}/${pkgname%-git}.git" + _ensure_local_nvm sed -i "s/\/\${version}//g" electron-builder.json local electronDist="/usr/lib/electron${_electronversion}" NODE_ENV=production yarn run vite:build @@ -97,4 +104,4 @@ package() { install -Dm644 "${srcdir}/${pkgname%-git}.git/public/icon.png" "${pkgdir}/usr/share/pixmaps/${pkgname%-git}.png" install -Dm644 "${srcdir}/${pkgname%-git}.git/${pkgname%-git}.desktop" -t "${pkgdir}/usr/share/applications" install -Dm644 "${srcdir}/${pkgname%-git}.git/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}" -} \ No newline at end of file +} diff --git a/miru-viewer.sh b/miru-viewer.sh index 40e422ca2ee7..753d12d513f0 100644 --- a/miru-viewer.sh +++ b/miru-viewer.sh @@ -1,29 +1,39 @@ #!/bin/bash -set -o pipefail +set -e _APPDIR="/usr/lib/@appname@" _RUNNAME="${_APPDIR}/@runname@" -_CFGDIR="@cfgdirname@/" _OPTIONS="@options@" export PATH="${_APPDIR}:${PATH}" export LD_LIBRARY_PATH="${_APPDIR}/swiftshader:${_APPDIR}/lib:${LD_LIBRARY_PATH}" export ELECTRON_IS_DEV=0 export ELECTRON_FORCE_IS_PACKAGED=true export ELECTRON_DISABLE_SECURITY_WARNINGS=true -export ELECTRON_OVERRIDE_DIST_PATH="/usr/bin/electron@electronversion@" export NODE_ENV=production export XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}" -export _FLAGS_FILE="${XDG_CONFIG_HOME}/${_CFGDIR}@appname@-flags.conf" -declare -a _USER_FLAGS +_FLAGS_FILE="${XDG_CONFIG_HOME}/@appname@-flags.conf" +declare -a flags if [[ -f "${_FLAGS_FILE}" ]]; then - while read -r line; do - if [[ ! "${line}" =~ ^[[:space:]]*#.* ]]; then - _USER_FLAGS+=("${line}") - fi - done < "${_FLAGS_FILE}" + mapfile -t < "${_FLAGS_FILE}" fi -cd "${_APPDIR}" || { echo "Failed to change directory to ${_APPDIR}"; exit 1; } +for line in "${MAPFILE[@]}"; do + if [[ ! "${line}" =~ ^[[:space:]]*#.* ]] && [[ -n "${line}" ]]; then + flags+=("${line}") + fi +done +_WAYLAND_OPTION=false +for arg in "$@"; do + if [[ "${arg}" == "--wayland" ]]; then + _WAYLAND_OPTION=true + break + fi +done +if [[ "${_WAYLAND_OPTION}" == true ]]; then + echo "Forcing Wayland" + flags+=("--enable-features=UseOzonePlatform,WaylandWindowDecorations,VaapiVideoDecodeLinuxGL" "--ozone-platform=wayland") +fi +cd "${_APPDIR}" if [[ "${EUID}" -ne 0 ]] || [[ "${ELECTRON_RUN_AS_NODE}" ]]; then - exec electron@electronversion@ "${_RUNNAME}" ${_OPTIONS} "${_USER_FLAGS[@]}" "$@" + exec electron@electronversion@ "${_RUNNAME}" "${_OPTIONS}" "${flags[@]}" "$@" || exit $? else - exec electron@electronversion@ "${_RUNNAME}" ${_OPTIONS} --no-sandbox "${_USER_FLAGS[@]}" "$@" + exec electron@electronversion@ "${_RUNNAME}" "${_OPTIONS}" --no-sandbox "${flags[@]}" "$@" || exit $? fi \ No newline at end of file