zed icon indicating copy to clipboard operation
zed copied to clipboard

Zed Windows build crashes if the Segoe Fluent Icons font is not installed.

Open elenakrittik opened this issue 10 months ago • 5 comments

Check for existing issues

  • [X] Completed

Describe the bug / provide steps to reproduce it

Build Zed from source on windows, make sure to uninstall Segoe Fluent Icons if you have them installed, and try to run it. The window will show up for a brief moment, then exit with code 0xffffffff. Installing the font solves the issue.

Environment

Zed: v0.133.0 (Zed Dev ae3c641bbee2029fb4588d008e45ddb783593622) OS: Windows 10.0.19045 Memory: 15.9 GiB Architecture: x86_64

If applicable, attach your ~/Library/Logs/Zed/Zed.log file to this issue.

2024-04-23T14:28:48+03:00 [INFO] ========== starting zed ==========
2024-04-23T14:28:49+03:00 [INFO] Using direct write text system.
2024-04-23T14:28:49+03:00 [INFO] Opening main db
2024-04-23T14:28:49+03:00 [INFO] Using git binary path: None
2024-04-23T14:28:49+03:00 [ERROR] crates\zed\src/main.rs:205: SHELL environment variable is not assigned so we can't source login environment variables

Caused by:
    environment variable not found
2024-04-23T14:28:49+03:00 [ERROR] crates\settings\src\settings_file.rs:76: EOF while parsing a value at line 1 column 0
2024-04-23T14:28:49+03:00 [ERROR] crates\settings\src\keymap_file.rs:89: invalid binding value for keystroke ctrl-alt-shift-down, context Some("Editor")

Caused by:
    no action type registered for editor::DuplicateLine
2024-04-23T14:28:49+03:00 [ERROR] crates\settings\src\keymap_file.rs:89: invalid binding value for keystroke ctrl-alt-shift-up, context Some("Editor")

Caused by:
    no action type registered for editor::DuplicateLine
2024-04-23T14:28:49+03:00 [ERROR] crates\settings\src\keymap_file.rs:89: invalid binding value for keystroke escape, context Some("ChatPanel > MessageEditor")

Caused by:
    no action type registered for chat_panel::CloseReplyPreview
2024-04-23T14:28:49+03:00 [INFO] extensions updated. loading 1, reloading 0, unloading 0
2024-04-23T14:28:49+03:00 [INFO] use fallback vsync function
2024-04-23T14:28:49+03:00 [INFO] primaly refresh rate is 60Hz
2024-04-23T14:28:49+03:00 [INFO] expected interval is 16ms
2024-04-23T14:28:49+03:00 [ERROR] crates\zed\src\zed.rs:636: EOF while parsing a value at line 1 column 0
2024-04-23T14:28:49+03:00 [INFO] Opening main db
2024-04-23T14:28:49+03:00 [ERROR] C:\Users\lena\Development\Repos\zed\crates\client\src/client.rs:1467: Element not found. (0x80070490)
2024-04-23T14:28:49+03:00 [ERROR] crates\workspace\src/workspace.rs:951: Error in last_window, select_row_bound expected single row result but found none for: SELECT
  display,
  window_state,
  window_x,
  window_y,
  window_width,
  window_height,
  fullscreen
FROM
  workspaces
WHERE
  workspace_location IS NOT NULL
ORDER BY
  timestamp DESC
LIMIT
  1
2024-04-23T14:28:49+03:00 [INFO] Adapter "NVIDIA GeForce RTX 3060"
2024-04-23T14:28:49+03:00 [INFO] Ray tracing is supported
2024-04-23T14:28:49+03:00 [WARN] Requested size 1x1 is outside of surface capabilities
2024-04-23T14:28:49+03:00 [INFO] Using surface present mode MAILBOX
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_impl")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_transformed")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_impl")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_transformed")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_impl")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_transformed")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_impl")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_transformed")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_impl")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_transformed")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_impl")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_transformed")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_impl")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_transformed")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_impl")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_device_position_transformed")
2024-04-23T14:28:49+03:00 [INFO] Skip function Some("to_tile_position")
2024-04-23T14:28:49+03:00 [INFO] Using surface present mode MAILBOX
2024-04-23T14:28:49+03:00 [INFO] Node runtime install_if_needed
2024-04-23T14:28:49+03:00 [ERROR] Segoe Fluent Icons not found, use Arial instead.

elenakrittik avatar Apr 23 '24 11:04 elenakrittik

For those in need of a workaround, you can use this .ttf (should be marked as digitally signed in the font viewer) or pull the font from your own copy of the Windows 11 ISO at sources\install.(esd|wim) > Windows\Fonts\SegoeIcons.ttf (use 7-zip to open the archive). Install the font locally and it should start up after that.

overestimate avatar Apr 24 '24 05:04 overestimate

I've also tried Zed (or rather GPUI) on Windows, and ran into the same problem.

Though in my case, the Helvetica font (which seems to be the default on Windows) is missing, which leads to the following error:

[2024-04-24T14:32:49Z INFO  gpui::platform::windows::platform] Using direct write text system.
[2024-04-24T14:32:50Z INFO  gpui::platform::windows::platform] use DCompositionWaitForCompositorClock for vsync
[2024-04-24T14:32:50Z ERROR gpui::platform::windows::direct_write] Helvetica not found, use Arial instead.
thread 'main' panicked at ...\zed\crates\gpui\src\platform\windows\direct_write.rs:357:14:
called `Option::unwrap()` on a `None` value

It seems that GPUI is supposed to use Arial as the backup font, but it doesn't search for it in the systems fonts but only in the custom font collection, where it can't find Arial: https://github.com/zed-industries/zed/blob/e1791b7dd0ff1948d3d302674fda2f659974c0b3/crates/gpui/src/platform/windows/direct_write.rs#L348-L355

kaivol avatar Apr 24 '24 14:04 kaivol

This should have been fixed by #10877

JunkuiZhang avatar Apr 25 '24 05:04 JunkuiZhang

Issue still persists for me, Zed doesn't even open a window now. Looks like the patch worked, but in a wrong way, as Windows now selects "Segoe UI" (which doesn't seem to have icons that Zed needs) even if "Segoe UI Icons" is installed.

Zed.log

elenakrittik avatar Apr 25 '24 11:04 elenakrittik

Windows build is broken currently due to #10954

JunkuiZhang avatar Apr 26 '24 01:04 JunkuiZhang

Built latest commit, can confirm Zed opens just fine w/o icon font (albeit with window decoration icons missing, but that's expected), thanks!

elenakrittik avatar Apr 27 '24 08:04 elenakrittik