Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Information on hosting your own local repository #64

Closed
bigpod98 opened this issue May 19, 2020 · 13 comments · Fixed by #61
Closed

Information on hosting your own local repository #64

bigpod98 opened this issue May 19, 2020 · 13 comments · Fixed by #61
Assignees
Labels
Issue-Docs Improvements or additions to documentation
Milestone

Comments

@bigpod98
Copy link

As im checking this out there does not seem any information on hosting your own local repository of packages. This information could be usefull for companies or users who have a lot of their own builds and might even use their own private applications.

I am also asking this because there is option to add aditional sources of packages to winget command line app. So i went on the hunt for that info right away.

thanks for looking at my issue.

@denelon
Copy link
Contributor

denelon commented Jun 1, 2020

We're working on a REST API that would be simpler for this use case. I do clearly see a need to update the documentation here.

@denelon denelon transferred this issue from microsoft/winget-pkgs Jun 1, 2020
@doctordns
Copy link

If you are using REST APIs, doesn't that preclude using an SMB share? Or is the REST API in addition to using SMB transport of the underlying package content and meta data?

@bigpod98
Copy link
Author

bigpod98 commented Jun 2, 2020

If i may guess restapi is basicly tellimg it where in storage it is and all infor required

@denelon
Copy link
Contributor

denelon commented Jul 24, 2020

I think the issue microsoft/winget-cli#160 would address the SMB concern.

@denelon
Copy link
Contributor

denelon commented Jul 24, 2020

The client today pulls a package down that is a set of pointers to the manifests. We're looking at enabling a REST API so third parties wouldn't have to build a signed package with an index similar to what we currently have. The API would support queries from the client and provide manifests for the client to use for package installation.

@chbwien
Copy link

chbwien commented Aug 13, 2020

A local repository would be very interesting for us because we are maintaining a huge repository of software for the whole university.

@denelon
Copy link
Contributor

denelon commented Sep 16, 2020

I think this may be a duplicate of microsoft/winget-cli#118

@denelon
Copy link
Contributor

denelon commented May 26, 2021

https://github.com/microsoft/winget-cli-restsource is a reference implementation for an HTTPS REST API source.

@denelon
Copy link
Contributor

denelon commented Sep 17, 2021

#34

Draft PR is out with documentation and a PowerShell script to ease deployment.

@doctordns
Copy link

The client today pulls a package down that is a set of pointers to the manifests. We're looking at enabling a REST API so third parties wouldn't have to build a signed package with an index similar to what we currently have. The API would support queries from the client and provide manifests for the client to use for package installation.

Please only use signed manifests.

@denelon
Copy link
Contributor

denelon commented Sep 17, 2021

@doctordns we thumbprint the manifests used in the PreIndexed package (the default "winget" source). That helps ensure they aren't modified/corrupted by the time the client receives them. The REST API hands the data to the client in JSON format. If the source is not compromised, HTTPS/TLS would protect the data in transit. Does that alleviate your concern or did I misunderstand?

@doctordns
Copy link

Not really, in my view.

If you want to use winget on the server-side, we need fully digitally signed manifests. I was long against using this tool for servers, but with signed manifests from Microsoft, winget, once we get cmdlets, seems the best way to move forward. At least for officially released and supported MSFT code - such as WAC.

@denelon
Copy link
Contributor

denelon commented Sep 18, 2021

@doctordns thanks for the clarity on this. I'll have the team look into what it would take to digitally sign manifests. This would apply to the PreIndexed default source named "winget" when it is pulling files down from Azure storage. I'm not sure what options we would have for a REST based source. I'll have to see what that would look like, and what it entails.

@denelon denelon transferred this issue from microsoft/winget-cli Oct 1, 2021
@denelon denelon added this to the v1.2-REST milestone Oct 1, 2021
@denelon denelon added this to In Progress in REST-Current Oct 1, 2021
@denelon denelon linked a pull request Oct 1, 2021 that will close this issue
@denelon denelon added the Issue-Docs Improvements or additions to documentation label Oct 1, 2021
@denelon denelon moved this from In Progress to Done in REST-Current Nov 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Issue-Docs Improvements or additions to documentation
Projects
Development

Successfully merging a pull request may close this issue.

5 participants