Forum moved here!

rmd1010

Hello there,
I’m creating batch script for myself which will be downloading fresh builds of my must-have Windows software. It’s supposed to be simple script which will work on fresh installation so I’m using wget binary to acquire installer exe’s, and since Sumatra doesn’t provide (or maybe?) always up-to-date direct link to latest release, like “SumatraPDF-latest-64-install.exe”, how am I supposed to achieve this?
For example when it comes to VLC, they have latest build directory and DL directory listings are available for public so I was able to use wildcard like this:

.\wget.exe -r -np -nc -nd -A ‘vlc-*-win64.exe’ https://…/vlc/last/win64/

So how can I download Sumatra in the way like this? I know there are tools like Ninite but I want to achieve this the basic way.

GitHubRulesOK

SumatraPDF has always used a text file approach for checking if it is latest version
so currently it looks like

[SumatraPDF]
Latest 12496

and as you have noted a user looking for the latest copy needs the web page JavaScript to adjust that input for the latest available filenames prior to offering to download.

In the past it used to be possible to see latest build via a fixed appveyor entry but those were dropped as daily builds became several per day.
Also the filename structure / location changes fairly frequently.

The traditional method for update monitor apps was usually to parse the web page for a new entry but I guess that will not work here as many older apps were not script aware.
The more static pre-release is tracked by Filehorse so you could easily scrape their page however note they obviously can lag behind both by date and version wise.
Sumo updater unfortunately does not track the latest updates well as like some other monitors it tracks latest official users versions.

On a personal level although I possibly could bypass the system I simply right click on which ever page (pre-rel or daily) and download multiple times a day ‘on demand’, life is to short to keep rewriting a highly specialist script for one user.