From f0d0e21a5ecb9fdb2c10f240b6e942b8ce93b038 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Sat, 11 Feb 2017 02:39:15 +0800 Subject: [PATCH] neovim-qt: clean up --- pkgs/applications/editors/neovim/qt.nix | 52 ++++++++++++------------- pkgs/top-level/all-packages.nix | 5 +-- 2 files changed, 27 insertions(+), 30 deletions(-) diff --git a/pkgs/applications/editors/neovim/qt.nix b/pkgs/applications/editors/neovim/qt.nix index 07660eaddf6..66c538a1976 100644 --- a/pkgs/applications/editors/neovim/qt.nix +++ b/pkgs/applications/editors/neovim/qt.nix @@ -1,46 +1,46 @@ -{ stdenv, fetchFromGitHub, cmake, qt5, pythonPackages, libmsgpack -, makeWrapper, neovim -}: +{ stdenv, fetchFromGitHub, cmake, doxygen +, libmsgpack, makeWrapper, neovim, pythonPackages, qtbase }: -let # not very usable ATM - version = "0.2.4"; -in -stdenv.mkDerivation { +stdenv.mkDerivation rec { name = "neovim-qt-${version}"; + version = "0.2.4"; src = fetchFromGitHub { - owner = "equalsraf"; - repo = "neovim-qt"; - rev = "v${version}"; + owner = "equalsraf"; + repo = "neovim-qt"; + rev = "v${version}"; sha256 = "0yf9wwkl0lbbj3vyf8hxnlsk7jhk5ggivszyqxply69dbar9ww59"; }; - # It tries to download libmsgpack; let's use ours. - postPatch = let use-msgpack = '' - cmake_minimum_required(VERSION 2.8.11) - project(neovim-qt-deps) - - # Similar enough to FindMsgpack - set(MSGPACK_INCLUDE_DIRS ${libmsgpack}/include PARENT_SCOPE) - set(MSGPACK_LIBRARIES msgpackc PARENT_SCOPE) - ''; - in "echo '${use-msgpack}' > third-party/CMakeLists.txt"; - - buildInputs = with pythonPackages; [ - cmake qt5.qtbase - python msgpack jinja2 libmsgpack - makeWrapper + cmakeFlags = [ + "-DMSGPACK_INCLUDE_DIRS=${libmsgpack}/include" + "-DMSGPACK_LIBRARIES=${libmsgpack}/lib/libmsgpackc.so" ]; + doCheck = false; # 5 out of 7 fail + + buildInputs = with pythonPackages; [ + qtbase libmsgpack + ] ++ (with pythonPackages; [ + jinja2 msgpack python + ]); + + nativeBuildInputs = [ cmake doxygen makeWrapper ]; + enableParallelBuilding = true; + # avoid cmake trying to download libmsgpack + preConfigure = "echo \"\" > third-party/CMakeLists.txt"; + postInstall = '' wrapProgram "$out/bin/nvim-qt" --prefix PATH : "${neovim}/bin" ''; meta = with stdenv.lib; { - description = "A prototype Qt5 GUI for neovim"; + description = "Neovim client library and GUI, in Qt5"; license = licenses.isc; + maintainers = with maintainers; [ peterhoeg ]; inherit (neovim.meta) platforms; + inherit version; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 47535f0ac0a..fdd613e7b3f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15394,10 +15394,7 @@ with pkgs; neovim = callPackage ../applications/editors/neovim { }; - neovim-qt = callPackage ../applications/editors/neovim/qt.nix { - qt5 = qt55; - libmsgpack = libmsgpack_1_4; - }; + neovim-qt = qt5.callPackage ../applications/editors/neovim/qt.nix { }; neovim-pygui = pythonPackages.neovim_gui;