as per discussion in pull-request #47289 i'm attaching a text file with many additional appcast URLs that are not obvious (i.e. not stored in the Info.plist => SUFeedURL) of common apps
the format is like this
BUNDLE_IDENTIFIER|SU_FEED_URL_FROM_PLIST|ACTUAL_WORKING_FEED_URL
if you prefer to have the file with caskfile-names instead of bundle-identifierts, i'm sure i could provide an alternative version with some work.
overridesparklefeedurls.txt
if you prefer to have the file with caskfile-names instead of bundle-identifierts
That would be preferred, yes.
Also, you can just paste the info on the post, no need to attach a file.
ok here are those with casknames:
CNAME:curio|(null)|https://www.zengobi.com/appcasts/Curio12MarkdownAppcast.xml
CNAME:diskcatalogmaker|http://update.diskcatalogmaker.com/info/appcast/DiskCatalogMakerNOUPDATE.xml|http://update.diskcatalogmaker.com/info/appcast/DiskCatalogMaker.xml
CNAME:mailplane|https://update.mailplaneapp.com/appcast.php|https://update.mailplaneapp.com/appcast.php?appName=Mailplane%203&osVersion=10.13.4&appVersion=3293&selectedLanguage=en
CNAME:merlin-project|(null)|https://projectwizards.net/en/support/release-notes/merlin-project/xml
CNAME:powerphotos|(null)|https://www.fatcatsoftware.com/powerphotos/powerphotos_appcast.xml
CNAME:product-hunt|(null)|https://s3.amazonaws.com/producthunt/mac/producthuntcast.xml
CNAME:sandvox|https://launch.karelia.com/appcast.php|https://launch.karelia.com/appcast.php?product=8&appname=Sandvox&version=29583&type=release_deploy&os=10.13.4
CNAME:time-out|http://www.dejal.com/appcast/|https://dejal.net/appcast/?prod=timeout&aed=direct&from=2037&rel=gen
CNAME:vitalsource-bookshelf|(null)|https://rink.hockeyapp.net/api/2/apps/a6783a554fdbcdf21af951911b106fac
Moved the second list to this post.
and here are the ones that are either not added to cask (yet) or where i could not find the right caskfile, so as before with bundle identifiers:
com.arat.Vacuum.OSX|(null)|http://instashareapp.com/files/instasharecast.xml.rss
com.audiofile-engineering.myriad|(null)|https://myriad.aurchitect.com/sufeed.rss
com.audiofile.Spectre|(null)|https://spectre.aurchitect.com/sufeed.rss
com.aurchitect.triumph|(null)|https://triumph.aurchitect.com/sufeed.rss
com.bambooapps.Quiet-Read|https://www.design-nation.net/appcasts/quietread.xml|http://www.design-nation.net/appcasts/quietread.xml
com.binance.mac-client|(null)|https://ftp.binance.com/desktop/appcast.xml
com.bowers-wilkins.AirPlay.Setup|(null)|https://dds.bwfirmware.com/sparkle/getAppcast.php?app_string_id=mac_setup_v1
com.brainfevermedia.CircularStudio|https://dl.dropboxusercontent.com/u/13901878/Mac/CircularStudioUpdates.xml|https://filedn.com/lumbLIgqqMvpPcvcRy9iv20/Mac/CircularStudioUpdates.xml
com.brainfevermedia.ReflectStudio|https://dl.dropboxusercontent.com/u/13901878/Mac/ReflectStudioUpdates.xml|https://filedn.com/lumbLIgqqMvpPcvcRy9iv20/Mac/ReflectStudioUpdates.xml
com.brainfevermedia.skylabstudio|https://dl.dropboxusercontent.com/u/13901878/Mac/SkyLabStudioUpdates.xml|https://filedn.com/lumbLIgqqMvpPcvcRy9iv20/Mac/SkyLabStudioUpdates.xml
com.cfour.istudiopublisher|(null)|https://www.istudiopublisher.com/rss/istudiopub/update_feed_chooser.php
com.chimpstudios.Print-Selection|(null)|https://www.chimpstudios.com/app_support/printselection_appcast.xml
com.codelinesoftware.artview-mac|https://apps.code-line.com/mac/updates/av2/|https://apps.code-line.com/mac/updates/av2/update.xml
com.creativebe.MainMenu|SET_PROGRAMMATICALLY_BY_APPLICATION_HELPER|https://api.incrediblebee.com/appcasts/mainmenu-pro-3.xml
com.criminalbird.typeface.standalone|(null)|https://dcdn.typefaceapp.com/appcast.xml
com.culturedcode.things|https://culturedcode.com/things/download/Things_Updates.php|https://culturedcode.cachefly.net/things/sparkle-things3/sparkle_en.xml
com.culturedcode.ThingsMac|https://culturedcode.com/things/download/Things_Updates.php|https://culturedcode.cachefly.net/things/sparkle-things3/sparkle_en.xml
com.deepprose.Booxter2|(null)|http://www.deepprose.com/updates/booxter.xml
com.elgato.GameCaptureHD|(null)|https://gc-updates.elgato.com/mac/egcm-update-rss/?dbg=0&lang=English
com.elgato.VideoCapture|(null)|https://rink.hockeyapp.net/api/2/apps/651790b07f55248c266474ee243a733a
com.fatcatsoftware.PowerTunes|(null)|https://www.fatcatsoftware.com/powertunes/powertunes_appcast.xml
com.fiplab.batteryhealth3|(null)|https://rink.hockeyapp.net/api/2/apps/41c9eda8ceed48c49c391e7173cedd97
com.fiplab.downloadshuttlepro|(null)|https://rink.hockeyapp.net/api/2/apps/4913fd551f044a88bd8e806fa9616a1b
com.fiplab.handynote|(null)|https://rink.hockeyapp.net/api/2/apps/6eacdaaeb7fd4ad4baa5a7fee4d0cb0d
com.fiplab.memoryclean3|(null)|https://rink.hockeyapp.net/api/2/apps/386e625beaba424883981802cf24cbb2
com.fiplab.shortcutbar|(null)|https://rink.hockeyapp.net/api/2/apps/8ab85c6a73464877a5d9a1a61ad86020
com.fiplab.windowfocus|(null)|https://rink.hockeyapp.net/api/2/apps/10ecea325a98419bb1f3e5eb6c328724
com.fiplab.windowmanager|(null)|https://rink.hockeyapp.net/api/2/apps/5522e2152c24441d8d1da933218dabf5
com.flyingmeat.VoodooPad|(null)|https://www.primatelabs.com/appcast/voodoopad5.xml
com.gardengnomesoftware.pano2vr|(null)|https://ggnome.com/appcast/pano2vr/stable
com.GraphPad.Prism|(null)|https://www.graphpad.com/autoupdates/prism7mac/appcast.xml
com.igrsoft.LockMeNow|https://igrsoft.com/wp-content/lockmenow/update.xml|http://igrsoft.com/wp-content/lockmenow/update.xml
com.incrediblebee.Archiver|SET_PROGRAMMATICALLY_BY_APPLICATION_HELPER|https://api.incrediblebee.com/appcasts/archiver-2.xml
com.ironic.fresh|(null)|https://ironicsoftware.com/downloads/fresh.xml
com.jib.TrashMe|(null)|https://www.jibapps.com/ressources/trashme/appcast.xml
com.kanecheshire.MacIDOSX|https://macid.co/appcast.xml|https://unlox.it/download/update.php
com.literatureandlatte.scrivener2|https://www.literatureandlatte.com/downloads/scrivener-2.xml|httpFORCE_SPARKLE_FAIL
com.littleknownsoftware.MailPluginManager|(null)|http://s3.amazonaws.com/media.smallcubed.com/sparkle/mpm/standard.xml
com.littleknownsoftware.MailPluginManager|https://littleknownsoftware.com/feed/mpm|http://s3.amazonaws.com/media.smallcubed.com/sparkle/mpm/standard.xml
com.magicbit.ummy|_|http://37.130.231.93/update/update.xml
com.marinersoftware.paperless|(null)|http://www.marinersoftware.com/sparkle/paperless64/paperless.xml
com.micromat.machineprofile|(null)|https://www.micromat.com/updates/MacProfile/appcast.xml
com.mixage.qmidipro|(null)|http://www.mixagesoftware.com/en/qmidi/sparkle/com.mixage.qmidipro.php
com.movavi.maccleaner2.gui|(null)|http://img.movavi.com/changelog/maccleaner/maccleaner_sparkle.xml
com.movavi.screenrecorder5|(null)|https://img.movavi.com/changelog/mac-screen-recorder/srm_sparkle.xml
com.movavi.videoconverter8|(null)|https://img.movavi.com/changelog/videoconvertermac/appcast.xml
com.palmerandersen.emailarchiverpro|(null)|https://emailarchiverpro.com/eaproversion.xml
com.palmerandersen.emailarchiverprobusiness|(null)|https://emailarchiverpro.com/eaprobusiness.xml
com.palmerandersen.emailarchiverproenterprise|(null)|https://emailarchiverpro.com/eaproenterprise.xml
com.pilotmoon.Dropshelf|(null)|https://softwareupdate.pilotmoon.com/update/dropshelf/appcast.xml
com.pixellu.SmartAlbums|(null)|https://api.smartalbums.com/updates/get_feed/2.0/smartalbums-mac
com.prosofteng.DriveGenius2|(null)|https://www.prosofteng.com/resources/dg5/dgupdate.rss
com.records.Records|(null)|https://andreagelati.github.io/records.team/assets/appcast/appcast.xml
com.roxio.Toast|http://img.roxio.com/updaters/toast/v14/appcast_toast.xml|https://www.corel.com/toast/toast16/appcast_toast.xml
com.roxio.Toast|https://www.corel.com/toast/toast15/appcast_toast.xml|https://www.corel.com/toast/toast16/appcast_toast.xml
com.sheepsystems.Markster|(null)|https://sheepsystems.com/markster/appcast.xml
com.sheepsystems.Smarky|(null)|https://sheepsystems.com/smarky/appcast.xml
com.sheepsystems.Synkmark|(null)|https://sheepsystems.com/synkmark/appcast.xml
com.smallcubed.install-sp|(null)|https://s3.amazonaws.com/media.smallcubed.com/sparkle/SigPro.xml
com.supermegaultragroovy.capo3.mac|(null)|http://supermegaultragroovy.com/products/Capo/appcast-3.0.xml
com.tencent.xinWeChat|(null)|https://dldir1.qq.com/weixin/mac/mac-release.xml
com.thekeptpromise.Create-Booklet|(null)|https://thekeptpromise.com/AppCasts/CreateBooklet.xml
com.thekeptpromise.subtitlestudio|(null)|http://TheKeptPromise.com/AppCasts/SubtitleStudio.xml
com.tumult.Hype|(null)|https://tumult.com/hype/appcast_hype2.xml
com.tumult.Hype2|(null)|https://tumult.com/hype/appcast_hype2.xml
com.unsignedinteger.Deckset-Paddle|(null)|https://dl.decksetapp.com/appcast.xml
com.veprit.PhotoSensePro|(null)|https://veprit.com/photosense/download/appcast.xml
com.winzip.WinZipMacOptimizer||http://download.winzip.com/utils/mo/MacOptimizerCast.xml
com.yellowmug.EasyFrame|(null)|http://yellowmug.com/easyframe/appcast-1014.xml
de.furrysoft.UniversalTicker|(null)|http://www.furrysoft.de/appcast/UniversalTicker.xml
de.mcdan.tables|(null)|http://www.x-tables.eu/updates/version.xml
tv.airbeam.mirrorforandroidtvnm|(null)|https://s3.amazonaws.com/airbeamtv-nm-mirror-for-androidtv/MirrorAndroidTV.xml
tv.airbeam.mirrorforchromecastnm|(null)|https://s3.amazonaws.com/airbeamtv-nm-mirror-for-chromecast/MirrorChromecast.xml
tv.airbeam.mirrorforfiretvnm|(null)|https://s3.amazonaws.com/airbeamtv-nm-mirror-for-firetv/MirrorFireTV.xml
tv.airbeam.mirrorforlgtvnm|(null)|https://s3.amazonaws.com/airbeamtv-nm-mirror-for-lg/MirrorLGTV.xml
tv.airbeam.mirrorforphilipstvnm|(null)|https://s3.amazonaws.com/airbeamtv-nm-mirror-for-philips/MirrorPhilipsTV.xml
tv.airbeam.mirrorforrokunm|(null)|https://s3.amazonaws.com/airbeamtv-nm-mirror-for-roku/MirrorRoku.xml
tv.airbeam.mirrorforsamsungtvnm|(null)|https://s3.amazonaws.com/airbeamtv-nm-mirror-for-samsung/MirrorSamsungTV.xml
tv.airbeam.mirrorforsonytvnm|(null)|https://s3.amazonaws.com/airbeamtv-nm-mirror-for-sony/MirrorSonyTV.xml
I'm working though the list removing Casks:
ok i've found a few thousand more feeds and want to provide them in case they are useful to you
all of them are valid appcasts and online, but i've categorized them in "verified" where a script has automatically determined that the feed really has the latest version and "unverified", where the script was not able to do so (but the feed may still be fine, a script is a script). there are some duplicates, but i guess its better than nothing.
i've tried to replace bundle-ids with casknames wherever possible automatically (top of file) but also added the other feeds i have found (bottom) with their bundle-ids for the case that they either are added but the i didn't find the caskname or for the case that they may be added in the future.
i hope this is useful.
cask_feeds_notverified_proc.txt
cask_feeds_verified_proc.txt
@core-code out of curiosity, how are you finding these? I know in the other PR you showed a formula for the devmate appcasts, so are you just trying all the cask bundle IDs on devmate (and something similar for other endpoints)?
@commitay is there value in adding appcasts to casks with :latest :no_check ?
@brianmorton: our app "MacUpdater" collected those appcasts from apps installed from our users - using a mechanism similar to the find_appcast script. i did some post-processing to distinguish good from bad feeds.
slightly off-topic background-info and full-disclosure on the topic of 'MacUpdater' and 'Homebrew-Cask':
our MacUpdater can use the information from homebrew's caskfiles to be able to show current version-numbers and automatically update apps that don't have an app-cast (there are basically 4 mechanisms, MacAppStore, SparkleAppcast, HomebrewCask, OurDatabase, used in this order)
thats why we (currently me and @suschizu) are contributing to homebrew-cask - we want to give something back and also its in our interest to have the versions in homebrew-cask up-to-date.
i think the information collected by MacUpdater could also be valuable to automatically find casks that have outdated versions. we basically have a realtime-database of all apps in use. everything i've done so far had too much noise (think beta versions) and didn't scale well and i'm still quite busy doing the next major release but after that my plan was to discuss some ways how we could contribute an automatic way to keep all casks up-to-date. if there is any interest.
@core-code thank you for sharing. you will probably be very interested in this discussion then.
@commitay is there value in adding appcasts to casks with
:latest:no_check?
Yes, because they then stop being :latest and start having a version. I know you don鈥檛 like that policy, but as I鈥檝e explained before, it was decided by users. It鈥檚 not my preference (I like :latest and was on the other side of the policy when it was discussed), it鈥檚 our rule.
Yes, because they then stop being :latest and start having a version.
This is untrue, and is exactly why I was asking: some of the casks on @core-code 's latest list are setup as latest/no_check, but he found appcasts for them - and even in the appcast there is an unversioned download url!
edit
5kplayer is the cask I was referring to. From the list, this appcast was found
#cask_feeds_verified_proc.txt
...
5kplayer|http://www.5kplayer.com/upgrade/mac/updatecast.xml
...
and that appcast includes
<sparkle:updatepageLink xml:lang="en">
https://www.5kplayer.com/5kplayer-download-mac.htm?run.5k491
</sparkle:updatepageLink>
<pubDate>Fri, 15 Jun 2018 12:00:00 +0000</pubDate>
<enclosure url="http://www.5kplayer.com/download/5kplayer.dmg" sparkle:version="4911" sparkle:shortVersionString="4.9.1" length="40307468 " type="application/octet-stream" sparkle:dsaSignature="MCwCFBPT0oUNcf4jBODkyhkUIKzsWQuCAhRUvnSZb/BEqBKhbZTv1ci0mLzRVw=="/>
So you can see there is a version associated with it but it is not used, and the cask is currently on latest/no_check
This is untrue
It isn't untrue.
See the edited post above.
The sparkle version is used as the version.
5kplayer.rb
cask '5kplayer' do
version :latest
sha256 :no_check
...
Should be used as the version.
So you would prefer in these cases then that latest/no_check is removed since there is a version in the appcast, even if it is not used in the download URL then.
That is different from just denying what I was saying, as I think I have shown.
That is different from just denying what I was saying, as I think I have shown.
Latest becomes versioned with appcast even if the URL is unversioned.
That does not make this untrue:
Yes, because they then stop being :latest and start having a version.
I suppose the miscommunication here is that it did not make sense to me that just because there was a version in the appcast, the version would automatically start being used... since it is not necessary.
We have already been over (ad nauseam) the positions around :latest and the current policy. I am not here to change it. I now understand that if an appcast is added to a cask, it then MUST become a versioned cask.
Apologies for the confusion!
ok i have prepared two new lists that could be useful:
feedsthatshouldbeadded.txt
this is a list of casknames/appcasts where we've manually identified working and up-to-date appcasts but the cask doesn't have an 'appcast' field at all. i guess all of those should be added to the casks.
feedsthatshouldbereplaced.txt
this is a list of casks where there is a perfectly working manually verified appcast, but the cask has a website in the 'appcast' field. replacing the appcast field with the feed listed in the file should reduce noise and make it easier to keep them up-to-date.
you can skip the "snagit" feed, it only works when spoofing the user-agent
feedsthatshouldbeadded.txt
feedsthatshouldbereplaced.txt
should i send a pull request? ;)
i think we can close this as AFAIK all valid feeds have been entered?
I may be out of the loop but I think there are still some missing / needing updates. On my "todo" list I have to run the developer/bin/find_appcast script on all casks.
yes some are missing, but AFAIK none that are in any files i have posted here.
i have added all the known good feeds i know about (
https://github.com/Homebrew/homebrew-cask/pull/54715 etc) but i guess there are many more i don't know about
i am unsure if 'developer/bin/find_appcast' will yield any valid (!) feeds for casks we've had for some time. i doubt it. but of course its still very useful for new casks.