More Premium Hugo Themes Premium Tailwind Themes

WinGetty

An open source REST Backend for creating a private WinGet Repo without having to rely on cloud dependencies.

WinGetty

An open source REST Backend for creating a private WinGet Repo without having to rely on cloud dependencies.

Author Avatar Theme by thilojaeggi
Github Stars Github Stars: 223
Last Commit Last Commit: Feb 25, 2025 -
First Commit Created: Aug 27, 2024 -
default image

Overview:

WinGetty is a self-hosted package source for Winget that is portable and can be run on Linux, Windows, in Docker, locally, and in any cloud environment. Being in pre-1.0 development, the configuration options, output, database, and behavior may change over time. It aims to provide an intuitive web interface for managing packages and supports essential Winget features while also allowing users to add their own packages with multiple versions and installers.

Features:

  • Intuitive Webinterface: Easy-to-use interface for managing packages
  • Custom Packages: Add your own packages with various versions and installers
  • Winget Features: Search, list, display, and install software using core Winget functionality
  • Nested Installers Support: Ability to handle nested installers and installer switches
  • Package Metadata Update: Easily update package metadata
  • Download Counter: Keep track of package downloads
  • Multi-User Support: Authentication and support for multiple users
  • Cross-Platform Compatibility: Runs on Windows, Linux, etc. using Docker

Installation:

  1. Install Docker on your machine by referring to the official Docker documentation.
  2. Download the docker-compose.yml file from the main branch.
  3. Modify the configuration values in the docker-compose.yml file:
    • WINGETTY_SQLALCHEMY_DATABASE_URI: Specify the database URI for storing WinGetty’s data.
    • WINGETTY_SECRET_KEY: Set the secret key for securing WinGetty’s sessions.
    • WINGETTY_ENABLE_REGISTRATION: Enable (1) or disable (0) user registration.
    • WINGETTY_REPO_NAME: Specify the name of your WinGetty repository.
  4. Start the WinGetty application using Docker Compose:
    docker-compose up -d
    
  5. Access the web interface by navigating to http://localhost:8080 in your browser.
  6. For remote server access, replace localhost with the server’s IP address or hostname.
  7. Upon the first access, register a user who will become the default admin.

Summary:

WinGetty is a promising self-hosted package source for Winget, offering a range of features such as an intuitive web interface, custom package support, multi-platform compatibility, and more. With easy installation via Docker and the ability to manage packages efficiently, WinGetty aims to simplify software deployment and management processes.