From 2e5d7a110aa3943e08ded2b3106d32a39ec4a4d9 Mon Sep 17 00:00:00 2001 From: Erwin Boskma Date: Wed, 27 Mar 2024 17:37:54 +0100 Subject: [PATCH] zed: Update to 0.127.5 Still doesn't work on wayland though... --- pkgs/zed/Cargo.lock | 2 +- pkgs/zed/default.nix | 102 ++++++++++++++++++++++++++++--------------- 2 files changed, 68 insertions(+), 36 deletions(-) diff --git a/pkgs/zed/Cargo.lock b/pkgs/zed/Cargo.lock index d5166e9..82547ea 100644 --- a/pkgs/zed/Cargo.lock +++ b/pkgs/zed/Cargo.lock @@ -12758,7 +12758,7 @@ dependencies = [ [[package]] name = "zed" -version = "0.127.3" +version = "0.127.5" dependencies = [ "activity_indicator", "anyhow", diff --git a/pkgs/zed/default.nix b/pkgs/zed/default.nix index aa367ef..bd2ae29 100644 --- a/pkgs/zed/default.nix +++ b/pkgs/zed/default.nix @@ -5,31 +5,32 @@ curl, pkg-config, protobuf, + xcbuild, fontconfig, freetype, libgit2, - libxkbcommon, openssl, sqlite, - vulkan-loader, - xorg, zlib, zstd, + alsa-lib, + libxkbcommon, + wayland, + xorg, stdenv, darwin, - alsa-lib, - wayland, + vulkan-loader, }: rustPlatform.buildRustPackage rec { pname = "zed"; - version = "0.127.3"; + version = "0.127.5"; src = fetchFromGitHub { owner = "zed-industries"; repo = "zed"; - rev = "v${version}"; - hash = "sha256-qzQ0mOY8/reyQqTddG5nqtXDcyPJvrz/HUFci6fNums="; + rev = "refs/tags/v${version}"; + hash = "sha256-clMPXz6htCGoX7wcONo68kacPSvgrAd6SH5VDHSGyOM="; fetchSubmodules = true; }; @@ -83,14 +84,12 @@ rustPlatform.buildRustPackage rec { }; }; - doCheck = false; - nativeBuildInputs = [ curl pkg-config protobuf rustPlatform.bindgenHook - ]; + ] ++ lib.optionals stdenv.isDarwin [ xcbuild.xcrun ]; buildInputs = [ @@ -98,45 +97,78 @@ rustPlatform.buildRustPackage rec { fontconfig freetype libgit2 - libxkbcommon openssl sqlite - vulkan-loader - xorg.libxcb zlib zstd ] - ++ lib.optionals stdenv.isDarwin [ - darwin.apple_sdk.frameworks.AppKit - darwin.apple_sdk.frameworks.CoreAudio - darwin.apple_sdk.frameworks.CoreFoundation - darwin.apple_sdk.frameworks.CoreGraphics - darwin.apple_sdk.frameworks.CoreServices - darwin.apple_sdk.frameworks.CoreText - darwin.apple_sdk.frameworks.Foundation - darwin.apple_sdk.frameworks.IOKit - darwin.apple_sdk.frameworks.Metal - darwin.apple_sdk.frameworks.Security - darwin.apple_sdk.frameworks.SystemConfiguration - ] ++ lib.optionals stdenv.isLinux [ alsa-lib + libxkbcommon wayland - ]; + xorg.libxcb + ] + ++ lib.optionals stdenv.isDarwin ( + with darwin.apple_sdk.frameworks; + [ + AppKit + CoreAudio + CoreFoundation + CoreGraphics + CoreMedia + CoreServices + CoreText + Foundation + IOKit + Metal + Security + SystemConfiguration + VideoToolbox + ] + ); + + buildFeatures = [ "gpui/runtime_shaders" ]; env = { ZSTD_SYS_USE_PKG_CONFIG = true; }; + postFixup = lib.optionalString stdenv.isLinux '' + patchelf --add-rpath ${vulkan-loader}/lib $out/bin/* + ''; + + # Fail with "unimplemented error" + checkFlags = lib.optionals stdenv.hostPlatform.isLinux [ + "--skip=test_base_keymap" + "--skip=test_bundled_settings_and_themes" + "--skip=test_disabled_keymap_binding" + "--skip=test_navigation" + "--skip=test_new_empty_workspace" + "--skip=test_open_and_save_new_file" + "--skip=test_open_entry" + "--skip=test_opening_excluded_paths" + "--skip=test_open_paths" + "--skip=test_open_paths_action" + "--skip=test_pane_actions" + "--skip=test_reopening_closed_items" + "--skip=test_save_conflicting_item" + "--skip=test_setting_language_when_saving_as_single_file_worktree" + "--skip=test_window_edit_state" + "--skip=test_open_add_new" + "--skip=test_open_file_in_many_spaces" + "--skip=test_open_non_existing_file" + ]; + meta = with lib; { - description = "Code at the speed of thought – Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter"; - homepage = "https://github.com/zed-industries/zed"; - license = with licenses; [ - asl20 - agpl3Only - gpl3Only + description = "A high-performance, multiplayer code editor from the creators of Atom and Tree-sitter"; + homepage = "https://zed.dev"; + changelog = "https://github.com/zed-industries/zed/releases/tag/v${version}"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ + GaetanLepage + niklaskorz ]; - maintainers = with maintainers; [ ]; mainProgram = "zed"; + platforms = platforms.all; }; }