Skip to content

michaelessiet/uni

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Uni

The universal package manager wrapper.

About the Project

Uni is a CLI tool that provides a universal interface for managing packages across different package managers. It automatically detects the package manager being used in a project and uses it to execute commands.

Installation

Using the pre-compiled binary

  1. Download the latest binary for your operating system from the releases page.

    # For Linux
    curl -L -o uni https://github.com/michaelessiet/uni/releases/latest/download/uni-linux-amd64
    
    # For macOS
    curl -L -o uni https://github.com/michaelessiet/uni/releases/latest/download/uni-darwin-amd64
  2. Make the binary executable.

    chmod +x uni 
  3. Move the binary to a directory in your PATH.

    For macOS or Linux:

    sudo mv uni /usr/local/bin/uni

    You can check if /usr/local/bin is in your PATH by running:

    echo $PATH

    If it's not, you can add it to your shell's configuration file (e.g., ~/.zshrc, ~/.bashrc).

    export PATH="/usr/local/bin:$PATH"

Building from source

  1. Clone the repo.

    git clone https://github.com/michaelessiet/uni.git
  2. Build the project.

    ./build.sh
  3. Move the binary to a directory in your PATH.

    # For Linux
    sudo mv dist/uni-linux-amd64 /usr/local/bin/uni
    
    # For macOS
    sudo mv dist/uni-darwin-amd64 /usr/local/bin/uni

Project Structure

/
├── cmd/
│   └── uni/
│       └── main.go
├── internal/
│   └── pkg/
│       ├── config.go
│       ├── detect.go
│       ├── exec.go
│       ├── help.go
│       ├── init.go
│       ├── search.go
│       ├── types.go
│       └── utils.go
├── dist/ # This directory will be created when you run the build script
├── build.sh
├── go.mod
├── go.sum
└── readme.md

Versioning

This project uses Semantic Versioning. To create a new version, create a new git tag and push it to the remote repository.

git tag -a v1.0.0 -m "Release version 1.0.0"
git push origin v1.0.0

Binary Publishing

To publish a new version of the binaries, create a new release on the releases page.

  1. Make sure you have created and pushed a new git tag.
  2. Run the build.sh script to create the binaries.
  3. Create a new release on GitHub.
  4. Upload the binaries from the dist directory to the release.

About

The universal package manager

Resources

Stars

Watchers

Forks

Packages

No packages published