forked from Homebrew/homebrew-cask
-
Notifications
You must be signed in to change notification settings - Fork 0
/
safari-technology-preview.rb
63 lines (56 loc) 路 2.34 KB
/
safari-technology-preview.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
cask "safari-technology-preview" do
# when adjusting the on_{os} scoping, also update the livecheck regex
on_ventura :or_older do
version "193,052-88765-20240424-B9DD68E5-3E5A-493F-8056-1D8A8578D822"
sha256 "e3591ed0190e3194afb1e390f9ec089b251ef711327db3c0cc43964fd41f2d54"
livecheck do
url :homepage
regex(%r{
href=.*?/([^/]+)/Safari(?:%20)?Technology(?:%20)?Preview\.dmg
.*?macOS(?:\s| )*13[\s.<]
}ix)
strategy :page_match do |page, regex|
release = page[%r{>\s*Release\s*</p>\s*<p[^>]*>\s*(\d+)\s*<}i, 1]
id = page[regex, 1]
"#{release},#{id}"
end
end
end
on_sonoma :or_newer do
version "193,052-88763-20240424-6C822EBC-3B0C-4BAA-8004-10D95319E259"
sha256 "41e63d01eee76f08bdd717af75d9cf4c04100e1b5f160bd2d141b37e6bae07cd"
livecheck do
url :homepage
regex(%r{
href=.*?/([^/]+)/Safari(?:%20)?Technology(?:%20)?Preview\.dmg
.*?macOS(?:\s| )*14[\s.<]
}ix)
strategy :page_match do |page, regex|
release = page[%r{>\s*Release\s*</p>\s*<p[^>]*>\s*(\d+)\s*<}i, 1]
id = page[regex, 1]
"#{release},#{id}"
end
end
end
url "https://secure-appldnld.apple.com/STP/#{version.csv.second}/SafariTechnologyPreview.dmg"
name "Safari Technology Preview"
desc "Web browser"
homepage "https://developer.apple.com/safari/resources/"
auto_updates true
depends_on macos: ">= :ventura"
pkg "Safari Technology Preview.pkg"
uninstall launchctl: "com.apple.SafariTechnologyPreview.History",
quit: "com.apple.SafariTechnologyPreview",
delete: "/Applications/Safari Technology Preview.app"
zap trash: [
"~/Library/Application Scripts/com.apple.SafariTechnologyPreview*",
"~/Library/Application Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.apple.safaritechnologypreview.sfl*",
"~/Library/Caches/com.apple.SafariTechnologyPreview",
"~/Library/Containers/com.apple.SafariTechnologyPreview*",
"~/Library/Preferences/com.apple.SafariTechnologyPreview*",
"~/Library/SafariTechnologyPreview",
"~/Library/Saved Application State/com.apple.SafariTechnologyPreview.savedState",
"~/Library/SyncedPreferences/com.apple.SafariTechnologyPreview*",
"~/Library/WebKit/com.apple.SafariTechnologyPreview",
]
end