build details

# Duckietown Shell `dts`

Modified 2019-09-22 by Andrea Censi

Learn to use the Duckietown Shell `dts`.

Duckietown Shell (`dts`) is a pure Python utility for Duckietown.

The idea is that most of the functionality is implemented as Docker containers, and `dts` provides a nice interface for that, so that user should not type a very long `docker run` command line.

TODO: there are similar notes in the AIDO repo. Move here some of it?

previous task next (11 of 40) index

The following was marked as "todo".

TODO: there are similar notes in the AIDO repo. Move here some of it?

Location not known more precisely.

Created by function `n/a` in module `n/a`.

## Requirements

Modified 2019-09-22 by Andrea Censi

The shell requires at least Python 3.6 to be installed.

## Installation

Modified 2019-09-22 by Andrea Censi

You can install dt-shell by running

``````$pip install duckietown-shell `````` Installing `dts` via `pip` will also install the following packages • `GitPython` - A python library used to interact with Git repositories • `texttable` - A module to generate a formatted text table, using ASCII characters. ### Run the shell Modified 2019-09-22 by Andrea Censi You can launch the shell by running the command ``````$ dts
``````

You should see the `dts` prompt

``````dts>

``````

## Commands

Modified 2019-09-22 by Andrea Censi

`dts` is modular, and the `pip` package does not contain commands. The first time you launch the shell, the most recent version of the commands will be automatically downloaded and made available to you. A barebones set of commands will be automatically installed, others will be available but not installed.

### List commands

Modified 2019-09-22 by Andrea Censi

You can list all the commands available in dt-shell by running

``````\$ dts> commands [--core] [--installed] [--installable]
``````

You should see something like the following

``````dts> commands
Core commands:
commands
install
uninstall
update
version
exit
help

Installed commands:
<empty>

Installable commands:
aido18
logs
``````

Use the arguments `--core`, `--installed`, and `--installable` to filter the commands.

### Update list of commands

Modified 2019-09-22 by Andrea Censi

Run the command `dts> update` to download the most recent version of the commands available.

`dt-shell` uses `git` to update the commands. If you get an error, please make sure that `git` is installed.

### Install a new command

Modified 2019-09-22 by Andrea Censi

Run `dts> commands --installable` to see the list of commands you can install.

Run `dts> install command_name` to install a new command.

### Remove a command

Modified 2019-09-22 by Andrea Censi

Run `dts> commands --installed` to see the list of commands already installed.

Run `dts> uninstall command_name` to remove a command.

## Custom commands

Modified 2020-07-17 by Andrea Censi

`dts` downloads all the commands from the git repository `duckietown/duckietown-shell-commands`. If you want to contribute to the shell and create new commands, please follow the instructions in the section Subsection 2.0.3 - Create a new command.

## Troubleshooting

Modified 2019-09-22 by Andrea Censi