🐛 update prerequisites url

This commit is contained in:
Tw93
2024-12-16 14:21:34 +08:00
parent 9a28784f4d
commit a566bb2849
7 changed files with 69 additions and 55 deletions

View File

@@ -138,7 +138,7 @@ In addition, double-click the title bar to switch to full-screen mode. For Mac u
## Before starting ## Before starting
1. **For beginners**: Play with Popular Packages to find out Pake's capabilities, or try to pack your application with [GitHub Actions](<https://github.com/tw93/Pake/wiki/Online-Compilation-(used-by-ordinary-users)>). Don't hesitate to reach for assistance at [Discussion](https://github.com/tw93/Pake/discussions)! 1. **For beginners**: Play with Popular Packages to find out Pake's capabilities, or try to pack your application with [GitHub Actions](<https://github.com/tw93/Pake/wiki/Online-Compilation-(used-by-ordinary-users)>). Don't hesitate to reach for assistance at [Discussion](https://github.com/tw93/Pake/discussions)!
2. **For developers**: “Command-Line Packaging” supports macOS fully. For Windows/Linux users, it requires some tinkering. [Configure your environment](https://tauri.app/v1/guides/getting-started/prerequisites) before getting started. 2. **For developers**: “Command-Line Packaging” supports macOS fully. For Windows/Linux users, it requires some tinkering. [Configure your environment](https://tauri.app/start/prerequisites/) before getting started.
3. **For hackers**: For people who are good at both front-end development and Rust, how about customizing your apps' function more with the following [Customized Development](#development)? 3. **For hackers**: For people who are good at both front-end development and Rust, how about customizing your apps' function more with the following [Customized Development](#development)?
## Command-Line Packaging ## Command-Line Packaging
@@ -163,7 +163,7 @@ If you are new to the command line, you can compile packages online with _GitHub
## Development ## Development
Prepare your environment before starting. Make sure you have Rust `>=1.63` and Node `>=16` (e.g., `16.18.1`) installed on your computer. For installation guidance, see [Tauri documentation](https://tauri.app/v1/guides/getting-started/prerequisites). Prepare your environment before starting. Make sure you have Rust `>=1.63` and Node `>=16` (e.g., `16.18.1`) installed on your computer. For installation guidance, see [Tauri documentation](https://tauri.app/start/prerequisites/).
If you are unfamiliar with these, it is better to try out the above tool to pack with one click. If you are unfamiliar with these, it is better to try out the above tool to pack with one click.

View File

@@ -138,7 +138,7 @@
## 开始之前 ## 开始之前
1. **小白用户**:使用 「常用包下载」 方式来把玩 Pake 的能力,可去 [讨论群](https://github.com/tw93/Pake/discussions) 寻求帮助,也可试试 [Action](https://github.com/tw93/Pake/wiki/%E5%9C%A8%E7%BA%BF%E7%BC%96%E8%AF%91%EF%BC%88%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7%E4%BD%BF%E7%94%A8%EF%BC%89) 方式。 1. **小白用户**:使用 「常用包下载」 方式来把玩 Pake 的能力,可去 [讨论群](https://github.com/tw93/Pake/discussions) 寻求帮助,也可试试 [Action](https://github.com/tw93/Pake/wiki/%E5%9C%A8%E7%BA%BF%E7%BC%96%E8%AF%91%EF%BC%88%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7%E4%BD%BF%E7%94%A8%EF%BC%89) 方式。
2. **开发用户**:使用 「命令行一键打包」,对 Mac 比较友好Windows / Linux 需折腾下 [环境配置](https://tauri.app/v1/guides/getting-started/prerequisites)。 2. **开发用户**:使用 「命令行一键打包」,对 Mac 比较友好Windows / Linux 需折腾下 [环境配置](https://tauri.app/start/prerequisites/)。
3. **折腾用户**:假如你前端和 Rust 都会,那可试试下面的 「[定制开发](#定制开发)」,可深度二次开发定制你的功能。 3. **折腾用户**:假如你前端和 Rust 都会,那可试试下面的 「[定制开发](#定制开发)」,可深度二次开发定制你的功能。
## 命令行一键打包 ## 命令行一键打包
@@ -162,7 +162,7 @@ pake https://weekly.tw93.fun --name Weekly --hide-title-bar
## 定制开发 ## 定制开发
开始前请确保电脑已经安装了 Rust `>=1.63` 和 Node `>=16 如 16.18.1` 的环境,此外需参考 [Tauri 文档](https://tauri.app/v1/guides/getting-started/prerequisites) 快速配置好环境才可以开始使用,假如你太不懂,使用上面的命令行打包会更加合适。 开始前请确保电脑已经安装了 Rust `>=1.63` 和 Node `>=16 如 16.18.1` 的环境,此外需参考 [Tauri 文档](https://tauri.app/start/prerequisites/) 快速配置好环境才可以开始使用,假如你太不懂,使用上面的命令行打包会更加合适。
```sh ```sh
# 安装依赖 # 安装依赖

View File

@@ -138,7 +138,7 @@
## 始める前に ## 始める前に
1. **初心者の方へ**: 「人気のパッケージ」を使用して Pake の機能を試してみてください。または、[GitHub Actions](<https://github.com/tw93/Pake/wiki/Online-Compilation-(used-by-ordinary-users)>)を使用してアプリケーションをパッケージ化してみてください。[ディスカッション](https://github.com/tw93/Pake/discussions)で助けを求めることもできます! 1. **初心者の方へ**: 「人気のパッケージ」を使用して Pake の機能を試してみてください。または、[GitHub Actions](<https://github.com/tw93/Pake/wiki/Online-Compilation-(used-by-ordinary-users)>)を使用してアプリケーションをパッケージ化してみてください。[ディスカッション](https://github.com/tw93/Pake/discussions)で助けを求めることもできます!
2. **開発者の方へ**: 「コマンドラインパッケージング」を使用してください。macOS では完全にサポートされています。Windows/Linux ユーザーは、[環境を設定](https://tauri.app/v1/guides/getting-started/prerequisites)する必要があります。 2. **開発者の方へ**: 「コマンドラインパッケージング」を使用してください。macOS では完全にサポートされています。Windows/Linux ユーザーは、[環境を設定](https://tauri.app/start/prerequisites/)する必要があります。
3. **ハッカーの方へ**: フロントエンド開発と Rust の両方が得意な方は、以下の[カスタマイズ開発](#開発)でアプリの機能をさらにカスタマイズしてみてください。 3. **ハッカーの方へ**: フロントエンド開発と Rust の両方が得意な方は、以下の[カスタマイズ開発](#開発)でアプリの機能をさらにカスタマイズしてみてください。
## コマンドラインパッケージング ## コマンドラインパッケージング
@@ -162,7 +162,7 @@ pake https://weekly.tw93.fun --name Weekly --hide-title-bar
## 開発 ## 開発
開始する前に、Rust `>=1.63` と Node `>=16` (例: `16.18.1`) がコンピュータにインストールされていることを確認してください。インストールガイドについては、[Tauri ドキュメント](https://tauri.app/v1/guides/getting-started/prerequisites)を参照してください。 開始する前に、Rust `>=1.63` と Node `>=16` (例: `16.18.1`) がコンピュータにインストールされていることを確認してください。インストールガイドについては、[Tauri ドキュメント](https://tauri.app/start/prerequisites/)を参照してください。
これらに不慣れな場合は、上記のツールを使用してワンクリックでパッケージを作成することをお勧めします。 これらに不慣れな場合は、上記のツールを使用してワンクリックでパッケージを作成することをお勧めします。

2
bin/README.md vendored
View File

@@ -10,7 +10,7 @@ npm install pake-cli -g
## Considerations for Windows & Linux Users ## Considerations for Windows & Linux Users
- **CRITICAL**: Consult [Tauri prerequisites](https://tauri.app/v1/guides/getting-started/prerequisites) before proceeding. - **CRITICAL**: Consult [Tauri prerequisites](https://tauri.app/start/prerequisites/) before proceeding.
- For Windows users (ensure that `Win10 SDK (10.0.19041.0)` and `Visual Studio build tool 2022 (>=17.2)` are installed), additional installations are required: - For Windows users (ensure that `Win10 SDK (10.0.19041.0)` and `Visual Studio build tool 2022 (>=17.2)` are installed), additional installations are required:
1. Microsoft Visual C++ 2015-2022 Redistributable (x64) 1. Microsoft Visual C++ 2015-2022 Redistributable (x64)

2
bin/README_CN.md vendored
View File

@@ -10,7 +10,7 @@ npm install pake-cli -g
## Windows/Linux 注意事项 ## Windows/Linux 注意事项
- **非常重要**:请参阅 Tauri 的 [依赖项指南](https://tauri.app/v1/guides/getting-started/prerequisites)。 - **非常重要**:请参阅 Tauri 的 [依赖项指南](https://tauri.app/start/prerequisites/)。
- 对于 Windows 用户,请确保至少安装了 `Win10 SDK(10.0.19041.0)``Visual Studio Build Tools 2022版本 17.2 或更高)`,此外还需要安装以下组件: - 对于 Windows 用户,请确保至少安装了 `Win10 SDK(10.0.19041.0)``Visual Studio Build Tools 2022版本 17.2 或更高)`,此外还需要安装以下组件:
1. Microsoft Visual C++ 2015-2022 Redistributable (x64) 1. Microsoft Visual C++ 2015-2022 Redistributable (x64)

View File

@@ -28,7 +28,7 @@ export default abstract class BaseBuilder {
if (!IS_MAC && !tauriTargetPathExists) { if (!IS_MAC && !tauriTargetPathExists) {
logger.warn('✼ The first use requires installing system dependencies.'); logger.warn('✼ The first use requires installing system dependencies.');
logger.warn('✼ See more in https://tauri.app/v1/guides/getting-started/prerequisites.'); logger.warn('✼ See more in https://tauri.app/guides/getting-started/prerequisites.');
} }
if (!checkRustInstalled()) { if (!checkRustInstalled()) {

106
dist/cli.js vendored
View File

@@ -16,11 +16,11 @@ import updateNotifier from 'update-notifier';
import axios from 'axios'; import axios from 'axios';
import { dir } from 'tmp-promise'; import { dir } from 'tmp-promise';
import { fileTypeFromBuffer } from 'file-type'; import { fileTypeFromBuffer } from 'file-type';
import psl from 'psl'; import * as psl from 'psl';
import isUrl from 'is-url'; import isUrl from 'is-url';
var name = "pake-cli"; var name = "pake-cli";
var version$1 = "2.5.2"; var version$1 = "3.0.0-beta";
var description = "🤱🏻 Turn any webpage into a desktop app with Rust. 🤱🏻 利用 Rust 轻松构建轻量级多端桌面应用。"; var description = "🤱🏻 Turn any webpage into a desktop app with Rust. 🤱🏻 利用 Rust 轻松构建轻量级多端桌面应用。";
var engines = { var engines = {
node: ">=16.0.0" node: ">=16.0.0"
@@ -67,31 +67,31 @@ var type = "module";
var exports = "./dist/pake.js"; var exports = "./dist/pake.js";
var license = "MIT"; var license = "MIT";
var dependencies = { var dependencies = {
"@tauri-apps/api": "^1.5.4", "@tauri-apps/api": "^1.6.0",
"@tauri-apps/cli": "^2.0.0-beta.22", "@tauri-apps/cli": "^2.1.0",
axios: "^1.6.8", axios: "^1.7.8",
chalk: "^5.3.0", chalk: "^5.3.0",
commander: "^11.1.0", commander: "^11.1.0",
"file-type": "^18.7.0", "file-type": "^18.7.0",
"fs-extra": "^11.2.0", "fs-extra": "^11.2.0",
"is-url": "^1.2.4", "is-url": "^1.2.4",
loglevel: "^1.9.1", loglevel: "^1.9.2",
ora: "^7.0.1", ora: "^7.0.1",
prompts: "^2.4.2", prompts: "^2.4.2",
psl: "^1.9.0", psl: "^1.15.0",
shelljs: "^0.8.5", shelljs: "^0.8.5",
"tmp-promise": "^3.0.3", "tmp-promise": "^3.0.3",
"update-notifier": "^7.0.0" "update-notifier": "^7.3.1"
}; };
var devDependencies = { var devDependencies = {
"@rollup/plugin-alias": "^5.1.0", "@rollup/plugin-alias": "^5.1.1",
"@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-commonjs": "^25.0.8",
"@rollup/plugin-json": "^6.1.0", "@rollup/plugin-json": "^6.1.0",
"@rollup/plugin-replace": "^5.0.5", "@rollup/plugin-replace": "^5.0.7",
"@rollup/plugin-terser": "^0.4.4", "@rollup/plugin-terser": "^0.4.4",
"@types/fs-extra": "^11.0.4", "@types/fs-extra": "^11.0.4",
"@types/is-url": "^1.2.32", "@types/is-url": "^1.2.32",
"@types/node": "^20.12.10", "@types/node": "^20.17.9",
"@types/page-icon": "^0.3.6", "@types/page-icon": "^0.3.6",
"@types/prompts": "^2.4.9", "@types/prompts": "^2.4.9",
"@types/psl": "^1.1.3", "@types/psl": "^1.1.3",
@@ -100,10 +100,10 @@ var devDependencies = {
"@types/update-notifier": "^6.0.8", "@types/update-notifier": "^6.0.8",
"app-root-path": "^3.1.0", "app-root-path": "^3.1.0",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
rollup: "^4.17.2", rollup: "^4.28.0",
"rollup-plugin-typescript2": "^0.36.0", "rollup-plugin-typescript2": "^0.36.0",
tslib: "^2.6.2", tslib: "^2.8.1",
typescript: "^5.4.5" typescript: "^5.7.2"
}; };
var packageJson = { var packageJson = {
name: name, name: name,
@@ -133,6 +133,7 @@ var windows = [
height: 780, height: 780,
resizable: true, resizable: true,
always_on_top: false, always_on_top: false,
dark_mode: false,
activation_shortcut: "", activation_shortcut: "",
disabled_web_shortcuts: false disabled_web_shortcuts: false
} }
@@ -147,43 +148,49 @@ var system_tray = {
linux: true, linux: true,
windows: true windows: true
}; };
var system_tray_path = "icons/icon.png";
var inject = [ var inject = [
]; ];
var proxy_url = "";
var pakeConf = { var pakeConf = {
windows: windows, windows: windows,
user_agent: user_agent, user_agent: user_agent,
system_tray: system_tray, system_tray: system_tray,
inject: inject system_tray_path: system_tray_path,
inject: inject,
proxy_url: proxy_url
}; };
var build = { var productName$1 = "WeRead";
beforeBuildCommand: "", var identifier = "com.pake.weread";
frontendDist: "../dist", var version = "2.0.0";
beforeDevCommand: ""
};
var plugins = { var plugins = {
}; };
var productName = "WeRead";
var version = "1.0.0";
var app = { var app = {
security: { security: {
csp: null csp: null
}, },
trayIcon: { trayIcon: {
iconPath: "png/icon_512.png", iconPath: "png/weread_512.png",
iconAsTemplate: false iconAsTemplate: false,
id: "pake-tray"
}, },
withGlobalTauri: true withGlobalTauri: true
}; };
var build = {
beforeBuildCommand: "",
frontendDist: "../dist",
beforeDevCommand: ""
};
var CommonConf = { var CommonConf = {
build: build, productName: productName$1,
plugins: plugins, identifier: identifier,
productName: productName,
version: version, version: version,
app: app plugins: plugins,
app: app,
build: build
}; };
var identifier$2 = "com.pake.weread";
var bundle$2 = { var bundle$2 = {
icon: [ icon: [
"png/weread_256.ico", "png/weread_256.ico",
@@ -215,11 +222,9 @@ var bundle$2 = {
} }
}; };
var WinConf = { var WinConf = {
identifier: identifier$2,
bundle: bundle$2 bundle: bundle$2
}; };
var identifier$1 = "com.pake.weread";
var bundle$1 = { var bundle$1 = {
icon: [ icon: [
"icons/weread.icns" "icons/weread.icns"
@@ -246,11 +251,10 @@ var bundle$1 = {
] ]
}; };
var MacConf = { var MacConf = {
identifier: identifier$1,
bundle: bundle$1 bundle: bundle$1
}; };
var identifier = "com.pake.weread"; var productName = "weread";
var bundle = { var bundle = {
icon: [ icon: [
"png/weread_512.png" "png/weread_512.png"
@@ -281,7 +285,7 @@ var bundle = {
] ]
}; };
var LinuxConf = { var LinuxConf = {
identifier: identifier, productName: productName,
bundle: bundle bundle: bundle
}; };
@@ -300,7 +304,7 @@ let tauriConfig = {
...CommonConf.app, ...CommonConf.app,
trayIcon: { trayIcon: {
...CommonConf.app.trayIcon, ...CommonConf.app.trayIcon,
...platformConfig.app.trayIcon, ...(platformConfig?.app?.trayIcon ?? {}),
}, },
}, },
build: CommonConf.build, build: CommonConf.build,
@@ -460,7 +464,7 @@ async function combineFiles(files, output) {
} }
async function mergeConfig(url, options, tauriConf) { async function mergeConfig(url, options, tauriConf) {
const { width, height, fullscreen, hideTitleBar, alwaysOnTop, disabledWebShortcuts, activationShortcut, userAgent, showSystemTray, systemTrayIcon, useLocalFile, identifier, name, resizable = true, inject, } = options; const { width, height, fullscreen, hideTitleBar, alwaysOnTop, darkMode, disabledWebShortcuts, activationShortcut, userAgent, showSystemTray, systemTrayIcon, useLocalFile, identifier, name, resizable = true, inject, proxyUrl, installerLanguage, } = options;
const { platform } = process; const { platform } = process;
// Set Windows parameters. // Set Windows parameters.
const tauriConfWindowOptions = { const tauriConfWindowOptions = {
@@ -471,11 +475,15 @@ async function mergeConfig(url, options, tauriConf) {
hide_title_bar: hideTitleBar, hide_title_bar: hideTitleBar,
activation_shortcut: activationShortcut, activation_shortcut: activationShortcut,
always_on_top: alwaysOnTop, always_on_top: alwaysOnTop,
dark_mode: darkMode,
disabled_web_shortcuts: disabledWebShortcuts, disabled_web_shortcuts: disabledWebShortcuts,
}; };
Object.assign(tauriConf.pake.windows[0], { url, ...tauriConfWindowOptions }); Object.assign(tauriConf.pake.windows[0], { url, ...tauriConfWindowOptions });
tauriConf.productName = name; tauriConf.package.productName = name;
tauriConf.identifier = identifier; tauriConf.tauri.bundle.identifier = identifier;
if (platform == "win32") {
tauriConf.tauri.bundle.windows.wix.language[0] = installerLanguage;
}
//Judge the type of URL, whether it is a file or a website. //Judge the type of URL, whether it is a file or a website.
const pathExists = await fsExtra.pathExists(url); const pathExists = await fsExtra.pathExists(url);
if (pathExists) { if (pathExists) {
@@ -516,9 +524,9 @@ async function mergeConfig(url, options, tauriConf) {
// Processing targets are currently only open to Linux. // Processing targets are currently only open to Linux.
if (platform === 'linux') { if (platform === 'linux') {
delete tauriConf.bundle.linux.deb.files; delete tauriConf.bundle.linux.deb.files;
const validTargets = ['all', 'deb', 'appimage']; const validTargets = ['all', 'deb', 'appimage', 'rpm'];
if (validTargets.includes(options.targets)) { if (validTargets.includes(options.targets)) {
tauriConf.bundle.targets = options.targets === 'all' ? ['deb', 'appimage'] : [options.targets]; tauriConf.bundle.targets = options.targets === 'all' ? ['deb', 'appimage', 'rpm'] : [options.targets];
} }
else { else {
logger.warn(`✼ The target must be one of ${validTargets.join(', ')}, the default 'deb' will be used.`); logger.warn(`✼ The target must be one of ${validTargets.join(', ')}, the default 'deb' will be used.`);
@@ -594,6 +602,8 @@ async function mergeConfig(url, options, tauriConf) {
} }
} }
tauriConf.app.trayIcon.iconPath = trayIconPath; tauriConf.app.trayIcon.iconPath = trayIconPath;
tauriConf.pake.system_tray_path = trayIconPath;
delete tauriConf.app.trayIcon;
const injectFilePath = path.join(npmDirectory, `src-tauri/src/inject/custom.js`); const injectFilePath = path.join(npmDirectory, `src-tauri/src/inject/custom.js`);
// inject js or css files // inject js or css files
if (inject?.length > 0) { if (inject?.length > 0) {
@@ -609,6 +619,7 @@ async function mergeConfig(url, options, tauriConf) {
tauriConf.pake.inject = []; tauriConf.pake.inject = [];
await fsExtra.writeFile(injectFilePath, ''); await fsExtra.writeFile(injectFilePath, '');
} }
tauriConf.pake.proxy_url = proxyUrl || "";
// Save config file. // Save config file.
const platformConfigPaths = { const platformConfigPaths = {
win32: 'tauri.windows.conf.json', win32: 'tauri.windows.conf.json',
@@ -617,6 +628,7 @@ async function mergeConfig(url, options, tauriConf) {
}; };
const configPath = path.join(tauriConfigDirectory, platformConfigPaths[platform]); const configPath = path.join(tauriConfigDirectory, platformConfigPaths[platform]);
const bundleConf = { bundle: tauriConf.bundle }; const bundleConf = { bundle: tauriConf.bundle };
console.log('pakeConfig', tauriConf.pake);
await fsExtra.outputJSON(configPath, bundleConf, { spaces: 4 }); await fsExtra.outputJSON(configPath, bundleConf, { spaces: 4 });
const pakeConfigPath = path.join(tauriConfigDirectory, 'pake.json'); const pakeConfigPath = path.join(tauriConfigDirectory, 'pake.json');
await fsExtra.outputJSON(pakeConfigPath, tauriConf.pake, { spaces: 4 }); await fsExtra.outputJSON(pakeConfigPath, tauriConf.pake, { spaces: 4 });
@@ -636,7 +648,7 @@ class BaseBuilder {
const tauriTargetPathExists = await fsExtra.pathExists(tauriTargetPath); const tauriTargetPathExists = await fsExtra.pathExists(tauriTargetPath);
if (!IS_MAC && !tauriTargetPathExists) { if (!IS_MAC && !tauriTargetPathExists) {
logger.warn('✼ The first use requires installing system dependencies.'); logger.warn('✼ The first use requires installing system dependencies.');
logger.warn('✼ See more in https://tauri.app/v1/guides/getting-started/prerequisites.'); logger.warn('✼ See more in https://tauri.app/guides/getting-started/prerequisites.');
} }
if (!checkRustInstalled()) { if (!checkRustInstalled()) {
const res = await prompts({ const res = await prompts({
@@ -799,6 +811,7 @@ const DEFAULT_PAKE_OPTIONS = {
resizable: true, resizable: true,
hideTitleBar: false, hideTitleBar: false,
alwaysOnTop: false, alwaysOnTop: false,
darkMode: false,
disabledWebShortcuts: false, disabledWebShortcuts: false,
activationShortcut: '', activationShortcut: '',
userAgent: '', userAgent: '',
@@ -807,9 +820,10 @@ const DEFAULT_PAKE_OPTIONS = {
targets: 'deb', targets: 'deb',
useLocalFile: false, useLocalFile: false,
systemTrayIcon: '', systemTrayIcon: '',
proxyUrl: "",
debug: false, debug: false,
inject: [], inject: [],
safeDomain: [], installerLanguage: 'en-US',
}; };
async function checkUpdateTips() { async function checkUpdateTips() {
@@ -995,17 +1009,17 @@ program
.option('--multi-arch', 'Only for Mac, supports both Intel and M1', DEFAULT_PAKE_OPTIONS.multiArch) .option('--multi-arch', 'Only for Mac, supports both Intel and M1', DEFAULT_PAKE_OPTIONS.multiArch)
.option('--inject [injects...]', 'Injection of .js or .css Files', DEFAULT_PAKE_OPTIONS.inject) .option('--inject [injects...]', 'Injection of .js or .css Files', DEFAULT_PAKE_OPTIONS.inject)
.option('--debug', 'Debug build and more output', DEFAULT_PAKE_OPTIONS.debug) .option('--debug', 'Debug build and more output', DEFAULT_PAKE_OPTIONS.debug)
.option('--proxy-url', "Proxy URL", DEFAULT_PAKE_OPTIONS.proxyUrl)
.addOption(new Option('--user-agent <string>', 'Custom user agent').default(DEFAULT_PAKE_OPTIONS.userAgent).hideHelp()) .addOption(new Option('--user-agent <string>', 'Custom user agent').default(DEFAULT_PAKE_OPTIONS.userAgent).hideHelp())
.addOption(new Option('--targets <string>', 'Only for Linux, option "deb" or "appimage"').default(DEFAULT_PAKE_OPTIONS.targets).hideHelp()) .addOption(new Option('--targets <string>', 'Only for Linux, option "deb" or "appimage"').default(DEFAULT_PAKE_OPTIONS.targets).hideHelp())
.addOption(new Option('--always-on-top', 'Always on the top level').default(DEFAULT_PAKE_OPTIONS.alwaysOnTop).hideHelp()) .addOption(new Option('--always-on-top', 'Always on the top level').default(DEFAULT_PAKE_OPTIONS.alwaysOnTop).hideHelp())
.addOption(new Option('--dark-mode', 'Force Mac app to use dark mode').default(DEFAULT_PAKE_OPTIONS.darkMode).hideHelp())
.addOption(new Option('--disabled-web-shortcuts', 'Disabled webPage shortcuts') .addOption(new Option('--disabled-web-shortcuts', 'Disabled webPage shortcuts')
.default(DEFAULT_PAKE_OPTIONS.disabledWebShortcuts) .default(DEFAULT_PAKE_OPTIONS.disabledWebShortcuts)
.hideHelp()) .hideHelp())
.addOption(new Option('--safe-domain [domains...]', 'Domains that Require Security Configuration')
.default(DEFAULT_PAKE_OPTIONS.safeDomain)
.hideHelp())
.addOption(new Option('--show-system-tray', 'Show system tray in app').default(DEFAULT_PAKE_OPTIONS.showSystemTray).hideHelp()) .addOption(new Option('--show-system-tray', 'Show system tray in app').default(DEFAULT_PAKE_OPTIONS.showSystemTray).hideHelp())
.addOption(new Option('--system-tray-icon <string>', 'Custom system tray icon').default(DEFAULT_PAKE_OPTIONS.systemTrayIcon).hideHelp()) .addOption(new Option('--system-tray-icon <string>', 'Custom system tray icon').default(DEFAULT_PAKE_OPTIONS.systemTrayIcon).hideHelp())
.addOption(new Option('--installer-language <string>', 'Installer language').default(DEFAULT_PAKE_OPTIONS.installerLanguage).hideHelp())
.version(packageJson.version, '-v, --version', 'Output the current version') .version(packageJson.version, '-v, --version', 'Output the current version')
.action(async (url, options) => { .action(async (url, options) => {
await checkUpdateTips(); await checkUpdateTips();