Skip to content

Annor-Gyimah/OmniPull

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

OmniPull Download Manager

OmniPull Logo

GitHub release GitHub License

GitHub all releases GitHub release downloads

GitHub stars GitHub forks GitHub watchers

GitHub code size GitHub last commit

OmniPull is a powerful, cross-platform download manager built with Python and PySide6. It provides a modern, intuitive interface for managing downloads with advanced features like multi-threading, queue management, and media extraction.

✨ Wiki

See Wiki for more information.

Main Window

πŸš€ Key Feature

Core Functionality

  • Multi-threaded Downloads: Accelerate downloads with parallel processing
  • Pause/Resume Support: Continue downloads from where they left off
  • Queue Management: Organize and prioritize downloads
  • Scheduling System: Set specific times for downloads to start
  • Browser Integration: Direct download capture from browsers

Media Features

  • YouTube Integration: Download videos and playlists via yt-dlp
  • Streaming Support: Handle various streaming protocols (HLS, DASH)
  • Audio Extraction: Extract audio from video content
  • Format Selection: Choose from multiple quality options

User Experience

  • Modern UI: Clean, intuitive interface with dark theme
  • Progress Monitoring: Real-time download statistics
  • Download Windows: Detailed progress for each download
  • Clipboard Monitoring: Auto-detect URLs from clipboard
  • Multiple Language Support: Internationalization ready

πŸ› οΈ Technical Features

Download Engines

  • Aria2c Integration: High-performance download engine
  • Native Downloader: Built-in download capabilities
  • yt-dlp Support: Advanced media extraction

Performance

  • Segmented Downloads: Split large files for faster downloading
  • Smart Queuing: Efficient download queue management
  • Resource Management: Optimize system resource usage

File Management

  • Checksum Verification: Ensure file integrity
  • Auto-Resume: Recover from interrupted downloads
  • File Organization: Customizable download locations

πŸ“¦ Installation

OmniPull is cross-platform and runs on Windows, Linux and MacOS.

πŸͺŸ Windows Installation

You can download the latest OmniPull installer for Windows from the Releases section. Just run the installer and follow the on-screen instructions.

  • After installation, launch OmniPull from the Start Menu or desktop shortcut.
  • No additional configuration is needed. aria2c is included and ready to go.

🐧 Linux Installation

You can download the latest OmniPull installer for Linux from the Releases section.

  • Download the latest version for Linux either the AppImage or deb file.
  • Change permissions of the appimage or dmg by using chmod.
  • Run sudo command or double click to extract package and install.
  • Summary
# deb
chmod +x omnipull*.deb

sudo dpkg -i omnipull*.deb

# for appimage
chmod +x omnipull*.appimage

./omnipull*.appimage

πŸ–₯️ macOS Installation

Download the latest OmniPull for macOS from the Releases page.

Recommended: direct latest links


Option A β€” No-Terminal (UI) install

  1. Open the DMG

    • Double-click the downloaded .dmg (e.g., omnipull-intel-2.0.0.dmg or omnipull-arm64-2.0.0.dmg).
  2. Install the app

    • In the window that appears, drag OmniPull.app into the Applications folder shortcut.
  3. Install browser connectors (from the same DMG window)

    • Double-click Firefox Connector and follow the prompts to add/enable the extension.
    • Double-click Edge Connector and follow the prompts to add/enable the extension.
  4. Eject the DMG

    • Click the eject button next to the mounted volume in Finder (or right-click the volume β†’ Eject).
  5. Launch OmniPull

    • Open Applications β†’ OmniPull.
    • If you see a security prompt:
      • Right-click the app β†’ Open β†’ Open (creates a one-time Gatekeeper exception), or
      • Go to System Settings β†’ Privacy & Security, scroll to β€œOmniPull was blocked” and click Open Anyway.

Tip: If the browser shows an β€œAre you sure?” dialog while adding the connector, choose Allow / Add to enable it.


Option B β€” Install via Terminal

cd ~/Downloads
FILE="omnipull-intel-2.0.0.dmg"   # or omnipull-arm64-2.0.0.dmg

# Remove quarantine from the DMG (prevents it from propagating):
xattr -d com.apple.quarantine "$FILE" || true

# Mount and capture the mount point:
MOUNT_POINT="$(hdiutil attach "$FILE" | awk '/Volumes/ {print $3; exit}')"

# Copy the app into Applications:
cp -R "$MOUNT_POINT/OmniPull.app" /Applications/

# Eject the DMG:
hdiutil detach "$MOUNT_POINT"

# (Optional) Ensure the installed app isn't quarantined:
xattr -dr com.apple.quarantine /Applications/OmniPull.app || true

# Launch:
open -a "OmniPull"

Script Kiddies

# Clone the repository
git clone https://github.com/Annor-Gyimah/omnipull.git

# Navigate to the project directory
cd omnipull

# Install dependencies
pip install -r requirements.txt

# Run the application
python main.py

🌐 Browser Integration

OmniPull integrates with major browsers through extensions:

  • Chrome/Edge
  • Firefox
  • Opera

🎯 Upcoming Features

  • N/A

🀝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

OmniPull Downloader - Open source downloader | Product Hunt

πŸ“„ License

This project is licensed under the GPLV3 License - see the LICENSE file for details.

πŸ‘¨β€πŸ’» Author

Emmanuel Gyimah Annor

πŸ™ Acknowledgments

  • PySide6 team for the amazing GUI framework
  • aria2c developers for the download engine
  • yt-dlp team for YouTube integration
  • All contributors and users of OmniPull

Made with ❀️ by Emmanuel Gyimah Annor

About

Pull Everything. Everywhere.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages