Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
78 changes: 78 additions & 0 deletions srcpkgs/zeditor/template
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Template file for 'zeditor'
pkgname=zeditor
version=0.230.2
revision=1
archs="x86_64 aarch64"
build_style=cargo
make_build_args="--package cli --package zed" # --package remote_server # reason below
make_check_args="--workspace"
hostmakedepends="pkg-config cmake gettext perl libzstd-devel bzip2-devel"
makedepends="gettext-devel elfutils-devel alsa-lib-devel fontconfig-devel glib-devel libva-devel libxcb-devel libxkbcommon-devel libzstd-devel openssl-devel wayland-devel vulkan-loader sqlite-devel libX11-devel libgit2-1.9-devel"
short_desc="High-performance multiplayer code editor"
maintainer="JudahJL <judahlegy@gmail.com>"
license="GPL-3.0-or-later"
homepage="https://zed.dev/"
distfiles="https://github.com/zed-industries/zed/archive/refs/tags/v${version}.tar.gz"
checksum=b4be9f02fa1621e8bf18a628ac0a8c7e220272ec1060ce184ff7e6b80cf1eae4
make_check=ci-skip # too slow and memory-intensive for build environment

pre_build() {
echo -n stable > crates/zed/RELEASE_CHANNEL
export RELEASE_VERSION="${version}"
export ZED_UPDATE_EXPLANATION="Please use 'xbps-install -S zeditor' to update."
export ZED_BUNDLE=true

if [ "$CROSS_BUILD" ]; then
export PKG_CONFIG_ALLOW_CROSS=1

local target_env="${RUST_TARGET//-/_}"
target_env="${target_env^^}"

local cc_var="CC_${target_env}"
local cflags_var="CFLAGS_${target_env}"
local ldflags_var="LDFLAGS_${target_env}"

echo "Cross-compilation environment setup:"
echo "${cc_var} = ${!cc_var}"
echo "${cflags_var} = ${!cflags_var}"
echo "${ldflags_var} = ${!ldflags_var}"
echo "---"
echo "Original CC = $CC"
echo "Original CFLAGS = $CFLAGS"
echo "---"

export "CC_${target_env}=$CC"
export "CFLAGS_${target_env}=$CFLAGS"
export "LDFLAGS_${target_env}=$LDFLAGS"

echo "${cc_var} = ${!cc_var}"
echo "${cflags_var} = ${!cflags_var}"
echo "${ldflags_var} = ${!ldflags_var}"
echo "---"
unset CFLAGS
unset LDFLAGS
unset CXXFLAGS
fi
}

do_install() {
local app_id="dev.zed.Zed"

vbin "target/${RUST_TARGET}/release/cli" zed-cli
vinstall "target/${RUST_TARGET}/release/zed" 755 usr/libexec zed-editor
# TODO 1: https://github.com/zed-industries/zed/blob/c372f246a0790da012dddbe3935ee2758a3a9c3b/script/bundle-linux#L87-L88 seperately build remote_server. will include it later.
# TODO 2: confirm install location of remote_server
# vinstall "target/${RUST_TARGET}/release/remote_server" 755 usr/libexec

export APP_NAME="Zed"
export APP_CLI="zed"
export APP_ICON="zed"
export APP_ARGS="%U"
export DO_STARTUP_NOTIFY="true"

envsubst < "crates/zed/resources/zed.desktop.in" > "${app_id}.desktop"
vinstall "${app_id}.desktop" 644 usr/share/applications

vinstall "crates/zed/resources/app-icon.png" 644 usr/share/icons/hicolor/512x512/apps zed.png
vinstall "crates/zed/resources/app-icon@2x.png" 644 usr/share/icons/hicolor/1024x1024/apps zed.png
}