igdebi

igdebi 0.2

 pool/sid/main/i/igdebi/igdebi_0.2_all.deb igdebi
Online package installer
Filename pool/sid/main/i/igdebi/igdebi_0.2_all.deb
Version0.2
Age in days707
Release date2024 11. 28.
Size9.69 KB
id115
Nameigdebi
Package
Appname
Essential
Vendor
License
Distributionsid
Suitemain
Source
Architecturebinary-i386
MultiArch
MaintainerVΓ­tΔ›zslav DvoΕ™Γ‘k
InstalledSize65
Dependspython3-tqdm , python3:any , python-pkg-resources , python3-validators , gdebi-core
PreDepends
Breaks
Enhances
Sectionpython
Priorityoptional
DescriptionOnline package installer
LongDescriptioni(nternet)gdebi takes debian package from url or filepath and install it.
AutoBuiltPackage
Filenamepool/sid/main/i/igdebi/igdebi_0.2_all.deb
MD5sum684a6f1e5bd2b6a0735474f5f9632f4e
SHA1ffbb6844606210805b6de26eec04d9ac3d82335f
SHA2568acc1a072b277f63d4a5bc3213c693b8f04b49780f2533ad25a42972f44f1798
SHA512eb8d861a8cd4bc9d9b5fe87efcb3ee68de26afbaf21fb9aec09907ae1b8b90627efc6e04b49b6b292b8afb7de1570804062a27e71cd59103983290ad0e45481a
Size9920
Auto-Built-Package
Homepagehttps://github.com/vitexsoftware/igdebi
Provides
Existing
fileMtime2024-11-28 12:35:02
created2021-03-20 02:24:33
updated2024-11-28 11:35:02
igdebi
<>

iGdebi igdebi

Interactive Gdebi - A modern command-line tool for downloading and installing Debian packages from URLs.

Features

  • 🌐 URL Support: Download .deb packages directly from web URLs
  • πŸ“ Local Files: Install local .deb files
  • πŸ“Š Progress Bars: Real-time download progress with speed indicators
  • πŸ”’ Security: Safe subprocess execution, proper input validation
  • 🧹 Auto Cleanup: Automatically removes downloaded files after installation
  • ⚑ Modern: Updated dependencies and Python 3.10+ support
  • πŸ›‘οΈ Error Handling: Comprehensive error handling and user feedback

Quick Start

Install from Repository

sudo apt install lsb-release wget
echo "deb http://repo.vitexsoftware.cz $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/vitexsoftware.list
sudo wget -O /etc/apt/trusted.gpg.d/vitexsoftware.gpg http://repo.vitexsoftware.cz/keyring.gpg
sudo apt update
sudo apt install igdebi

Install from Source

git clone https://github.com/VitexSoftware/igdebi.git
cd igdebi
pip3 install -r requirements.txt
sudo apt install gdebi-core
pip3 install -e .

Usage

Download and Install from URL

sudo igdebi https://example.com/package.deb

Install Local Package

sudo igdebi /path/to/package.deb

Example with Real Package

# Install Apache NetBeans IDE
sudo igdebi https://github.com/Friends-of-Apache-NetBeans/netbeans-installers/releases/download/v27-build1/apache-netbeans_27-1_amd64.deb

Output:

Downloading https://github.com/.../apache-netbeans_27-1_amd64.deb...
Downloading apache-netbeans_27-1_amd64.deb: 100%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 621M/621M [00:20<00:00, 30.9MB/s]
Successfully installed apache-netbeans_27-1_amd64.deb
Cleaned up downloaded file: apache-netbeans_27-1_amd64.deb

Screenshot

Requirements

System Requirements

  • OS: Debian, Ubuntu, or derivatives
  • Python: 3.10 or higher
  • Architecture: amd64, i386, arm64 (depends on package)

System Dependencies

sudo apt install gdebi-core python3-pip

Python Dependencies

Python 3.10+ is required. The following Python packages are needed:

  • tqdm>=4.67.0 - For progress bars during download
  • validators>=0.28.0 - For URL validation
  • requests>=2.32.0 - For HTTP downloads

Install Python dependencies:

pip3 install -r requirements.txt

Development

Development Setup

  1. Clone Repository

    git clone https://github.com/VitexSoftware/igdebi.git
    cd igdebi
    
  2. Create Virtual Environment

    python3 -m venv venv
    source venv/bin/activate  # On Linux/macOS
    
  3. Install Dependencies

    pip install -r requirements.txt
    pip install -e .
    
  4. Install System Dependencies

    sudo apt install gdebi-core
    

Building Debian Package

We use standard debian devscripts:

debuild -i -us -uc -b

Testing

python3 -m pytest tests/ -v

API Reference

Command Line Interface

igdebi <URL_OR_PATH>

Arguments:

  • URL_OR_PATH: Either a URL pointing to a .deb file or a local file path

Examples:

igdebi https://example.com/package.deb    # Download and install from URL
igdebi ./package.deb                      # Install local file
igdebi /tmp/downloaded.deb               # Install from absolute path

Error Handling

The tool provides comprehensive error handling:

  • Invalid URL: Validates URL format before attempting download
  • Network Issues: Handles connection timeouts and HTTP errors
  • File Validation: Ensures files have .deb extension
  • Missing Dependencies: Checks for gdebi installation
  • Permission Issues: Clear messages for sudo requirements
  • Interrupted Downloads: Clean cleanup on Ctrl+C

Changelog

Version 0.3.0 (2026-05-15)

  • Drop EOL Python 3.7–3.9; require Python 3.10+
  • Remove legacy setup.py/setup.cfg; packaging consolidated in pyproject.toml
  • Add type hints and pathlib.Path throughout
  • Add 60-second download timeout
  • Switch test suite to pytest; switch linting to ruff

Version 0.2.0 (2025-10-04)

  • Real-time progress bars with download speed
  • Replaced os.system() with secure subprocess calls
  • Comprehensive error handling and user feedback

Version 0.2 (2020-07-19)

  • Initial public release
  • Basic URL download and package installation

Contributing

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

License

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

Support

Related Projects

  • gdebi - The underlying package installer
  • apt - Advanced Package Tool for Debian
  • dpkg - Debian package manager