diff --git a/pkgs/development/libraries/notcurses/default.nix b/pkgs/development/libraries/notcurses/default.nix index 07ef398e6f8a..444cc5034e67 100644 --- a/pkgs/development/libraries/notcurses/default.nix +++ b/pkgs/development/libraries/notcurses/default.nix @@ -1,51 +1,63 @@ -{ stdenv +{ lib +, stdenv +, fetchFromGitHub , cmake -, pkg-config -, pandoc +, libdeflate , libunistring , ncurses +, pandoc +, pkg-config , zlib -, ffmpeg -, fetchFromGitHub -, lib -, multimediaSupport ? true +, multimediaSupport ? true, ffmpeg +, qrcodegenSupport ? true, qrcodegen }: stdenv.mkDerivation rec { pname = "notcurses"; - version = "2.4.9"; + version = "3.0.3"; src = fetchFromGitHub { owner = "dankamongmen"; repo = "notcurses"; rev = "v${version}"; - sha256 = "sha256-J7yTNMvmcm69B+yF0PYLXFG8kkcnffWyUx3kEFU0ToI="; + sha256 = "sha256-jIUIr7roX9ciYkNmvS9m14RdNgFTElwrKadYzi0lCP0="; }; outputs = [ "out" "dev" ]; - nativeBuildInputs = [ cmake pkg-config pandoc ]; + nativeBuildInputs = [ + cmake + pandoc + pkg-config + ]; - buildInputs = [ libunistring ncurses zlib ] - ++ lib.optional multimediaSupport ffmpeg; + buildInputs = [ + libdeflate + libunistring + ncurses + zlib + ] + ++ lib.optional qrcodegenSupport qrcodegen + ++ lib.optional multimediaSupport ffmpeg; - cmakeFlags = [ "-DUSE_QRCODEGEN=OFF" ] + cmakeFlags = + lib.optional (qrcodegenSupport) "-DUSE_QRCODEGEN=ON" ++ lib.optional (!multimediaSupport) "-DUSE_MULTIMEDIA=none"; meta = with lib; { - description = "blingful TUIs and character graphics"; + homepage = "https://github.com/dankamongmen/notcurses"; + description = "Blingful TUIs and character graphics"; longDescription = '' - A library facilitating complex TUIs on modern terminal emulators, - supporting vivid colors, multimedia, and Unicode to the maximum degree - possible. Things can be done with Notcurses that simply can't be done - with NCURSES. + Notcurses is a library facilitating complex TUIs on modern terminal + emulators, supporting vivid colors, multimedia, and Unicode to the maximum + degree possible. Things can be done with Notcurses that simply can't be + done with NCURSES. It is not a source-compatible X/Open Curses implementation, nor a replacement for NCURSES on existing systems. ''; - homepage = "https://github.com/dankamongmen/notcurses"; license = licenses.asl20; - platforms = platforms.all; - maintainers = with maintainers; [ jb55 ]; + maintainers = with maintainers; [ jb55 AndersonTorres ]; + inherit (ncurses.meta) platforms; }; } diff --git a/pkgs/development/libraries/qrcodegen/default.nix b/pkgs/development/libraries/qrcodegen/default.nix index 0ad42c1fc4d7..cd19705f1e93 100644 --- a/pkgs/development/libraries/qrcodegen/default.nix +++ b/pkgs/development/libraries/qrcodegen/default.nix @@ -1,4 +1,8 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib +, stdenv +, fetchFromGitHub +}: + stdenv.mkDerivation rec { pname = "qrcodegen"; version = "1.7.0"; @@ -10,25 +14,28 @@ stdenv.mkDerivation rec { sha256 = "sha256-WH6O3YE/+NNznzl52TXZYL+6O25GmKSnaFqDDhRl4As="; }; - preBuild = "cd c"; + preBuild = '' + cd c/ + ''; + installPhase = '' + runHook preInstall + mkdir -p $out/lib $out/include/qrcodegen cp libqrcodegen.a $out/lib cp qrcodegen.h $out/include/qrcodegen/ + + runHook postInstall ''; - meta = with lib; - { - description = "qrcode generator library in multiple languages"; - - longDescription = '' - This project aims to be the best, clearest library for generating QR Codes. My primary goals are flexible options and absolute correctness. Secondary goals are compact implementation size and good documentation comments. - ''; - - homepage = "https://github.com/nayuki/QR-Code-generator"; - - license = licenses.mit; - platforms = platforms.all; - maintainers = with maintainers; [ mcbeth ]; - }; + meta = with lib; { + homepage = "https://www.nayuki.io/page/qr-code-generator-library"; + description = "High-quality QR Code generator library in many languages"; + license = licenses.mit; + maintainers = with maintainers; [ mcbeth AndersonTorres ]; + platforms = platforms.unix; + broken = stdenv.isDarwin; + }; } +# TODO: build the other languages +# TODO: multiple outputs