Giter Site home page Giter Site logo

emaballarin / buckaroo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from loopperfect/buckaroo

1.0 1.0 0.0 2.68 MB

[LINUX .NET 6] The decentralized package manager for C++ and friends ๐Ÿ๏ธ

Home Page: https://buckaroo.pm

License: MIT License

F# 99.05% Shell 0.80% PowerShell 0.16%

buckaroo's Introduction

Buckaroo

Buckaroo

The decentralized package manager for C++ and friends.

Why Buckaroo?

Package managers like Yarn and Cargo have shown how productive developers can be when they can easily integrate a large ecosystem of projects. Buckaroo fills this gap for C++.

The Buckaroo workflow looks like this:

# Create your project file
$ buckaroo init

# Install dependencies
$ buckaroo add github.com/buckaroo-pm/boost-thread@branch=master

# Run your code
$ buck run :my-app

We have an FAQ.

Package Registries

Pull dependencies directly from GitHub, BitBucket, GitLab, hosted Git and HTTP. How?

Package Registries

IDE Integrations

Support for major IDEs and tools. Integration guides can be found in the docs.

IDE Integrations

Features

C++ has unique requirements, so Buckaroo is a highly sophisticated piece of software.

  • Pull dependencies directly from GitHub, BitBucket, GitLab, hosted Git and HTTP
  • Fully reproducible builds and dependency resolution
  • Completely decentralized - there is no central server or publishing process
  • Allows any build configuration (even on a package-by-package basis)
  • Private and public dependencies to avoid "dependency hell"
  • Multiple libraries per package, so tools like Lerna are unnecessary
  • Pull individual packages out of mono-repos
  • Full support for semantic versioning (but only when you want it!)
  • Live at head! Move fast by depending directly on Git branches, but in a controlled way
  • Blazing fast resolution using clever heuristics
  • Version equivalency checks to reduce dependency conflicts
  • TOML configuration files for convenient editing by computers and humans
  • Works offline (with a populated cache)
  • Enable Upgrade Bot to keep everything up-to-date with a single click

Get Started

Please refer to the Wiki for installation instructions! โœŒ๏ธ

Quick Install

Buckaroo is shipped as a self-contained executable, so all you need to do is download the bundle from the releases page.

Linux
$ wget https://github.com/LoopPerfect/buckaroo/releases/download/v2.2.0/buckaroo-linux -O buckaroo
$ chmod +x ./buckaroo
$ ./buckaroo
macOS

With Homebrew:

$ brew install loopperfect/lp/buckaroo

Or without Homebrew:

$ wget https://github.com/LoopPerfect/buckaroo/releases/download/v2.2.0/buckaroo-macos -O buckaroo
$ chmod +x ./buckaroo
$ ./buckaroo
Windows

You can use the Chocolatey package:

choco install buckaroo

Or, download buckaroo.exe from the releases page.

How Buckaroo Works

The Buckaroo model is very simple. Packages live in source-control, and a manifest file is used to describe dependencies. This points to further manifests to create a dependency graph. Buckaroo works directly over Git and HTTP.

Buckaroo

Head over to the Wiki for more detailed information.

Attribution

SVG graphics in diagrams are made by Freepik from www.flaticon.com and are licensed by Creative Commons BY 3.0.

buckaroo's People

Contributors

abranhe avatar ar90n avatar codetriage-readme-bot avatar dependabot[bot] avatar emaballarin avatar nikhedonia avatar njlr avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.