From 0b2757de07b625c73fdd6a4bc88b23e0f65a250d Mon Sep 17 00:00:00 2001 From: Andrew Dunham Date: Tue, 6 Nov 2018 22:43:28 -0800 Subject: [PATCH] ncurses: upgrade from 6.1 -> 6.1-20181027 This includes fixes for CVE-2018-10754. While we're changing things, also set the `--with-manpage-format=normal` configure flag, which prevents the `configure` script from looking in /usr to determine whether to compress manpages. This was already the format on NixOS (where these directories don't exist), but making this explicit makes the build more reproducible on other distros. (cherry picked from commit f485b2e71f73d91895306b9e5ca6aa5e44735e0a) --- pkgs/development/libraries/ncurses/default.nix | 14 ++++++++------ pkgs/development/libraries/ncurses/st-0.7.patch | 13 ------------- 2 files changed, 8 insertions(+), 19 deletions(-) delete mode 100644 pkgs/development/libraries/ncurses/st-0.7.patch diff --git a/pkgs/development/libraries/ncurses/default.nix b/pkgs/development/libraries/ncurses/default.nix index 6293efcca8b24..77de18de2b02b 100644 --- a/pkgs/development/libraries/ncurses/default.nix +++ b/pkgs/development/libraries/ncurses/default.nix @@ -12,17 +12,18 @@ }: stdenv.mkDerivation rec { - version = "6.1"; + version = "6.1-20181027"; name = "ncurses-${version}" + lib.optionalString (abiVersion == "5") "-abi5-compat"; src = fetchurl { - url = "mirror://gnu/ncurses/ncurses-${version}.tar.gz"; - sha256 = "05qdmbmrrn88ii9f66rkcmcyzp1kb1ymkx7g040lfkd1nkp7w1da"; + urls = [ + "https://invisible-mirror.net/archives/ncurses/current/ncurses-${version}.tgz" + "ftp://ftp.invisible-island.net/ncurses/current/ncurses-${version}.tgz" + ]; + sha256 = "1xn6wpi22jc61158w4ifq6s1fvilhmsy1in2srn3plk8pm0d4902"; }; - # The patch st-0.7.patch needs to be removed, if ncurses is upgraded in the future. - # It is necessary for the 6.1 version of ncurses. - patches = [ ./st-0.7.patch ] ++ lib.optional (!stdenv.cc.isClang) ./clang.patch; + patches = lib.optional (!stdenv.cc.isClang) ./clang.patch; outputs = [ "out" "dev" "man" ]; setOutputFlags = false; # some aren't supported @@ -32,6 +33,7 @@ stdenv.mkDerivation rec { "--without-debug" "--enable-pc-files" "--enable-symlinks" + "--with-manpage-format=normal" ] ++ lib.optional unicode "--enable-widec" ++ lib.optional (!withCxx) "--without-cxx" ++ lib.optional (abiVersion == "5") "--with-abi-version=5" diff --git a/pkgs/development/libraries/ncurses/st-0.7.patch b/pkgs/development/libraries/ncurses/st-0.7.patch deleted file mode 100644 index 956f9b68d68fe..0000000000000 --- a/pkgs/development/libraries/ncurses/st-0.7.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/misc/terminfo.src b/misc/terminfo.src -index 84f4810..ac300a7 100644 ---- a/misc/terminfo.src -+++ b/misc/terminfo.src -@@ -6260,7 +6260,7 @@ st-0.7|simpleterm 0.7, - %=%t3%e%p1%d%;m, - sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%| - %t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p7%t;8%;m, -- Ss=\E]52;%p1%s;%p2%s\007, kDN3=\E[1;3B, kDN5=\E[1;5B, -+ Ms=\E]52;%p1%s;%p2%s\007, kDN3=\E[1;3B, kDN5=\E[1;5B, - kLFT3=\E[1;3D, kLFT5=\E[1;5D, kNXT3=\E[6;3~, - kNXT5=\E[6;5~, kPRV3=\E[5;3~, kPRV5=\E[5;5~, - kRIT3=\E[1;3C, kRIT5=\E[1;5C, kUP3=\E[1;3A, kUP5=\E[1;5A,