mirror of
				https://github.com/AppFlowy-IO/AppFlowy.git
				synced 2025-10-31 10:03:18 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			174 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			TOML
		
	
	
	
	
	
			
		
		
	
	
			174 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			TOML
		
	
	
	
	
	
| [tasks.appflowy-flutter-deps-tools]
 | |
| run_task = { name = ["install_flutter_prerequests"] }
 | |
| 
 | |
| [tasks.appflowy-flutter-dev-tools]
 | |
| run_task = { name = ["appflowy-flutter-deps-tools", "install_diesel"] }
 | |
| 
 | |
| [tasks.install_windows_deps.windows]
 | |
| dependencies = ["check_duckscript_installation", "check_vcpkg", "install_vcpkg_sqlite", "install_rust_vcpkg_cli"]
 | |
| 
 | |
| [tasks.check_visual_studio_installation.windows]
 | |
| script = """
 | |
| output = exec powershell -Command "Get-CimInstance MSFT_VSInstance | select -ExpandProperty Version"
 | |
| stdout = set ${output.stdout}
 | |
| versions = split ${stdout} "\\n"
 | |
| for version in ${versions}
 | |
|     pos = last_indexof ${version} .
 | |
|     new_str = substring ${version} 0 ${pos}
 | |
|     newer = semver_is_newer ${new_str} 16.11.0
 | |
|     if newer
 | |
|         goto :ok
 | |
|     end
 | |
| end
 | |
| echo "Visual studio 2019 is not installed or version is lower than 16.11.0"
 | |
| exit -1
 | |
| :ok
 | |
| """
 | |
| script_runner = "@duckscript"
 | |
| 
 | |
| [tasks.check_duckscript_installation.windows]
 | |
| script = """
 | |
| @echo off
 | |
| @duck -h > nul
 | |
| if %errorlevel% GTR 0 (
 | |
|   echo Please install duckscript at first: cargo install --force --locked duckscript_cli
 | |
|   exit -1
 | |
| )
 | |
| """
 | |
| 
 | |
| [tasks.check_vcpkg.windows]
 | |
| script = """
 | |
| ret = which vcpkg
 | |
| if is_empty ${ret}
 | |
|     echo "Please install vcpkg on windows at first. Make sure to put it into PATH env var"
 | |
|     echo "See: https://github.com/microsoft/vcpkg#quick-start-windows"
 | |
|     exit -1
 | |
| end
 | |
| """
 | |
| script_runner = "@duckscript"
 | |
| 
 | |
| [tasks.install_vcpkg_sqlite.windows]
 | |
| script = """
 | |
| vcpkg install sqlite3:x64-windows-static-md
 | |
| """
 | |
| 
 | |
| [tasks.install_rust_vcpkg_cli.windows]
 | |
| script = """
 | |
| exec cargo install vcpkg_cli
 | |
| output = exec vcpkg_cli probe sqlite3
 | |
| stdout = set ${output.stdout}
 | |
| stderr = set ${output.stderr}
 | |
| ret = indexof ${stdout} "Failed:"
 | |
| assert_eq ${ret} "" ${stdout}
 | |
| """
 | |
| script_runner = "@duckscript"
 | |
| 
 | |
| [tasks.install_diesel]
 | |
| script = """
 | |
| cargo install diesel_cli --no-default-features --features sqlite
 | |
| """
 | |
| 
 | |
| [tasks.install_diesel.windows]
 | |
| script = """
 | |
| #https://duredhelfinceleb.github.io/diesel_windows_install_doc/
 | |
| 
 | |
| cargo install diesel_cli --no-default-features --features "sqlite-bundled"
 | |
| """
 | |
| dependencies = ["check_vcpkg"]
 | |
| 
 | |
| [tasks.install_targets.mac]
 | |
| script = """
 | |
| #rustup target add x86_64-apple-ios
 | |
| #rustup target add x86_64-apple-darwin
 | |
| #rustup target add aarch64-apple-ios
 | |
| rustup target add aarch64-apple-darwin
 | |
| """
 | |
| 
 | |
| [tasks.install_targets.windows]
 | |
| script = """
 | |
| rustup target add x86_64-pc-windows-msvc
 | |
| """
 | |
| 
 | |
| [tasks.install_targets.linux]
 | |
| script = """
 | |
| rustup target add x86_64-unknown-linux-gnu
 | |
| """
 | |
| 
 | |
| [tasks.install_flutter_prerequests]
 | |
| dependencies = ["install_targets", "install_flutter_protobuf"]
 | |
| 
 | |
| [tasks.install_flutter_prerequests.windows]
 | |
| dependencies = ["install_targets", "install_windows_deps"]
 | |
| 
 | |
| [tasks.install_tools]
 | |
| script = """
 | |
| rustup component add rustfmt
 | |
| cargo install cargo-expand
 | |
| cargo install cargo-watch
 | |
| cargo install cargo-cache
 | |
| cargo install bunyan
 | |
| """
 | |
| 
 | |
| [tasks.install_cocoapods]
 | |
| script = """
 | |
| # execute "xcode-select --install" before if "extconf.rb failed" error occurs
 | |
| sudo gem install cocoapods
 | |
| """
 | |
| 
 | |
| [tasks.install_rbenv]
 | |
| script = """
 | |
| brew install rbenv
 | |
| rbenv init
 | |
| rbenv install 2.7.1
 | |
| rbenv global 2.7.1
 | |
| 
 | |
| # https://github.com/rbenv/rbenv
 | |
| curl -fsSL https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-doctor | bash
 | |
| """
 | |
| 
 | |
| [tasks.install_flutter]
 | |
| script = """
 | |
| ret = which flutter
 | |
| if is_empty ${ret}
 | |
|     echo "[❤️] Follow the https://flutter.dev/docs/get-started/install instructions to install the flutter, skip if you already installed."
 | |
|     echo "Switch to dev channel with command: flutter channel stable"
 | |
|     exit -1
 | |
| end
 | |
| """
 | |
| script_runner = "@duckscript"
 | |
| 
 | |
| 
 | |
| [tasks.enable_git_hook]
 | |
| dependencies = ["download_gitlint"]
 | |
| script = """
 | |
| git config core.hooksPath .githooks
 | |
| """
 | |
| script_runner = "@duckscript"
 | |
| 
 | |
| [tasks.download_gitlint]
 | |
| script = """
 | |
| GOLINT_FILENAME="go-gitlint_1.1.0_osx_x86_64.tar.gz"
 | |
| curl -L https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME} --output ${GOLINT_FILENAME}
 | |
| tar -zxv --directory ../.githooks/. -f ${GOLINT_FILENAME} gitlint
 | |
| rm ${GOLINT_FILENAME}
 | |
| """
 | |
| 
 | |
| [tasks.download_gitlint.linux]
 | |
| script = """
 | |
| GOLINT_FILENAME="go-gitlint_1.1.0_linux_x86_64.tar.gz"
 | |
| wget https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME}
 | |
| tar -zxv --directory ../.githooks/. -f ${GOLINT_FILENAME} gitlint
 | |
| rm ${GOLINT_FILENAME}
 | |
| """
 | |
| 
 | |
| 
 | |
| [tasks.download_gitlint.windows]
 | |
| script = """
 | |
| GOLINT_FILENAME="go-gitlint_1.1.0_windows_x86_64.tar.gz"
 | |
| if curl --proto '=https' --tlsv1.2 -sSfL https://github.com/llorllale/go-gitlint/releases/download/1.1.0/${GOLINT_FILENAME} -o ${GOLINT_FILENAME}; then
 | |
|    tar -zxv --directory ../.githooks/. -f ${GOLINT_FILENAME} gitlint.exe
 | |
|    rm ${GOLINT_FILENAME}
 | |
| else
 | |
|  echo "Failed to install go-gitlint"
 | |
| fi
 | |
| """ | 
