gpm 0.4.2
See the version list below for details.
dotnet tool install --global gpm --version 0.4.2
dotnet new tool-manifest # if you are setting up this repo dotnet tool install --local gpm --version 0.4.2
#tool dotnet:?package=gpm&version=0.4.2
nuke :add-package gpm --version 0.4.2
gpm - a GitHub Package Manager
A Github package manager to install, update and manage releases published on GitHub.
The manager registry is located at https://github.com/gpm-org/gpm-db and accepts pull requests. For the package format see below.
Installation
gpm is a command-line tool that is best installed as a dotnet global tool
. Open a terminal and type in the following to install gpm
:
dotnet tool install --global gpm
gpm --help
For more informations see: https://docs.microsoft.com/en-us/dotnet/core/tools/global-tools
Usage
See also: Usage
Navigate to a folder to install a package in (but you can also specify the install directory with -s
).
- Search all available packages:
gpm search
- Install a package in the current directory:
gpm install <NAME>
- Update a package in the current directory
gpm update <NAME>
- Uninstall a package in the current directory
gpm remove <NAME>
- List all installed packages:
gpm list
- Restore all packages listed in a lock file:
gpm restore
Package Format
See also: The package format
The package format is a simple json file (renamed to .gpak
) and can be auto generated with the gpm-util tool. To integrate your package into the registry, make a pull request to https://github.com/gpm-org/gpm-db.
Example:
gpm-util new https://github.com/WolvenKit/WolvenKit.git
The package format supports adding multiple packages from one repository:
gpm-util new <GIT URL> -i <UNIQUE IDENTIFIER>
The package format supports custom logic for versioning, picking specific release asset files, installing the package.
Versioning logic
TBD
Release logic
"AssetIndex": 1
(always pick the 2nd asset file in a release)"AssetNamePattern": "*.zip"
(only use release asset files with the extension ".zip") etc
Install logic
TBD
Contributing
Do you want to contribute? Community feedback and contributions are highly appreciated!
For general rules and guidelines see Contributing.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
This package has no dependencies.