mirror of
https://github.com/zed-industries/zed.git
synced 2025-01-27 12:54:42 +00:00
Fix bundle script
This commit is contained in:
parent
ee753beebd
commit
70d0421b3c
5 changed files with 17 additions and 14 deletions
2
.github/workflows/release_nightly.yml
vendored
2
.github/workflows/release_nightly.yml
vendored
|
@ -92,7 +92,7 @@ jobs:
|
||||||
run: script/generate-licenses
|
run: script/generate-licenses
|
||||||
|
|
||||||
- name: Create app bundle
|
- name: Create app bundle
|
||||||
run: script/bundle
|
run: script/bundle -2
|
||||||
|
|
||||||
- name: Upload Zed Nightly
|
- name: Upload Zed Nightly
|
||||||
run: script/upload-nightly
|
run: script/upload-nightly
|
||||||
|
|
BIN
crates/zed/contents/nightly/embedded.provisionprofile
Normal file
BIN
crates/zed/contents/nightly/embedded.provisionprofile
Normal file
Binary file not shown.
|
@ -167,13 +167,12 @@ osx_info_plist_exts = ["resources/info/*"]
|
||||||
osx_url_schemes = ["zed-dev"]
|
osx_url_schemes = ["zed-dev"]
|
||||||
|
|
||||||
[package.metadata.bundle-nightly]
|
[package.metadata.bundle-nightly]
|
||||||
# TODO kb different icon?
|
|
||||||
icon = ["resources/app-icon-preview@2x.png", "resources/app-icon-preview.png"]
|
icon = ["resources/app-icon-preview@2x.png", "resources/app-icon-preview.png"]
|
||||||
identifier = "dev.zed.Zed-Nightly"
|
identifier = "dev.zed.Zed-Dev"
|
||||||
name = "Zed Nightly"
|
name = "Zed Nightly"
|
||||||
osx_minimum_system_version = "10.15.7"
|
osx_minimum_system_version = "10.15.7"
|
||||||
osx_info_plist_exts = ["resources/info/*"]
|
osx_info_plist_exts = ["resources/info/*"]
|
||||||
osx_url_schemes = ["zed-nightly"]
|
osx_url_schemes = ["zed-dev"]
|
||||||
|
|
||||||
[package.metadata.bundle-preview]
|
[package.metadata.bundle-preview]
|
||||||
icon = ["resources/app-icon-preview@2x.png", "resources/app-icon-preview.png"]
|
icon = ["resources/app-icon-preview@2x.png", "resources/app-icon-preview.png"]
|
||||||
|
|
BIN
crates/zed2/contents/nightly/embedded.provisionprofile
Normal file
BIN
crates/zed2/contents/nightly/embedded.provisionprofile
Normal file
Binary file not shown.
|
@ -9,6 +9,7 @@ local_arch=false
|
||||||
local_only=false
|
local_only=false
|
||||||
overwrite_local_app=false
|
overwrite_local_app=false
|
||||||
bundle_name=""
|
bundle_name=""
|
||||||
|
zed_crate="zed"
|
||||||
|
|
||||||
# This must match the team in the provsiioning profile.
|
# This must match the team in the provsiioning profile.
|
||||||
APPLE_NOTORIZATION_TEAM="MQ55VZLNZQ"
|
APPLE_NOTORIZATION_TEAM="MQ55VZLNZQ"
|
||||||
|
@ -25,13 +26,11 @@ Options:
|
||||||
-o Open the resulting DMG or the app itself in local mode.
|
-o Open the resulting DMG or the app itself in local mode.
|
||||||
-f Overwrite the local app bundle if it exists.
|
-f Overwrite the local app bundle if it exists.
|
||||||
-h Display this help and exit.
|
-h Display this help and exit.
|
||||||
|
-2 Build zed 2 instead of zed 1.
|
||||||
"
|
"
|
||||||
}
|
}
|
||||||
|
|
||||||
# If -o option is specified, the folder of the resulting dmg will be opened in finder
|
while getopts 'dlfoh2' flag
|
||||||
# If -d is specified, Zed will be compiled in debug mode and the application's path printed
|
|
||||||
# If -od or -do is specified Zed will be bundled in debug and the application will be run.
|
|
||||||
while getopts 'dlfoh' flag
|
|
||||||
do
|
do
|
||||||
case "${flag}" in
|
case "${flag}" in
|
||||||
o) open_result=true;;
|
o) open_result=true;;
|
||||||
|
@ -51,6 +50,7 @@ do
|
||||||
target_dir="debug"
|
target_dir="debug"
|
||||||
;;
|
;;
|
||||||
f) overwrite_local_app=true;;
|
f) overwrite_local_app=true;;
|
||||||
|
2) zed_crate="zed2";;
|
||||||
h)
|
h)
|
||||||
help_info
|
help_info
|
||||||
exit 0
|
exit 0
|
||||||
|
@ -83,16 +83,19 @@ local_target_triple=${host_line#*: }
|
||||||
|
|
||||||
if [ "$local_arch" = true ]; then
|
if [ "$local_arch" = true ]; then
|
||||||
echo "Building for local target only."
|
echo "Building for local target only."
|
||||||
cargo build ${build_flag} --package zed
|
cargo build ${build_flag} --package ${zed_crate}
|
||||||
cargo build ${build_flag} --package cli
|
cargo build ${build_flag} --package cli
|
||||||
else
|
else
|
||||||
echo "Compiling zed binaries"
|
echo "Compiling zed binaries"
|
||||||
cargo build ${build_flag} --package zed --package cli --target aarch64-apple-darwin --target x86_64-apple-darwin
|
cargo build ${build_flag} --package ${zed_crate} --package cli --target aarch64-apple-darwin --target x86_64-apple-darwin
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Creating application bundle"
|
echo "Creating application bundle"
|
||||||
pushd crates/zed
|
pushd crates/zed
|
||||||
channel=$(<RELEASE_CHANNEL)
|
channel=$(<RELEASE_CHANNEL)
|
||||||
|
popd
|
||||||
|
|
||||||
|
pushd crates/${zed_crate}
|
||||||
cp Cargo.toml Cargo.toml.backup
|
cp Cargo.toml Cargo.toml.backup
|
||||||
sed \
|
sed \
|
||||||
-i .backup \
|
-i .backup \
|
||||||
|
@ -131,7 +134,8 @@ else
|
||||||
cp -R target/${target_dir}/WebRTC.framework "${app_path}/Contents/Frameworks/"
|
cp -R target/${target_dir}/WebRTC.framework "${app_path}/Contents/Frameworks/"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cp crates/zed/contents/$channel/embedded.provisionprofile "${app_path}/Contents/"
|
#todo!(The app identifier has been set to 'Dev', but the channel is nightly, RATIONALIZE ALL OF THIS MESS)
|
||||||
|
cp crates/${zed_crate}/contents/$channel/embedded.provisionprofile "${app_path}/Contents/"
|
||||||
|
|
||||||
if [[ -n $MACOS_CERTIFICATE && -n $MACOS_CERTIFICATE_PASSWORD && -n $APPLE_NOTARIZATION_USERNAME && -n $APPLE_NOTARIZATION_PASSWORD ]]; then
|
if [[ -n $MACOS_CERTIFICATE && -n $MACOS_CERTIFICATE_PASSWORD && -n $APPLE_NOTARIZATION_USERNAME && -n $APPLE_NOTARIZATION_PASSWORD ]]; then
|
||||||
echo "Signing bundle with Apple-issued certificate"
|
echo "Signing bundle with Apple-issued certificate"
|
||||||
|
@ -146,8 +150,8 @@ if [[ -n $MACOS_CERTIFICATE && -n $MACOS_CERTIFICATE_PASSWORD && -n $APPLE_NOTAR
|
||||||
# sequence of codesign commands modeled after this example: https://developer.apple.com/forums/thread/701514
|
# sequence of codesign commands modeled after this example: https://developer.apple.com/forums/thread/701514
|
||||||
/usr/bin/codesign --deep --force --timestamp --sign "Zed Industries, Inc." "${app_path}/Contents/Frameworks/WebRTC.framework" -v
|
/usr/bin/codesign --deep --force --timestamp --sign "Zed Industries, Inc." "${app_path}/Contents/Frameworks/WebRTC.framework" -v
|
||||||
/usr/bin/codesign --deep --force --timestamp --options runtime --sign "Zed Industries, Inc." "${app_path}/Contents/MacOS/cli" -v
|
/usr/bin/codesign --deep --force --timestamp --options runtime --sign "Zed Industries, Inc." "${app_path}/Contents/MacOS/cli" -v
|
||||||
/usr/bin/codesign --deep --force --timestamp --options runtime --entitlements crates/zed/resources/zed.entitlements --sign "Zed Industries, Inc." "${app_path}/Contents/MacOS/zed" -v
|
/usr/bin/codesign --deep --force --timestamp --options runtime --entitlements crates/${zed_crate}/resources/zed.entitlements --sign "Zed Industries, Inc." "${app_path}/Contents/MacOS/zed" -v
|
||||||
/usr/bin/codesign --force --timestamp --options runtime --entitlements crates/zed/resources/zed.entitlements --sign "Zed Industries, Inc." "${app_path}" -v
|
/usr/bin/codesign --force --timestamp --options runtime --entitlements crates/${zed_crate}/resources/zed.entitlements --sign "Zed Industries, Inc." "${app_path}" -v
|
||||||
|
|
||||||
security default-keychain -s login.keychain
|
security default-keychain -s login.keychain
|
||||||
else
|
else
|
||||||
|
@ -166,7 +170,7 @@ else
|
||||||
# - get a signing key for the MQ55VZLNZQ team from Nathan.
|
# - get a signing key for the MQ55VZLNZQ team from Nathan.
|
||||||
# - create your own signing key, and update references to MQ55VZLNZQ to your own team ID
|
# - create your own signing key, and update references to MQ55VZLNZQ to your own team ID
|
||||||
# then comment out this line.
|
# then comment out this line.
|
||||||
cat crates/zed/resources/zed.entitlements | sed '/com.apple.developer.associated-domains/,+1d' > "${app_path}/Contents/Resources/zed.entitlements"
|
cat crates/${zed_crate}/resources/zed.entitlements | sed '/com.apple.developer.associated-domains/,+1d' > "${app_path}/Contents/Resources/zed.entitlements"
|
||||||
|
|
||||||
codesign --force --deep --entitlements "${app_path}/Contents/Resources/zed.entitlements" --sign ${MACOS_SIGNING_KEY:- -} "${app_path}" -v
|
codesign --force --deep --entitlements "${app_path}/Contents/Resources/zed.entitlements" --sign ${MACOS_SIGNING_KEY:- -} "${app_path}" -v
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in a new issue