5个稳定版本

2.4.1 2024年8月22日
2.3.0 2024年6月24日
2.2.1 2024年4月15日
2.2.0 2024年4月5日
2.1.1 2024年2月23日

49 / 开发工具

Download history 2/week @ 2024-05-16 2/week @ 2024-05-23 1/week @ 2024-06-06 129/week @ 2024-06-20 79/week @ 2024-06-27 72/week @ 2024-07-04 73/week @ 2024-07-11 267/week @ 2024-07-18 1521/week @ 2024-07-25 1508/week @ 2024-08-01 1514/week @ 2024-08-08 1497/week @ 2024-08-15

6,230 每月下载次数

GPL-3.0-or-later

1.5MB
9K SLoC

Komac 标志Komac - 另一个WinGet清单创建工具 Komac横幅

GitHub release (release name instead of tag name) GitHub Repo stars Issues License

Komac是一个高级命令行界面(CLI),旨在为WinGet社区仓库创建清单。

Komac既快如闪电 🔥 又占用内存极低,在我的机器上仅使用约3.5MB的内存。

Komac-demo

安装

Komac是跨平台的,为Windows、Linux和macOS构建了二进制文件。

所有平台

如果您已安装cargo,则可以编译Rust以用于任何平台

cargo install --locked komac

Komac还支持cargo-binstall

cargo binstall komac

夜间版本

每个提交都构建的夜间版本可在此处找到。这些版本对于调试或需要最新功能和修复非常有用。

Windows

便携式EXE和安装程序都可在发布中找到。

WinGet

winget install komac

Scoop

scoop install komac

Linux

便携式二进制文件可在发布中找到。Debian (.deb) 和 Red Hat (.rpm) 安装程序也提供。

macOS

macOS的便携式二进制文件可在发布中找到。

Homebrew

brew install russellbanks/tap/komac

GitHub令牌

Komac 目前只能使用经典令牌。虽然 Komac 可以完全使用细粒度令牌创建清单和提交,但它无法向 winget-pkgs 创建拉取请求。随着细粒度令牌的改进,这可能会改变。请参阅 https://github.com/russellbanks/Komac/issues/310

经典

具有 public_repo 范围的经典令牌。

firefox_IYiqtsd0Nl

命令

命令 描述 用法
新建 从头创建一个包
更新 更新 winget-pkgs 中的现有包 更新
删除 从 winget-pkgs 中删除一个版本 删除
同步分支 将 winget-pkgs 的您的分支同步到 microsoft/winget-pkgs sync-fork, sync
分支清理 删除已合并或关闭拉取请求到 winget-pkgs 的分支 清理
列出版本 列出给定包的所有版本 list-versions, list
分析 分析文件并输出关于它的信息。用于调试 分析
令牌更新 更新存储的 GitHub OAuth 令牌 令牌更新
令牌删除 删除存储的 GitHub OAuth 令牌 令牌删除
完成 输出给定壳的自动补全脚本 complete, autocomplete

使用新版本更新现有包

komac update Package.Identifier --version 1.2.3 --urls https://www.firstUrl.com https://www.secondUrl.com --submit
参数 用法 注意
包标识符 komac update Package.标识符
版本 --version
URLs --urls URLs 由空格分隔
自动提交 --submit
令牌(如果没有存储的话) --token Komac 将检查 GITHUB_TOKEN 环境变量

Komac 与其他工具 🏆

虽然其他清单创建工具为 winget-pkgs 中的清单奠定了坚实的基础,但它们的开发速度明显较慢,并且缺乏 Komac 所带来的高级检测功能。

Komac WingetCreate YamlCreate
参数
下载进度条 & ETA
完全跨平台 有限
无 Git 也能工作
完全 Inno Setup 值检索
完全 MSI 值检索 部分 部分
Linux & macOS MSI 支持
完全 MSIX 值检索 部分 部分 - https://github.com/Trenly/winget-pkgs/issues/180
从 GitHub 获取信息
格式化 GitHub 版本说明检索
发布日期识别
无遥测 ⭕ [^1]
完全独立(无需 winget-pkgs 克隆)
Inno setup 检测 ✅ [^2] ✅ [^3]
Nullsoft 检测 ✅ [^2] ✅ [^3]
Burn 安装程序检测 ✅ [^2] 可选功能(默认不启用,因为处理速度慢)
编程语言 Rust C# PowerShell

[^1]: WingetCreate 默认启用遥测。使用 wingetcreate settings 手动禁用遥测。[^2]: 自 Komac v2 以来,对于 Inno、Nullsoft 和 Burn 安装程序的检测更加准确。[^3]: 该逻辑是由我贡献的 :) 查看我已打开的请求 YamlCreate 此功能的 问题

使用 GitHub Actions 的用法:WinGet 发布器 🌟

WinGet 发布器是一个 GitHub Action,它调用 Komac 并传递您的发布 URL。这完全自动化了 WinGet 的发布。

示例 📝

name: Publish to WinGet
on:
  release:
    types: [ released ]
jobs:
  publish:
    runs-on: windows-latest
    steps:
      - uses: vedantmgoyal9/winget-releaser@main
        with:
          identifier: Package.Identifier
          token: ${{ secrets.WINGET_TOKEN }}
          # installers-regex: '\.exe$' # Only .exe files

替代动作 🔄

我如何支持 Komac? ❤️

星标历史记录 ⭐

Star History Chart

许可证

GNU GPLv3 Logo

Komac 是自由软件:您可以随意使用、学习、分享和改进它。具体来说,您可以根据自由软件基金会发布的 GNU 通用公共许可证 的条款重新分发和/或修改它,无论是许可证的第 3 版,还是(根据您的选择)任何更高版本。

依赖项

~63–88MB
~1.5M SLoC