Awesome
tk: Simplify Tool Installation for Projects
Welcome to
tk
, a command-line interface (CLI) designed to streamline the installation of tools for your projects. Managed by merlindorin, this project offers simplicity and efficiency by using powerpacks that bundle necessary configurations for Taskfile and Aquafiles.
Table of Contents
Summary
tk
simplifies your project setup by providing powerpacks that ensure consistent configuration across your development
environment. This ensures you spend less time managing setups and more time focusing on development.
Prerequisites
To make the most out of this project, ensure the following tools are installed:
- Git: Essential for version control and managing codebase changes.
- Task: A task runner facilitating automated workflows and tasks.
- Aqua: Ensures your CLI tools are up-to-date.
Installation
Binaries via GitHub Releases
- Visit the GitHub Releases page of this repository.
- Download the appropriate binary for your operating system.
- Make the downloaded file executable:
chmod +x tk
- Move it to a location within your PATH, such as
/usr/local/bin
, for easy access.
Binary Installation using Script
-
Install
tk
using the installation script:# binary will be installed in $(go env GOPATH)/bin/tk curl -sSfL https://raw.githubusercontent.com/merlindorin/tk/master/install.sh | sh -s -- -b $(go env GOPATH)/bin latest tk --version
-
Note for Windows users: You can run the above commands with Git Bash, which comes with Git for Windows.
Docker Image
- Pull the Docker image directly from the GitHub repository:
docker pull ghcr.io/merlindorin/tk:latest
- Run the
tk
CLI using Docker:docker run ghcr.io/merlindorin/tk:latest [command]
Usage
Use the tk
CLI to install powerpacks, which include Taskfiles and Aquafiles. These files are tailored for efficient
management of tools and environments, easing development workflows.
Development
To develop and test features for the tk
CLI:
-
Clone this repository:
git clone https://github.com/merlindorin/tk.git cd tk
-
Install necessary dependencies and tools.
-
Use a feature branch for your development:
git checkout -b feature/my-new-feature
-
Develop and test your changes locally.
-
Commit your changes with descriptive messages.
Repository Structure
cmd/tk
: Contains the main source code for thetk
CLI.powerpacks
: Configuration folders that include Taskfiles and Aquafiles.Taskfile.yaml
: Main Taskfile for automating development tasks.aqua.yaml
: Configuration file specifying CLI tools for Aqua.
Development with Taskfile
Leverage the Taskfile in this repository to automate common development tasks. Typical tasks available include building
the CLI, running tests, and linting the codebase. Review the Taskfile.yaml
available in the root directory to
understand the tasks and their configuration.
Installing Tools with Aqua
-
Install Aqua: Follow the instructions on the Aqua installation guide to set up Aqua CLI.
-
Configure Aqua: Use the
aqua.yaml
file present in the repository to define the CLI tools and their versions for your development setup. -
Install Tools: Run the following command to install all necessary tools listed in the
aqua.yaml
:aqua i
Aqua will ensure all specified tools are installed in your environment, leveraging its centralized configuration for consistency across systems.
Contributing
Interested in contributing?
- Fork the repository.
- Create a branch for your feature:
git checkout -b feature/your-feature
. - Commit your changes:
git commit -am 'Add a feature'
. - Push to your branch:
git push origin feature/your-feature
. - Open a pull request for review.
License
Licensed under the MIT License. See LICENSE.md for further information.