Go to file
程广 b890d8172b feat: 重构错误处理机制,添加错误代码和结构化错误包装功能 2025-07-07 17:57:03 +08:00
.github/workflows feat: 添加CI工作流、贡献指南、许可证和Makefile 2025-07-07 13:33:28 +08:00
cmd/cli feat: 添加CI工作流、贡献指南、许可证和Makefile 2025-07-07 13:33:28 +08:00
doc init and add doc 2025-07-07 12:56:04 +08:00
examples init and add doc 2025-07-07 12:56:04 +08:00
internal feat: 重构错误处理机制,添加错误代码和结构化错误包装功能 2025-07-07 17:57:03 +08:00
tasks feat: 添加CI工作流、贡献指南、许可证和Makefile 2025-07-07 13:33:28 +08:00
.gitignore feat: 添加CI工作流、贡献指南、许可证和Makefile 2025-07-07 13:33:28 +08:00
CONTRIBUTING.md feat: 添加CI工作流、贡献指南、许可证和Makefile 2025-07-07 13:33:28 +08:00
LICENSE feat: 添加CI工作流、贡献指南、许可证和Makefile 2025-07-07 13:33:28 +08:00
Makefile feat: 添加CI工作流、贡献指南、许可证和Makefile 2025-07-07 13:33:28 +08:00
README.md feat: 添加CI工作流、贡献指南、许可证和Makefile 2025-07-07 13:33:28 +08:00
go.mod feat: 添加构建器测试框架和Linux包测试用例 2025-07-07 15:16:08 +08:00
go.sum feat: 添加构建器测试框架和Linux包测试用例 2025-07-07 15:16:08 +08:00

README.md

Installer Builder

Installer Builder 是一个强大的跨平台安装包构建工具。它支持Windows和Linux平台可以生成MSI、DEB、RPM和压缩包格式的安装包。通过简单的配置文件您可以定义安装包的内容、安装脚本和依赖项。

功能特点

  • 支持多种平台Windows、Linux
  • 支持多种安装包格式MSI、DEB、RPM、ZIP、TAR.GZ
  • 通过YAML配置文件定义安装包内容和行为
  • 支持自定义安装脚本
  • 支持并行构建多个安装包
  • 提供命令行界面易于集成到CI/CD流程中

安装

从源代码构建

  1. 克隆仓库:
git clone https://git.kingecg.top/kingecg/installerbuilder.git
cd installerbuilder
  1. 构建项目:
make build
  1. 安装二进制文件(可选):
make install

使用预编译的二进制文件

发布页面下载适合您平台的预编译二进制文件。

快速开始

  1. 初始化配置文件:
installer-builder init > installer.yaml
  1. 编辑配置文件,定义安装包内容和行为。

  2. 构建安装包:

installer-builder build -c installer.yaml

配置文件示例

name: my-application
version: 1.0.0
description: My Application Description
author: Author Name
license: MIT

build:
  outputDir: dist
  targets:
    - windows
    - linux
  formats:
    - msi
    - deb
    - rpm
    - zip

contents:
  files:
    - source: bin/myapp
      destination: bin/myapp
      mode: "0755"
    - source: README.md
      destination: doc/README.md
      mode: "0644"
  
  directories:
    - path: logs
      mode: "0755"
    - path: config
      mode: "0755"
  
  scripts:
    - type: postinstall
      content: |
        #!/bin/sh
        echo "Installation completed successfully!"        

platforms:
  windows:
    msi:
      upgradeCode: 12345678-1234-1234-1234-123456789012
      manufacturer: My Company
      installDir: MyApplication
      programMenuDir: MyApplication
      shortcuts:
        - name: My Application
          target: "[INSTALLDIR]bin\\myapp.exe"
          description: Launch My Application
          icon: "[INSTALLDIR]icons\\app.ico"
  
  linux:
    deb:
      section: utils
      priority: optional
      architecture: amd64
      depends:
        - libc6
    
    rpm:
      group: Applications/System
      vendor: My Company
      url: https://example.com
      requires:
        - glibc
      autoReqProv: true

命令行参考

Installer Builder - 一个跨平台的安装包构建工具

用法:
  installer-builder [命令]

可用命令:
  build       构建安装包
  init        初始化配置文件模板
  validate    验证配置文件
  version     显示版本信息
  help        显示帮助信息

标志:
  -h, --help      显示帮助信息
  -v, --verbose   启用详细日志输出
  -q, --quiet     只显示错误信息
  -c, --config    指定配置文件路径

build 命令

根据配置文件构建安装包。

用法:
  installer-builder build [标志]

标志:
  -t, --target    只构建指定平台的安装包
  -a, --arch      只构建指定架构的安装包
  -o, --output    指定输出目录
  --clean         构建前清理输出目录
  -p, --parallel  并行构建的数量

validate 命令

验证配置文件的格式和内容是否正确。

用法:
  installer-builder validate [标志]

标志:
  --strict    启用严格验证模式

init 命令

创建一个基本的配置文件模板。

用法:
  installer-builder init

依赖项

构建工具依赖

  • Windows MSI: WiX Toolset
  • Linux DEB: dpkg-deb
  • Linux RPM: rpmbuild

贡献

欢迎贡献代码、报告问题或提出改进建议。请遵循以下步骤:

  1. Fork 项目
  2. 创建您的特性分支 (git checkout -b feature/amazing-feature)
  3. 提交您的更改 (git commit -m 'Add some amazing feature')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开一个 Pull Request

许可证

本项目采用 MIT 许可证 - 详见 LICENSE 文件。

联系方式

如有问题或建议,请通过以下方式联系我们: