| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 | [tasks.flowy_dev]run_task = { name = ["install_prerequests","install_diesel"] }[tasks.install_windows_deps.windows]dependencies=["check_duckscript_installation", "check_visual_studio_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}pos = last_indexof ${stdout} .new_str = substring ${stdout} 0 ${pos}# TODO: will raise error if there are more than 1 visual studio installationnewer = semver_is_newer ${new_str} 16.11.0assert ${newer} "Visual studio 2019 is not installed or version is lower than 16.11.0""""script_runner = "@duckscript"[tasks.check_duckscript_installation.windows]script = """@echo off@duck -h > nulif %errorlevel% GTR 0 (  echo Please install duckscript at first: cargo install --force duckscript_cli  exit -1)"""[tasks.check_vcpkg.windows]script = """ret = which vcpkgif 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 -1end"""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_clioutput = exec vcpkg_cli probe sqlite3stdout = 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 = """cargo install diesel_cli --no-default-features --features sqlite"""dependencies = ["check_vcpkg"][tasks.install_targets.mac]script = """rustup target add x86_64-apple-iosrustup target add x86_64-apple-darwinrustup target add aarch64-apple-iosrustup 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_prerequests]dependencies=["install_targets"][tasks.install_prerequests.windows]dependencies=["install_targets", "install_windows_deps"][tasks.install_protobuf]script = """# Custom dart:#brew tap dart-lang/dart#brew install dart#pub global activate protoc_plugin#https://pub.dev/packages/protoc_plugindart pub global activate protoc_plugincargo install --version 2.22.1 protobuf-codegen"""[tasks.install_protobuf.windows]script = """ret = which dartif is_empty ${ret}    echo Please make sure flutter/dart is properly installed and in PATH env var    exit -1endret = which protoc-gen-dartif is_empty ${ret}    exec cmd.exe /c dart pub global activate protoc_plugin    home_dir = get_home_dir    echo Please add '${home_dir}\\\\AppData\\\\Local\\\\Pub\\\\Cache\\\\bin' into PATH env var    exit -1endexec cargo install --version 2.22.1 protobuf-codegen"""script_runner = "@duckscript"[tasks.install_tools]script = """rustup component add rustfmtcargo install cargo-expandcargo install cargo-watchcargo install cargo-cachecargo install bunyan"""[tasks.install_cocoapods]script = """# execute "xcode-select --install" before if "extconf.rb failed" error occurssudo gem install cocoapods"""[tasks.install_rbenv]script = """brew install rbenvrbenv initrbenv install 2.7.1rbenv global 2.7.1# https://github.com/rbenv/rbenvcurl -fsSL https://github.com/rbenv/rbenv-installer/raw/main/bin/rbenv-doctor | bash"""[tasks.install_fish]script = """brew install fish# https://stackoverflow.com/questions/26208231/modifying-path-with-fish-shell# Export the PATH using the command:# set -Ua fish_user_paths the_path_you_want_to_export"""[tasks.install_flutter]script = """ret = which flutterif 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 -1end"""script_runner = "@duckscript"
 |