Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FYI: I submitted a package to the Scoop package manager for Windows. #49

Open
sharpjs opened this issue Apr 13, 2024 · 3 comments
Open

Comments

@sharpjs
Copy link

sharpjs commented Apr 13, 2024

This is more of a FYI than an issue. I wanted an easy way to install cmctl on Windows and keep it up to date, so I submitted a package manifest to the Scoop package manager's main bucket.

The PR is here: ScoopInstaller/Main#5711

If the PR is accepted, then installation on Windows becomes as easy as scoop install cmctl.

Maintaining such a Scoop package is easy. Bumping the version and hashes for a program like cmctl requires only a single command and a PR. Anyone can do it; I intend to do so if nobody else does.

@inteon
Copy link
Member

inteon commented Apr 24, 2024

Thanks for doing this @sharpjs, we use goreleaser to publish cmctl, so maybe it can be automated through that tool?

@sharpjs
Copy link
Author

sharpjs commented Apr 24, 2024

Quite possibly. I'm not familiar with Go tools at all, but I'd be happy to go though the process and distill it into a list of commands for an automation tool to do. For now, I understand the high-level process to be:

  • Clone repo with package manifest.
  • Run command to update download URL and hashes from SBOM file.
  • Submit PR.

Edit: Looks like Scoop provides an auto-pr.ps1 (PowerShell) script to combine the bottom two steps.

NAME
    $HOME\scoop\apps\scoop\current\bin\auto-pr.ps1

SYNOPSIS
    Updates manifests and pushes them or creates pull-requests.


SYNTAX
    $HOME\scoop\apps\scoop\current\bin\auto-pr.ps1
      [-Upstream] <String> [[-OriginBranch] <String>] [[-App] <String>]
      [[-CommitMessageFormat] <String>] [[-Dir] <String>] [-Push]
      [-Request] [-Help] [[-SpecialSnowflakes] <String[]>] [-SkipUpdated]
      [-ThrowError] [<CommonParameters>]

@inteon
Copy link
Member

inteon commented Apr 24, 2024

Ok, no problem. We can probably start by doing it manually, this was the setup I was thinking about: https://goreleaser.com/customization/scoop/.
Not sure how valuable/ easy it is to set up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants