Add preliminary support for macOS 14

This commit is contained in:
Nindi Gill 2023-06-08 16:39:30 +10:00
parent 1ca7a42a6f
commit b43f6aeb8b
No known key found for this signature in database
GPG key ID: FF9A7FD590D4F4B1
17 changed files with 51 additions and 18 deletions

View file

@ -2,12 +2,12 @@
"colors" : [
{
"color" : {
"color-space" : "display-p3",
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0.269",
"green" : "0.647",
"red" : "0.946"
"blue" : "0.149",
"green" : "0.663",
"red" : "0.467"
}
},
"idiom" : "mac"
@ -20,12 +20,12 @@
}
],
"color" : {
"color-space" : "display-p3",
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0.269",
"green" : "0.647",
"red" : "0.946"
"blue" : "0.149",
"green" : "0.663",
"red" : "0.467"
}
},
"idiom" : "mac"
@ -38,12 +38,12 @@
}
],
"color" : {
"color-space" : "display-p3",
"color-space" : "srgb",
"components" : {
"alpha" : "1.000",
"blue" : "0.269",
"green" : "0.647",
"red" : "0.946"
"blue" : "0.149",
"green" : "0.663",
"red" : "0.467"
}
},
"idiom" : "mac"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.9 KiB

After

Width:  |  Height:  |  Size: 8.6 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 212 KiB

Before After
Before After

View file

@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "macOS Sonoma.png",
"idiom" : "mac"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

View file

@ -6,6 +6,7 @@
//
enum CatalogType: String, CaseIterable, Comparable, Decodable {
case sonoma = "macOS Sonoma"
case ventura = "macOS Ventura"
case monterey = "macOS Monterey"
case bigSur = "macOS Big Sur"
@ -20,12 +21,14 @@ enum CatalogType: String, CaseIterable, Comparable, Decodable {
private var sortOrder: Int {
switch self {
case .ventura:
case .sonoma:
return 0
case .monterey:
case .ventura:
return 1
case .bigSur:
case .monterey:
return 2
case .bigSur:
return 3
}
}
@ -37,6 +40,20 @@ enum CatalogType: String, CaseIterable, Comparable, Decodable {
func url(for seedType: CatalogSeedType) -> String {
switch self {
case .sonoma:
switch seedType {
case .standard:
return "https://swscan.apple.com/content/catalogs/others/index-14-13-12-10.16-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz"
case .customer:
// swiftlint:disable:next line_length
return "https://swscan.apple.com/content/catalogs/others/index-14customerseed-14-13-12-10.16-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz"
case .developer:
// swiftlint:disable:next line_length
return "https://swscan.apple.com/content/catalogs/others/index-14seed-14-13-12-10.16-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz"
case .public:
// swiftlint:disable:next line_length
return "https://swscan.apple.com/content/catalogs/others/index-14beta-14-13-12-10.16-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz"
}
case .ventura:
switch seedType {
case .standard:

View file

@ -52,7 +52,9 @@ struct Firmware: Decodable, Hashable, Identifiable {
var name: String = ""
if version.range(of: "^13", options: .regularExpression) != nil {
if version.range(of: "^14", options: .regularExpression) != nil {
name = "macOS Sonoma"
} else if version.range(of: "^13", options: .regularExpression) != nil {
name = "macOS Ventura"
} else if version.range(of: "^12", options: .regularExpression) != nil {
name = "macOS Monterey"

View file

@ -271,7 +271,9 @@ struct Installer: Decodable, Hashable, Identifiable {
var name: String = ""
if version.range(of: "^13", options: .regularExpression) != nil {
if version.range(of: "^14", options: .regularExpression) != nil {
name = "macOS Sonoma"
} else if version.range(of: "^13", options: .regularExpression) != nil {
name = "macOS Ventura"
} else if version.range(of: "^12", options: .regularExpression) != nil {
name = "macOS Monterey"

View file

@ -11,7 +11,7 @@ struct SettingsInstallersCatalogsView: View {
@Binding var catalogs: [Catalog]
// swiftlint:disable:next line_length
private let description: String = "Apple Software Update Catalogs are used to determine available macOS Installers.\n\n- **Standard:** The default catalog that ships with macOS\n- **Customer Seed:** The catalog available as part of the [AppleSeed Program](https://appleseed.apple.com/)\n- **Developer Seed:** The catalog available as part of the [Apple Developer Program](https://developer.apple.com/programs/)\n- **Public Seed:** The catalog available as part of the [Apple Beta Software Program](https://beta.apple.com/)\n\n**Note:** Catalogs from the Seed Programs may contain beta / unreleased versions of macOS. Ensure you are a member of these programs before proceeding."
private let height: CGFloat = 120
private let height: CGFloat = 126
private let width: CGFloat = 150
private let length: CGFloat = 16