yvan-sraka / Kombucha

Simple aliases collection for YeAST

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Kombucha

Simple aliases collection for YeAST

What's that?

This repository contains scripts that offer a standard way to work with common UNIX utils.

The first idea is to always take input as the first positional argument and write the output on standard output, e.g:

@gcc main.c

# ... is equivalent to:

gcc main.c -o a.out && ./a.out

The second purpose is to offer the same user experience than Haskell Stack, e.g. this script self install its build tools and dependencies at first run:

#!/usr/bin/env stack
-- stack --install-ghc runghc --package regex-compat
import Text.Regex
main = interact (\xs -> subRegex (mkRegex "<!--.*(.*\n)*.*-->") xs "")

We try to provide an equivalent structure with other common language stacks, like e.g. Python:

#!/usr/bin/env @python
# stack --virtual-env pypy3 --pip-install requirements.txt
print("Wow, it was smooth! I'm ready to build stuffs :)")

Kombucha aliases always start with the @ symbol to not enter in conflict with existent software in your PATH.

By combining these utils we intent to help the writing of simpler and more robust build suites.

The idea of using GitHub as a service to handle aliases was directly inspired by HomeBrew Formula!

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Get YeAST binary from source:

curl https://raw.githubusercontent.com/yvan-sraka/YeAST/master/install.sh -sSf | sh

Build

You need an Haskell build environment on your computer, then just:

ghc kombucha.hs -o kombucha

You can also download an executable directly on the release page of the repository.

Usage

kombucha <COMMAND>

Flags

  • -h, --help Prints help information
  • -V, --version Prints version information

Commands

  • update Update aliases collection contained in .kombucha folder
export PATH="$HOME/.kombucha:$PATH"
# That's all!

Contributing

Roadmap

  • Random UUID
  • TODO Need a kind of namespace == Share $@ using environnement variable

Submiting a new alias and others contributings

Submitting a package process TODO ...

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the 3rd version of GPL License - see the LICENSE file for details.

About

Simple aliases collection for YeAST

License:GNU General Public License v3.0


Languages

Language:Haskell 100.0%