Files
usb-crash-cart/README.md
scott 5e23e78b51 Add Dockerfile and run scripts for containerized crash cart adapter
Wraps the NOTECONS02 USB Crash Cart Adapter software (usb-crash-cart-adapter
v20240517) in an Ubuntu 16.04 Docker container to resolve incompatibilities
with modern Fedora. Includes X11/XWayland passthrough, USB device access,
and host udev rules for the crash cart adapter (vendor 152a, products 8460/8463).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-07 12:28:58 -04:00

49 lines
1.3 KiB
Markdown

# usb-crash-cart
Docker container wrapper for the NOTECONS02 USB Crash Cart Adapter software.
The vendor software (`usb-crash-cart-adapter` v20240517) was built against Ubuntu 16.04
(Python 2.7, wxWidgets 2.9/GTK2) and is incompatible with modern Fedora. This repo runs
it inside an Ubuntu 16.04 container with X11 passthrough.
## Setup
### 1. Install udev rules (once, on the host)
```bash
sudo ./install-udev-rules.sh
```
This allows the crash cart adapter (USB vendor `152a`, products `8460`/`8463`) to be
accessed without root.
### 2. Place the .deb package
Copy the vendor `.deb` to `packages/crash-cart.deb`:
```bash
cp /path/to/"Linux-X64 Crash Cart Software_1240415.deb" packages/crash-cart.deb
```
### 3. Build the image
```bash
docker build -t usb-crash-cart .
```
### 4. Run
```bash
./docker-run.sh
```
This handles X11 socket sharing and USB device passthrough automatically.
## Notes
- The container uses `ubuntu:16.04` to match the build environment.
- The app bundles its own `libpython2.7`, `libwx_gtk2u-2.9`, `libpng12`, etc. — the
container only needs GTK2 and X11 system libs from the OS.
- `LD_LIBRARY_PATH` is set to prefer the bundled libs over system ones.
- The `.deb` is excluded from git (`.gitignore`) — obtain it from the vendor package.