Skip to main content

🔥 PyBro CLI - A Collection of Python Dev Tools for Debian 24.04

Project description

🔥 PyBro CLI

A Python-based CLI tool for managing Google Chrome profiles in Linux. Born from the need to quickly switch between Chrome profiles using keyboard shortcuts, especially when paired with XFCE's tiling window management. Create custom aliases to launch Chrome with specific profiles and URLs, then bind them to keyboard shortcuts for lightning-fast workflow management.

🚀 Why PyBro?

I built this tool because I needed a way to:

  • Quickly switch between different Chrome profiles (work, personal, client projects)
  • Launch specific URLs in the correct profile
  • Bind these actions to keyboard shortcuts in XFCE
  • Integrate with tiling window management
  • Avoid clicking through Chrome's profile menu every time

💻 System Requirements

Tested Environment

  • OS: Debian 24.04
  • Desktop Environment: XFCE 4.18
  • Shell: Zsh
  • Browser: Google Chrome (Latest Stable)

Note: Currently only tested and confirmed working on Debian 24.04 with XFCE 4.18. While it may work on other Linux distributions or desktop environments, the package is specifically developed and tested for this environment.

Default Chrome Profile Path

~/.config/google-chrome/  # Linux (Debian/Ubuntu)

📦 Installation

# Install from PyPI
pip install pybro-cli

# Run the CLI
pybro

🎯 Example Workflow

1. Create Work Profile Alias

# Run PyBro
pybro

# Select option 1
# Choose your work profile
# Enter: work-chrome
# Enter URL: https://workspace.google.com

2. Create Development Profile

pybro
# Create: dev-chrome
# Select Profile
# Enter URL: http://localhost:3000

3. Set Up XFCE Keyboard Shortcuts

  1. Open XFCE Settings → Keyboard → Application Shortcuts
  2. Click "Add"
  3. Example mappings:
    Command: work-chrome
    Shortcut: Super + 1
    
    Command: dev-chrome
    Shortcut: Super + 2
    

4. Tiling Management

  • Use XFCE's built-in tiling:
    • Tile left: Super + Left
    • Tile right: Super + Right
  • Example workflow:
    Super + 1  # Launch work profile
    Super + Left  # Tile to left
    Super + 2  # Launch dev profile
    Super + Right  # Tile to right
    

📝 Notes & Limitations

  • Shell Support: Built for Zsh, other shells may require syntax modifications
  • Chrome Profiles: Uses standard Chrome profile structure at ~/.config/google-chrome/
  • Desktop Environment: Optimized for XFCE 4.18 keyboard shortcuts and window management
  • URL Support: Handles complex URLs with query parameters and special characters
  • Shell Reload: May require manual source ~/.zshrc after creating new aliases

👥 Contact & Social

🧑‍💻 Chris Trauco - Senior Data Engineer @ OGx Consulting

🔗 Connect with me:

🌐 Project Link: https://github.com/iTrauco/pybro


Made with ❤️ by Chris Trauco

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pybro_cli-0.1.7.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

pybro_cli-0.1.7-py3-none-any.whl (16.3 kB view details)

Uploaded Python 3

File details

Details for the file pybro_cli-0.1.7.tar.gz.

File metadata

  • Download URL: pybro_cli-0.1.7.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for pybro_cli-0.1.7.tar.gz
Algorithm Hash digest
SHA256 83b4699d44b149c8b6b2744e57b49d37e34322a90a0d859e12f199e9f0eef8d3
MD5 f5987a06cd2f8ed2f4ef001acfa627ad
BLAKE2b-256 661a40225bd42ffc232250e027e570c15f1a7c7fe78a173b1fbd195975524166

See more details on using hashes here.

File details

Details for the file pybro_cli-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: pybro_cli-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 16.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for pybro_cli-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 049e8a1c1bae6025ddd6a7caae44b96155f8ac653ab4a4b2e022bc2b5def11c7
MD5 a987c540d7357f2b35033d8adc2ed2cc
BLAKE2b-256 ffe6c1be8c258912a4004ec7c208a434bc86439f8faf6b8b44c7b7d8f14c4c61

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page