← All repositories

paintstorm-distrobox-legacy

19 commits · main

README.md

Paintstorm Studio Distrobox Setup

A complete setup script to run Paintstorm Studio v2.50 in an Ubuntu 20.04 distrobox container on modern Linux systems, with full tablet pressure and tilt support using native Linux HID drivers.

Features

Complete Installation

  • Automated Ubuntu 20.04 container creation
  • GLEW 1.13.0 built from source
  • All required dependencies installed
  • Font crash prevention configured

Tablet Support (Native HID - RECOMMENDED)

  • Full pressure sensitivity (0-8191 levels)
  • Tilt support (X/Y angles)
  • Hidraw device passthrough for pressure/tilt data
  • Button mapping to keyboard shortcuts
  • No OpenTabletDriver required!

Hardware Acceleration

  • Automatic NVIDIA GPU detection and support
  • OpenGL acceleration

Easy Management

  • Desktop launcher integration
  • Management script for maintenance
  • Configuration-based button mapping

Quick Start

Prerequisites

# Install distrobox and podman
sudo pacman -S distrobox podman

# For button mapping (optional)
sudo pacman -S xbindkeys xdotool

Note: OpenTabletDriver is NOT required and NOT recommended for Paintstorm. Native HID works better.

Installation

  1. Clone or download this repository

  2. Run the installation script
    cd paintstorm-setup/
    chmod +x paintstorm-install-distrobox.sh
    ./paintstorm-install-distrobox.sh
    

    The script will automatically:

    • Download Paintstorm v2.50 from the official website
    • Create the distrobox container
    • Install all dependencies
    • Set up desktop integration
  3. Launch Paintstorm
    • From application menu: Graphics → Paintstorm Studio
    • Or from terminal: ~/paintstorm

Tablet Pressure & Tilt Support

Native Linux HID drivers provide full pressure and tilt support without any configuration:

# Just launch Paintstorm - it works!
~/paintstorm

What you get:

  • Full pressure sensitivity (0-8191 levels)
  • Tilt support (X/Y angles)
  • Stable, reliable operation
  • No mouse freezing issues
  • Works every time

Configure Tablet Buttons

See native-hid-tablet-mapping/ for button mapping tools.

Quick setup:

cd native-hid-tablet-mapping/

# Detect your buttons
./test-pen-buttons.sh
./test-tablet-keyboard-events.sh

# Configure mappings
nano tablet-button-config.conf

# Apply configuration
./apply-button-mappings.sh

# Make it persistent
./setup-autostart.sh

Testing revealed OTD has unfixable issues with Paintstorm:

  • Mouse freezes during drawing
  • Pressure fails on second launch
  • Device recognition problems

If you want to troubleshoot OTD anyway, see otd-diagnostics/ (not recommended).

For detailed tablet troubleshooting, see docs/TABLET-PRESSURE-FIX.md.

Quick Check

# Test pressure and tilt
./test-tablet-pressure.sh

This will verify:

  • Hidraw devices on host
  • Hidraw devices in container
  • Input device configuration

Project Structure

paintstorm-distrobox-legacy/
│
├── README.md                           # This file
├── test-tablet-pressure.sh             # General tablet diagnostic
│
├── paintstorm-setup/                   #  Paintstorm installation
│   ├── README.md                       # Installation guide
│   ├── paintstorm-install-distrobox.sh # Main installer (run this)
│   ├── container-setup.sh              # Container configuration
│   ├── paintstorm-launcher.sh          # App launcher template
│   └── paintstorm-manage.sh            # Container management
│
├── native-hid-tablet-mapping/          # RECOMMENDED: Button mapping
│   ├── README.md                       # Setup guide
│   ├── tablet-button-config.conf       # Your button mappings (edit this)
│   ├── apply-button-mappings.sh        # Apply configuration
│   ├── setup-autostart.sh              # Make persistent
│   ├── test-pen-buttons.sh             # Detect pen buttons
│   ├── test-tablet-keyboard-events.sh  # Detect tablet buttons
│   ├── detect-tablet-buttons.sh        # Comprehensive detection
│   └── configure-tablet-buttons.sh     # Legacy manual config
│
└── docs/                               #  Documentation
    └── TABLET-PRESSURE-FIX.md          # Detailed tablet troubleshooting

Tested Configuration

  • Distribution: Arch Linux
  • Tablet: Huion G930L (works with other Huion tablets)
  • Drivers: Native Linux HID (generic hid driver)
  • Container: Ubuntu 20.04 (distrobox/podman)
  • Button Mapping: xbindkeys + xdotool

Known Issues & Solutions

Pressure/Tilt Works Perfectly ✅

Native HID provides full pressure and tilt support out of the box. No configuration needed.

Button Mapping

Your Huion G930L has:

  • 6 tablet buttons: Already send keyboard shortcuts (Ctrl+Alt+Z, [, ], b, etc.)
  • 2 pen buttons: Can be mapped with xbindkeys

See native-hid-tablet-mapping/README.md for complete setup.

OpenTabletDriver Issues

Don’t use OTD with Paintstorm. See otd-diagnostics/README.md for details on why it doesn’t work.

Version History

v2.5 - CURRENT

  • Reorganized into native HID (recommended) and OTD diagnostics (not recommended)
  • Added configuration-based button mapping system
  • Created comprehensive native HID setup guide
  • Documented why OTD doesn’t work with Paintstorm
  • Cleaned up script organization

v2.4

  • Added hidraw device detection and passthrough
  • Created tablet diagnostic scripts
  • Extensive OTD troubleshooting (determined OTD not viable)

v2.3

  • Pen tablet support with event device passthrough
  • X11 input libraries

v2.0-2.2

  • Initial distrobox implementation
  • GLEW building
  • Font crash prevention
  • NVIDIA support

Recommendation

For Huion tablets (and likely other brands):

  1. Use native HID (no OTD)
  2. Configure buttons with xbindkeys (see native-hid-tablet-mapping/)
  3. Enjoy full pressure and tilt without any hassle

This provides the best experience with Paintstorm in distrobox.

Contributing

Found an issue? Have improvements? Please open an issue or pull request.

License

This setup script is provided as-is for use with legally obtained copies of Paintstorm Studio.

Credits

  • Paintstorm Studio by Sergey Kolesov
  • Distrobox by Luca Di Maio
  • Native HID tablet support by Linux kernel developers

**Happy painting! **

For tablet button setup, go to: native-hid-tablet-mapping/

Commit history

Files

17 tracked files at main.

  • docs
    • TABLET-PRESSURE-FIX.md
  • native-hid-tablet-mapping
    • apply-button-mappings.sh
    • configure-tablet-buttons.sh
    • detect-tablet-buttons.sh
    • README.md
    • setup-autostart.sh
    • tablet-button-config.conf
    • test-pen-buttons.sh
    • test-tablet-keyboard-events.sh
  • paintstorm-setup
    • container-setup.sh
    • paintstorm-icon.png
    • paintstorm-install-distrobox.sh
    • paintstorm-launcher.sh
    • paintstorm-manage.sh
    • README.md
  • README.md
  • test-tablet-pressure.sh