about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/libtickit
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libtickit')
-rw-r--r--nixpkgs/pkgs/development/libraries/libtickit/default.nix54
-rw-r--r--nixpkgs/pkgs/development/libraries/libtickit/skipTestMacOS.patch27
2 files changed, 81 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libtickit/default.nix b/nixpkgs/pkgs/development/libraries/libtickit/default.nix
new file mode 100644
index 000000000000..4b5296c89566
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libtickit/default.nix
@@ -0,0 +1,54 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, pkg-config
+, libtool
+, perl
+, libtermkey
+, unibilium
+}:
+stdenv.mkDerivation rec {
+  pname = "libtickit";
+  version = "0.4.3";
+
+  src = fetchFromGitHub {
+    owner = "leonerd";
+    repo = "libtickit";
+    rev = "v${version}";
+    hash = "sha256-QCrym8g5J1qwsFpU/PB8zZIWdM3YzOySknISSbQE4Sc=";
+  };
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "LIBTOOL=${lib.getExe libtool}"
+  ];
+
+  nativeBuildInputs = [
+    pkg-config
+    libtool
+  ];
+  buildInputs = [
+    libtermkey
+    unibilium
+  ];
+  nativeCheckInputs = [ perl ];
+
+  patches = [
+    ./skipTestMacOS.patch
+  ];
+
+  doCheck = true;
+
+  meta = with lib; {
+    description = "A terminal interface construction kit";
+    longDescription = ''
+      This library provides an abstracted mechanism for building interactive full-screen terminal
+      programs. It provides a full set of output drawing functions, and handles keyboard and mouse
+      input events.
+    '';
+    homepage = "https://www.leonerd.org.uk/code/libtickit/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ onemoresuza ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/libtickit/skipTestMacOS.patch b/nixpkgs/pkgs/development/libraries/libtickit/skipTestMacOS.patch
new file mode 100644
index 000000000000..3ecdf75f06f8
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libtickit/skipTestMacOS.patch
@@ -0,0 +1,27 @@
+From 6179359c0b9247ae981b8b2a2897eabc921147fd Mon Sep 17 00:00:00 2001
+From: Gustavo Coutinho de Souza <dev@onemoresuza.mailer.me>
+Date: Tue, 8 Aug 2023 15:45:43 -0300
+Subject: [PATCH] test: skip test 18 if on MacOS
+
+---
+ t/18term-builder.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/t/18term-builder.c b/t/18term-builder.c
+index 8b23ab4..c1b64a2 100644
+--- a/t/18term-builder.c
++++ b/t/18term-builder.c
+@@ -21,6 +21,11 @@ static void output(TickitTerm *tt, const char *bytes, size_t len, void *user)
+ 
+ int main(int argc, char *argv[])
+ {
++
++  #if defined(__APPLE__) || defined(__MACH__)
++    skip_all("the test does not seem to work on MacOS");
++    return exit_status();
++  #endif
+   // getstr override
+   {
+     /* We need a termtype that isn't xterm, but that will actually load.
+-- 
+2.41.0