From f7ecd612fcab5dea076ced87da1dbdeff537e5ca Mon Sep 17 00:00:00 2001 From: Kabir Oberai Date: Tue, 6 May 2025 11:42:55 +0530 Subject: [PATCH] Rename more stuff --- .../XKit/Installation/ConnectionManager.swift | 8 ----- Sources/XKit/Installation/IPAUploader.swift | 2 +- ...taller.swift => IntegratedInstaller.swift} | 10 +----- Sources/XKit/Model/Keypair.swift | 2 +- Sources/XKit/Signer/SignerImpl.swift | 2 +- Sources/XKit/Signer/SigningContext.swift | 2 +- .../XKit/Utilities/DirectoryProvider.swift | 2 +- .../Utilities/ProvisioningIdentifiers.swift | 2 +- Sources/XToolSupport/XToolCommand.swift | 2 -- Sources/xtool/Documentation.docc/Control.md | 26 +++++++------- .../xtool/Documentation.docc/Documentation.md | 6 ++-- .../First-app-code/build-1b.sh | 2 +- .../First-app-code/build-2.sh | 2 +- .../First-app-code/build-3.sh | 2 +- .../First-app-code/rerun-5b.sh | 2 +- .../First-app-code/rerun-6.sh | 2 +- .../First-app-code/template-1a.sh | 2 +- .../First-app-code/template-1b.sh | 4 +-- .../First-app-code/template-2a.sh | 7 ++-- .../First-app-code/template-2b.sh | 7 ++-- .../First-app-code/template-3a.sh | 7 ++-- .../First-app-code/template-3b.sh | 9 +++-- .../First-app-code/template-4a.sh | 9 +++-- .../First-app-code/template-4b.sh | 9 +++-- .../Documentation.docc/First-app.tutorial | 26 +++++++------- .../Documentation.docc/Installation-Linux.md | 36 +++++++++---------- .../Documentation.docc/Installation-macOS.md | 2 +- Sources/xtool/Documentation.docc/ToC.tutorial | 4 +-- Sources/xtool/XTool.swift | 2 +- 29 files changed, 87 insertions(+), 111 deletions(-) rename Sources/XKit/Integration/{SuperchargeInstaller.swift => IntegratedInstaller.swift} (97%) diff --git a/Sources/XKit/Installation/ConnectionManager.swift b/Sources/XKit/Installation/ConnectionManager.swift index 9d3750c..71f6d95 100644 --- a/Sources/XKit/Installation/ConnectionManager.swift +++ b/Sources/XKit/Installation/ConnectionManager.swift @@ -1,11 +1,3 @@ -// -// ConnectionManager.swift -// Supercharge Installer -// -// Created by Kabir Oberai on 19/06/20. -// Copyright © 2020 Kabir Oberai. All rights reserved. -// - import Foundation import SwiftyMobileDevice diff --git a/Sources/XKit/Installation/IPAUploader.swift b/Sources/XKit/Installation/IPAUploader.swift index 379b2be..3539df5 100644 --- a/Sources/XKit/Installation/IPAUploader.swift +++ b/Sources/XKit/Installation/IPAUploader.swift @@ -70,7 +70,7 @@ public final class IPAUploader: Sendable { try client.createDirectory(at: Self.packagePath) } - let dest = Self.packagePath.appendingPathComponent("Supercharge-App") + let dest = Self.packagePath.appendingPathComponent("XTool-App") if try client.fileExists(at: dest) { try client.removeItemAndContents(at: dest) } diff --git a/Sources/XKit/Integration/SuperchargeInstaller.swift b/Sources/XKit/Integration/IntegratedInstaller.swift similarity index 97% rename from Sources/XKit/Integration/SuperchargeInstaller.swift rename to Sources/XKit/Integration/IntegratedInstaller.swift index d62b7b1..1a99826 100644 --- a/Sources/XKit/Integration/SuperchargeInstaller.swift +++ b/Sources/XKit/Integration/IntegratedInstaller.swift @@ -1,11 +1,3 @@ -// -// Installer.swift -// Supercharge Installer -// -// Created by Kabir Oberai on 19/06/20. -// Copyright © 2020 Kabir Oberai. All rights reserved. -// - import Foundation import SwiftyMobileDevice import ConcurrencyExtras @@ -63,7 +55,7 @@ public actor IntegratedInstaller { private var appInstaller: AppInstaller? private let tempDir = FileManager.default.temporaryDirectoryShim - .appendingPathComponent("com.kabiroberai.Supercharge-Installer.Staging") + .appendingPathComponent("com.kabiroberai.xtool.Staging") private var stage: String? diff --git a/Sources/XKit/Model/Keypair.swift b/Sources/XKit/Model/Keypair.swift index 13deacb..9e965e9 100644 --- a/Sources/XKit/Model/Keypair.swift +++ b/Sources/XKit/Model/Keypair.swift @@ -51,7 +51,7 @@ public struct Keypair { version: .v1, subject: DistinguishedName { CountryName("US") - CommonName("Supercharge") + CommonName("xtool") }, privateKey: X509.Certificate.PrivateKey(raw), attributes: CertificateSigningRequest.Attributes(), diff --git a/Sources/XKit/Signer/SignerImpl.swift b/Sources/XKit/Signer/SignerImpl.swift index 9f9d087..fa74097 100644 --- a/Sources/XKit/Signer/SignerImpl.swift +++ b/Sources/XKit/Signer/SignerImpl.swift @@ -15,7 +15,7 @@ import ConcurrencyExtras public actor SignerImpl { private static let signingQueue = DispatchQueue( - label: "com.kabiroberai.Supercharge.signing-queue", + label: "com.kabiroberai.xtool.signing-queue", attributes: .concurrent ) diff --git a/Sources/XKit/Signer/SigningContext.swift b/Sources/XKit/Signer/SigningContext.swift index 0e226c7..6b8db54 100644 --- a/Sources/XKit/Signer/SigningContext.swift +++ b/Sources/XKit/Signer/SigningContext.swift @@ -46,7 +46,7 @@ extension SigningContext { #elseif os(macOS) return Host.current().localizedName ?? "Mac" #else - return "Supercharge Client" + return "XTool Client" #endif } } diff --git a/Sources/XKit/Utilities/DirectoryProvider.swift b/Sources/XKit/Utilities/DirectoryProvider.swift index 132f04d..5d4d3a7 100644 --- a/Sources/XKit/Utilities/DirectoryProvider.swift +++ b/Sources/XKit/Utilities/DirectoryProvider.swift @@ -6,7 +6,7 @@ private struct PersistentDirectoryProvider: DependencyKey, Sendable { static let liveValue = PersistentDirectoryProvider( directory: URL(fileURLWithPath: NSHomeDirectory()) - .appendingPathComponent(".config/Supercharge") + .appendingPathComponent(".config/xtool") ) } diff --git a/Sources/XKit/Utilities/ProvisioningIdentifiers.swift b/Sources/XKit/Utilities/ProvisioningIdentifiers.swift index 6b43945..b06e013 100644 --- a/Sources/XKit/Utilities/ProvisioningIdentifiers.swift +++ b/Sources/XKit/Utilities/ProvisioningIdentifiers.swift @@ -14,7 +14,7 @@ extension ProvisioningIdentifiers { static let idPrefix = "SC-" static let groupPrefix = "group." - static let namePrefix = "Supercharge " + static let namePrefix = "XTool " static func sanitize(identifier: String) -> String { guard identifier.hasPrefix(Self.idPrefix) else { return identifier } diff --git a/Sources/XToolSupport/XToolCommand.swift b/Sources/XToolSupport/XToolCommand.swift index fe7a303..d2f0581 100644 --- a/Sources/XToolSupport/XToolCommand.swift +++ b/Sources/XToolSupport/XToolCommand.swift @@ -19,8 +19,6 @@ struct XToolCommand: AsyncParsableCommand { InstallCommand.self, UninstallCommand.self, DevCommand.self, - // no Supercharge support... yet... - // SuperchargeCommand.self, RunCommand.self, ] ) diff --git a/Sources/xtool/Documentation.docc/Control.md b/Sources/xtool/Documentation.docc/Control.md index b577976..4fe302c 100644 --- a/Sources/xtool/Documentation.docc/Control.md +++ b/Sources/xtool/Documentation.docc/Control.md @@ -4,12 +4,12 @@ Add resources, modify your `Info.plist`, and more. ## Overview -When building your app, Supersign provides many knobs to add resources and modify files in its `.app` bundle. This article explains how to perform some common tasks along these lines. +When building your app, xtool provides many knobs to add resources and modify files in its `.app` bundle. This article explains how to perform some common tasks along these lines. -Many of the tasks here involve modifying the `supersign.yml` file. The default `supersign dev new` template should generate this file for you. If you don't have it, make sure you create one first. +Many of the tasks here involve modifying the `xtool.yml` file. The default `xtool dev new` template should generate this file for you. If you don't have it, make sure you create one first. ```bash -cat > supersign.yml << EOF +cat > xtool.yml << EOF version: 1 bundleID: com.example.Hello EOF @@ -17,19 +17,19 @@ EOF ## Change your bundle ID -You can update your app's bundle ID by editing the `bundleID` field in `supersign.yml`. +You can update your app's bundle ID by editing the `bundleID` field in `xtool.yml`. > Note: > -> Supersign adds a prefix to your bundle ID when signing and installing the app on a real device. For example, it may update the above bundle id to `SC-1234.com.example.Hello`. This is because, at least with free accounts (those not enrolled in the Apple Developer Program), two accounts cannot use the same bundle ID. Prefixing ensures that if you share your app with someone else, they won't run into a bundle ID conflict when installing it. +> xtool adds a prefix to your bundle ID when signing and installing the app on a real device. For example, it may update the above bundle id to `SC-1234.com.example.Hello`. This is because, at least with free accounts (those not enrolled in the Apple Developer Program), two accounts cannot use the same bundle ID. Prefixing ensures that if you share your app with someone else, they won't run into a bundle ID conflict when installing it. > -> With additional engineering effort, this limitation could be lifted for paid Developer Program users by leveraging wildcard provisioning profiles. If you have a concrete use case for this and/or wish to contribute, please [file an issue](https://github.com/SuperchargeApp/Supersign/issues/new). +> With additional engineering effort, this limitation could be lifted for paid Developer Program users by leveraging wildcard provisioning profiles. If you have a concrete use case for this and/or wish to contribute, please [file an issue](https://github.com/xtool-org/xtool/issues/new). ## Customize Info.plist -Supersign automatically generates a bare-bones `Info.plist` file for you. However, you may need to add new `Info.plist` keys or edit existing ones. +xtool automatically generates a bare-bones `Info.plist` file for you. However, you may need to add new `Info.plist` keys or edit existing ones. -To do this, create an `Info.plist` file in your project containing just the keys you want to add/update, and tell Supersign about it by adding the `infoPath` key: +To do this, create an `Info.plist` file in your project containing just the keys you want to add/update, and tell xtool about it by adding the `infoPath` key: ```yaml infoPath: path/to/Info.plist @@ -37,7 +37,7 @@ infoPath: path/to/Info.plist > Tip: > -> After running `supersign dev [build]`, you can inspect the built app bundle at `./supersign/YourApp.app` to view its `Info.plist` and other resources. +> After running `xtool dev [build]`, you can inspect the built app bundle at `./xtool/YourApp.app` to view its `Info.plist` and other resources. For example, you might create an `Info.plist` file that looks something like @@ -62,7 +62,7 @@ For example, you might create an `Info.plist` file that looks something like ## Copy resources (SwiftPM) -If you need to include non-code resource files, like images, the easiest way to do so is to use [SwiftPM Resources](https://developer.apple.com/documentation/xcode/bundling-resources-with-a-swift-package). These "just work" with Supersign. +If you need to include non-code resource files, like images, the easiest way to do so is to use [SwiftPM Resources](https://developer.apple.com/documentation/xcode/bundling-resources-with-a-swift-package). These "just work" with xtool. For example, if you have `Sources/Hello/Blob.png`, you can include it in your app by updating the `targets` in your `Package.swift` to @@ -85,9 +85,9 @@ Image("Blob", bundle: Bundle.module) SwiftPM resources are copied into `.bundle` directories nested inside your `.app`. Sometimes, you need to place a file in a specific location in the app directory instead. -To achieve this, you can include a `resources` array in your `supersign.yml` containing a list of files that should be directly included at the root level of the app bundle. +To achieve this, you can include a `resources` array in your `xtool.yml` containing a list of files that should be directly included at the root level of the app bundle. -For example, if you use Firebase, you usually need to include a [`GoogleServices-Info.plist`](https://firebase.google.com/docs/ios/setup#add-config-file) file in your root bundle. If you saved this file in your project directory at `./Resources/GoogleServices-Info.plist`, you can update your `supersign.yml` with +For example, if you use Firebase, you usually need to include a [`GoogleServices-Info.plist`](https://firebase.google.com/docs/ios/setup#add-config-file) file in your root bundle. If you saved this file in your project directory at `./Resources/GoogleServices-Info.plist`, you can update your `xtool.yml` with ```yaml resources: @@ -98,7 +98,7 @@ The file will be copied to `Hello.app/GoogleServices-Info.plist`. ## Add an app icon -Say your app icon is saved at `Resources/AppIcon.png`. You can make this your app icon by setting the `iconPath` key in `supersign.yml`: +Say your app icon is saved at `Resources/AppIcon.png`. You can make this your app icon by setting the `iconPath` key in `xtool.yml`: ```yaml iconPath: Resources/AppIcon.png diff --git a/Sources/xtool/Documentation.docc/Documentation.md b/Sources/xtool/Documentation.docc/Documentation.md index 6aa6d59..8583680 100644 --- a/Sources/xtool/Documentation.docc/Documentation.md +++ b/Sources/xtool/Documentation.docc/Documentation.md @@ -1,10 +1,10 @@ -# ``SupersignCLI`` +# ``xtool`` -The `supersign` command line interface (CLI). +The `xtool` command line interface (CLI). ## Overview -You can use `supersign` to interact with iOS applications and Apple Developer Services, including +You can use `xtool` to interact with iOS applications and Apple Developer Services, including - Building a Swift Package into an iOS app on **macOS or Linux**. - Managing Codesigning Certificates, Devices, App Identifiers, and Provisioning Profiles across both free and paid Apple Developer accounts. diff --git a/Sources/xtool/Documentation.docc/First-app-code/build-1b.sh b/Sources/xtool/Documentation.docc/First-app-code/build-1b.sh index ce9fd38..b173ec9 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/build-1b.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/build-1b.sh @@ -1,4 +1,4 @@ -Hello$ supersign dev +Hello$ xtool dev Planning... Building for debugging... [8/8] Linking Hello-App diff --git a/Sources/xtool/Documentation.docc/First-app-code/build-2.sh b/Sources/xtool/Documentation.docc/First-app-code/build-2.sh index b183302..b3c351d 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/build-2.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/build-2.sh @@ -1,4 +1,4 @@ -Hello$ supersign dev +Hello$ xtool dev Planning... Building for debugging... [8/8] Linking Hello-App diff --git a/Sources/xtool/Documentation.docc/First-app-code/build-3.sh b/Sources/xtool/Documentation.docc/First-app-code/build-3.sh index dedff25..eeb3912 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/build-3.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/build-3.sh @@ -1,4 +1,4 @@ -Hello$ supersign dev +Hello$ xtool dev Planning... Building for debugging... [8/8] Linking Hello-App diff --git a/Sources/xtool/Documentation.docc/First-app-code/rerun-5b.sh b/Sources/xtool/Documentation.docc/First-app-code/rerun-5b.sh index dc77cbe..19e60a0 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/rerun-5b.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/rerun-5b.sh @@ -1,4 +1,4 @@ -Hello$ supersign dev +Hello$ xtool dev Planning... Building for debugging... [8/8] Linking Hello-App diff --git a/Sources/xtool/Documentation.docc/First-app-code/rerun-6.sh b/Sources/xtool/Documentation.docc/First-app-code/rerun-6.sh index dc77cbe..19e60a0 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/rerun-6.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/rerun-6.sh @@ -1,4 +1,4 @@ -Hello$ supersign dev +Hello$ xtool dev Planning... Building for debugging... [8/8] Linking Hello-App diff --git a/Sources/xtool/Documentation.docc/First-app-code/template-1a.sh b/Sources/xtool/Documentation.docc/First-app-code/template-1a.sh index 9ab3ab2..fffe566 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/template-1a.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/template-1a.sh @@ -1,7 +1,7 @@ Developer$ Creating package: Hello Creating Package.swift -Creating supersign.yml +Creating xtool.yml Creating .gitignore Creating .sourcekit-lsp/config.json Creating Sources/Hello/HelloApp.swift diff --git a/Sources/xtool/Documentation.docc/First-app-code/template-1b.sh b/Sources/xtool/Documentation.docc/First-app-code/template-1b.sh index 968dd64..ea41ca6 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/template-1b.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/template-1b.sh @@ -1,7 +1,7 @@ -Developer$ supersign dev new Hello +Developer$ xtool dev new Hello Creating package: Hello Creating Package.swift -Creating supersign.yml +Creating xtool.yml Creating .gitignore Creating .sourcekit-lsp/config.json Creating Sources/Hello/HelloApp.swift diff --git a/Sources/xtool/Documentation.docc/First-app-code/template-2a.sh b/Sources/xtool/Documentation.docc/First-app-code/template-2a.sh index fc16d5b..0ced4a4 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/template-2a.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/template-2a.sh @@ -1,7 +1,7 @@ -Developer$ supersign dev new Hello +Developer$ xtool dev new Hello Creating package: Hello Creating Package.swift -Creating supersign.yml +Creating xtool.yml Creating .gitignore Creating .sourcekit-lsp/config.json Creating Sources/Hello/HelloApp.swift @@ -15,5 +15,4 @@ Hello$ drwxrwxr-x 2 user user 4096 .sourcekit-lsp -rw-rw-r-- 1 user user 463 Package.swift drwxrwxr-x 3 user user 4096 Sources -drwxrwxr-x 4 user user 4096 supersign --rw-rw-r-- 1 user user 39 supersign.yml +-rw-rw-r-- 1 user user 39 xtool.yml diff --git a/Sources/xtool/Documentation.docc/First-app-code/template-2b.sh b/Sources/xtool/Documentation.docc/First-app-code/template-2b.sh index 1b7e30a..5387254 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/template-2b.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/template-2b.sh @@ -1,7 +1,7 @@ -Developer$ supersign dev new Hello +Developer$ xtool dev new Hello Creating package: Hello Creating Package.swift -Creating supersign.yml +Creating xtool.yml Creating .gitignore Creating .sourcekit-lsp/config.json Creating Sources/Hello/HelloApp.swift @@ -15,5 +15,4 @@ Hello$ ls -la drwxrwxr-x 2 user user 4096 .sourcekit-lsp -rw-rw-r-- 1 user user 463 Package.swift drwxrwxr-x 3 user user 4096 Sources -drwxrwxr-x 4 user user 4096 supersign --rw-rw-r-- 1 user user 39 supersign.yml +-rw-rw-r-- 1 user user 39 xtool.yml diff --git a/Sources/xtool/Documentation.docc/First-app-code/template-3a.sh b/Sources/xtool/Documentation.docc/First-app-code/template-3a.sh index 2f85077..c5ab172 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/template-3a.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/template-3a.sh @@ -1,7 +1,7 @@ -Developer$ supersign dev new Hello +Developer$ xtool dev new Hello Creating package: Hello Creating Package.swift -Creating supersign.yml +Creating xtool.yml Creating .gitignore Creating .sourcekit-lsp/config.json Creating Sources/Hello/HelloApp.swift @@ -15,8 +15,7 @@ Hello$ ls -la drwxrwxr-x 2 user user 4096 .sourcekit-lsp -rw-rw-r-- 1 user user 463 Package.swift drwxrwxr-x 3 user user 4096 Sources -drwxrwxr-x 4 user user 4096 supersign --rw-rw-r-- 1 user user 39 supersign.yml +-rw-rw-r-- 1 user user 39 xtool.yml Hello$ version: 1 diff --git a/Sources/xtool/Documentation.docc/First-app-code/template-3b.sh b/Sources/xtool/Documentation.docc/First-app-code/template-3b.sh index d0b1f88..a0b836c 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/template-3b.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/template-3b.sh @@ -1,7 +1,7 @@ -Developer$ supersign dev new Hello +Developer$ xtool dev new Hello Creating package: Hello Creating Package.swift -Creating supersign.yml +Creating xtool.yml Creating .gitignore Creating .sourcekit-lsp/config.json Creating Sources/Hello/HelloApp.swift @@ -15,9 +15,8 @@ Hello$ ls -la drwxrwxr-x 2 user user 4096 .sourcekit-lsp -rw-rw-r-- 1 user user 463 Package.swift drwxrwxr-x 3 user user 4096 Sources -drwxrwxr-x 4 user user 4096 supersign --rw-rw-r-- 1 user user 39 supersign.yml +-rw-rw-r-- 1 user user 39 xtool.yml -Hello$ cat supersign.yml +Hello$ cat xtool.yml version: 1 bundleID: com.example.Hello diff --git a/Sources/xtool/Documentation.docc/First-app-code/template-4a.sh b/Sources/xtool/Documentation.docc/First-app-code/template-4a.sh index af93495..a111259 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/template-4a.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/template-4a.sh @@ -1,7 +1,7 @@ -Developer$ supersign dev new Hello +Developer$ xtool dev new Hello Creating package: Hello Creating Package.swift -Creating supersign.yml +Creating xtool.yml Creating .gitignore Creating .sourcekit-lsp/config.json Creating Sources/Hello/HelloApp.swift @@ -15,10 +15,9 @@ Hello$ ls -la drwxrwxr-x 2 user user 4096 .sourcekit-lsp -rw-rw-r-- 1 user user 463 Package.swift drwxrwxr-x 3 user user 4096 Sources -drwxrwxr-x 4 user user 4096 supersign --rw-rw-r-- 1 user user 39 supersign.yml +-rw-rw-r-- 1 user user 39 xtool.yml -Hello$ cat supersign.yml +Hello$ cat xtool.yml version: 1 bundleID: com.example.Hello diff --git a/Sources/xtool/Documentation.docc/First-app-code/template-4b.sh b/Sources/xtool/Documentation.docc/First-app-code/template-4b.sh index 7d198f6..dd917f3 100644 --- a/Sources/xtool/Documentation.docc/First-app-code/template-4b.sh +++ b/Sources/xtool/Documentation.docc/First-app-code/template-4b.sh @@ -1,7 +1,7 @@ -Developer$ supersign dev new Hello +Developer$ xtool dev new Hello Creating package: Hello Creating Package.swift -Creating supersign.yml +Creating xtool.yml Creating .gitignore Creating .sourcekit-lsp/config.json Creating Sources/Hello/HelloApp.swift @@ -15,10 +15,9 @@ Hello$ ls -la drwxrwxr-x 2 user user 4096 .sourcekit-lsp -rw-rw-r-- 1 user user 463 Package.swift drwxrwxr-x 3 user user 4096 Sources -drwxrwxr-x 4 user user 4096 supersign --rw-rw-r-- 1 user user 39 supersign.yml +-rw-rw-r-- 1 user user 39 xtool.yml -Hello$ cat supersign.yml +Hello$ cat xtool.yml version: 1 bundleID: com.example.Hello diff --git a/Sources/xtool/Documentation.docc/First-app.tutorial b/Sources/xtool/Documentation.docc/First-app.tutorial index 6348057..78c80dd 100644 --- a/Sources/xtool/Documentation.docc/First-app.tutorial +++ b/Sources/xtool/Documentation.docc/First-app.tutorial @@ -1,14 +1,14 @@ @Tutorial(time: 30) { @Intro(title: "Build your first iOS app on Linux") { - Once you've completed , use Supersign to build and deploy an iOS app from your Linux machine. + Once you've completed , use xtool to build and deploy an iOS app from your Linux machine. } - @Section(title: "Create a Supersign project") { - We'll start by creating a project from Supersign's default template. + @Section(title: "Create an xtool project") { + We'll start by creating a project from xtool's default template. @Steps { @Step { - Supersign comes with a template for iOS-capable Swift Packages. Run `supersign dev new` to create a new package. + xtool comes with a template for iOS-capable Swift Packages. Run `xtool dev new` to create a new package. @Code(name: "Terminal", file: "template-1b.sh", previousFile: "template-1a.sh") {} } @@ -22,7 +22,7 @@ } @Step { - Read `supersign.yml`. + Read `xtool.yml`. This file describes how to bundle the Swift library into an iOS app. At minimum, you need to provide a Bundle ID. This defaults to `com.example.`, in this case `com.example.Hello`. @@ -32,7 +32,7 @@ @Step { Read `.sourcekit-lsp/config.json`. - This file tells SourceKit to build for the `arm64-apple-ios` system defined in `darwin.artifactbundle`. This is the [Swift SDK](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) that we built during the setup process. It contains the necessary modules for building iOS apps, such as UIKit and SwiftUI, as well as tools for building and manipulating iOS binaries. Under the hood, Supersign also calls `swift build` with `--swift-sdk arm64-apple-ios` for the same reason. + This file tells SourceKit to build for the `arm64-apple-ios` system defined in `darwin.artifactbundle`. This is the [Swift SDK](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) that we built during the setup process. It contains the necessary modules for building iOS apps, such as UIKit and SwiftUI, as well as tools for building and manipulating iOS binaries. Under the hood, xtool also calls `swift build` with `--swift-sdk arm64-apple-ios` for the same reason. @Code(name: "Terminal", file: "template-4b.sh", previousFile: "template-4a.sh") {} } @@ -44,7 +44,7 @@ @Steps { @Step { - From inside the package directory, run `supersign dev`. + From inside the package directory, run `xtool dev`. The first time you run this, SwiftPM might take a few minutes to build the app. This is because it needs to build the Swift Modules for the iOS SDK. Subsequent runs should be a lot faster since SwiftPM caches these modules globally. @@ -52,9 +52,9 @@ } @Step { - After the build is complete, Supersign will attempt to install it on your device. + After the build is complete, xtool will attempt to install it on your device. - At this point, connect your iOS device to your computer via USB. If you installed `libimobiledevice-utils` during setup, you can verify that your device is connected by running `ideviceinfo`. Supersign will continue after automatically detecting that your device is connected. + At this point, connect your iOS device to your computer via USB. If you installed `libimobiledevice-utils` during setup, you can verify that your device is connected by running `ideviceinfo`. xtool will continue after automatically detecting that your device is connected. @Code(name: "Terminal", file: "build-2.sh", reset: true) } @@ -62,7 +62,7 @@ @Step { Pair your device if prompted. - The first time you run `supersign dev`, you may see a "Trust" dialog on your iOS device to proceed with pairing. Tap **Trust** and enter your passcode on iOS. Supersign may throw an error after this: if so, just run `supersign dev` again. + The first time you run `xtool dev`, you may see a "Trust" dialog on your iOS device to proceed with pairing. Tap **Trust** and enter your passcode on iOS. xtool may throw an error after this: if so, just run `xtool dev` again. @Code(name: "Terminal", file: "build-2.sh", reset: true) { @Image(source: "Trust", alt: "Prompt alerting user to trust device") @@ -70,7 +70,7 @@ } @Step { - Supersign will now connect to Apple Developer Services, register your device with your Apple ID, generate a Certificate + App ID + Provisioning Profile, sign the app, and then install it. + xtool will now connect to Apple Developer Services, register your device with your Apple ID, generate a Certificate + App ID + Provisioning Profile, sign the app, and then install it. @Code(name: "Terminal", file: "build-3.sh", reset: true) {} } @@ -78,7 +78,7 @@ @Step { Enable Developer Mode if needed. - At this point, you may run into an error asking you to enable **Development Mode** on your iOS device. Follow [these instructions](https://developer.apple.com/documentation/xcode/enabling-developer-mode-on-a-device) and then run `supersign dev` again. + At this point, you may run into an error asking you to enable **Development Mode** on your iOS device. Follow [these instructions](https://developer.apple.com/documentation/xcode/enabling-developer-mode-on-a-device) and then run `xtool dev` again. @Code(name: "Terminal", file: "build-3.sh", reset: true) { @Image(source: "Developer", alt: "Developer mode in Settings") @@ -144,7 +144,7 @@ } @Step { - Run `supersign dev` again to re-build and re-install. This should go a lot faster than the first time. + Run `xtool dev` again to re-build and re-install. This should go a lot faster than the first time. @Code(name: "Terminal", file: "rerun-5b.sh", previousFile: "rerun-5a.sh") {} } diff --git a/Sources/xtool/Documentation.docc/Installation-Linux.md b/Sources/xtool/Documentation.docc/Installation-Linux.md index 2f8a562..3a428ec 100644 --- a/Sources/xtool/Documentation.docc/Installation-Linux.md +++ b/Sources/xtool/Documentation.docc/Installation-Linux.md @@ -1,10 +1,10 @@ # Installation (Linux) -Set up Supersign for iOS app development on Linux. +Set up xtool for iOS app development on Linux. ## Overview -This article outlines the steps to install `supersign` and begin developing iOS apps on Linux. +This article outlines the steps to install `xtool` and begin developing iOS apps on Linux. ## Prerequisites @@ -22,7 +22,7 @@ swift --version ### usbmuxd -Supersign relies on [usbmuxd](https://github.com/libimobiledevice/usbmuxd) to talk to your iOS device from Linux. +xtool relies on [usbmuxd](https://github.com/libimobiledevice/usbmuxd) to talk to your iOS device from Linux. Your Linux distro probably offers this package, and it may be preinstalled. To check if it is, run @@ -60,32 +60,32 @@ Download **Xcode 16.3** from > **Password:** If you aren't enrolled in the paid developer program, you'll want to use password-based authentication. This relies on private Apple APIs to authenticate, so you may want to create a throwaway Apple ID to be extra cautious. -Once you select a login mode, you'll be asked to provide the corresponding credentials (API key or email+password+2FA). Needless to say, *your credentials are only sent to Apple* and nobody else (feel free to build Supersign from source and check!) +Once you select a login mode, you'll be asked to provide the corresponding credentials (API key or email+password+2FA). Needless to say, *your credentials are only sent to Apple* and nobody else (feel free to build xtool from source and check!) -### 3. Configure Supersign: SDK +### 3. Configure xtool: SDK After you're logged in, you'll be asked to provide the path to the `Xcode.xip` file you downloaded earlier. @@ -115,7 +115,7 @@ Choice (0-1): 0 Path to Xcode.xip: ``` -Enter the path (for example `~/Downloads/Xcode_16.3.xip`) and hit enter. Supersign will extract the Xcode XIP to generate and install an iOS Swift SDK for you. +Enter the path (for example `~/Downloads/Xcode_16.3.xip`) and hit enter. xtool will extract the Xcode XIP to generate and install an iOS Swift SDK for you. Confirm that it worked: @@ -126,4 +126,4 @@ swift sdk list ## Next steps -You're now ready to use Supersign! See . +You're now ready to use xtool! See . diff --git a/Sources/xtool/Documentation.docc/Installation-macOS.md b/Sources/xtool/Documentation.docc/Installation-macOS.md index 2059c4c..7e65831 100644 --- a/Sources/xtool/Documentation.docc/Installation-macOS.md +++ b/Sources/xtool/Documentation.docc/Installation-macOS.md @@ -1,6 +1,6 @@ # Installation (macOS) -Set up Supersign for declarative, Xcode-free iOS app development on macOS. +Set up xtool for declarative, Xcode-free iOS app development on macOS. ## Overview diff --git a/Sources/xtool/Documentation.docc/ToC.tutorial b/Sources/xtool/Documentation.docc/ToC.tutorial index 74c1869..0201dae 100644 --- a/Sources/xtool/Documentation.docc/ToC.tutorial +++ b/Sources/xtool/Documentation.docc/ToC.tutorial @@ -1,6 +1,6 @@ -@Tutorials(name: "Supersign") { +@Tutorials(name: "xtool") { @Intro(title: "Tutorials") { - Install Supersign and build your first iOS app on Linux. + Install xtool and build your first iOS app on Linux. } @Chapter(name: "Getting Started") { diff --git a/Sources/xtool/XTool.swift b/Sources/xtool/XTool.swift index 042dfdd..173f4cf 100644 --- a/Sources/xtool/XTool.swift +++ b/Sources/xtool/XTool.swift @@ -14,7 +14,7 @@ enum XToolMain { // for Linux, maybe use libsecret? // see https://github.com/atom/node-keytar // #if os(macOS) -// dependencies.keyValueStorage = KeychainStorage(service: "com.kabiroberai.Supercharge-Keychain.credentials") +// dependencies.keyValueStorage = KeychainStorage(service: "com.kabiroberai.xtool-keychain.credentials") // #endif } try await XTool.run()