Ubuntu Pipx Toolbox

October 17, 2025 ยท View on GitHub

A curated collection of installation scripts for useful Python CLI tools, organized by category and installed via pipx. Keep your system Python clean while enjoying powerful command-line utilities!

What is pipx?

pipx is a tool to help you install and run Python applications in isolated environments. It's like apt for Python CLI tools - each tool gets its own virtual environment, preventing dependency conflicts while making the tools available system-wide.

Why Use This Toolbox?

  • Organized Collections: Tools grouped by purpose (image processing, video tools, AI/ML, development, system utilities)
  • Clean Installation: Avoid polluting your system Python with application dependencies
  • No Conflicts: Each tool runs in its own isolated environment
  • Easy Management: Simple scripts to install entire categories at once
  • Interactive Menu: User-friendly interface for selecting which tools to install

Prerequisites

Install pipx

sudo apt install pipx
pipx ensurepath

After installation, restart your terminal or run:

source ~/.bashrc

Quick Start

Clone this repository and run the interactive installer:

git clone https://github.com/YOUR_USERNAME/Ubuntu-Pipx-Toolbox.git
cd Ubuntu-Pipx-Toolbox
./install.sh

Tool Categories

1. Image Processing Tools (scripts/install-image-tools.sh)

  • rembg - AI-powered background removal from images
  • image-go-nord - Convert images to Nord color palette
  • imgcat - Display images directly in your terminal
  • gifgen - Create GIFs from video files

2. Video Processing Tools (scripts/install-video-tools.sh)

  • yt-dlp - Download videos from YouTube and 1000+ sites
  • streamlink - Extract and pipe video streams to your player
  • gallery-dl - Download image galleries and collections
  • you-get - Alternative video/audio downloader

3. AI/ML Tools (scripts/install-ai-ml-tools.sh)

  • rembg - AI background removal
  • datasette - Explore and publish datasets
  • csvkit - Suite of utilities for CSV file manipulation
  • streamlit - Create ML/data web apps quickly
  • mlflow - Track ML experiments and manage models
  • dvc - Data version control for ML projects

4. Development Tools (scripts/install-dev-tools.sh)

  • black - Uncompromising Python code formatter
  • ruff - Extremely fast Python linter (replaces flake8, isort, etc.)
  • mypy - Static type checker for Python
  • pipenv - Python virtual environment manager
  • poetry - Python dependency management and packaging
  • cookiecutter - Create projects from templates
  • httpie - User-friendly HTTP client for API testing
  • pre-commit - Git pre-commit hooks framework
  • pylint - Python code analyzer
  • isort - Sort Python imports

5. System Utilities (scripts/install-system-tools.sh)

  • glances - Cross-platform system monitoring
  • howdoi - Get instant coding answers from command line
  • tldr - Simplified and community-driven man pages
  • speedtest-cli - Test your internet connection speed
  • ansible - IT automation and configuration management
  • borgmatic - Wrapper for BorgBackup
  • docker-compose - Multi-container Docker orchestration
  • gitsome - Supercharged Git/GitHub CLI
  • trash-cli - Safely move files to trash instead of rm
  • ranger-fm - Vim-like console file manager

Usage Examples

Image Processing

# Remove background from an image
rembg i input.jpg output.png

# Display image in terminal
imgcat photo.jpg

Video Processing

# Download a YouTube video
yt-dlp https://youtube.com/watch?v=VIDEO_ID

# Stream to VLC
streamlink https://twitch.tv/CHANNEL best --player=vlc

AI/ML Tools

# Explore a SQLite database
datasette serve data.db

# Extract CSV columns
csvcut -c 1,2,3 data.csv

# Run Streamlit app
streamlit run app.py

Development Tools

# Format Python code
black script.py

# Lint entire project
ruff check .

# Type check code
mypy script.py

# Test API endpoint
http GET https://api.example.com/endpoint

System Utilities

# Monitor system
glances

# Get coding help
howdoi reverse a list in python

# Simplified manual
tldr tar

# Test internet speed
speedtest-cli

Individual Script Usage

You can also run individual category scripts:

./scripts/install-image-tools.sh
./scripts/install-video-tools.sh
./scripts/install-ai-ml-tools.sh
./scripts/install-dev-tools.sh
./scripts/install-system-tools.sh

Managing Installed Tools

List installed tools

pipx list

Upgrade a tool

pipx upgrade TOOL_NAME

Upgrade all tools

pipx upgrade-all

Uninstall a tool

pipx uninstall TOOL_NAME

Uninstall all tools

pipx uninstall-all

Additional Dependencies

Some tools work best with additional system packages:

# For video tools (yt-dlp, streamlink)
sudo apt install ffmpeg

# For rembg (optional GPU support)
# CUDA or ROCm for faster processing

Contributing

Feel free to suggest additional tools or categories by opening an issue or pull request!

License

MIT License - See LICENSE file for details

Acknowledgments

  • Thanks to the pipx team for making Python CLI tool management easy
  • All the amazing open-source tool developers whose projects are featured here
  • Inspired by the need to keep system Python clean while using powerful CLI tools

Resources