From 1667046505070067884668e0f2b96aab4c193165 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Mon, 7 Nov 2016 15:10:32 +0100 Subject: [PATCH] vim: factor common.nix from {default,configurable}.nix The derivations are unchanged. --- pkgs/applications/editors/vim/common.nix | 23 ++++++++++++ .../applications/editors/vim/configurable.nix | 36 ++++++------------- pkgs/applications/editors/vim/default.nix | 25 +++---------- 3 files changed, 38 insertions(+), 46 deletions(-) create mode 100644 pkgs/applications/editors/vim/common.nix diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix new file mode 100644 index 000000000000..7ceca4a89024 --- /dev/null +++ b/pkgs/applications/editors/vim/common.nix @@ -0,0 +1,23 @@ +{ lib, fetchFromGitHub }: +rec { + version = "8.0.0005"; + + src = fetchFromGitHub { + owner = "vim"; + repo = "vim"; + rev = "v${version}"; + sha256 = "0ys3l3dr43vjad1f096ch1sl3x2ajsqkd03rdn6n812m7j4wipx0"; + }; + + enableParallelBuilding = true; + + hardeningDisable = [ "fortify" ]; + + meta = with lib; { + description = "The most popular clone of the VI editor"; + homepage = http://www.vim.org; + license = licenses.vim; + maintainers = with maintainers; [ lovek323 ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/applications/editors/vim/configurable.nix b/pkgs/applications/editors/vim/configurable.nix index 4ab0ca3f27c9..dc7fa3fa3984 100644 --- a/pkgs/applications/editors/vim/configurable.nix +++ b/pkgs/applications/editors/vim/configurable.nix @@ -1,7 +1,7 @@ # TODO tidy up eg The patchelf code is patching gvim even if you don't build it.. # but I have gvim with python support now :) - Marc -args@{pkgs, source ? "default", fetchurl, fetchFromGitHub, stdenv, ncurses, pkgconfig, gettext -, composableDerivation, lib, config, glib, gtk2, python, perl, tcl, ruby +args@{ source ? "default", callPackage, fetchurl, stdenv, ncurses, pkgconfig, gettext +, composableDerivation, writeText, lib, config, glib, gtk2, python, perl, tcl, ruby , libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu , libICE @@ -11,8 +11,9 @@ args@{pkgs, source ? "default", fetchurl, fetchFromGitHub, stdenv, ncurses, pkgc , ... }: with args; -let inherit (args.composableDerivation) composableDerivation edf; - nixosRuntimepath = pkgs.writeText "nixos-vimrc" '' +let + inherit (args.composableDerivation) composableDerivation edf; + nixosRuntimepath = writeText "nixos-vimrc" '' set nocompatible syntax on @@ -37,25 +38,18 @@ let inherit (args.composableDerivation) composableDerivation edf; source /etc/vim/vimrc endif ''; + + common = callPackage ./common.nix {}; in composableDerivation { } (fix: rec { name = "vim_configurable-${version}"; - version = "8.0.0005"; - enableParallelBuilding = true; # test this + inherit (common) version hardeningDisable enableParallelBuilding meta; - src = - builtins.getAttr source { - "default" = - # latest release - args.fetchFromGitHub { - owner = "vim"; - repo = "vim"; - rev = "v${version}"; - sha256 = "0ys3l3dr43vjad1f096ch1sl3x2ajsqkd03rdn6n812m7j4wipx0"; - }; + src = builtins.getAttr source { + "default" = common.src; # latest release "vim-nox" = { @@ -185,15 +179,5 @@ composableDerivation { ''; dontStrip = 1; - - hardeningDisable = [ "fortify" ]; - - meta = with stdenv.lib; { - description = "The most popular clone of the VI editor"; - homepage = http://www.vim.org; - license = licenses.vim; - maintainers = with maintainers; [ lovek323 ]; - platforms = platforms.unix; - }; }) diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix index 1511b3865792..cf84609921e5 100644 --- a/pkgs/applications/editors/vim/default.nix +++ b/pkgs/applications/editors/vim/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, fetchurl, ncurses, gettext, pkgconfig +{ stdenv, fetchurl, callPackage, ncurses, gettext, pkgconfig # default vimrc , vimrc ? fetchurl { name = "default-vimrc"; @@ -8,18 +8,13 @@ # apple frameworks , Carbon, Cocoa }: +let + common = callPackage ./common.nix {}; +in stdenv.mkDerivation rec { name = "vim-${version}"; - version = "8.0.0005"; - src = fetchFromGitHub { - owner = "vim"; - repo = "vim"; - rev = "v${version}"; - sha256 = "0ys3l3dr43vjad1f096ch1sl3x2ajsqkd03rdn6n812m7j4wipx0"; - }; - - enableParallelBuilding = true; + inherit (common) version src hardeningDisable enableParallelBuilding meta; buildInputs = [ ncurses pkgconfig ] ++ stdenv.lib.optionals stdenv.isDarwin [ Carbon Cocoa ]; @@ -30,8 +25,6 @@ stdenv.mkDerivation rec { "--enable-nls" ]; - hardeningDisable = [ "fortify" ]; - postInstall = '' ln -s $out/bin/vim $out/bin/vi mkdir -p $out/share/vim @@ -62,12 +55,4 @@ stdenv.mkDerivation rec { # patchPhase = '' # sed -i -e 's/as_fn_error.*int32.*/:/' src/auto/configure # ''; - - meta = with stdenv.lib; { - description = "The most popular clone of the VI editor"; - homepage = http://www.vim.org; - license = licenses.vim; - maintainers = with maintainers; [ lovek323 ]; - platforms = platforms.unix; - }; }