Kindly is a free and open-source software package management CLI tool that simplifies the installation of software.
All documentation at kindly.sh.
- Download a prebuilt executable binary for your operating system from the GitHub releases page.
- Unzip the archive and place the executable binary wherever you would like to run it from. Additionally consider adding the location directory in the
PATH
variable if you would like thekindly
command to be available everywhere.
Clone
git clone https://github.com/borkod/kindly
Build using make
TODO
make build
Build using go
cd kindly
go build .
Usage:
kindly [command]
Available Commands:
check Check if a package is available.
help Help about any command
install Installs one or many packages.
list Lists available packages.
remove Removes a previously installed package.
template Generate a Kindly YAML spec template for a GitHub repo.
Flags:
--Arch string Architecture (default is current architecture)
--ManifestDir string Default kindly manifests directory (default is $HOME/.kindly/manifests/)
--OS string Operating System (default is current OS)
--OutBinDir string Default binary file output directory (default is $HOME/.kindly/bin/)
--OutCompletionDir string Default completions file output directory (default is $HOME/.kindly/completion/)
--OutManDir string Default man pages output directory (default is $HOME/.kindly/man/)
--Source string Source of package spec files (default "https://raw.githubusercontent.com/borkod/kindly-specs/main/specs/")
--completion string Completion shell setting (default "bash")
--config string config file (default is $HOME/.kindly/.kindly.yaml)
-h, --help help for kindly
-v, --verbose Verbose output
--version version for kindly
- Refactor Cobra commands to remove init
- Add functionality to accept sources of spec files as an array; Search for a package through the list of sources.
- Testing
- Add more packages
- Github workflows
Install
command:- Update command to accept local Kindly spec YAML files, or full remote URL
- If user installs a new version of a package that has less files or different file names than a previously installed version - remove may not properly remove all files as the package manifest (and hence file names) will be rewritten. User will have to manually delete any unwanted files from the previous version. Ensure this is documented.
- Add
Update
command- Updates all installed packages if new version available
- Add command to list locally installed packages
TODO
TODO
TODO
Apache-2.0