HACK: Workaround weird paramiko socket behaviour

When the far side disappears, such as on reboot, mdt shell can get
stuck 20 minutes. If we enable keepalive messages and add a timeout
to select() we can detect that tx of keepalives aren't progressing
and emulate a timeout after a more reasonable 20 seconds.

Change-Id: Icdaf51825fcf7c779afa6776b0f4f78f087f8864
1 file changed
tree: f0f81125260b6a48ab1aa76424f62ef5b7d10c65
  1. debian/
  2. man/
  3. mdt/
  4. .gitignore
  5. CODE_OF_CONDUCT.md
  6. CONTRIBUTING.md
  7. LICENSE.txt
  8. Makefile
  9. MANIFEST.in
  10. README.md
  11. setup.py
README.md

MDT - The Mendel Development Tool

What is this?

MDT is a simple tool to aid in working with single board computers that the Mendel Linux distribution runs on. It consists of a whole bunch of pre-existing open source tooling, coupled with some simple wrappers written in python to ease their use.

It also provides an easy way to interact with these boards without having to fight with serial consoles, IP addresses, and other fiddly bits, reducing barrier to entry when working with these boards.

With minimal effort, MDT should also be portable to existing systems such as Debian and Ubuntu, if needed. This, however, is out of the scope of this project.

How do I use it?

Install it via pip like this:

pip install mendel-development-tool

Note that if you run this as a non-root user, the executable will be stored in $HOME/.local/bin which may not be in your PATH environment variable, so you'll want to add it.