-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Question: how to handle installers without direct links? #48
Comments
Follow up: I tried moving the installer to my own CDN and direct linking to that, but that doesn't work either. The PR fails saying it couldn't validate whether the installer contained malicious software. 🤷♀️🏳 The URL to the installer is on my CDN: https://winget.b-cdn.net/iview454_setup.exe Exact error I'm getting:
I do feel it's in error. |
This has been something we've been investigating. We do SmartScreen and a few other checks to reduce the likelihood of malicious software ending up in the repository. |
@JudahGabriel in this specific case IrfanView does provide their own hosting, they just hide it under alternate downloads: I'd recommend taking a look at where manifests other package managers like Scoop are pulling from as a reference point. That's how I found that link for IrfanView: |
Even that link is not a direct download:
They deliberately got rid of all direct links.
|
You can download the file and then check for the actual download link in your browser. |
Those are usually dynamically generated links that expire. I'm also looking for a good solution to this but have not found one outside of hosting it myself. |
Yep, these are dynamic links that are generated with a special token. This isn't a URL that can be used in winget packages; the link won't work. This is again why winget needs to have its own CDN mirror of installers. |
As I'm playing with this tool, I notice a great deal of Win32 apps have installers which are not available for direct link. This prevents them from being used with winget.
For example, IrfanView, a popular image viewer and editor. Its installer is listed on the 3rd party site fosshub.com. Here is the link: https://www.fosshub.com/IrfanView.html?dwl=iview454_x64_setup.exe
The URL is misleading, however: this isn't the actual installer link, it's a page (with ads) that programmatically triggers downloading the installer. This way, there is no direct link to the installer, and thus, fosshub gets ad views to subsidize their bandwidth.
Looking at Irfanview's download page, all the installers are on 3rd party sites, and all of them prevent hotlinking like this.
How can I submit a manifest when the installer doesn't have a direct URL? Obviously, I could host the installer myself, but my servers couldn't handle e.g. a million downloads. Will Microsoft fetch these installers and mirror them on its own CDN? IMO, this is the best option.
The text was updated successfully, but these errors were encountered: