mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2025-07-25 09:57:46 +00:00
183 lines
4.9 KiB
TOML
183 lines
4.9 KiB
TOML
[tasks.appflowy-flutter-deps-tools]
|
||
run_task = { name = ["install_flutter_prerequests"] }
|
||
|
||
[tasks.appflowy-tauri-deps-tools]
|
||
run_task = { name = ["install_tauri_prerequests"] }
|
||
|
||
[tasks.appflowy-flutter-dev-tools]
|
||
run_task = { name = ["appflowy-flutter-deps-tools","install_diesel"] }
|
||
|
||
[tasks.appflowy-tauri-dev-tools]
|
||
run_task = { name = ["appflowy-tauri-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 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_tauri_prerequests]
|
||
dependencies=["install_targets", "install_tauri_protobuf"]
|
||
|
||
[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
|
||
""" |