Merge pull request #1478 from Kingtous/master
feat: flatpak and flutter build
This commit is contained in:
		
						commit
						29ad4c10e6
					
				
							
								
								
									
										13
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -21,7 +21,18 @@ sciter.dll
 | 
			
		||||
src/bridge_generated.rs
 | 
			
		||||
*deb
 | 
			
		||||
rustdesk
 | 
			
		||||
*.cache
 | 
			
		||||
# appimage
 | 
			
		||||
appimage/AppDir
 | 
			
		||||
appimage/*.AppImage
 | 
			
		||||
appimage/appimage-build
 | 
			
		||||
appimage/appimage-build
 | 
			
		||||
# flutter
 | 
			
		||||
flutter/linux/build/**
 | 
			
		||||
flutter/linux/cmake-build-debug/**
 | 
			
		||||
# flatpak
 | 
			
		||||
flatpak/.flatpak-builder/**
 | 
			
		||||
flatpak/ccache/**
 | 
			
		||||
flatpak/.flatpak-builder/build/**
 | 
			
		||||
flatpak/.flatpak-builder/shared-modules/**
 | 
			
		||||
flatpak/.flatpak-builder/shared-modules/*.tar.xz
 | 
			
		||||
flatpak/.flatpak-builder/debian-binary
 | 
			
		||||
							
								
								
									
										2
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							@ -4201,7 +4201,7 @@ dependencies = [
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "rustdesk"
 | 
			
		||||
version = "1.1.10"
 | 
			
		||||
version = "1.2.0"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "android_logger 0.11.1",
 | 
			
		||||
 "arboard",
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										1
									
								
								build.rs
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								build.rs
									
									
									
									
									
								
							@ -105,6 +105,7 @@ fn main() {
 | 
			
		||||
    // there is problem with cfg(target_os) in build.rs, so use our workaround
 | 
			
		||||
    // let target_os = std::env::var("CARGO_CFG_TARGET_OS").unwrap();
 | 
			
		||||
    // if target_os == "android" || target_os == "ios" {
 | 
			
		||||
    #[cfg(feature = "flutter")]
 | 
			
		||||
    gen_flutter_rust_bridge();
 | 
			
		||||
    //     return;
 | 
			
		||||
    // }
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										31
									
								
								flatpak/rustdesk.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								flatpak/rustdesk.yml
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,31 @@
 | 
			
		||||
app-id: org.rustdesk.rustdesk
 | 
			
		||||
runtime: org.freedesktop.Platform
 | 
			
		||||
runtime-version: '21.08'
 | 
			
		||||
sdk: org.freedesktop.Sdk
 | 
			
		||||
command: rustdesk
 | 
			
		||||
modules:
 | 
			
		||||
  # install appindicator
 | 
			
		||||
  - shared-modules/libappindicator/libappindicator-gtk3-12.10.json
 | 
			
		||||
  - name: rustdesk
 | 
			
		||||
    buildsystem: simple
 | 
			
		||||
    build-commands:
 | 
			
		||||
      - bsdtar -zxvf rustdesk-1.2.0.deb
 | 
			
		||||
      - tar -xvf ./data.tar.xz
 | 
			
		||||
      - cp -r ./usr  /app/
 | 
			
		||||
      - rm /app/usr/bin/rustdesk
 | 
			
		||||
      - mkdir -p /app/bin && ln -s /app/usr/lib/rustdesk/flutter_hbb /app/bin/rustdesk
 | 
			
		||||
    sources:
 | 
			
		||||
      # Note: replace to deb files with url
 | 
			
		||||
      - type: file
 | 
			
		||||
        path: ../rustdesk-1.2.0.deb
 | 
			
		||||
 | 
			
		||||
finish-args:
 | 
			
		||||
  # X11 + XShm access
 | 
			
		||||
  - --share=ipc
 | 
			
		||||
  - --socket=x11
 | 
			
		||||
  # Wayland access
 | 
			
		||||
  - --socket=wayland
 | 
			
		||||
  # Needs to talk to the network:
 | 
			
		||||
  - --share=network
 | 
			
		||||
  # Needs to save files locally
 | 
			
		||||
  - --filesystem=xdg-documents
 | 
			
		||||
							
								
								
									
										1
									
								
								flatpak/shared-modules
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
								
									
									
								
							
						
						
									
										1
									
								
								flatpak/shared-modules
									
									
									
									
									
										Submodule
									
								
							@ -0,0 +1 @@
 | 
			
		||||
Subproject commit cecc93886ce839ec49b0041f072a573327acdf08
 | 
			
		||||
							
								
								
									
										33
									
								
								flutter/PKGBUILD
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								flutter/PKGBUILD
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,33 @@
 | 
			
		||||
pkgname=rustdesk
 | 
			
		||||
pkgver=1.2.0
 | 
			
		||||
pkgrel=0
 | 
			
		||||
epoch=
 | 
			
		||||
pkgdesc=""
 | 
			
		||||
arch=('x86_64')
 | 
			
		||||
url=""
 | 
			
		||||
license=('GPL-3.0')
 | 
			
		||||
groups=()
 | 
			
		||||
depends=('gtk3' 'xdotool' 'libxcb' 'libxfixes' 'alsa-lib' 'pulseaudio' 'ttf-arphic-uming' 'python-pip' 'curl' 'libappindicator-gtk3')
 | 
			
		||||
makedepends=()
 | 
			
		||||
checkdepends=()
 | 
			
		||||
optdepends=()
 | 
			
		||||
provides=()
 | 
			
		||||
conflicts=()
 | 
			
		||||
replaces=()
 | 
			
		||||
backup=()
 | 
			
		||||
options=()
 | 
			
		||||
install=../pacman_install
 | 
			
		||||
changelog=
 | 
			
		||||
noextract=()
 | 
			
		||||
md5sums=() #generate with 'makepkg -g'
 | 
			
		||||
 | 
			
		||||
package() {
 | 
			
		||||
	mkdir -p "${pkgdir}/usr/lib/rustdesk" && cp -r ${HBB}/build/linux/x64/release/bundle/* -t "${pkgdir}/usr/lib/rustdesk"
 | 
			
		||||
	cp ${HBB}/build/linux/x64/release/liblibrustdesk.so  "${pkgdir}/usr/lib/rustdesk/librustdesk.so"
 | 
			
		||||
  mkdir -p "${pkgdir}/usr/bin"
 | 
			
		||||
  pushd ${pkgdir} && ln -s /usr/lib/rustdesk/flutter_hbb usr/bin/rustdesk && popd
 | 
			
		||||
  install -Dm 644 $HBB/rustdesk.service -t "${pkgdir}/usr/share/rustdesk/files"
 | 
			
		||||
  install -Dm 644 $HBB/rustdesk.desktop -t "${pkgdir}/usr/share/rustdesk/files"
 | 
			
		||||
  # install -Dm 644 $HBB/../pynput_service.py -t "${pkgdir}/usr/share/rustdesk/files"
 | 
			
		||||
  install -Dm 644 $HBB/../128x128@2x.png "${pkgdir}/usr/share/rustdesk/files/rustdesk.png"
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										15
									
								
								flutter/rustdesk.service.user
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								flutter/rustdesk.service.user
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,15 @@
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=RustDesk user service (--server)
 | 
			
		||||
 | 
			
		||||
[Service]
 | 
			
		||||
Type=simple
 | 
			
		||||
ExecStart=/usr/lib/rustdesk/flutter_hbb --server
 | 
			
		||||
PIDFile=/run/rustdesk.user.pid
 | 
			
		||||
KillMode=mixed
 | 
			
		||||
TimeoutStopSec=30
 | 
			
		||||
LimitNOFILE=100000
 | 
			
		||||
Restart=on-failure
 | 
			
		||||
RestartSec=3
 | 
			
		||||
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=multi-user.target
 | 
			
		||||
@ -39,7 +39,7 @@ use crate::ui_interface::{
 | 
			
		||||
 | 
			
		||||
mod cm;
 | 
			
		||||
#[cfg(feature = "inline")]
 | 
			
		||||
mod inline;
 | 
			
		||||
pub mod inline;
 | 
			
		||||
#[cfg(target_os = "macos")]
 | 
			
		||||
mod macos;
 | 
			
		||||
pub mod remote;
 | 
			
		||||
 | 
			
		||||
@ -680,7 +680,7 @@ impl<T: InvokeUiSession> Session<T> {
 | 
			
		||||
 | 
			
		||||
    pub fn get_chatbox(&self) -> String {
 | 
			
		||||
        #[cfg(feature = "inline")]
 | 
			
		||||
        return super::inline::get_chatbox();
 | 
			
		||||
        return crate::ui::inline::get_chatbox();
 | 
			
		||||
        #[cfg(not(feature = "inline"))]
 | 
			
		||||
        return "".to_owned();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user