zed-editor: fix license menu and --version (#339766)

This commit is contained in:
Gaétan Lepage 2024-09-05 14:06:18 +02:00 committed by GitHub
commit 3d8541df4d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 44 additions and 5 deletions

View File

@ -0,0 +1,17 @@
diff --git a/script/generate-licenses b/script/generate-licenses
index 43b2f5c458..c740a3afa2 100755
--- a/script/generate-licenses
+++ b/script/generate-licenses
@@ -15,12 +15,6 @@ cat assets/icons/LICENSES >> $OUTPUT_FILE
echo -e "# ###### CODE LICENSES ######\n" >> $OUTPUT_FILE
-if ! cargo install --list | grep "cargo-about v$CARGO_ABOUT_VERSION" > /dev/null; then
- echo "Installing cargo-about@$CARGO_ABOUT_VERSION..."
- cargo install "cargo-about@$CARGO_ABOUT_VERSION"
-else
- echo "cargo-about@$CARGO_ABOUT_VERSION is already installed."
-fi
echo "Generating cargo licenses"
cargo about generate --fail -c script/licenses/zed-licenses.toml script/licenses/template.hbs.md >> $OUTPUT_FILE

View File

@ -27,6 +27,9 @@
vulkan-loader,
envsubst,
nix-update-script,
cargo-about,
testers,
zed-editor,
withGLES ? false,
}:
@ -45,6 +48,12 @@ rustPlatform.buildRustPackage rec {
fetchSubmodules = true;
};
patches = [
# Zed uses cargo-install to install cargo-about during the script execution.
# We provide cargo-about ourselves and can skip this step.
./0001-generate-licenses.patch
];
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
@ -73,6 +82,7 @@ rustPlatform.buildRustPackage rec {
pkg-config
protobuf
rustPlatform.bindgenHook
cargo-about
] ++ lib.optionals stdenv.isDarwin [ xcbuild.xcrun ];
buildInputs =
@ -128,11 +138,17 @@ rustPlatform.buildRustPackage rec {
# Setting this environment variable allows to disable auto-updates
# https://zed.dev/docs/development/linux#notes-for-packaging-zed
ZED_UPDATE_EXPLANATION = "zed has been installed using nix. Auto-updates have thus been disabled.";
# Used by `zed --version`
RELEASE_VERSION = version;
};
RUSTFLAGS = if withGLES then "--cfg gles" else "";
gpu-lib = if withGLES then libglvnd else vulkan-loader;
preBuild = ''
bash script/generate-licenses
'';
postFixup = lib.optionalString stdenv.isLinux ''
patchelf --add-rpath ${gpu-lib}/lib $out/libexec/*
patchelf --add-rpath ${wayland}/lib $out/libexec/*
@ -175,11 +191,17 @@ rustPlatform.buildRustPackage rec {
runHook postInstall
'';
passthru.updateScript = nix-update-script {
extraArgs = [
"--version-regex"
"v(.*)"
];
passthru = {
updateScript = nix-update-script {
extraArgs = [
"--version-regex"
"v(.*)"
];
};
tests.version = testers.testVersion {
inherit version;
package = zed-editor;
};
};
meta = {