diff options
author | Chris Severance | 2024-12-23 03:22:31 -0500 |
---|---|---|
committer | Chris Severance | 2024-12-23 03:22:31 -0500 |
commit | 6b114be2be548b18e476c4c51141070bac3bcd2e (patch) | |
tree | d5b52a4aa8dfeda15cc6623f2e124ece8a36b181 /PKGBUILD | |
parent | 9028fcef2939ed10351f34578a99065505a5a547 (diff) | |
download | aur-6b114be2be548b18e476c4c51141070bac3bcd2e.tar.gz |
autu: Update to 1.3.6.r10197.g7289dbc-1
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 107 |
1 files changed, 79 insertions, 28 deletions
@@ -11,8 +11,9 @@ _opt_BUILD_PY=0 # 0 for download vcpkg, set _opt_VCPKG_COMMIT_ID # 1 for system vcpkg, ignore _opt_VCPKG_COMMIT_ID _opt_SYS_VCPKG=0 -#_opt_VCPKG_COMMIT_ID='#commit=14e7bb4ae24616ec54ff6b2f6ef4e8659434ea44' -_opt_VCPKG_COMMIT_ID='' +_opt_VCPKG_COMMIT_ID='#commit=b2cb0da531c2f1f740045bfe7c4dac59f0b2b69c' +#_opt_VCPKG_COMMIT_ID='#branch=2023.10.19' +#_opt_VCPKG_COMMIT_ID='' # 0 for Sciter # 1 for Flutter @@ -27,14 +28,15 @@ set -u _pkgname='rustdesk' pkgname="${_pkgname}" pkgname+="-git" -pkgver=1.2.5.r9318.g74c24ca +pkgver=1.3.6.r10197.g7289dbc pkgrel=1 pkgdesc='Yet another remote desktop software, written in Rust. Works out of the box, no configuration required. Great alternative to TeamViewer and AnyDesk!' arch=('x86_64') url='https://rustdesk.com/' _giturl='https://github.com/rustdesk/rustdesk' license=('AGPL-3.0-only') -_dpr=('gtk3' 'xdotool' 'libxcb' 'libxfixes' 'alsa-lib' 'libva' 'libvdpau' 'libappindicator-gtk3' 'pam' 'gst-plugins-base' 'gst-plugin-pipewire') # from res/PKGBUILD/depends +_dpr=('gtk3' 'xdotool' 'libxcb' 'libxfixes' 'alsa-lib' 'libva' 'libappindicator-gtk3' 'pam' 'gst-plugins-base' 'gst-plugin-pipewire') # from res/PKGBUILD/depends +#_dpr=('gtk3' 'xdotool' 'libxcb' 'libxfixes' 'alsa-lib' 'libva' 'libvdpau' 'libappindicator-gtk3' 'pam' 'gst-plugins-base' 'gst-plugin-pipewire') # from res/PKGBUILD/depends depends=("${_dpr[@]}" 'pulse-native-provider' 'gst-plugins-base-libs') depends+=('hicolor-icon-theme' 'xdg-utils') depends+=('xdg-user-dirs') @@ -45,10 +47,15 @@ makedepends+=('ninja') # vcpkg build can use the latest ninja provides=("${_pkgname}=${pkgver%.r*}") conflicts=("${_pkgname}") options=('!makeflags' '!lto') +_patches=( + '0000-disable-update-check@rustdesk.patch' + '0001-extended_text-drop-version-for-flutter.3.22.3@rustdesk.patch' # https://github.com/rustdesk/rustdesk/blob/master/.github/workflows/bridge.yml#L77 +) install="${pkgname}.install" _srcdir="${_pkgname}" source=( "git+${_giturl}.git" + "${_patches[@]}" ) _vcs=( #'https://cmake.org/files/v3.18/cmake-3.18.4-Linux-x86_64.tar.gz' @@ -69,7 +76,7 @@ if [ "${_opt_FLUTTER}" -eq 0 ]; then source+=("https://raw.github.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so") else if [ "${_opt_SYS_FLUTTER}" -eq 0 ]; then - _FLUVER='3.19.6' + _FLUVER='3.19.6' # https://docs.flutter.dev/release/archive source+=( "https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_${_FLUVER}-stable.tar.xz" #"flutter_rust_bridge-${_FRBVER}.tar.gz::https://pub.dev/packages/flutter_rust_bridge/versions/${_FRBVER}.tar.gz" # bad packaging @@ -79,20 +86,25 @@ else makedepends+=('flutter') fi if :; then - _FRBVER='1.80.0' + _FRBVER='1.80.1' + _srcdirfrb="flutter_rust_bridge-${_FRBVER}" source+=( - "flutter_rust_bridge-${_FRBVER}.tar.gz::https://github.com/fzyzcjy/flutter_rust_bridge/archive/refs/tags/v${_FRBVER}.tar.gz" + "${_srcdirfrb}.tar.gz::https://github.com/fzyzcjy/flutter_rust_bridge/archive/refs/tags/v${_FRBVER}.tar.gz" ) fi fi md5sums=('SKIP' - 'SKIP' + '6acc4b5b14befec55ef84006b60c7ff5' + '9b997c2eb989a044704fd7c1d2152d02' + '0d902a4829df777ec93d764794bf4ec6' '74dc171bf2cfc1ada56b6e284adabca8' - 'a63659fb966758db9fe95e5aae89757a') + 'cc8e5418ff0c163228aabbe385ba2596') sha256sums=('SKIP' - 'SKIP' + '8f7f1019404ce47dc012ba7c546ad634b973452fc2c57ac64b62cdc7c1f54ea3' + '17ad644a9987ad2dc8ddaf68e62e026c1825b3ecae46254ea98d985c5d5df582' + 'f8773e2054ee1127b698a80d6e884ef3750bb696d8f3c954ade8a0d731d3ee7e' 'db6742a20626d0d2a089eb41ad61b9b2138b996679911e9c8268c1f896191f97' - 'b3a05ffca1f57afa48bd006d732969146dafa164c71390070623ba569977f9d3') + '5c1494e79024de228a9f383c8e52e45b042cd0cf24f4b0f47ee4d5448938b336') _vcs=("${_vcs[@]%%::*}") _vcs=("${_vcs[@]##*/}") noextract=("${_vcs[@]}") @@ -115,6 +127,14 @@ print(new_toml_string.get('package').get('version')) set +u } +# updpkgsums doesn't detect vcpkg git correctly +for _fk in "${!source[@]}"; do + if [ "${source[${_fk}]#git}" != "${source[${_fk}]}" ]; then + md5sums["${_fk}"]='SKIP' + sha256sums["${_fk}"]='SKIP' + fi +done + _vcpkg=(libvpx libyuv opus aom) _prepare_vc() { @@ -139,7 +159,7 @@ _prepare_vc() { local _pyvcc=" import yaml import io -with open('rustdesk/.github/workflows/flutter-build.yml', 'r') as stream: +with open('${_srcdir}/.github/workflows/flutter-build.yml', 'r') as stream: data_loaded = yaml.safe_load(stream) #print(data_loaded.get('env').keys()) print(data_loaded.get('env').get('VCPKG_COMMIT_ID')) @@ -192,7 +212,8 @@ _flutter_check() { local _pyfv=" import yaml import io -with open('.github/workflows/flutter-build.yml', 'r') as stream: +#with open('.github/workflows/flutter-build.yml', 'r') as stream: +with open('.github/workflows/bridge.yml', 'r') as stream: data_loaded = yaml.safe_load(stream) #print(data_loaded.get('env').keys()) print(data_loaded.get('env').get('FLUTTER_VERSION')) @@ -210,8 +231,8 @@ print(data_loaded.get('env').get('FLUTTER_VERSION')) _FLUTTER_VERSION="${_FLUVER}" else printf 'Flutter version has changed to %s\n' "${_FLUTTER_VERSION}" - set +u - false + #set +u + #false fi fi set +u; msg2 "FLUTTER_VERSION=${_FLUTTER_VERSION}"; set -u @@ -222,6 +243,14 @@ new_toml_string = toml.load('Cargo.toml') #print(new_toml_string.keys()) print(new_toml_string.get('dependencies').get('flutter_rust_bridge').get('version')) " + local _pyfrb=" +import yaml +import io +with open('.github/workflows/bridge.yml', 'r') as stream: + data_loaded = yaml.safe_load(stream) +#print(data_loaded.get('env').keys()) +print(data_loaded.get('env').get('FLUTTER_RUST_BRIDGE_VERSION')) +" _flutter_rust_bridge="$(python -c "${_pyfrb}")" _flutter_rust_bridge="${_flutter_rust_bridge#=}" if [ "$(vercmp "${_flutter_rust_bridge}" "${_FRBVER%.0}")" -gt 0 ]; then @@ -280,15 +309,34 @@ prepare() { _flutter_check _mod_py - local _pt - for _pt in "${source[@]}"; do - if [[ "${_pt}" =~ *@(*).patch ]]; then - set +u; msg2 "Patch ${_pt}"; set -u - patch -d "${BASH_REMATCH[1]}" -Nup1 -i "${srcdir}/${_p}" + local _pt _ptf=() _pts=() _ptd + for _pt in "${_patches[@]}"; do + set +u; msg2 "Patch ${_pt}"; set -u + _ptd=() + if [[ "${_pt}" =~ ^[^@]+@([^.]+).patch$ ]]; then + case "${BASH_REMATCH[1]}" in + 'rustdesk') _ptd=(-d "${srcdir}/${_srcdir}");; + 'flutter_rust_bridge') _ptd=(-d "${srcdir}/${_srcdirfrb}");; + *) _ptd=(-d "${srcdir}/${BASH_REMATCH[1]}");; + esac + fi + if patch "${_ptd[@]}" -Nup1 -i "${srcdir}/${_pt}"; then + _pts+=("${_pt}") + else + _ptf+=("${_pt}") fi done - #cd ..; cp -pr 'rustdesk' 'a'; ln -s 'rustdesk' 'b'; false - # diff -pNaru5 'a' 'b' > 0000-$RANDOM@foobar.patch + if [ "${#_ptf[@]}" -gt 0 ]; then + if [ "${#_pts[@]}" -gt 0 ]; then + printf 'Patch success %s\n' "${_pts[@]}" + printf 'Warning: Some old patches may need to be removed even if they are successful\n' + fi + printf 'Patch failed %s\n' "${_ptf[@]}" + set +x + false + fi + #cd '..'; cp -pr "${_srcdir}" 'a'; ln -s "${_srcdir}" 'b'; cp -pr "${_srcdirfrb}" 'fa'; ln -s "${_srcdirfrb}" 'fb'; false + #diff -pNaru5 'a' 'b' > "0000-$RANDOM@domain.patch" set +u } @@ -299,7 +347,7 @@ build() { vcpkg/bootstrap-vcpkg.sh fi export VCPKG_ROOT="${PWD}/vcpkg" - nice vcpkg/vcpkg install "${_vcpkg[@]}" + nice vcpkg/vcpkg install --x-install-root="$VCPKG_ROOT/installed" "${_vcpkg[@]}" cd "${_srcdir}" if [ "${_opt_FLUTTER}" -eq 0 ]; then @@ -318,22 +366,25 @@ build() { set +u; msg2 'Build rustdesk Flutter'; set -u set -x export CPATH="$(clang -v 2>&1 | grep "Selected GCC installation: " | cut -d' ' -f4-)/include" - export PATH="${srcdir}/flutter/bin:$PATH" + local _oldpath="${PATH}" + export CARGO_INCREMENTAL=0 + export PATH="${srcdir}/flutter/bin:${_oldpath}" + flutter doctor -v dart pub global activate ffigen --version 5.0.1 pushd "${srcdir}/flutter_rust_bridge/frb_codegen"; nice cargo install --path . ; popd pushd flutter ; flutter clean; flutter pub get ; popd local _CGdefault=~/.cargo "${CARGO_HOME:-${_CGdefault}}"/bin/flutter_rust_bridge_codegen --rust-input ./src/flutter_ffi.rs --dart-output ./flutter/lib/generated_bridge.dart if [ "${_opt_BUILD_PY}" -ne 0 ]; then - nice ./build.py --hwcodec --flutter + nice ./build.py --flutter else git checkout src/ui/common.tis #if ! \ - nice cargo build --features hwcodec,flutter --lib --release + nice cargo build --features flutter --lib --release #then # set +u; msg2 'Move patch, get out the way (dynamic fix for unnecessary __builtin_va_list)'; set -u # sed -E -e '/__builtin_va_list/ s:^:// :g' -i target/release/build/pam-sys-*/out/bindings.rs - # nice cargo build --features hwcodec,flutter --lib --release + # nice cargo build --features flutter --lib --release #fi pushd flutter nice flutter build linux --release @@ -390,7 +441,7 @@ GenericName[zh_CN]=远程桌面 Comment=Remote Desktop Comment[zh_CN]=远程桌面 Exec=${_pkgname} %u -Icon=${_pkgname}.svg +Icon=${_pkgname} Terminal=false Type=Application MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https; |