Skip to content

easbarba/onur-rust

Repository files navigation

Onur | Rust

Easily manage multiple FLOSS repositories.

cpp | c | dotnet | go | php | java | ruby

Usage

# grab all projects
onur grab 

# grab only the c projects
onur grab c 

# list the cpp configuration file
onur config cpp 

# list topics of haskell
onur config haskell.

# list only the projects on misc topic of lisp
onur config lisp.misc 

# add a new configuration with theses entries in the topic misc of c
onur config c.misc cli11 https://github.com/cliutils/cli11 main 

# back up these projects as tar.gz
onur backup ecmascript.nuxt lua.awesomewm misc.gitignore 

onur --help

Configuration file

onur consumes configuration in the following manners:

By default it looks for configuration files at $XDG_CONFIG/onur or in the directory set in the $ONUR_CONFIG_HOME environment variable.

{
  "main": [
    {
      "name": "awesomewm",
      "url": "https://github.com/awesomeWM/awesome"
    },
    {
      "name": "nuxt",
      "branch": "main",
      "url": "https://github.com/nuxt/framework"
    }
  ],
  "misc": [
    {
      "name": "awesomewm",
      "url": "https://github.com/awesomeWM/awesome"
    },
    {
      "name": "nuxt",
      "branch": "main",
      "url": "https://github.com/nuxt/framework"
    }
  ],
  "tools/gnu": [
    {
      "name": "inetutils",
      "url": "https://git.savannah.gnu.org/git/inetutils.git"
    },
    {
      "name": "gnu-wget",
      "url": "https://git.savannah.gnu.org/git/wget.git"
    }
  ]
}

More examples of configuration files are at examples.

Settings

settings.toml

[git]
single-branch = true
quiet = true
depth = 1

Installation

cargo install --git https://gitlab.com/easbarba/onur `

DEVELOPMENT

In development it may suit you better running the tests in a isolated environment with containers, that can be done so:

docker run --rm -it $(docker build -qf Containerfile.run)

or:

podman build https://gitlab.com/easbarba/onur/-/raw/main/Containerfile --tag onur:latest
podman run --rm -it onur:latest 

Onur CLI

LICENSE

GNU GENERAL PUBLIC LICENSE Version 3