From d45cdb2f3eaa508b741ff854bf6edc9f22cc4bad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= Date: Thu, 18 Feb 2021 19:04:11 +0100 Subject: [PATCH 1/7] libjpeg-turbo: Optionally build Java wrapper --- pkgs/development/libraries/libjpeg-turbo/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libjpeg-turbo/default.nix b/pkgs/development/libraries/libjpeg-turbo/default.nix index 2426dfebe8a2..f2d4e00d1aad 100644 --- a/pkgs/development/libraries/libjpeg-turbo/default.nix +++ b/pkgs/development/libraries/libjpeg-turbo/default.nix @@ -1,4 +1,6 @@ { lib, stdenv, fetchFromGitHub, cmake, nasm +, openjdk +, enableJava ? false # whether to build the java wrapper , enableStatic ? stdenv.hostPlatform.isStatic , enableShared ? !stdenv.hostPlatform.isStatic }: @@ -26,11 +28,18 @@ stdenv.mkDerivation rec { moveToOutput include/transupp.h $dev_private ''; - nativeBuildInputs = [ cmake nasm ]; + nativeBuildInputs = [ + cmake + nasm + ] ++ lib.optionals enableJava [ + openjdk + ]; cmakeFlags = [ "-DENABLE_STATIC=${if enableStatic then "1" else "0"}" "-DENABLE_SHARED=${if enableShared then "1" else "0"}" + ] ++ lib.optionals enableJava [ + "-DWITH_JAVA=1" ]; doInstallCheck = true; From 98fba66557a086e3742434148f191b31ceae7b07 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Sat, 27 Feb 2021 22:28:37 +0100 Subject: [PATCH 2/7] libe-book: fix build after c0b3169d4a48bcd8da29157e1cc2c412873e51d6 --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 55e10c5334a8..3ca3c32a46a4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15036,7 +15036,9 @@ in liblscp = callPackage ../development/libraries/liblscp { }; - libe-book = callPackage ../development/libraries/libe-book {}; + libe-book = callPackage ../development/libraries/libe-book { + icu = icu67; + }; libechonest = callPackage ../development/libraries/libechonest { }; From 60031a1e954b272ad47872326696e1a1c1422051 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Wed, 10 Feb 2021 04:43:50 +0000 Subject: [PATCH 3/7] gitkraken: 7.5.0 -> 7.5.1 --- pkgs/applications/version-management/gitkraken/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix index 7dd8ff43974d..3c66456433ac 100644 --- a/pkgs/applications/version-management/gitkraken/default.nix +++ b/pkgs/applications/version-management/gitkraken/default.nix @@ -13,11 +13,11 @@ let in stdenv.mkDerivation rec { pname = "gitkraken"; - version = "7.5.0"; + version = "7.5.1"; src = fetchzip { url = "https://release.axocdn.com/linux/GitKraken-v${version}.tar.gz"; - sha256 = "1v89aza7iwph7k5phyld5m5856c5wbh8ncgg6lh7558v4xna0x57"; + sha256 = "sha256-7baWXv+SV1LX5p+eH6egp4QfTm1SXK8ITcOEj8yFAXg="; }; dontBuild = true; From c834c60ff94482afe047bad5bf6ad571fdc51bfd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= Date: Thu, 18 Feb 2021 19:04:34 +0100 Subject: [PATCH 4/7] turbovnc: init at 2.2.5 I started out by copying the `tigervnc` derivation, which does things like re-using `xorg.xorgserver.buildInputs` (given that these VNC servers are all forks of Xorg), but then removed that and all the dependencies that did not appear to be needed or checked for in the CMake output. --- pkgs/tools/admin/turbovnc/default.nix | 111 ++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 5 ++ 2 files changed, 116 insertions(+) create mode 100644 pkgs/tools/admin/turbovnc/default.nix diff --git a/pkgs/tools/admin/turbovnc/default.nix b/pkgs/tools/admin/turbovnc/default.nix new file mode 100644 index 000000000000..df45e6f10b86 --- /dev/null +++ b/pkgs/tools/admin/turbovnc/default.nix @@ -0,0 +1,111 @@ +{ lib +, stdenv +, fetchFromGitHub + +# Dependencies +, cmake +, libjpeg_turbo +, makeWrapper +, mesa # for built-in 3D software rendering using swrast +, openjdk # for the client with Java GUI +, openjdk_headless # for the server +, openssh +, openssl +, pam +, perl +, which +, xkbcomp +, xkeyboard_config +, xorg +}: + +stdenv.mkDerivation rec { + pname = "turbovnc"; + version = "2.2.5"; + + src = fetchFromGitHub { + owner = "TurboVNC"; + repo = "turbovnc"; + rev = version; + sha256 = "0r2lk5lza7a9h02g4z5j59d8qj0x1q1my665d1x1plny4g46vam0"; + }; + + # TODO: + # * Build outputs that are unclear: + # * `-- FONT_ENCODINGS_DIRECTORY = /var/empty/share/X11/fonts/encodings` + # Maybe relevant what the tigervnc and tightvnc derivations + # do with their `fontDirectories`? + # * `SERVER_MISC_CONFIG_PATH = /var/empty/lib64/xorg` + # * The thing about xorg `protocol.txt` + # * Does SSH support require `openssh` on PATH? + # * Add `enableClient ? true` flag that disables the client GUI + # so that the server can be built without openjdk dependency. + # * Perhaps allow to build the client on non-Linux platforms. + + nativeBuildInputs = [ + cmake + makeWrapper + openjdk_headless + ]; + + buildInputs = [ + libjpeg_turbo + openssl + pam + perl + ] ++ (with xorg; [ + libSM + libX11 + libXext + libXi + xorgproto + ]); + + cmakeFlags = [ + # For the 3D software rendering built into TurboVNC, pass the path + # to the swrast dri driver in Mesa. + # Can also be given at runtime to its `Xvnc` as: + # -dridir /nix/store/...-mesa-20.1.10-drivers/lib/dri/ + "-DDRI_DRIVER_PATH=${mesa.drivers}/lib/dri" + # The build system doesn't find these files automatically. + "-DTJPEG_JAR=${libjpeg_turbo.out}/share/java/turbojpeg.jar" + "-DTJPEG_JNILIBRARY=${libjpeg_turbo.out}/lib/libturbojpeg.so" + "-DXKB_BASE_DIRECTORY=${xkeyboard_config}/share/X11/xkb" + "-DXKB_BIN_DIRECTORY=${xkbcomp}/bin" + ]; + + postInstall = '' + # turbovnc dlopen()s libssl.so depending on the requested encryption. + wrapProgram $out/bin/Xvnc \ + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ openssl ]} + + # `twm` is the default window manager that `vncserver` tries to start, + # and it has minimal dependencies (no non-Xorg). + # (This default is written by `vncserver` to `~/.vnc/xstartup.turbovnc`, + # see https://github.com/TurboVNC/turbovnc/blob/ffdb57d9/unix/vncserver.in#L201.) + # It checks for it using `which twm`. + wrapProgram $out/bin/vncserver \ + --prefix PATH : ${lib.makeBinPath [ which xorg.twm ]} + + # Patch /usr/bin/perl + patchShebangs $out/bin/vncserver + + # vncserver needs `xauth` + wrapProgram $out/bin/vncserver \ + --prefix PATH : ${lib.makeBinPath (with xorg; [ xauth ])} + + # The viewer is in Java and requires `JAVA_HOME`. + # For SSH support, `ssh` is required on `PATH`. + wrapProgram $out/bin/vncviewer \ + --prefix JAVA_HOME : "${lib.makeLibraryPath [ openjdk ]}/openjdk" \ + --prefix PATH : ${lib.makeBinPath [ openssh ]} + ''; + + meta = { + homepage = "https://turbovnc.org/"; + license = lib.licenses.gpl2Plus; + description = "High-speed version of VNC derived from TightVNC"; + maintainers = with lib.maintainers; [ nh2 ]; + platforms = with lib.platforms; linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c37e6c0985af..523a223e692e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8934,6 +8934,11 @@ in ttwatch = callPackage ../tools/misc/ttwatch { }; + turbovnc = callPackage ../tools/admin/turbovnc { + # fontDirectories = [ xorg.fontadobe75dpi xorg.fontmiscmisc xorg.fontcursormisc xorg.fontbhlucidatypewriter75dpi ]; + libjpeg_turbo = libjpeg_turbo.override { enableJava = true; }; + }; + udunits = callPackage ../development/libraries/udunits { }; uftp = callPackage ../servers/uftp {}; From 33230da5dacd8be7c074dbc01d1e6e5bcf952c7f Mon Sep 17 00:00:00 2001 From: Orivej Desh Date: Sun, 28 Feb 2021 04:12:14 +0000 Subject: [PATCH 5/7] cvise: init at 2.1.0 (#114197) --- pkgs/development/tools/misc/cvise/default.nix | 46 +++++++++++++++++++ .../tools/misc/cvise/unifdef.patch | 8 ++++ pkgs/top-level/all-packages.nix | 4 ++ 3 files changed, 58 insertions(+) create mode 100644 pkgs/development/tools/misc/cvise/default.nix create mode 100644 pkgs/development/tools/misc/cvise/unifdef.patch diff --git a/pkgs/development/tools/misc/cvise/default.nix b/pkgs/development/tools/misc/cvise/default.nix new file mode 100644 index 000000000000..357e3e98f081 --- /dev/null +++ b/pkgs/development/tools/misc/cvise/default.nix @@ -0,0 +1,46 @@ +{ lib, buildPythonApplication, fetchFromGitHub, cmake, flex +, clang-unwrapped, llvm, unifdef +, pebble, psutil, pytestCheckHook, pytest-flake8 +}: + +buildPythonApplication rec { + pname = "cvise"; + version = "2.1.0"; + + src = fetchFromGitHub { + owner = "marxin"; + repo = "cvise"; + rev = "v${version}"; + sha256 = "0ljl0r5jqj6lrddrbxjkcphcz5p4njnn2hqz07jyh30jd9sm7dmj"; + }; + + patches = [ + # Refer to unifdef by absolute path. + ./unifdef.patch + ]; + + nativeBuildInputs = [ cmake flex ]; + buildInputs = [ clang-unwrapped llvm unifdef ]; + propagatedBuildInputs = [ pebble psutil ]; + checkInputs = [ pytestCheckHook pytest-flake8 unifdef ]; + + preCheck = '' + patchShebangs cvise.py + ''; + disabledTests = [ + # Needs gcc, fails when run noninteractively (without tty). + "test_simple_reduction" + ]; + + dontUsePipInstall = true; + dontUseSetuptoolsBuild = true; + dontUseSetuptoolsCheck = true; + + meta = with lib; { + homepage = "https://github.com/marxin/cvise"; + description = "Super-parallel Python port of C-Reduce"; + license = licenses.ncsa; + maintainers = with maintainers; [ orivej ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/development/tools/misc/cvise/unifdef.patch b/pkgs/development/tools/misc/cvise/unifdef.patch new file mode 100644 index 000000000000..d15ca6dce0bd --- /dev/null +++ b/pkgs/development/tools/misc/cvise/unifdef.patch @@ -0,0 +1,8 @@ +--- a/cvise.py ++++ b/cvise.py +@@ -93,4 +93,5 @@ def find_external_programs(): + # Special case for clang-format + programs['clang-format'] = '@CLANG_FORMAT_PATH@' ++ programs['unifdef'] = '@UNIFDEF@' + + return programs diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 25d26938723f..78aa21f044fd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12145,6 +12145,10 @@ in csslint = callPackage ../development/web/csslint { }; + cvise = python3Packages.callPackage ../development/tools/misc/cvise { + inherit (llvmPackages_11) llvm clang-unwrapped; + }; + libcxx = llvmPackages.libcxx; libcxxabi = llvmPackages.libcxxabi; From 77a087facc6cbaaa4676e849ccbeb6dbba9d4460 Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Sun, 28 Feb 2021 13:03:03 +1000 Subject: [PATCH 6/7] miniserve: 0.10.4 -> 0.11.0 https://github.com/svenstaro/miniserve/releases/tag/v0.11.0 --- pkgs/tools/misc/miniserve/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/misc/miniserve/default.nix b/pkgs/tools/misc/miniserve/default.nix index 7fb66e22e98d..81437378c327 100644 --- a/pkgs/tools/misc/miniserve/default.nix +++ b/pkgs/tools/misc/miniserve/default.nix @@ -1,4 +1,5 @@ -{ lib, stdenv +{ lib +, stdenv , rustPlatform , fetchFromGitHub , pkg-config @@ -8,16 +9,16 @@ rustPlatform.buildRustPackage rec { pname = "miniserve"; - version = "0.10.4"; + version = "0.11.0"; src = fetchFromGitHub { owner = "svenstaro"; repo = "miniserve"; rev = "v${version}"; - sha256 = "0hskb72gnp66vkyxsqnxhjcqgvjj7wbd2nm5wxp94abc5l1fiigv"; + sha256 = "sha256-/vtiHRHsbF7lfn9tfgfKhm5YwofjSJniNNnKahphHFg="; }; - cargoSha256 = "0s1gdngpf6gxz2lyapblxxmc6aydg2i9kmrfvngkbmqh4as1a2vl"; + cargoSha256 = "sha256-gwy/LeVznZyawliXnkULyyVSXATk0sjSTUZPHO2K+9o="; nativeBuildInputs = [ pkg-config zlib ]; buildInputs = lib.optionals stdenv.isDarwin [ Security ]; From b51b5a104b719721cabf0c7018da82e02014cbbd Mon Sep 17 00:00:00 2001 From: Masanori Ogino <167209+omasanori@users.noreply.github.com> Date: Thu, 25 Feb 2021 20:09:41 +0900 Subject: [PATCH 7/7] go_1_14, go_1_15: support colon at start of TZ See also: https://github.com/NixOS/nixpkgs/pull/113555 Signed-off-by: Masanori Ogino <167209+omasanori@users.noreply.github.com> --- pkgs/development/compilers/go/1.14.nix | 7 +++++++ pkgs/development/compilers/go/1.15.nix | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/pkgs/development/compilers/go/1.14.nix b/pkgs/development/compilers/go/1.14.nix index 3060e6d4e563..92c1cbdfc18b 100644 --- a/pkgs/development/compilers/go/1.14.nix +++ b/pkgs/development/compilers/go/1.14.nix @@ -150,6 +150,13 @@ stdenv.mkDerivation rec { ./skip-nohup-tests.patch ./go_no_vendor_checks-1_14.patch + # support TZ environment variable starting with colon + (fetchpatch { + name = "tz-support-colon.patch"; + url = "https://github.com/golang/go/commit/58fe2cd4022c77946ce4b598cf3e30ccc8367143.patch"; + sha256 = "0vphwiqrm0qykfj3rfayr65qzk22fksg7qkamvaz0lmf6fqvbd2f"; + }) + # fix rare TestDontCacheBrokenHTTP2Conn failure (fetchpatch { url = "https://github.com/golang/go/commit/ea1437a8cdf6bb3c2d2447833a5d06dbd75f7ae4.patch"; diff --git a/pkgs/development/compilers/go/1.15.nix b/pkgs/development/compilers/go/1.15.nix index 132631040565..4432b1fe895d 100644 --- a/pkgs/development/compilers/go/1.15.nix +++ b/pkgs/development/compilers/go/1.15.nix @@ -158,6 +158,13 @@ stdenv.mkDerivation rec { ./skip-nohup-tests.patch ./skip-cgo-tests-1.15.patch ./go_no_vendor_checks.patch + + # support TZ environment variable starting with colon + (fetchpatch { + name = "tz-support-colon.patch"; + url = "https://github.com/golang/go/commit/58fe2cd4022c77946ce4b598cf3e30ccc8367143.patch"; + sha256 = "0vphwiqrm0qykfj3rfayr65qzk22fksg7qkamvaz0lmf6fqvbd2f"; + }) ] ++ [ # breaks under load: https://github.com/golang/go/issues/25628 (if stdenv.isAarch32