Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 57 additions & 0 deletions packaging/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Packaging

Manifests for distributing the `anythink` CLI through Windows package managers.
The CLI is also available via Homebrew (macOS/Linux), `npx`, the .NET global
tool, and direct binary downloads — see the main [README](../README.md).

The Windows binaries are published on each GitHub release as
`anythink-win-x64.exe` and `anythink-win-arm64.exe` (standalone, self-contained,
no installer or runtime needed).

> Manifests here are pinned to a specific version as a working reference. When
> submitting, target the current latest release and recompute the hashes.
> Compute a hash with `Get-FileHash -Algorithm SHA256 <file>` (PowerShell) or
> `shasum -a 256 <file>` (macOS/Linux).

## winget

`packaging/winget/` holds the three-file manifest set (`InstallerType: portable`,
so `anythink` is registered as a command alias).

Submit to the community repo with [`wingetcreate`](https://github.com/microsoft/winget-create)
(recommended — it downloads the assets, computes hashes, and opens the PR):

```powershell
winget install wingetcreate
wingetcreate new # paste the two release .exe URLs when prompted
```

For later releases:

```powershell
wingetcreate update Anythink.CLI --version <new-version> `
--urls <x64-url> <arm64-url> --submit
```

Once merged into `microsoft/winget-pkgs`, users install with:

```powershell
winget install Anythink.CLI
```

## Scoop

`packaging/scoop/anythink.json` is a complete manifest with `checkver`/`autoupdate`,
so once it lives in a bucket it tracks new GitHub releases automatically.

The standard route for a project-owned CLI is a dedicated bucket repo (e.g.
`anythink-cloud/scoop-anythink`) with this file at `bucket/anythink.json`.
Users then install with:

```powershell
scoop bucket add anythink https://github.com/anythink-cloud/scoop-anythink
scoop install anythink
```

Adding the [Excavator action](https://github.com/ScoopInstaller/GithubActions)
to the bucket repo keeps the manifest auto-updated on each release.
29 changes: 29 additions & 0 deletions packaging/scoop/anythink.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"version": "0.2.13",
"description": "Anythink CLI — manage the Anythink all-in-one backend from the terminal.",
"homepage": "https://anythink.cloud",
"license": "MIT",
"architecture": {
"64bit": {
"url": "https://github.com/anythink-cloud/anythink-cli/releases/download/v0.2.13/anythink-win-x64.exe#/anythink.exe",
"hash": "1b3e58ae7de44df27814f9043ce3ef6ca1a2c9e884be9755b8d1c1d2d6d50376",
"bin": "anythink.exe"
},
"arm64": {
"url": "https://github.com/anythink-cloud/anythink-cli/releases/download/v0.2.13/anythink-win-arm64.exe#/anythink.exe",
"hash": "cf4ff2ab5352e480a02e3632c08c5137ed89bc971eda960a1a95e3998aba52a3",
"bin": "anythink.exe"
}
},
"checkver": "github",
"autoupdate": {
"architecture": {
"64bit": {
"url": "https://github.com/anythink-cloud/anythink-cli/releases/download/v$version/anythink-win-x64.exe#/anythink.exe"
},
"arm64": {
"url": "https://github.com/anythink-cloud/anythink-cli/releases/download/v$version/anythink-win-arm64.exe#/anythink.exe"
}
}
}
}
14 changes: 14 additions & 0 deletions packaging/winget/Anythink.CLI.installer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
PackageIdentifier: Anythink.CLI
PackageVersion: 0.2.13
InstallerType: portable
Commands:
- anythink
Installers:
- Architecture: x64
InstallerUrl: https://github.com/anythink-cloud/anythink-cli/releases/download/v0.2.13/anythink-win-x64.exe
InstallerSha256: 1B3E58AE7DE44DF27814F9043CE3EF6CA1A2C9E884BE9755B8D1C1D2D6D50376
- Architecture: arm64
InstallerUrl: https://github.com/anythink-cloud/anythink-cli/releases/download/v0.2.13/anythink-win-arm64.exe
InstallerSha256: CF4FF2AB5352E480A02E3632C08C5137ED89BC971EDA960A1A95E3998ABA52A3
ManifestType: installer
ManifestVersion: 1.12.0
18 changes: 18 additions & 0 deletions packaging/winget/Anythink.CLI.locale.en-US.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
PackageIdentifier: Anythink.CLI
PackageVersion: 0.2.13
PackageLocale: en-US
Publisher: Anythink
PublisherUrl: https://anythink.cloud
PackageName: Anythink CLI
PackageUrl: https://anythink.cloud
License: MIT
LicenseUrl: https://github.com/anythink-cloud/anythink-cli/blob/main/LICENSE
ShortDescription: Manage the Anythink all-in-one backend from the terminal.
Moniker: anythink
Tags:
- cli
- anythink
- backend
- baas
ManifestType: defaultLocale
ManifestVersion: 1.12.0
5 changes: 5 additions & 0 deletions packaging/winget/Anythink.CLI.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
PackageIdentifier: Anythink.CLI
PackageVersion: 0.2.13
DefaultLocale: en-US
ManifestType: version
ManifestVersion: 1.12.0