linux preview… (#11286)

Release Notes:

- (preview only) You can now install an (alpha) preview build on linux
This commit is contained in:
Conrad Irwin 2024-05-01 21:51:38 -06:00 committed by GitHub
parent b487f2ce6f
commit d8ca15372c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 14 additions and 11 deletions

View file

@ -52,7 +52,7 @@ zed_dir="${temp_dir}/zed$suffix.app"
# Binary
mkdir -p "${zed_dir}/bin"
cp "target/${target_triple}/release/Zed" "${zed_dir}/zed"
cp "target/${target_triple}/release/Zed" "${zed_dir}/bin/zed"
# Icons
mkdir -p "${zed_dir}/share/icons/hicolor/512x512/apps"
@ -62,7 +62,7 @@ cp "crates/zed/resources/app-icon$suffix@2x.png" "${zed_dir}/share/icons/hicolor
# .desktop
mkdir -p "${zed_dir}/share/applications"
cp "crates/zed/resources/zed$suffix.desktop" "${zed_dir}/share/applications/zed$suffix.desktop"
cp "crates/zed/resources/zed.desktop" "${zed_dir}/share/applications/zed$suffix.desktop"
if [[ "$channel" == "preview" ]]; then
sed -i "s|Name=Zed|Name=Zed Preview|g" "${zed_dir}/share/applications/zed$suffix.desktop"
elif [[ "$channel" == "nightly" ]]; then
@ -84,4 +84,4 @@ else
fi
rm -rf "${archive}"
tar -czvf $archive -C ${temp_dir} ${zed_dir}
tar -czvf $archive -C ${temp_dir} "zed$suffix.app"

View file

@ -4,14 +4,14 @@ set -euo pipefail
main() {
platform="$(uname -s)"
arch="$(uname -m)"
channel="stable"
channel="${ZED_CHANNEL:-stable}"
temp="$(mktemp -d "/tmp/zed-XXXXX")"
if [[ $platform == "Darwin" ]]; then
platform="macos"
elif [[ $platform == "Linux" ]]; then
platform="linux"
channel="nightly"
channel="${ZED_CHANNEL:-preview}"
else
echo "Unsupported platform $platform"
exit 1
@ -51,6 +51,7 @@ linux() {
suffix="-$channel"
fi
rm -rf "$HOME/.local/zed$suffix.app"
mkdir -p "$HOME/.local/zed$suffix.app"
tar -xzf "$temp/zed-linux-$arch.tar.gz" -C "$HOME/.local/"
@ -58,16 +59,17 @@ linux() {
ln -sf ~/.local/zed$suffix.app/bin/zed ~/.local/bin/
cp ~/.local/zed$suffix.app/share/applications/zed$suffix.desktop ~/.local/share/applications/
sed -i "s|Icon=zed|Icon=$HOME/.local/zed$suffix.app/share/icons/hicolor/512x512/apps/zed.png|g" ~/.local/share/applications/zed$suffix.desktop
sed -i "s|Exec=zed|Exec=$HOME/.local/zed$suffix.app/bin/zed|g" ~/.local/share/applications/zed.desktop
sed -i "s|Exec=zed|Exec=$HOME/.local/zed$suffix.app/bin/zed|g" ~/.local/share/applications/zed$suffix.desktop
if ! which zed >/dev/null 2>&1; then
if which zed >/dev/null 2>&1; then
echo "Zed has been installed. Run with 'zed'"
else
echo "To run zed from your terminal, you must add ~/.local/bin to your PATH"
echo "Run:"
echo " echo 'export PATH=\$HOME/.local/bin:\$PATH' >> ~/.bashrc"
echo " source ~/.bashrc"
echo "To run zed now, '~/.local/bin/zed'"
fi
~/.local/bin/zed
}
macos() {
@ -80,9 +82,10 @@ macos() {
echo "Removing existing $app"
rm -rf "/Applications/$app"
fi
ditto -v "$temp/mount/$app" "/Applications/$app"
ditto "$temp/mount/$app" "/Applications/$app"
hdiutil detach -quiet "$temp/mount"
open "/Applications/$app"
echo "Zed has been installed. Run with 'open /Applications/$app'"
}
main "$@"