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

Add Safari Technology Preview latest #20171

Closed

Conversation

zmwangx
Copy link
Contributor

@zmwangx zmwangx commented Mar 30, 2016

@lukeadams
Copy link
Contributor

Shouldn't there be an SHA? The download link is over HTTP, and the binary isn't a rolling release (as seen in the changelog).
I got SHA256:ec41f9ae51524ac0fa97cde0a3b55e52657f4998ce5e439ab9ba3af3d6e32c1a for Release 1.

Here's an encrypted URL: https://secure-appldnld.apple.com/STP/SafariTechnologyPreview.dmg

@zmwangx zmwangx force-pushed the safari-technology-preview-latest branch from 957c2c7 to dfe78f7 Compare March 30, 2016 21:45
@zmwangx
Copy link
Contributor Author

zmwangx commented Mar 30, 2016

the binary isn't a rolling release

It should be a rolling release, but updates beyond initial installation will be distributed through MAS (every two weeks). Presumably the download URL should point to the latest binary (there's no reason to believe otherwise).

Here's an encrypted URL

Updated, thanks.

@lukeadams
Copy link
Contributor

updates beyond initial installation will be distributed through MAS

Sweet!

Presumably the download URL should point to the latest binary (there's no reason to believe otherwise).

I thought I had found a direct link to the specific release, but that was not the case (which is why I claimed that it wasn't). My bad.


pkg 'Safari Technology Preview for OS X El Capitan.pkg'

# Cannot use pkgutil due to lack of BOM
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove comment.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will do.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.

@vitorgalvao vitorgalvao added the awaiting user reply Issue needs response from a user. label Mar 31, 2016
@vitorgalvao
Copy link
Member

@caskroom/maintainers What do you think? Should this be here or in caskroom/versions?

@adidalal
Copy link
Contributor

Seems like versions would be better (the other firefox versions are there, I think)

@zmwangx
Copy link
Contributor Author

zmwangx commented Mar 31, 2016

Adding a cask says

When an App’s principal stable version already exists in the main repo, alternative versions should be submitted to caskroom/homebrew-versions.

That's why I submitted here — there's no way Safari will ever be vendored by HBC.

@adidalal
Copy link
Contributor

That's true - though will this link consistently work/be updated? I thought it was updated only via MAS

@zmwangx
Copy link
Contributor Author

zmwangx commented Mar 31, 2016

The blog post didn't say whether this link will always point to the latest binary, but IMO there's no reason they would ask you to download an outdated version, then wait for MAS to check for an update.

@timsutton
Copy link
Sponsor Member

My guess is that Apple will update the web download versions (eventually) and they will offer updates to the Safari TP via their software update servers, checking for bundle versions of com.apple.SafariTechnologyPreview (and/or package receipts for its installer package). If they do it via the MAS engine they would need to first have users "adopt" the app as a purchase that's tied to an ID.

But either way users will see the updates in the MAS and not need to care which backend is actually doing the check and update installation.

@vitorgalvao
Copy link
Member

That's why I submitted here — there's no way Safari will ever be vendored by HBC.

That’s what gives me pause as well. Not sure yet what the best repo for this might be.

@zmwangx zmwangx force-pushed the safari-technology-preview-latest branch from a51f6c0 to 64758d2 Compare March 31, 2016 23:14
@zmwangx
Copy link
Contributor Author

zmwangx commented Mar 31, 2016

Just added a zap stanza. There's one plist in ~/Library/Preferences/ByHost/ that contains a UUID, so that one can't be removed until globbing support comes to delete:.

@timsutton
Copy link
Sponsor Member

This probably goes for a bunch of different casks and is probably worth an issue of its own, but since OS X added a preferences caching daemon in 10.8 it's not really best practice to interact with preferences by modifying plists directly. cfprefsd marshals any prefs API calls to and from plist files on disk, but the storage is a private detail.

From Apple's 10.8 API notes on preferences:

"The on-disk property list files used by CFPreferences have always been a private implementation detail, but in previous releases, directly modifying them has mostly worked (though there are some potential data-loss issues for applications that do so, even on previous systems). In 10.8 and later, the CFPreferences agent process (cfprefsd) will cache information from these files and asynchronously write to them. This means that directly modifying plist files is unlikely to have the expected results (new settings will not necessarily be read, and may even be overwritten). You should use the NSUserDefaults or CFPreferences APIs, or the defaults(1) command, to interact with the preferences system."

So as suggested, you can instead issue a defaults command, i.e.

defaults delete com.apple.SafariTechnologyPreview

and for ByHost prefs:

defaults -currentHost delete com.apple.SafariTechnologyPreview

As long as these are always run in the context of the user whose preferences are being operated on.

Generally current-host prefs have device-specific info, and I'm not sure you'd necessarily want to clear what in this case is a key called SyncedTabsDeviceUUID, but I mainly just wanted to point out this distinction about how to best interact with preferences on OS X. It's a common misconception that prefs plist files can be safely manipulated directly on disk without having cached changes overwrite them.

@zmwangx
Copy link
Contributor Author

zmwangx commented Apr 1, 2016

It's a common misconception that prefs plist files can be safely manipulated directly on disk without having cached changes overwrite them.

I know (learned it the hard way a long time ago), but when you delete both the plist and the application that uses it, it doesn't really matter.

@Eitot
Copy link
Contributor

Eitot commented Apr 3, 2016

For what it’s worth, webkit-nightly is also at caskroom/versions, despite not having a counterpart at caskroom/cask.

@vitorgalvao
Copy link
Member

For what it’s worth, webkit-nightly is also at caskroom/versions, despite not having a counterpart at caskroom/cask.

That is actually an excellent point. I’m convinced. What about you, @adidalal?

@adidalal
Copy link
Contributor

adidalal commented Apr 3, 2016

Sounds good - lets add it to /versions

@vitorgalvao
Copy link
Member

Thank you for all your work on this, @zmwangx. The one in caskroom/versions is at issue #1865, in case you want to take a look.

@vitorgalvao vitorgalvao closed this Apr 3, 2016
@zmwangx zmwangx deleted the safari-technology-preview-latest branch April 4, 2016 03:52
@adidalal adidalal removed awaiting maintainer feedback Issue needs response from a maintainer. awaiting user reply Issue needs response from a user. labels Apr 12, 2016
@Homebrew Homebrew locked and limited conversation to collaborators May 8, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants