2025-11-10 15:55:15 +01:00
|
|
|
experimental_monorepo_root = true
|
|
|
|
|
|
2026-01-28 14:55:11 +01:00
|
|
|
[monorepo]
|
|
|
|
|
config_roots = [
|
2026-05-18 11:09:33 -04:00
|
|
|
"packages/plugin-core",
|
2026-01-28 14:55:11 +01:00
|
|
|
"server",
|
2026-05-11 14:49:45 -04:00
|
|
|
"packages/cli",
|
2026-01-28 14:55:11 +01:00
|
|
|
"deployment",
|
|
|
|
|
"mobile",
|
|
|
|
|
"e2e",
|
|
|
|
|
"web",
|
|
|
|
|
"docs",
|
|
|
|
|
".github",
|
2026-05-06 17:03:54 +02:00
|
|
|
"machine-learning",
|
2026-01-28 14:55:11 +01:00
|
|
|
]
|
|
|
|
|
|
2025-09-04 18:58:42 +02:00
|
|
|
[tools]
|
2026-04-21 09:47:32 +00:00
|
|
|
node = "24.15.0"
|
2026-05-27 21:44:44 +05:30
|
|
|
"aqua:flutter/flutter" = "3.44.0"
|
2026-05-20 16:56:27 +02:00
|
|
|
pnpm = "10.33.4"
|
2026-05-05 12:52:14 +02:00
|
|
|
terragrunt = "1.0.3"
|
2026-04-21 13:31:16 +02:00
|
|
|
opentofu = "1.11.6"
|
2026-01-30 05:03:56 +00:00
|
|
|
java = "21.0.2"
|
2026-05-12 14:12:27 +02:00
|
|
|
"npm:oazapfts" = "7.5.0"
|
2026-05-18 11:09:33 -04:00
|
|
|
"github:extism/cli" = "1.6.3"
|
|
|
|
|
"github:webassembly/binaryen" = "version_124"
|
|
|
|
|
"github:extism/js-pdk" = "1.6.0"
|
2025-11-10 19:50:19 +00:00
|
|
|
|
|
|
|
|
[tools."github:CQLabs/homebrew-dcm"]
|
2026-05-02 03:39:29 +07:00
|
|
|
version = "1.37.0"
|
2025-11-10 19:50:19 +00:00
|
|
|
bin = "dcm"
|
2026-05-11 14:04:38 -04:00
|
|
|
postinstall = "chmod +x \"$MISE_TOOL_INSTALL_PATH/dcm\" || true"
|
2025-09-04 18:58:42 +02:00
|
|
|
|
2026-05-18 19:18:52 +05:30
|
|
|
[tools."github:CQLabs/homebrew-dcm".platforms]
|
|
|
|
|
linux-x64 = { asset_pattern = "dcm-linux-x64-release.zip" }
|
|
|
|
|
linux-arm64 = { asset_pattern = "dcm-linux-arm-release.zip" }
|
|
|
|
|
macos-x64 = { asset_pattern = "dcm-macos-x64-release.zip" }
|
|
|
|
|
macos-arm64 = { asset_pattern = "dcm-macos-arm-release.zip" }
|
|
|
|
|
windows-x64 = { asset_pattern = "dcm-windows-release.zip" }
|
|
|
|
|
|
2026-05-01 13:03:49 -04:00
|
|
|
[tools."github:jellyfin/jellyfin-ffmpeg"]
|
|
|
|
|
version = "7.1.3-6"
|
|
|
|
|
|
|
|
|
|
[tools."github:jellyfin/jellyfin-ffmpeg".platforms]
|
|
|
|
|
linux-x64 = { asset_pattern = "jellyfin-ffmpeg_*_portable_linux64-gpl.tar.xz" }
|
|
|
|
|
linux-arm64 = { asset_pattern = "jellyfin-ffmpeg_*_portable_linuxarm64-gpl.tar.xz" }
|
|
|
|
|
macos-x64 = { asset_pattern = "jellyfin-ffmpeg_*_portable_mac64-gpl.tar.xz" }
|
|
|
|
|
macos-arm64 = { asset_pattern = "jellyfin-ffmpeg_*_portable_macarm64-gpl.tar.xz" }
|
|
|
|
|
|
2025-09-04 18:58:42 +02:00
|
|
|
[settings]
|
|
|
|
|
experimental = true
|
|
|
|
|
pin = true
|
2026-05-20 13:37:33 +02:00
|
|
|
lockfile = true
|
2025-09-04 18:10:36 -04:00
|
|
|
|
2026-05-18 11:09:33 -04:00
|
|
|
[tasks.plugins]
|
|
|
|
|
run = [
|
|
|
|
|
"pnpm --filter @immich/plugin-sdk --filter @immich/plugin-core install --frozen-lockfile",
|
2026-05-20 16:43:30 +02:00
|
|
|
"pnpm --filter @immich/plugin-sdk --filter @immich/plugin-core build",
|
2026-05-18 11:09:33 -04:00
|
|
|
]
|
|
|
|
|
|
2026-05-11 17:46:02 -04:00
|
|
|
[tasks.open-api-typescript]
|
|
|
|
|
run = [
|
2026-05-12 14:12:27 +02:00
|
|
|
"oazapfts --optimistic --argumentStyle=object --useEnumType --allSchemas open-api/immich-openapi-specs.json packages/sdk/src/fetch-client.ts",
|
2026-05-11 17:46:02 -04:00
|
|
|
{ task = "//:sdk:install" },
|
|
|
|
|
{ task = "//:sdk:build" },
|
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
[tasks.open-api-dart]
|
|
|
|
|
dir = "open-api"
|
|
|
|
|
run = "bash ./bin/generate-dart-sdk.sh"
|
|
|
|
|
|
|
|
|
|
[tasks.open-api]
|
|
|
|
|
env = { SHARP_IGNORE_GLOBAL_LIBVIPS = true }
|
|
|
|
|
run = [
|
2026-05-18 11:09:33 -04:00
|
|
|
{ task = "//:plugins" },
|
2026-05-11 17:46:02 -04:00
|
|
|
{ task = "//server:install" },
|
|
|
|
|
{ task = "//server:build" },
|
|
|
|
|
{ task = "//server:sync-open-api" },
|
2026-05-20 16:43:30 +02:00
|
|
|
{ task = ":open-api-typescript" },
|
|
|
|
|
{ task = ":open-api-dart" },
|
2026-05-11 17:46:02 -04:00
|
|
|
]
|
|
|
|
|
|
|
|
|
|
[tasks.sql]
|
|
|
|
|
dir = "server"
|
|
|
|
|
run = "node ./dist/bin/sync-sql.js"
|
|
|
|
|
|
2025-11-10 15:55:15 +01:00
|
|
|
# SDK tasks
|
2025-09-04 18:10:36 -04:00
|
|
|
[tasks."sdk:install"]
|
2026-05-11 13:37:10 -04:00
|
|
|
dir = "packages/sdk"
|
2026-05-12 15:21:04 -04:00
|
|
|
run = "pnpm --filter @immich/sdk install --frozen-lockfile"
|
2025-09-04 18:10:36 -04:00
|
|
|
|
|
|
|
|
[tasks."sdk:build"]
|
2026-05-11 13:37:10 -04:00
|
|
|
dir = "packages/sdk"
|
2026-05-12 15:21:04 -04:00
|
|
|
run = "pnpm build"
|
2025-09-04 18:10:36 -04:00
|
|
|
|
2025-11-10 15:55:15 +01:00
|
|
|
# i18n tasks
|
2025-09-04 18:10:36 -04:00
|
|
|
[tasks."i18n:format"]
|
2026-05-12 15:21:04 -04:00
|
|
|
run = "pnpm format"
|
2025-09-04 18:10:36 -04:00
|
|
|
|
|
|
|
|
[tasks."i18n:format-fix"]
|
2026-05-12 15:21:04 -04:00
|
|
|
run = "pnpm format:fix"
|