A PyQt6-based application that automatically tracks and updates software from GitHub releases.
- Track multiple GitHub repositories
- Automatic version detection
- OS and architecture-specific downloads
- System tray integration
- Custom update paths
- Auto-update option per repository
- Download the latest release from the releases page
- Extract the archive
- Run GitUpdater
# Clone the repository
git clone https://github.com/JochemKuipers/GitUpdater.git
cd GitUpdater
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Linux/Mac
# or
.venv\Scripts\activate # On Windows
# Install dependencies
pip install -r ./requirements.txt
# Run the application
python ./main.pyGitUpdater stores its configuration in ~/.config/gitupdater/ (Linux) containing:
config.json: Application settingsrepos.json: Repository tracking data
- Click "Add Repo" button
- Enter GitHub repository URL
- Select installation directory
- Enable/disable auto-update
- Click OK to add
For repositories with multiple assets, GitUpdater will:
- Auto-detect OS/architecture appropriate files
- Allow manual selection of correct package
- Remember selection for future updates
- Python 3.8+
- PyQt6
- Cronie (linux only)
- GitHub API access
- Internet connection
# Install PyInstaller
pip install pyinstaller
# Build executable
pyinstaller main.spec- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow PEP 8 style guide
- Add docstrings to new functions/classes
- Include unit tests for new features
- Update documentation as needed
This project is licensed under the MIT License - see the LICENSE file for details.




