Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/comfysage/cpp-hayashi

🌱 a tiny distro-independent package manager in C++.
https://github.com/comfysage/cpp-hayashi

cpp package-manager

Last synced: about 1 month ago
JSON representation

🌱 a tiny distro-independent package manager in C++.

Awesome Lists containing this project

README

        

# hayashi

:seedling: a tiny distro-independent package manager in C++.

## Usage

### Pkg Config

A pkg is defined in an ini file at one of the [collections](#collections) in `~/.hayashi/pkg/`.

```ini
[pkg]
name=pkg_name
description=description
url=git_url

[script]
install=install_script
update=update_script
remove=remove_script
```

> white space is ignored

### Installing a pkg

Install pkg defined in `~/.hayashi/pkg/`:

$ hayashi add pkg_name

> This will search for a [pkg config](#pkg-config), clone the git repo and run the install script.

### Adding a pkg config

Add a pkg config at `~/.hayashi/pkg/custom/pkg_name.ini`:

$ hayashi pkg add pkg_name

You can also specify a git url for the pkg:

$ hayashi pkg add pkg_name git_url

### Removing a pkg config

$ hayashi pkg remove pkg_name

### Showing info about a pkg

$ hayashi show pkg_name

### Updating a pkg

$ hayashi update pkg_name

## Installation

### Building from source

$ cd ~/
$ git clone --depth 1 https://github.com/CrispyBaccoon/hayashi.git
$ cd ~/hayashi
$ make && sudo make install
$ make config

## Configured packages

### Collections

Packages are stored in collections. Hayashi includes some base packages in the core collection.

### Core packages

There are multiple packages included in the repo.
- [cbonsai](https://gitlab.com/jallbrit/cbonsai). a bonsai tree generator written in C.
- [neovim](https://github.com/neovim/neovim). Vim-fork focused on extensibility and usability.
- [fzf](https://github.com/junegunn/fzf). a general-purpose command-line fuzzy finder.
- [bat](https://github.com/sharkdp/bat). A cat(1) clone with wings.
- [ohmyzsh](https://github.com/ohmyzsh/ohmyzsh). A delightful framework for managing your zsh configuration.
- [vim-plug](https://github.com/junegunn/vim-plug). A minimalist Vim plugin manager.