Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Tool to publish & distribute CLI tools

License

NotificationsYou must be signed in to change notification settings

termapps/publisher

Repository files navigation

ZulipCrates.io

Tool to publish & distribute CLI tools

Getting started

  1. Usage
  2. Package Repositories
  3. Install
  4. Configuration
  5. Changelog

Usage

NOTE: Only supports tools hosted in GitHub for now.

Setup publishing configuration.(Only needed for first time setup).

publisher init

Setup your CI pipeline to build release artifacts.(Only needed for first time setup).

publisher generate ci

Update your code, commit and push to repository with a version tag.

git tag v1.0.0git push --tags

Check that you meet all requirements for publishing to configuredpackage repositories.

publisher check

Run the following to publish a version to configuredpackage repositories.

publisher publish 1.0.0

Discover more subcommands and options.

publisher help

Package Repositories

Used for installing the built binary:

Used for building from source:

Install

publisher is available on Linux, macOS & Windows

WithCargo

cargo install publisher
brew install termapps/tap/publisher
yay -S publisher

WithScoop

scoop bucket add termapps https://github.com/termapps/scoop-bucketscoop install publisher

WithNix

nix profile install github:termapps/nixpkgs#publisher

Direct

Pre-built binary executables are available atreleases page.

Download, unarchive the binary, and then put the executable in$PATH.

Configuration

Publisher can be configured usingpublisher.toml file. The below options are avaialable:

NameTypeRequiredDescription
namestringYes1Name of the binary
descriptionstringYes1Description of the project
homepagestringYes1URL of the project homepage
licensestringYes1License
repositorystringYesURI of the GitHub repository (ex: termapps/publisher)
excludestring[]NoPackage Repository selection
homebrewobjectYesHomebrew
aurobjectNoAUR
aur_binobjectNoAUR (binary)
scoopobjectYesScoop
nixobjectNoNix

Homebrew

NameTypeRequiredDescription
namestringNoName of the formula
repositorystringYesGitHub repository for the homebrew tap
  • name defaults to the binary name.

AUR

NameTypeRequiredDescription
namestringNoName of the package
conflictsstring[]NoPackages in AUR that conflict with this
  • name defaults to the binary name.
  • Automatically addsAUR (binary) package toconflicts if it is selected.

AUR (binary)

NameTypeRequiredDescription
namestringNoName of the package
conflictsstring[]NoPackages in AUR that conflict with this
  • name defaults to the binary name concatenated with-bin.
  • Automatically addsAUR package toconflicts if it is selected.

Scoop

NameTypeRequiredDescription
namestringNoName of the app
repositorystringYesGitHub repository for the scoop bucket
  • name defaults to the binary name.

Nix

NameTypeRequiredDescription
namestringNoName of the package
repositorystringNoGitHub repository for the nix package
pathstringNoPath of the package in the repo
lockfileboolNoWhether to update flake lockfile
  • name defaults to the binary name.
  • repository defaults to binary's GitHub repository.
  • path defaults toflake.nix.
  • %n can be used inpath to substitute with name. For example,%n/flake.nix creates the package atpublisher/flake.nix location.
  • lockfile defaults totrue and is needed to install the package most of the time.

Package Repository selection

  • By default, all the availablepackage repositories are selected if not specified in the subcommand.
  • Ifexclude is configured, then those will be excluded from the above selected package repositories.

Contributors

Here is a list ofContributors

TODO

  • Package repositories
    • Alpine Linux (#1)
    • Debian (#11)
    • NPM
    • PyPi
  • Platforms (#4)
  • Shell completions (#8)
  • Manpages (#9)
  • Maintainer (#5)

Changelog

Please seeCHANGELOG.md.

License

MIT/X11

Bug Reports

Reporthere.

Creator

Pavan Kumar Sunkara (pavan.sss1991@gmail.com)

Follow me ongithub,twitter

Footnotes

  1. Ifcargo binary andCargo.toml file are present, they can be omitted from the config.234

About

Tool to publish & distribute CLI tools

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp