From 3dd2a271efff2617a54c3ed63bf3ed212ded77f8 Mon Sep 17 00:00:00 2001 From: Benjamin Staffin Date: Tue, 31 Jan 2017 02:17:11 -0500 Subject: [PATCH 1/2] vim: make it possible to build with --enable-gui=gtk3 This doesn't change any defaults; I suspect that dropping gtk2 support would annoy some people so I didn't want to do that without asking around first. --- pkgs/applications/editors/vim/configurable.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/vim/configurable.nix b/pkgs/applications/editors/vim/configurable.nix index d0a0c63d9d0..ee33c3e3070 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@{ source ? "default", callPackage, fetchurl, stdenv, ncurses, pkgconfig, gettext -, composableDerivation, writeText, lib, config, glib, gtk2, python, perl, tcl, ruby +, composableDerivation, writeText, lib, config, glib, gtk2, gtk3, python, perl, tcl, ruby , libX11, libXext, libSM, libXpm, libXt, libXaw, libXau, libXmu , libICE @@ -69,8 +69,8 @@ composableDerivation { nativeBuildInputs = [ pkgconfig ]; buildInputs - = [ ncurses gtk2 libX11 libXext libSM libXpm libXt libXaw libXau - libXmu glib libICE ]; + = [ ncurses libX11 libXext libSM libXpm libXt libXaw libXau + libXmu glib libICE ] ++ (if args.gui == "gtk3" then [gtk3] else [gtk2]); # most interpreters aren't tested yet.. (see python for example how to do it) flags = { @@ -149,7 +149,7 @@ composableDerivation { ftNixSupport = config.vim.ftNix or true; }; - #--enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gnome/gnome2/motif/athena/neXtaw/photon/carbon + #--enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gtk3/gnome/gnome2/motif/athena/neXtaw/photon/carbon /* // edf "gtk_check" "gtk_check" { } #If auto-select GUI, check for GTK default=yes // edf "gtk2_check" "gtk2_check" { } #If GTK GUI, check for GTK+ 2 default=yes @@ -171,4 +171,3 @@ composableDerivation { dontStrip = 1; }) - From e01c15d433cdaacca0c0525a29ce304b3832d16a Mon Sep 17 00:00:00 2001 From: Benjamin Staffin Date: Tue, 31 Jan 2017 02:36:35 -0500 Subject: [PATCH 2/2] nixos: if gnome3 is installed, build gvim for gtk3 too --- nixos/modules/services/x11/desktop-managers/gnome3.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix index 17e84b1d9a1..21453d1917e 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome3.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix @@ -78,7 +78,7 @@ in { }; debug = mkEnableOption "gnome-session debug messages"; - }; + }; environment.gnome3.packageSet = mkOption { default = null; @@ -86,7 +86,7 @@ in { description = "Which GNOME 3 package set to use."; apply = p: if p == null then pkgs.gnome3 else p; }; - + environment.gnome3.excludePackages = mkOption { default = []; example = literalExample "[ pkgs.gnome3.totem ]"; @@ -125,6 +125,9 @@ in { services.xserver.libinput.enable = mkDefault true; # for controlling touchpad settings via gnome control center services.udev.packages = [ pkgs.gnome3.gnome_settings_daemon ]; + # If gnome3 is installed, build vim for gtk3 too. + nixpkgs.config.vim.gui = "gtk3"; + fonts.fonts = [ pkgs.dejavu_fonts pkgs.cantarell_fonts ]; services.xserver.desktopManager.session = singleton