From 63d99d4431bf9a691c3964e88c3f4e3574d526be Mon Sep 17 00:00:00 2001 From: Takase <20792268+takase1121@users.noreply.github.com> Date: Fri, 10 Nov 2023 09:36:44 +0800 Subject: [PATCH] feat(package): ad-hoc sign macOS bundles (#1656) * feat(package): ad-hoc sign macOS bundles * fix(package.sh): syntax error * docs(readme): add instructions for self-signed builds * docs(readme): grammar Co-authored-by: Guldoman --------- Co-authored-by: Guldoman --- README.md | 33 +++++++++++++++++++++++++++++++++ scripts/package.sh | 5 +++++ 2 files changed, 38 insertions(+) diff --git a/README.md b/README.md index 63bc45b9..a4feaf7f 100644 --- a/README.md +++ b/README.md @@ -81,6 +81,39 @@ affects only the place where the application is actually installed. Head over to [releases](https://github.com/lite-xl/lite-xl/releases) and download the version for your operating system. +### Windows + +Lite XL comes with installers on Windows for typical installations. +Alternatively, we provide ZIP archives that you can download and extract anywhere and run directly. + +To make Lite XL portable (e.g. running Lite XL from a thumb drive), +simply create a `user` folder where `lite-xl.exe` is located. +Lite XL will load and store all your configurations and plugins in the folder. + +### macOS + +We provide DMG files for macOS. Simply drag the program into your Applications folder. + +> **Important** +> Newer versions of Lite XL are signed with a self-signed certificate, +> so you'll have to follow these steps when running Lite XL for the first time. +> +> 1. Find Lite XL in Finder (do not open it in Launchpad). +> 2. Control-click Lite XL, then choose `Open` from the shortcut menu. +> 3. Click `Open` in the popup menu. +> +> The correct steps may vary between macOS versions, so you should refer to +> the [macOS User Guide](https://support.apple.com/en-my/guide/mac-help/mh40616/mac). +> +> On an older version of Lite XL, you will need to run these commands instead: +> +> ```sh +> # clears attributes from the directory +> xattr -cr /Applications/Lite\ XL.app +> ``` +> +> Otherwise, macOS will display a **very misleading error** saying that the application is damaged. + ### Linux Unzip the file and `cd` into the `lite-xl` directory: diff --git a/scripts/package.sh b/scripts/package.sh index d2346b76..1faba509 100644 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -264,6 +264,11 @@ main() { $stripcmd "${exe_file}" fi + if [[ $bundle == true ]]; then + # https://eclecticlight.co/2019/01/17/code-signing-for-the-concerned-3-signing-an-app/ + codesign --force --deep -s - "${dest_dir}" + fi + echo "Creating a compressed archive ${package_name}" if [[ $binary == true ]]; then rm -f "${package_name}".tar.gz