* chore: build tauri
* chore: codesign tauri app
* chore: test update from electron to tauri
* chore: test update from electron to tauri
* chore: update csp config and cors
* chore: nightly to 1317
* fix: correct pre_install_path
* chore: jan-nightly to 1320
* chore: self sign tauri
* chore: CI/CD for Windows, Linux
commit 4897b2bcf7f044080fce81bd725515e62fc4eb29
Author: vansangpfiev <vansangpfiev@gmail.com>
Date: Fri Apr 25 15:32:37 2025 +0700
chore: cleanup tauri config
commit 66c5676ec146b25c89cccb570ede7c070dbc5853
Author: vansangpfiev <vansangpfiev@gmail.com>
Date: Fri Apr 25 14:37:04 2025 +0700
fix: store path
commit bc6560c576873e55f84c4b21764bedbdd9dbd5a8
Author: vansangpfiev <vansangpfiev@gmail.com>
Date: Thu Apr 24 09:39:50 2025 +0700
chore: Linux CI
commit b036275dc9f1df7614aaca3b358b9c6493082512
Author: vansangpfiev <vansangpfiev@gmail.com>
Date: Wed Apr 23 16:41:22 2025 +0700
chore: updater windows
commit e91b543dbdd82bd4a44db7550ffb993897b56081
Merge: dea80a83 4a54a378
Author: vansangpfiev <vansangpfiev@gmail.com>
Date: Wed Apr 23 16:39:24 2025 +0700
Merge branch 'chore/tauri-cicd' of https://github.com/menloresearch/jan into chore/tauri-cicd-windows
commit dea80a83966113b108137c385a3c28920d2adda4
Author: Minh141120 <minh.itptit@gmail.com>
Date: Wed Apr 23 11:47:04 2025 +0700
chore: update azuresigntool install method
commit 2ec2234082be57e53887192153fa982a134ea535
Author: Minh141120 <minh.itptit@gmail.com>
Date: Wed Apr 23 11:01:31 2025 +0700
chore: add verbose option build tauri and targets app and dmg for macos build
commit 42c7592cc89641130545551d4d864268cde3d5b0
Author: Minh141120 <minh.itptit@gmail.com>
Date: Wed Apr 23 10:35:27 2025 +0700
chore: update targets build
commit 4c8ba44ff60cdef8b639fa189f5729dc69c5aff6
Author: Minh141120 <minh.itptit@gmail.com>
Date: Wed Apr 23 09:53:21 2025 +0700
refactor: remove debug step and upload electron build artifact
commit 158c08b465e18823e0f2b9a30fd5ecd589d08934
Author: Minh141120 <minh.itptit@gmail.com>
Date: Wed Apr 23 09:21:08 2025 +0700
chore: add script codesign on windows
commit 4545b2bcd852029472298e530176494992dd0950
Author: vansangpfiev <vansangpfiev@gmail.com>
Date: Tue Apr 22 13:39:49 2025 +0700
chore: update csp setting
commit f64a1e1ca958e3c1c685485a06d45956ddcf14a0
Author: Minh141120 <minh.itptit@gmail.com>
Date: Tue Apr 22 10:15:14 2025 +0700
chore: update azuresigntool installation
commit 1f4b9d18b332d5205685a6fe68f5dfaf973d273c
Author: Minh141120 <minh.itptit@gmail.com>
Date: Tue Apr 22 09:49:42 2025 +0700
chore: update signcommand
commit 911a3ab3540f872f6fe906c8e2135440d39f108c
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 19:19:23 2025 +0700
chore: update codesign tauri windows
commit fba15c4c2de43b4cb87308ef998cdd8dc88b1ce6
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 19:04:29 2025 +0700
chore: update path azuresigntool
commit 8b8c950b56f5aa42baf76aba064fc99b50758150
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 18:38:56 2025 +0700
chore: update azuresigntool path
commit bd67a2b7908b5f3a126c634a840e0b941373a3c6
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 17:47:33 2025 +0700
chore: update azuresigntool url
commit f70effca7c09cd2fe9b5866b4f194b64a13294b9
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 17:33:32 2025 +0700
chore: update azuretoolsign download
commit 667910772f30369b9afa554ad06e4378f93d0b1a
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 16:56:25 2025 +0700
chore: update path azuresigntool
commit f1610bfd80dfa996db4a777bb58475f2e6d02cc6
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 16:52:36 2025 +0700
chore: update azuresigntool path
commit 0873d56fb88fb66c884eff31d3f63aa99858f038
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 16:19:46 2025 +0700
chore: add debug step
commit 88e0b1a697ed478375429686eb1c03ae71a3b447
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 15:58:39 2025 +0700
ci(windows): download AzureSignTool to src-tauri for Tauri code signing
commit 47f94e86589826c3941a3d602298f188d6480980
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 15:21:20 2025 +0700
fix: AzureSignTool signcommand Path
commit dc014a7905fd0b49b5972e24b4d5773c5dc29ea5
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 15:00:02 2025 +0700
chore: add debug step azuresigntool tauri windows
commit ee7b6163a8419604dfba7dc2f967026be4884da4
Author: Minh141120 <minh.itptit@gmail.com>
Date: Mon Apr 21 14:33:33 2025 +0700
chore: tauri windows codesign
commit 6607090857120531d8a096f45ff556c3f2553e53
Author: vansangpfiev <vansangpfiev@gmail.com>
Date: Thu Apr 17 10:29:50 2025 +0700
chore: add windows download script
commit 4b1a5cc29c77eecca75978a1ab3126d2c710e738
Author: Nguyen Ngoc Minh <kuuhakuu@Nguyens-MacBook-Air.local>
Date: Mon Apr 21 13:44:34 2025 +0700
chore: tauri codesign windows
* chore: workflows for tauri
* chore: test tauri manual build
* chore: hide windows install detail
* chore: upload artifacts
* feat: run mcp with bundled bun and uv
* chore: clean up
* chore: update cicd
* chore: remove deprecated workflows
* chore: update allowed origins
* chore: pull binaries windows, linux (#4963)
* fix: get bun and uv from execution path
* fix: macos
* fix: typo
* fix: remove old Jan binaries on windows
* chore: build bun and uv universal
* fix: appimage bundle bun issue
* chore: libfuse2 for linux CI
* feat: tauri cicd preview (#4975)
* feat: tauri cicd preview
* chore: add suffix preview for tauri build
* chore: update condition for s3 upload nightly channel
* chore: add debug step for tauri macos preview
* chore: update aws s3 macos tauri build
* refactor: remove debug code
* chore: update artifact name tauri macos build
* chore: add tauri build step for electron beta and stable
* chore: update preview
* chore: bump llama.cpp engine to b5351
* chore: bump engine version
* fix: cors windows
---------
Co-authored-by: vansangpfiev <sang@jan.ai>
Co-authored-by: Service Account <service@jan.ai>
Co-authored-by: Louis <louis@jan.ai>
Co-authored-by: hiento09 <tominhhien97@gmail.com>
Co-authored-by: Nguyen Ngoc Minh <91668012+Minh141120@users.noreply.github.com>
164 lines
5.9 KiB
Makefile
164 lines
5.9 KiB
Makefile
# Makefile for Jan Electron App - Build, Lint, Test, and Clean
|
|
|
|
REPORT_PORTAL_URL ?= ""
|
|
REPORT_PORTAL_API_KEY ?= ""
|
|
REPORT_PORTAL_PROJECT_NAME ?= ""
|
|
REPORT_PORTAL_LAUNCH_NAME ?= "Jan App"
|
|
REPORT_PORTAL_DESCRIPTION ?= "Jan App report"
|
|
|
|
# Default target, does nothing
|
|
all:
|
|
@echo "Specify a target to run"
|
|
|
|
# Config yarn version
|
|
|
|
config-yarn:
|
|
corepack enable
|
|
corepack prepare yarn@4.5.3 --activate
|
|
yarn --version
|
|
yarn config set -H enableImmutableInstalls false
|
|
|
|
# Installs yarn dependencies and builds core and extensions
|
|
install-and-build: config-yarn
|
|
ifeq ($(OS),Windows_NT)
|
|
echo "skip"
|
|
endif
|
|
yarn install
|
|
yarn build:joi
|
|
yarn build:core
|
|
yarn build:server
|
|
yarn build:extensions
|
|
|
|
check-file-counts: install-and-build
|
|
ifeq ($(OS),Windows_NT)
|
|
powershell -Command "if ((Get-ChildItem -Path pre-install -Filter *.tgz | Measure-Object | Select-Object -ExpandProperty Count) -ne (Get-ChildItem -Path extensions -Directory | Where-Object Name -like *-extension* | Measure-Object | Select-Object -ExpandProperty Count)) { Write-Host 'Number of .tgz files in pre-install does not match the number of subdirectories in extensions with package.json'; exit 1 } else { Write-Host 'Extension build successful' }"
|
|
else
|
|
@tgz_count=$$(find pre-install -type f -name "*.tgz" | wc -l); dir_count=$$(find extensions -mindepth 1 -maxdepth 1 -type d -exec test -e '{}/package.json' \; -print | wc -l); if [ $$tgz_count -ne $$dir_count ]; then echo "Number of .tgz files in pre-install ($$tgz_count) does not match the number of subdirectories in extension ($$dir_count)"; exit 1; else echo "Extension build successful"; fi
|
|
endif
|
|
|
|
dev: check-file-counts
|
|
yarn dev
|
|
|
|
dev-tauri: check-file-counts
|
|
yarn install:cortex
|
|
yarn download:bin
|
|
yarn dev:tauri
|
|
|
|
# Linting
|
|
lint: check-file-counts
|
|
yarn lint
|
|
|
|
update-playwright-config:
|
|
ifeq ($(OS),Windows_NT)
|
|
echo -e "const RPconfig = {\n\
|
|
apiKey: '$(REPORT_PORTAL_API_KEY)',\n\
|
|
endpoint: '$(REPORT_PORTAL_URL)',\n\
|
|
project: '$(REPORT_PORTAL_PROJECT_NAME)',\n\
|
|
launch: '$(REPORT_PORTAL_LAUNCH_NAME)',\n\
|
|
attributes: [\n\
|
|
{\n\
|
|
key: 'key',\n\
|
|
value: 'value',\n\
|
|
},\n\
|
|
{\n\
|
|
value: 'value',\n\
|
|
},\n\
|
|
],\n\
|
|
description: '$(REPORT_PORTAL_DESCRIPTION)',\n\
|
|
}\n$$(cat electron/playwright.config.ts)" > electron/playwright.config.ts;
|
|
sed -i "s/^ reporter: .*/ reporter: [['@reportportal\/agent-js-playwright', RPconfig]],/" electron/playwright.config.ts
|
|
|
|
else ifeq ($(shell uname -s),Linux)
|
|
echo "const RPconfig = {\n\
|
|
apiKey: '$(REPORT_PORTAL_API_KEY)',\n\
|
|
endpoint: '$(REPORT_PORTAL_URL)',\n\
|
|
project: '$(REPORT_PORTAL_PROJECT_NAME)',\n\
|
|
launch: '$(REPORT_PORTAL_LAUNCH_NAME)',\n\
|
|
attributes: [\n\
|
|
{\n\
|
|
key: 'key',\n\
|
|
value: 'value',\n\
|
|
},\n\
|
|
{\n\
|
|
value: 'value',\n\
|
|
},\n\
|
|
],\n\
|
|
description: '$(REPORT_PORTAL_DESCRIPTION)',\n\
|
|
}\n$$(cat electron/playwright.config.ts)" > electron/playwright.config.ts;
|
|
sed -i "s/^ reporter: .*/ reporter: [['@reportportal\/agent-js-playwright', RPconfig]],/" electron/playwright.config.ts
|
|
else
|
|
echo "const RPconfig = {\n\
|
|
apiKey: '$(REPORT_PORTAL_API_KEY)',\n\
|
|
endpoint: '$(REPORT_PORTAL_URL)',\n\
|
|
project: '$(REPORT_PORTAL_PROJECT_NAME)',\n\
|
|
launch: '$(REPORT_PORTAL_LAUNCH_NAME)',\n\
|
|
attributes: [\n\
|
|
{\n\
|
|
key: 'key',\n\
|
|
value: 'value',\n\
|
|
},\n\
|
|
{\n\
|
|
value: 'value',\n\
|
|
},\n\
|
|
],\n\
|
|
description: '$(REPORT_PORTAL_DESCRIPTION)',\n\
|
|
}\n$$(cat electron/playwright.config.ts)" > electron/playwright.config.ts;
|
|
sed -i '' "s|^ reporter: .*| reporter: [['@reportportal\/agent-js-playwright', RPconfig]],|" electron/playwright.config.ts
|
|
endif
|
|
|
|
# Testing
|
|
test: lint
|
|
yarn build:test
|
|
yarn test:coverage
|
|
yarn test
|
|
|
|
# Builds and publishes the app
|
|
build-and-publish: check-file-counts
|
|
yarn build:publish
|
|
|
|
# Build
|
|
build: check-file-counts
|
|
yarn build
|
|
|
|
build-tauri: check-file-counts
|
|
yarn build-tauri
|
|
|
|
clean:
|
|
ifeq ($(OS),Windows_NT)
|
|
-powershell -Command "Get-ChildItem -Path . -Include node_modules, .next, dist, build, out, .turbo, .yarn -Recurse -Directory | Remove-Item -Recurse -Force"
|
|
-powershell -Command "Get-ChildItem -Path . -Include package-lock.json, tsconfig.tsbuildinfo -Recurse -File | Remove-Item -Recurse -Force"
|
|
-powershell -Command "Remove-Item -Recurse -Force ./pre-install/*.tgz"
|
|
-powershell -Command "Remove-Item -Recurse -Force ./extensions/*/*.tgz"
|
|
-powershell -Command "Remove-Item -Recurse -Force ./electron/pre-install/*.tgz"
|
|
-powershell -Command "if (Test-Path \"$($env:USERPROFILE)\jan\extensions\") { Remove-Item -Path \"$($env:USERPROFILE)\jan\extensions\" -Recurse -Force }"
|
|
else ifeq ($(shell uname -s),Linux)
|
|
find . -name "node_modules" -type d -prune -exec rm -rf '{}' +
|
|
find . -name ".next" -type d -exec rm -rf '{}' +
|
|
find . -name "dist" -type d -exec rm -rf '{}' +
|
|
find . -name "build" -type d -exec rm -rf '{}' +
|
|
find . -name "out" -type d -exec rm -rf '{}' +
|
|
find . -name ".turbo" -type d -exec rm -rf '{}' +
|
|
find . -name ".yarn" -type d -exec rm -rf '{}' +
|
|
find . -name "packake-lock.json" -type f -exec rm -rf '{}' +
|
|
find . -name "package-lock.json" -type f -exec rm -rf '{}' +
|
|
rm -rf ./pre-install/*.tgz
|
|
rm -rf ./extensions/*/*.tgz
|
|
rm -rf ./electron/pre-install/*.tgz
|
|
rm -rf "~/jan/extensions"
|
|
rm -rf "~/.cache/jan*"
|
|
else
|
|
find . -name "node_modules" -type d -prune -exec rm -rf '{}' +
|
|
find . -name ".next" -type d -exec rm -rf '{}' +
|
|
find . -name "dist" -type d -exec rm -rf '{}' +
|
|
find . -name "build" -type d -exec rm -rf '{}' +
|
|
find . -name "out" -type d -exec rm -rf '{}' +
|
|
find . -name ".turbo" -type d -exec rm -rf '{}' +
|
|
find . -name ".yarn" -type d -exec rm -rf '{}' +
|
|
find . -name "package-lock.json" -type f -exec rm -rf '{}' +
|
|
rm -rf ./pre-install/*.tgz
|
|
rm -rf ./extensions/*/*.tgz
|
|
rm -rf ./electron/pre-install/*.tgz
|
|
rm -rf ~/jan/extensions
|
|
rm -rf ~/Library/Caches/jan*
|
|
endif
|