{"id":4336,"date":"2025-01-02T07:08:00","date_gmt":"2025-01-01T22:08:00","guid":{"rendered":"https:\/\/matoken.org\/blog\/?p=4336"},"modified":"2025-01-02T06:46:34","modified_gmt":"2025-01-01T21:46:34","slug":"ghostty-build-in-debian-sid","status":"publish","type":"post","link":"https:\/\/matoken.org\/blog\/2025\/01\/02\/ghostty-build-in-debian-sid\/","title":{"rendered":"Debian sid\u74b0\u5883\u3067Ghostty\u3092build"},"content":{"rendered":"<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/matoken.org\/blog\/wp-content\/uploads\/2025\/01\/com.mitchellh.ghostty.webp\" alt=\"com.mitchellh.ghostty\"><\/span><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u6700\u8fd11.0.0\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u8a71\u984c\u306b\u306a\u3063\u3066\u3044\u308bGhostty\u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u304c\u3042\u308a\u307e\u3059\uff0e\u6700\u8fd1Debian sid amd64\u74b0\u5883\u306eAlacritty\u306e\u4e0a\u3067Neovim+iBus Mozc\u3067\u65e5\u672c\u8a9e\u5165\u529b\u6642\u306b\u9045\u5ef6\u3057\u3066?\u65e5\u672c\u8a9e\u304c\u5165\u529b\u3055\u308c\u3066\u4f7f\u3044\u7269\u306b\u306a\u3089\u306a\u3044\u306e\u3082\u3042\u308a\u8a66\u3057\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3057\u305f\uff0e(mlterm\u3060\u3068\u5927\u4e08\u592b)<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"https:\/\/ghostty.org\/\">Ghostty<\/a><\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>Debian\u3067\u6b21\u56de\u306b\u52d5\u304f\u30d0\u30a4\u30ca\u30ea\u306f\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u305b\u3093\uff0eUbuntu\u306b\u3064\u3044\u3066\u306f\u7b2c\u4e09\u8005\u304c\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3059\uff0e(apt sources\u306f\u7121\u3044)<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"https:\/\/ghostty.org\/docs\/install\/binary\">Binaries and Packages &#8211; Install<\/a><\/p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"https:\/\/github.com\/mkasberg\/ghostty-ubuntu\">mkasberg\/ghostty-ubuntu: Ubuntu (.deb) packages for Ghostty<\/a><\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u6050\u3089\u304fUbuntu\u7248\u306fDebian\u3067\u3082\u52d5\u4f5c\u3059\u308b\u3068\u601d\u3044\u307e\u3059\u304csource\u304b\u3089Build\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\u5c11\u3057\u5d4c\u3063\u305f\u306e\u3067\u30e1\u30e2\u3057\u3066\u304a\u304d\u307e\u3059\uff0e<\/p>\n<\/div>\n<p><!--more--><\/p>\n<div class=\"paragraph\">\n<p>\u624b\u9806\u306f\u4ee5\u4e0b\u306b\u66f8\u304b\u308c\u3066\u3044\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"https:\/\/ghostty.org\/docs\/install\/build\">Build from Source &#8211; Install<\/a><\/p>\n<\/li>\n<\/ul>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u95a2\u9023\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u5c0e\u5165<\/div>\n<div class=\"content\">\n<pre>$ sudo apt install libgtk-4-dev libadwaita-1-dev git<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">zig\u306e\u5c0e\u5165<\/div>\n<div class=\"content\">\n<pre>$ wget2 -c -v https:\/\/ziglang.org\/download\/0.13.0\/zig-linux-x86_64-0.13.0.tar.xz \\\n              https:\/\/ziglang.org\/download\/0.13.0\/zig-linux-x86_64-0.13.0.tar.xz.minisig\nzig-linux-x86_64-0.1 100% [============================================================================================================================================&gt;]     325     --.-KB\/s\nzig-linux-x86_64-0.1 100% [============================================================================================================================================&gt;]   44.90M  761.78KB\/s\n                          [Files: 2  Bytes: 44.90M [553.07KB\/s] Redirects: 0  Todo: 0  Errors: 0\n$ minisign -Vm .\/zig-linux-x86_64-0.13.0.tar.xz -P 'RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO\/wCYvhbAb\/U'\nSignature and comment signature verified\nTrusted comment: timestamp:1717729444   file:zig-linux-x86_64-0.13.0.tar.xz     hashed<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">zig\u3092fuse-archive\u3067mount(\u3082\u3057\u304f\u306ftar xf\u3067\u5c55\u958b)<\/div>\n<div class=\"content\">\n<pre>$ fuse-archive .\/zig-linux-x86_64-0.13.0.tar.xz<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">Ghostty\u306esource\u5165\u624b<\/div>\n<div class=\"content\">\n<pre>$ git clone https:\/\/github.com\/ghostty-org\/ghostty\n$ cd ghostty<\/pre>\n<\/div>\n<\/div>\n<div class=\"admonitionblock note\">\n<table  class=\" table table-hover\" >\n<tr>\n<td class=\"icon\">\n<div class=\"title\">Note<\/div>\n<\/td>\n<td class=\"content\">\n<div class=\"paragraph\">\n<p>font\u306a\u3093\u304b\u3082\u540c\u68b1\u3055\u308c\u3066\u3044\u3066\u7d50\u69cb\u30b5\u30a4\u30ba\u304c\u5927\u304d\u304f <code>--depth=1<\/code> \u3067\u3082clone\u306b\u5931\u6557\u3059\u308b\u306e\u3067\u30ea\u30e2\u30fc\u30c8\u3067clone\u3057\u3066rsync\u3057\u307e\u3057\u305f\uff0ereleases\u306esource archive\u304b\u3089\u5165\u624b\u3057\u3066\u3082\u3044\u3044\u304b\u3082\u3057\u308c\u307e\u305b\u3093\uff0e<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"https:\/\/matoken.org\/blog\/2024\/12\/30\/git-clone-fails-on-thin-line\/\">\u7d30\u3044\u56de\u7dda\u3067git clone\u306b\u5931\u6557 \u2013 matoken&#8217;s meme<\/a><\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">zig\u306bPATH\u3092\u901a\u3057\u3066Ghostty\u306ebuild<\/div>\n<div class=\"content\">\n<pre>$ PATH=~\/Downloads\/zig-linux-x86_64-0.13.0\/zig-linux-x86_64-0.13.0\/:$PATH \\\n  zig build -Doptimize=ReleaseFast\n$ ls zig-out\/bin\/ghostty\nzig-out\/bin\/ghostty<\/pre>\n<\/div>\n<\/div>\n<div class=\"admonitionblock note\">\n<table  class=\" table table-hover\" >\n<tr>\n<td class=\"icon\">\n<div class=\"title\">Note<\/div>\n<\/td>\n<td class=\"content\">\n<div class=\"paragraph\">\n<p>build\u6642\u306b\u4ee5\u4e0b\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u3067\u6570\u6642\u9593\u7d4c\u3063\u3066\u3082\u9032\u307e\u306a\u304f\u306a\u308a\u307e\u3057\u305f\uff0e<span class=\"keyseq\"><kbd>Ctrl<\/kbd>+<kbd>c<\/kbd><\/span>\u3067\u4e2d\u65ad\u3057\u3066\u518d\u5ea6\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u9032\u307f\u307e\u3057\u305f\uff0e\u6050\u3089\u304f\u56de\u7dda\u306e\u554f\u984c\uff0e<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>Compile Build Script\n\u2514\u2500 [53\/46] Fetch Packages\n   \u251c\u2500 wuffs\n   \u2514\u2500 iterm2_themes<\/pre>\n<\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">Ghostty\u3092\u5b9f\u884c\u2026\u2026 <code>Segmentation fault<\/code><\/div>\n<div class=\"content\">\n<pre>$ zig-out\/bin\/ghostty\ninfo: ghostty version=1.0.2-main+60611b8\ninfo: ghostty build optimize=ReleaseFast\ninfo: runtime=apprt.Runtime.gtk\ninfo: font_backend=font.main.Backend.fontconfig_freetype\ninfo: dependency harfbuzz=8.4.0\ninfo: dependency fontconfig=21402\ninfo: renderer=renderer.OpenGL\ninfo: libxev backend=main.Backend.io_uring\ninfo(os): setlocale from env result=ja_JP.UTF-8\ninfo(gtk): GTK version build=4.16.7 runtime=4.16.7\ninfo(config): creating template config file: path=\/home\/matoken\/.config\/ghostty\/config\nwarning(config): error creating template config file err=error.FileNotFound\ninfo(config): default shell source=env value=\/bin\/bash\nwarning(sentry): crash report written to disk path=\/home\/matoken\/.local\/state\/ghostty\/crash\/68ce5038-f588-4d61-ef88-4217099bbfc4.ghosttycrash\nEGL API version 1.5 found\n - Vendor: Mesa Project\n - Version: 1.5\n - Device: \/dev\/dri\/renderD128, 226 128\n - Client APIs: OpenGL OpenGL_ES\n - Extensions:\n        EGL_ANDROID_blob_cache\n        EGL_ANDROID_native_fence_sync\n        EGL_ANGLE_sync_control_rate\n        EGL_CHROMIUM_sync_control\n        EGL_EXT_buffer_age\n        EGL_EXT_config_select_group\n        EGL_EXT_create_context_robustness\n        EGL_EXT_image_dma_buf_import\n        EGL_EXT_image_dma_buf_import_modifiers\n        EGL_EXT_pixel_format_float\n        EGL_EXT_query_reset_notification_strategy\n        EGL_EXT_surface_compression\n        EGL_EXT_swap_buffers_with_damage\n        EGL_IMG_context_priority\n        EGL_KHR_cl_event2\n        EGL_KHR_config_attribs\n        EGL_KHR_context_flush_control\n        EGL_KHR_create_context\n        EGL_KHR_create_context_no_error\n        EGL_KHR_fence_sync\n        EGL_KHR_get_all_proc_addresses\n        EGL_KHR_gl_colorspace\n        EGL_KHR_gl_renderbuffer_image\n        EGL_KHR_gl_texture_2D_image\n        EGL_KHR_gl_texture_3D_image\n        EGL_KHR_gl_texture_cubemap_image\n        EGL_KHR_image\n        EGL_KHR_image_base\n        EGL_KHR_image_pixmap\n        EGL_KHR_no_config_context\n        EGL_KHR_reusable_sync\n        EGL_KHR_surfaceless_context\n        EGL_KHR_swap_buffers_with_damage\n        EGL_KHR_wait_sync\n        EGL_MESA_configless_context\n        EGL_MESA_drm_image\n        EGL_MESA_gl_interop\n        EGL_MESA_image_dma_buf_export\n        EGL_MESA_query_driver\n        EGL_MESA_x11_native_visual_id\n        EGL_NOK_texture_from_pixmap\n        EGL_WL_bind_wayland_display\n - Selected fbconfig: R8G8B8A8, depth 0, stencil 0\n          high depth: none\nCreating EGL context version 3.2 (debug:no, forward:no, legacy:no, es:no)\nUsing OpenGL backend EGL\ninfo(gtk): libadwaita version build=1.6.2 runtime=1.6.2\nerror(gtk): Read method failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface \u201corg.freedesktop.portal.Settings\u201d on object at path \/org\/freedesktop\/portal\/desktop\nCreating EGL context version 3.2 (debug:no, forward:no, legacy:no, es:no)\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n    debug: \u2713\n    unpack-subimage: \u2713\n    half-float: \u2713\n    sync: \u2713\n    base-instance: \u2713\n    buffer-storage: \u2713\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n    debug: \u2713\n    unpack-subimage: \u2713\n    half-float: \u2713\n    sync: \u2713\n    base-instance: \u2713\n    buffer-storage: \u2713\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x31a0b830 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x31a09b60 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.441: GtkImage 0x319c7740 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a79170 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a754f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.442: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x318aed70 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x31a812a0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.443: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.444: GtkImage 0x31a83150 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.444: GtkImage 0x319bb340 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.455: GtkImage 0x33e3da10 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\nCreating EGL context version 3.3 (debug:no, forward:no, legacy:no, es:no)\nOpenGL version: 4.6 (core)\nGLSL version: 4.60\nMax texture size: 16384\nEnabled features (use GDK_GL_DISABLE env var to disable):\n    debug: \u2713\n    unpack-subimage: \u2713\n    half-float: \u2713\n    sync: \u2713\n    base-instance: \u2713\n    buffer-storage: \u2713\ninfo(grid): loaded OpenGL 4.6\ninfo(io_exec): found Ghostty resources dir: \/home\/matoken\/src\/ghostty\/zig-out\/share\/ghostty\ninfo(io_exec): shell integration automatically injected shell=termio.shell_integration.Shell.bash\nwarning(gtk): unimplemented action=apprt.action.Action.Key.cell_size\nwarning(gtk): unimplemented action=apprt.action.Action.Key.size_limit\ninfo(io_exec): started subcommand path=\/bin\/sh pid=3475569\ninfo(io_exec): subcommand cgroup=-\nerror(gtk): Read method failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface \u201corg.freedesktop.portal.Settings\u201d on object at path \/org\/freedesktop\/portal\/desktop\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.490: GtkImage 0x33e52760 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x342b77c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x342b84c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a7f490 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.498: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.499: GtkImage 0x31a821f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a7b370 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x342b77c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x342b84c0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x33e52760 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a7f490 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a80400 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x31a821f0 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.506: GtkImage 0x33e3da10 reported baselines of minimum -2147483648 and natural -2147483648, but sizes of minimum 16 and natural 16. Baselines must be inside the widget size.\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.509: fb setup not supported (8cd6)\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.524: fb setup not supported (8cd6)\n\n(ghostty:3475525): Gtk-WARNING **: 02:44:03.550: fb setup not supported (8cd6)\n\n(ghostty:3475525): GLib-GObject-CRITICAL **: 02:44:03.634: g_object_ref: assertion 'G_IS_OBJECT (object)' failed\n\n(ghostty:3475525): GLib-GObject-CRITICAL **: 02:44:03.634: g_object_ref: assertion 'G_IS_OBJECT (object)' failed\nSegmentation fault<\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Segmentation fault\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3059\uff0e\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u3067\u691c\u7d22\u3057\u3066\u4ee5\u4e0b\u306eIssue\u3092\u898b\u3064\u3051\u307e\u3057\u305f\uff0e<\/p>\n<\/div>\n<div class=\"quoteblock\">\n<blockquote>\n<div class=\"paragraph\">\n<p>Dupe, best guess currently is a GTK bug. Please search to find similar discussions (not issues).<\/p>\n<\/div>\n<\/blockquote>\n<div class=\"attribution\">\n&#8212; <a href=\"https:\/\/github.com\/ghostty-org\/ghostty\/issues\/3370\">Fail to run binary on Debian\/Cinnamon \u00b7 Issue #3370 \u00b7 ghostty-org\/ghostty<\/a>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>GTK\u306ebug\u3067\u306f\u3068\u306e\u3053\u3068\u3067\u3059\u304cUbuntu\u7248\u304c\u3042\u308b\u306e\u3067\u305d\u3061\u3089\u3067\u306f\u3069\u3046\u306a\u3063\u3066\u308b\u306e\u3060\u308d\u3046\u3068.deb\u3092\u5165\u624b\u3057\u3066\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">Ubuntu\u5411\u3051Ghostty\u306e.deb\u3092\u5165\u624b\u3057\u3066archive\u3092mount\u3057\u3066\u5b9f\u884c<\/div>\n<div class=\"content\">\n<pre>$ wget2 -c -v https:\/\/github.com\/mkasberg\/ghostty-ubuntu\/releases\/download\/1.0.1-0-ppa1\/ghostty_1.0.1-0.ppa1_amd64_24.10.deb <b class=\"conum\">(1)<\/b>\n0 files                0% [&lt;=&gt;                                                                                                                                                                                          ]       0          B\/s\n                          [Files: 0  Bytes: 0  [0 B\/s] Redirects: 1  Todo: 0  Errors: 1\n$ fuse-archive ghostty_1.0.1-0.ppa1_amd64_24.10.deb <b class=\"conum\">(2)<\/b>\nfuse-archive: Created mount point 'ghostty_1.0.1-0.ppa1_amd64_24.10'\n$ fuse-archive ghostty_1.0.1-0.ppa1_amd64_24.10\/data.tar.zst ~\/fuse\/tmp <b class=\"conum\">(3)<\/b>\nfuse-archive: Using existing mount point '\/home\/matoken\/fuse\/tmp'\n$ \/home\/matoken\/fuse\/tmp\/usr\/bin\/ghostty <b class=\"conum\">(4)<\/b><\/pre>\n<\/div>\n<\/div>\n<div class=\"colist arabic\">\n<ol>\n<li>\n<p>\u4e00\u756a\u74b0\u5883\u306e\u8fd1\u305d\u3046\u306aUbuntu 22.10 amd64\u7248\u3092\u5165\u624b<\/p>\n<\/li>\n<li>\n<p>fuse-archive\u3067mount(\u3082\u3057\u304f\u306funar\u30b3\u30de\u30f3\u30c9\u306a\u3069\u3067\u5c55\u958b)<\/p>\n<\/li>\n<li>\n<p>fuse-archive\u3067\u9069\u5f53\u306a\u5834\u6240\u306bdata.tar\u3092mount(\u3082\u3057\u304f\u306ftar xf\u306a\u3069\u3067\u5c55\u958b)<\/p>\n<\/li>\n<li>\n<p>Ghostty\u3092\u5b9f\u884c<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<div class=\"paragraph\">\n<p>Ubuntu\u5411\u3051Ghostty\u306f\u8d77\u52d5\u3057\u307e\u3057\u305f\uff0e<br \/>\ndebian\/patches\u3092\u8997\u304f\u30681\u3064patch\u304c\u3042\u308a\u307e\u3059\u304c\u95a2\u4fc2\u304c\u7121\u3055\u305d\u3046\uff0e\u8a66\u3057\u306b <code>000-libbz2.patch<\/code> \u3092\u9069\u7528\u3057\u3066\u307f\u307e\u3057\u305f\u304c\u3084\u306f\u308a\u8d77\u52d5\u3067\u304d\u307e\u305b\u3093\uff0e<br \/>\n<a href=\"https:\/\/github.com\/mkasberg\/ghostty-ubuntu\/tree\/main\/debian\/patches\" class=\"bare\">https:\/\/github.com\/mkasberg\/ghostty-ubuntu\/tree\/main\/debian\/patches<\/a><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>reset\u3057\u3066\u3082\u3068\u306b\u623b\u3057\u3066\u4eca\u5ea6\u306f <code>debian\/rules<\/code> \u3092\u53c2\u8003\u306b zig build \u3092\u8a66\u3057\u307e\u3057\u305f\u304c\u3053\u308c\u3082\u52d5\u4f5c\u5909\u308f\u3089\u305a\uff0e<br \/>\n<a href=\"https:\/\/github.com\/mkasberg\/ghostty-ubuntu\/blob\/main\/debian\/rules\" class=\"bare\">https:\/\/github.com\/mkasberg\/ghostty-ubuntu\/blob\/main\/debian\/rules<\/a><\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Ghostty\u306eIssue\u3092\u63a2\u3059\u3068\u307e\u3055\u306bDebian sid amd64\u3067\u306e\u56de\u7b54\u304c\u3042\u308a\u307e\u3057\u305f\uff0e<br \/>\n\u6700\u8fd1\u306epango\u306e\u66f4\u65b0\u3067\u5f15\u3063\u304b\u304b\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u3088\u3046\u3067\u3059\uff0e\u4ee5\u4e0b\u306ebuild option\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067\u56de\u907f\u3067\u304d\u308b\u3088\u3046\u3067\u3059\uff0e<\/p>\n<\/div>\n<div class=\"quoteblock\">\n<blockquote>\n<div class=\"paragraph\">\n<p>Upd: just build with -fsys=fontconfig parameter<\/p>\n<\/div>\n<\/blockquote>\n<div class=\"attribution\">\n&#8212; <a href=\"https:\/\/github.com\/ghostty-org\/ghostty\/discussions\/3311\">Pull requests \u00b7 ghostty-org\/ghostty<\/a>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\"><code>-fsys=fontconfig<\/code> \u3092\u4ed8\u4e0e\u3057\u3066build\u3057\u76f4\u3057<\/div>\n<div class=\"content\">\n<pre>$ PATH=~\/Downloads\/zig-linux-x86_64-0.13.0\/zig-linux-x86_64-0.13.0\/:$PATH \\\n  zig build -Doptimize=ReleaseFast -fsys=fontconfig\n$ zig-out\/bin\/ghostty<\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u52d5\u4f5c\u3059\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f :)<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p><span class=\"image\"><img decoding=\"async\" src=\"https:\/\/matoken.org\/blog\/wp-content\/uploads\/2025\/01\/ghostty-debian-sid.webp\" alt=\"ghostty debian sid\"><\/span><\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u9069\u5f53\u306aPATH\u306e\u901a\u3063\u3066\u3044\u308b\u5834\u6240\u306bcp\u3057\u3066\u304a\u304f<\/div>\n<div class=\"content\">\n<pre>$ rsync -av zig-out\/* ~\/usr\/\n$ which ghostty\n\/home\/matoken\/usr\/bin\/ghostty<\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u3068\u3044\u3046\u3053\u3068\u3067\u6700\u8fd1\u306eDebian sid amd64\u74b0\u5883\u306a\u3069\u3067\u306f\u3057\u3070\u3089\u304f\u306fbuild\u30aa\u30d7\u30b7\u30e7\u30f3\u306b <code>-fsys=fontconfig<\/code> \u3092\u4ed8\u3051\u3066\u3042\u3052\u308b\u5fc5\u8981\u304c\u3042\u308a\u305d\u3046\u3067\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>$ zig build -Doptimize=ReleaseFast<\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u2193<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>$ zig build -Doptimize=ReleaseFast -fsys=fontconfig<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u74b0\u5883<\/div>\n<div class=\"content\">\n<pre>$ zig-out\/bin\/ghostty --version\nGhostty 1.0.2-main+60611b8\n\nVersion\n  - version: 1.0.2-main+60611b8\n  - channel: tip\nBuild Config\n  - Zig version: 0.13.0\n  - build mode : builtin.OptimizeMode.ReleaseFast\n  - app runtime: apprt.Runtime.gtk\n  - font engine: font.main.Backend.fontconfig_freetype\n  - renderer   : renderer.OpenGL\n  - libxev     : main.Backend.io_uring\n  - GTK version:\n    build      : 4.16.7\n    runtime    : 4.16.7\n  - libadwaita : enabled\n    build      : 1.6.2\n    runtime    : 1.6.2\n  - libX11     : enabled\n$ dpkg-query -W libgtk-4-dev libadwaita-1-dev git\ngit     1:2.45.2-1.3\nlibadwaita-1-dev:amd64  1.6.2-1\nlibgtk-4-dev:amd64      4.16.7+ds-1\n$ dpkg-query -W libpango* gir1.2-pango-1.0 | grep -v i386\ngir1.2-pango-1.0:amd64  1.55.0+ds-3\nlibpango-1.0-0:amd64    1.55.0+ds-3\nlibpango1.0-dev:amd64   1.55.0+ds-3\nlibpango1.0-doc\nlibpangocairo-1.0-0:amd64       1.55.0+ds-3\nlibpangoft2-1.0-0:amd64 1.55.0+ds-3\nlibpangomm-1.4-1\nlibpangomm-1.4-1v5:amd64        2.46.4-1+b2\nlibpangomm-1.4-dev:amd64        2.46.4-1+b2\nlibpangomm-2.48-1\nlibpangomm-2.48-1t64:amd64      2.54.0-1\nlibpangoxft-1.0-0:amd64 1.55.0+ds-3\n$ lsb_release -dr\nDescription:    Debian GNU\/Linux trixie\/sid\nRelease:        n\/a\n$ arch\nx86_64<\/pre>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u6700\u8fd11.0.0\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u8a71\u984c\u306b\u306a\u3063\u3066\u3044\u308bGhostty\u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u30a8\u30df\u30e5\u30ec\u30fc\u30bf\u304c\u3042\u308a\u307e\u3059\uff0e\u6700\u8fd1Debian sid amd64\u74b0\u5883\u306eAlacritty\u306e\u4e0a\u3067Neovim+iBus Mozc\u3067\u65e5\u672c\u8a9e\u5165\u529b\u6642\u306b\u9045\u5ef6\u3057\u3066 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"webmentions_disabled_pings":false,"webmentions_disabled":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"federated","footnotes":""},"categories":[7,6,199],"tags":[1163,1164,360,1166,1165],"class_list":["post-4336","post","type-post","status-publish","format-standard","hentry","category-debian-linux","category-linux","category-sid","tag-1163","tag-ghostty","tag-terminal","tag-terminal-emulator","tag-zig"],"_links":{"self":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/4336","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/comments?post=4336"}],"version-history":[{"count":3,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/4336\/revisions"}],"predecessor-version":[{"id":4340,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/4336\/revisions\/4340"}],"wp:attachment":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/media?parent=4336"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/categories?post=4336"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/tags?post=4336"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}