home - plugins - tutorials - showcase - history - manual - design


dublang cli interface

manual page for dublang command-line interface (cli)

NAME

dublang - dublang command-line interface (cli)

SYNOPSIS

dublang <COMMAND> [ARGUMENTS] [OPTIONS]

COMMAND: list, enable, new, disable, stats, start, stop, run, reload, logs, reset, restart, help, man, apps

ARGUMENTS: echo, supercollider, obs, mpv, tidalcycles, lebiniou, ...

OPTIONS: --version, --all, --help, --man

DESCRIPTION

dublang command-line interface (cli) to manage plugins, servers and services

dublang cli enable/disable plugins, start/stop services, create project templates, etc

OPTIONS

-v, --version

show dublang version

-a, --all

all service names

-h, --help

show usage help

--man

open manpage

COMMANDS

ls, list

list services available

en, enable [SERVICES]

enable service, accept a list of names

use '--all' to enable all the services available

custom services can be added to the PROJECT-level folder services/

custom handler scripts can be added to PROJECT-level folder handlers/

dis, disable [SERVICES]

disable service, accept a list of names

use '--all' to disable all the services enabled

start [SERVICES]

start a service if service is enabled

use '--all' to start all the services enabled

stop [SERVICES]

stop a service if service is enabled and started

use '--all' to start all the services enabled

new <NAME>

create a new folder NAME in the current directory and start a new dublang project based on a template using git

stats, status

services status

reload

reload systemd daemon and services

log, logs

show systemd logs for dublang services

restart

restart service

reset

disable and re-enable service

run

run handler script and start tcp server in foreground, accept just one service name

option '--all' is not supported

apps

start external graphical applications needed by some plugins, for instance OBS and Le Biniou

open

open the dublang code in neovim, it is a simple alias for the command nvim -o *.dub

man

open manpage, same as the option <--man>

help

show usage help, same as the option <--help>

option '--man' open full manpage

PROJECT

the command dublang new creates a new dublang project

some dublang commands, like enable, disable, start and stop, can read from the config file under the current directory

config file example

 # dublang 0.4.0 (unreleased)
 
 PLUGINS="espeak git gource obs supercollider tidalcycles fudi"
 
 # vim: ft=config

a dublang project can define customized systemd service definition under the folder services/

a dublang project can define customized handler start script under the folder handlers/

example of systemd service definition for fudi plugin, file ./services/fudi.service

 [Unit]
 Description=dublang fudi service
 
 [Service]
 Type=simple
 Environment="PATH=$PATH"
 Environment="HOME=$HOME"
 ExecStart=$PWD/handlers/fudi-start
 
 [Install]
 WantedBy=multi-user.target

example of handler start script for fudi plugin, file ./handlers/fudi-start

#!/bin/sh
puredata -jack -nogui ${HOME}/art/sounds/synths-puredata/dub-siren/DUB_SIREN.pd

EXAMPLES

enable echo service

dublang enable echo

start echo service

dublang start echo

disable all services

dublang disable --all

AUTHOR

Joenio Marques da Costa <joenio@joenio.me>

LICENSE

This project is licensed under the GNU General Public License v3.0 or later.


home - plugins - tutorials - showcase - history - manual - design