このディレクトリには、プロジェクトのビルドとデプロイに使用するスクリプトが含まれています。
すべてのビルドスクリプトは、ルートディレクトリの.envファイルからバージョン情報とアプリケーション設定を自動的に読み取ります。
# .env
VERSION=1.0.0
APP_NAME=Your App Name
APP_NAME_KEBAB=your-app-name
APP_DESCRIPTION=Your app description
AUTHOR_NAME=Your Name
GITHUB_USER=username
GITHUB_REPO=repository-name
PROJECT_URL=https://github.com/username/repositoryバージョンやアプリケーション情報を変更する場合は、.envファイルのみを更新してください。各パッケージマネージャーのテンプレートファイル(.choco/app.nuspec.template, .homebrew/app.rb.template)は、プレースホルダー(例: {{VERSION}}, {{APP_NAME}})を使用しており、ビルド時に自動的に置換されます。
- Chocolatey:
.choco/app.nuspec.template→.choco/{APP_NAME_KEBAB}.nuspec - Homebrew:
.homebrew/app.rb.template→.homebrew/{APP_NAME_KEBAB}.rb
テンプレートファイルの変数プレースホルダー:
{{VERSION}}- アプリケーションバージョン{{APP_NAME}}- アプリケーション名{{APP_NAME_KEBAB}}- ケバブケース形式のアプリケーション名{{APP_DESCRIPTION}}- アプリケーションの説明{{AUTHOR_NAME}}- 作者名{{GITHUB_USER}}- GitHubユーザー名{{PROJECT_URL}}- プロジェクトURL- その他、.envファイル内の変数
scripts/
├── build/ # ネイティブビルドスクリプト
│ ├── build-windows-admin.ps1
│ └── build-windows.ps1
├── docker/ # Dockerビルドスクリプト
│ ├── docker-build.cmd
│ ├── docker-build.ps1
│ └── docker-build.sh
├── build-chocolatey.ps1 # Chocolateyパッケージ作成
├── build-homebrew.sh # Homebrewフォーミュラ作成
├── build-linux-docker.ps1 # Linuxクロスビルド (PowerShell)
├── build-linux-docker.sh # Linuxクロスビルド (Bash)
├── build-macos-compatible.sh
├── build-macos-x64-docker.sh
└── setup-x86-libs.sh # x86ライブラリセットアップ
Windows用のネイティブビルドスクリプト(vcpkg使用)
.\scripts\build\build-windows.ps1管理者権限が必要なWindows向けビルド
Linux向けクロスプラットフォームビルド(Bash)
./scripts/docker/docker-build.sh x64 # x86_64
./scripts/docker/docker-build.sh arm64 # ARM64Linux向けクロスプラットフォームビルド(PowerShell)
.\scripts\docker\docker-build.ps1 -Target x64
.\scripts\docker\docker-build.ps1 -Target arm64プロジェクトルートから実行するLinuxビルドラッパー
# Bashから
./scripts/build-linux-docker.sh x64
# PowerShellから
.\scripts\build-linux-docker.ps1 -Target x64Windows用Chocolateyパッケージを作成
.envからバージョンとアプリケーション情報を読み取り、.choco/app.nuspec.templateから.choco/{APP_NAME_KEBAB}.nuspecを生成し、全てのプレースホルダーを置換します。
# .envから自動読み取り
pnpm run package:chocolatey
# バージョンを明示的に指定
.\scripts\build-chocolatey.ps1 -Version 1.0.0プロセス:
.envからバージョンとアプリケーション情報を読み取り- MSIファイルのSHA256チェックサムを計算
.choco/app.nuspec.templateから全ての変数を置換.nupkgパッケージを生成
詳細: .choco/README.md
macOS用Homebrewフォーミュラを生成
.envからバージョンとアプリケーション情報を読み取り、.homebrew/app.rb.templateから.homebrew/{APP_NAME_KEBAB}.rbを生成し、全てのプレースホルダーを置換します。
# .envから自動読み取り
pnpm run package:homebrew
# バージョンを明示的に指定
bash scripts/build-homebrew.sh 3.2.1プロセス:
.envからバージョンを読み取り- ARM64とx64版DMGファイルのSHA256を計算
{{VERSION}}、{{SHA256_AARCH64}}、{{SHA256_X64}}を置換- Formulaファイルを更新
Apple Silicon互換ビルド(M1/M2/M3)
Intel Mac用クロスビルド
x86_64ライブラリのセットアップ
- Development Documentation - ビルド手順の詳細
- Docker Configuration - Dockerファイルの説明
- Main README - プロジェクト概要