From 5f05bd33139c9c237b46d155500b12a787d8af55 Mon Sep 17 00:00:00 2001 From: phanirithvij Date: Mon, 29 Dec 2025 21:58:43 +0530 Subject: [PATCH 1/3] ftxui: add phanirithvij to maintainers Signed-off-by: phanirithvij --- pkgs/by-name/ft/ftxui/package.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/by-name/ft/ftxui/package.nix b/pkgs/by-name/ft/ftxui/package.nix index d400a98c18b9..01d2daab0689 100644 --- a/pkgs/by-name/ft/ftxui/package.nix +++ b/pkgs/by-name/ft/ftxui/package.nix @@ -46,7 +46,7 @@ stdenv.mkDerivation rec { changelog = "https://github.com/ArthurSonzogni/FTXUI/blob/v${version}/CHANGELOG.md"; description = "Functional Terminal User Interface library for C++"; license = lib.licenses.mit; - maintainers = [ ]; + maintainers = with lib.maintainers; [ phanirithvij ]; platforms = lib.platforms.all; }; } From fdddffc6cd496f2e2c2fbce3107355b3dc2da45a Mon Sep 17 00:00:00 2001 From: phanirithvij Date: Mon, 29 Dec 2025 21:58:31 +0530 Subject: [PATCH 2/3] ftxui: modernize Signed-off-by: phanirithvij --- pkgs/by-name/ft/ftxui/package.nix | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/ft/ftxui/package.nix b/pkgs/by-name/ft/ftxui/package.nix index 01d2daab0689..70bfe592bc97 100644 --- a/pkgs/by-name/ft/ftxui/package.nix +++ b/pkgs/by-name/ft/ftxui/package.nix @@ -2,6 +2,7 @@ lib, stdenv, fetchFromGitHub, + cmake, doxygen, gbenchmark, @@ -9,14 +10,14 @@ gtest, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "ftxui"; version = "6.1.9"; src = fetchFromGitHub { owner = "ArthurSonzogni"; repo = "ftxui"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-plJxTLhOhUyuay5uYv4KLK9UTmM2vsoda+iDXVa4b+k="; }; @@ -33,20 +34,20 @@ stdenv.mkDerivation rec { gbenchmark ]; + doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; + cmakeFlags = [ (lib.cmakeBool "FTXUI_BUILD_EXAMPLES" false) (lib.cmakeBool "FTXUI_BUILD_DOCS" true) - (lib.cmakeBool "FTXUI_BUILD_TESTS" doCheck) + (lib.cmakeBool "FTXUI_BUILD_TESTS" finalAttrs.doCheck) ]; - doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; - meta = { homepage = "https://github.com/ArthurSonzogni/FTXUI"; - changelog = "https://github.com/ArthurSonzogni/FTXUI/blob/v${version}/CHANGELOG.md"; + changelog = "https://github.com/ArthurSonzogni/FTXUI/blob/v${finalAttrs.version}/CHANGELOG.md"; description = "Functional Terminal User Interface library for C++"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ phanirithvij ]; platforms = lib.platforms.all; }; -} +}) From 5ab97caa36ec7d3fede895efdcd8574c6f674b1c Mon Sep 17 00:00:00 2001 From: phanirithvij Date: Mon, 29 Dec 2025 21:54:38 +0530 Subject: [PATCH 3/3] json-tui: init at 1.4.1 Signed-off-by: phanirithvij --- pkgs/by-name/js/json-tui/package.nix | 69 ++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 pkgs/by-name/js/json-tui/package.nix diff --git a/pkgs/by-name/js/json-tui/package.nix b/pkgs/by-name/js/json-tui/package.nix new file mode 100644 index 000000000000..852dba711ead --- /dev/null +++ b/pkgs/by-name/js/json-tui/package.nix @@ -0,0 +1,69 @@ +{ + lib, + stdenv, + fetchpatch2, + fetchFromGitHub, + + cmake, + ftxui, + libargs, + nlohmann_json, + gtest, + gbenchmark, + + versionCheckHook, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "json-tui"; + version = "1.4.1"; + + src = fetchFromGitHub { + owner = "ArthurSonzogni"; + repo = "json-tui"; + tag = "v${finalAttrs.version}"; + hash = "sha256-qS2EbCxH8sUUJMu5hwm1+Nu6SsJRfLReX56YSd1RZU4="; + }; + + patches = [ + # fixes tests - https://github.com/ArthurSonzogni/json-tui/pull/37 + (fetchpatch2 { + url = "https://github.com/ArthurSonzogni/json-tui/commit/645060a016c1e1ca84b9e1dc638a926415aaa5fe.patch?full_index=1"; + hash = "sha256-8AZEZgU8HHyaasb/7LegSwRAMo1iyonv3XUY284nYKg="; + }) + ]; + + strictDeps = true; + + buildInputs = [ + ftxui + libargs + nlohmann_json + ]; + + nativeBuildInputs = [ cmake ]; + + checkInputs = [ gbenchmark ]; + + doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; + + cmakeFlags = [ + "-Wno-dev" # suppress cmake warning about deprecated usage + (lib.cmakeBool "JSON_TUI_BUILD_TESTS" finalAttrs.doCheck) + (lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_GOOGLETEST" "${gtest.src}") + ]; + + doInstallCheck = true; + versionCheckProgramArg = "--version"; + nativeInstallCheckInputs = [ versionCheckHook ]; + + meta = { + homepage = "https://github.com/ArthurSonzogni/json-tui"; + changelog = "https://github.com/ArthurSonzogni/json-tui/blob/v${finalAttrs.version}/CHANGELOG.md"; + description = "JSON terminal UI made in C++"; + license = lib.licenses.mit; + mainProgram = "json-tui"; + maintainers = with lib.maintainers; [ phanirithvij ]; + platforms = lib.platforms.all; + }; +})