Michael Herrmann 08abfabe71 Extend README
2021-12-09 11:16:05 +01:00
2021-12-09 11:14:53 +01:00
2021-12-09 10:25:45 +01:00
2021-12-09 11:14:53 +01:00
2021-11-26 16:48:28 +01:00
2021-11-26 16:48:28 +01:00
2021-12-09 11:16:05 +01:00
2021-11-26 19:57:55 +01:00

winget private repository

A Python implementation of a private winget repository server (/REST API).

Setting up a local SSL certificate

winget only allows https:// sources. This means that if we want to run locally, then we need a self-signed SSL certificate for localhost.

localhost.pfx can be used for this purpose. It was created from these instructions. To install it, issue the following in a Powershell Admin prompt:

$password=ConvertTo-SecureString "12345" -asplaintext -force
Import-PfxCertificate -FilePath conf\localhost.pfx Cert:\LocalMachine\My -Password $password -Exportable
Import-Certificate -FilePath conf\localhost.cert -CertStoreLocation Cert:\CurrentUser\Root

To remove it later, run mmc, click File/Add or Remove Snap-in then Certificates/Add/My User account then Finish and again for Computer account. Then click OK. Then delete localhost expiring 2041 from Current User/Personal, Current User/Trusted Root Certification Authorities, and Local Computer/Personal.

Set up the development environment

pip install -Ur requirements/base-full.txt

Run locally

python manage.py runserver

Then:

python sslproxy.py

Then you can open https://localhost:8443 in the browser.

To add the REST source:

winget source add -n "winget-pkgs-restsource" -a https://localhost:8443/api/ -t "Microsoft.Rest"
S
Description
Missing features The open source version lacks the following features: Automatic backups Mirroring another repository Microsoft Entra ID integration Hosting installers on Azure Blob Storage Localized installers and packages Serving installers from external URLs Specifying dependencies between packages Support for winget PackageDocumentations Support for winget AppsAndFeaturesEntries
Readme AGPL-3.0 337 KiB
Languages
Python 79.5%
Shell 12.6%
HTML 7.5%
Dockerfile 0.4%