gentoo-mg/x11-terms/ghostty/files/ghostty-1.2.0-build-disable-terminfo-database-installation.patch

75 lines
2.8 KiB
Diff

From 012f68ee2cccb2b466724a41dad148ecdecde0a3 Mon Sep 17 00:00:00 2001
From: sin-ack <sin-ack@protonmail.com>
Date: Tue, 16 Sep 2025 21:41:07 +0000
Subject: [PATCH] build: Disable terminfo database installation
Database installation is unconditional in Ghostty and causes conflicts
with newer ncurses versions which have the database merged in.
Bug: https://bugs.gentoo.org/948830
Signed-off-by: sin-ack <sin-ack@protonmail.com>
---
src/build/GhosttyResources.zig | 40 ----------------------------------
1 file changed, 40 deletions(-)
diff --git a/src/build/GhosttyResources.zig b/src/build/GhosttyResources.zig
index 266069f83..f6f7409ce 100644
--- a/src/build/GhosttyResources.zig
+++ b/src/build/GhosttyResources.zig
@@ -19,10 +19,6 @@ pub fn init(b: *std.Build, cfg: *const Config) !GhosttyResources {
// Terminfo
terminfo: {
const os_tag = cfg.target.result.os.tag;
- const terminfo_share_dir = if (os_tag == .freebsd)
- "site-terminfo"
- else
- "terminfo";
// Encode our terminfo
var str = std.ArrayList(u8).init(b.allocator);
@@ -68,42 +64,6 @@ pub fn init(b: *std.Build, cfg: *const Config) !GhosttyResources {
try steps.append(&cap_install.step);
}
-
- // Compile the terminfo source into a terminfo database
- {
- const run_step = RunStep.create(b, "tic");
- run_step.addArgs(&.{ "tic", "-x", "-o" });
- const path = run_step.addOutputFileArg(terminfo_share_dir);
-
- run_step.addFileArg(source);
- _ = run_step.captureStdErr(); // so we don't see stderr
-
- // Ensure that `share/terminfo` is a directory, otherwise the `cp
- // -R` will create a file named `share/terminfo`
- const mkdir_step = RunStep.create(b, "make share/terminfo directory");
- switch (cfg.target.result.os.tag) {
- // windows mkdir shouldn't need "-p"
- .windows => mkdir_step.addArgs(&.{"mkdir"}),
- else => mkdir_step.addArgs(&.{ "mkdir", "-p" }),
- }
-
- mkdir_step.addArg(b.fmt(
- "{s}/share/{s}",
- .{ b.install_path, terminfo_share_dir },
- ));
-
- try steps.append(&mkdir_step.step);
-
- // Use cp -R instead of Step.InstallDir because we need to preserve
- // symlinks in the terminfo database. Zig's InstallDir step doesn't
- // handle symlinks correctly yet.
- const copy_step = RunStep.create(b, "copy terminfo db");
- copy_step.addArgs(&.{ "cp", "-R" });
- copy_step.addFileArg(path);
- copy_step.addArg(b.fmt("{s}/share", .{b.install_path}));
- copy_step.step.dependOn(&mkdir_step.step);
- try steps.append(&copy_step.step);
- }
}
// Shell-integration
--
2.49.1