Re: [Nix-dev] Overriding python with python3 in vim_configurable.customize

2017-04-04 Thread Ben Zhang
Thanks everyone for your input! I ended up using zimbatm’s method and made a 
python3 version of `vim_configurable` using `vimUtils.makeCustomizable`. Now 
it’s working great!

My current `vim-config/default.nix`:

```
{ pkgs }:

let
  my_plugins = import ./plugins.nix { inherit (pkgs) vimUtils fetchFromGitHub; 
};
  configurable_nix_path = 
"${}/pkgs/applications/editors/vim/configurable.nix";
  my_vim_configurable = with pkgs; vimUtils.makeCustomizable (callPackage 
configurable_nix_path {
    inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Foundation 
CoreData;
    inherit (darwin) libobjc cf-private;

    features = "huge"; # one of  tiny, small, normal, big or huge
    lua = pkgs.lua5_1;
    gui = config.vim.gui or "auto";
    python = python3;

    # optional features by flags
    flags = [ "python" "X11" ];
  });

in with pkgs; my_vim_configurable.customize {
  name = "vim";
  vimrcConfig = {
    customRC = ''
      syntax on
      “...
    '';

    vam.knownPlugins = vimPlugins // my_plugins;
    vam.pluginDictionaries = [
      { names = [
        "ctrlp"
        # ...
      ]; }
    ];
  };
}
```

Ben

On Apr 4, 2017, 8:08 PM -0400, Rok Garbas , wrote:
> Maybe give neovim a try. It is can be configured very similarly and I can 
> confirm that python3 and python support work.
>
> -- garbas
>
> > On 04 April 2017 at 21:42 Linus Heckemann  
> > wrote:src/releng_slavehealth/releng_slavehealth/__init__.py
> >
> >
> > On 04/04/17 17:40, zimbatm wrote:
> > > Look into pkgs/top-level/all-packages.nix. I would start by copying the
> > > definition of vim_configurable from there and set the python argument.
> > >
> > >
> > > On Tue, 4 Apr 2017, 14:08 Ben Zhang,  > > > wrote:
> > >
> > > From the source code, it doesn’t seem to accept a python argument
> > > (https://github.com/nicknovitski/nixpkgs/blob/master/pkgs/misc/vim-plugins/vim-utils.nix#L291-L295).
> > > Is there another way to override `python` with `python3`
> > > (https://github.com/NixOS/nixpkgs/pull/8125#issuecomment-169471686)?
> > >
> >
> >
> > Another potential option would be using package overrides [1] to pass
> > python3 as python to the vim package — something like
> >
> > packageOverrides = pkgs: {
> > vim = pkgs.vim.override { python = pkgs.python3 };
> > };
> >
> > [1]: https://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides
> >
> >
> > ___
> > nix-dev mailing list
> > nix-dev@lists.science.uu.nl
> > http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
> -- Rok Garbas, https://garbas.si
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Overriding python with python3 in vim_configurable.customize

2017-04-04 Thread Linus Heckemann
On 04/04/17 17:40, zimbatm wrote:
> Look into pkgs/top-level/all-packages.nix. I would start by copying the
> definition of vim_configurable from there and set the python argument.
> 
> 
> On Tue, 4 Apr 2017, 14:08 Ben Zhang,  > wrote:
> 
> From the source code, it doesn’t seem to accept a python argument
> 
> (https://github.com/nicknovitski/nixpkgs/blob/master/pkgs/misc/vim-plugins/vim-utils.nix#L291-L295).
> Is there another way to override `python` with `python3`
> (https://github.com/NixOS/nixpkgs/pull/8125#issuecomment-169471686)?
> 


Another potential option would be using package overrides [1] to pass
python3 as python to the vim package — something like

   packageOverrides = pkgs: {
  vim = pkgs.vim.override { python = pkgs.python3 };
   };

[1]: https://nixos.org/nixpkgs/manual/#sec-modify-via-packageOverrides


___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Overriding python with python3 in vim_configurable.customize

2017-04-04 Thread zimbatm
Look into pkgs/top-level/all-packages.nix. I would start by copying the
definition of vim_configurable from there and set the python argument.

On Tue, 4 Apr 2017, 14:08 Ben Zhang,  wrote:

> From the source code, it doesn’t seem to accept a python argument (
> https://github.com/nicknovitski/nixpkgs/blob/master/pkgs/misc/vim-plugins/vim-utils.nix#L291-L295).
> Is there another way to override `python` with `python3` (
> https://github.com/NixOS/nixpkgs/pull/8125#issuecomment-169471686)?
>
> Thanks,
>
> Ben
>
> On Apr 4, 2017, 4:02 AM -0400, zimbatm , wrote:
>
> The "with" keyword binds the designated attrset pairs into scope. It
> doesn't override other called function variables though.
>
> Do you know if the customise function accepts a python argument as an
> input?
>
> On Tue, 4 Apr 2017, 06:04 Ben Zhang,  wrote:
>
> Hello everyone,
>
> I am following [this](
> https://github.com/kamilchm/.nixpkgs/blob/master/vim-config/default.nix)
> template for configuring my custom vim with Nix. My
> `vim-config/default.nix` is as follows:
>
> { pkgs }:
>
> let
>   my_plugins = import ./plugins.nix { inherit (pkgs) vimUtils
> fetchFromGitHub; };
> in with (pkgs // { python = pkgs.python3; });
> vim_configurable.customize {
>   name = "vim";
>   vimrcConfig = {
> customRC = ''
>   syntax on
>   filetype on
>   " ...
> '';
>
> vam.knownPlugins = vimPlugins // my_plugins;
> vam.pluginDictionaries = [
>   { names = [
> "ctrlp"
> # ...
>   ]; }
> ];
>   };
> }
>
> Although there is a `(pkgs // { python = pkgs.python3; })` override on
> line 5, python3 is still not used (when I run `vim --version` it shows
> `+python -python3`). Am I missing anything?
>
> Thanks,
>
> Ben
>
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Overriding python with python3 in vim_configurable.customize

2017-04-04 Thread Ben Zhang
From the source code, it doesn’t seem to accept a python argument 
(https://github.com/nicknovitski/nixpkgs/blob/master/pkgs/misc/vim-plugins/vim-utils.nix#L291-L295).
 Is there another way to override `python` with `python3` 
(https://github.com/NixOS/nixpkgs/pull/8125#issuecomment-169471686)?

Thanks,

Ben

On Apr 4, 2017, 4:02 AM -0400, zimbatm , wrote:
> The "with" keyword binds the designated attrset pairs into scope. It doesn't 
> override other called function variables though.
> Do you know if the customise function accepts a python argument as an input?
>
> > On Tue, 4 Apr 2017, 06:04 Ben Zhang,  wrote:
> > > Hello everyone,
> > >
> > > I am following 
> > > [this](https://github.com/kamilchm/.nixpkgs/blob/master/vim-config/default.nix)
> > >  template for configuring my custom vim with Nix. My 
> > > `vim-config/default.nix` is as follows:
> > >
> > >     { pkgs }:
> > >
> > >     let
> > >       my_plugins = import ./plugins.nix { inherit (pkgs) vimUtils 
> > > fetchFromGitHub; };
> > >     in with (pkgs // { python = pkgs.python3; }); 
> > > vim_configurable.customize {
> > >       name = "vim";
> > >       vimrcConfig = {
> > >         customRC = ''
> > >           syntax on
> > >           filetype on
> > >           " ...
> > >         '';
> > >
> > >         vam.knownPlugins = vimPlugins // my_plugins;
> > >         vam.pluginDictionaries = [
> > >           { names = [
> > >             "ctrlp"
> > >             # ...
> > >           ]; }
> > >         ];
> > >       };
> > >     }
> > >
> > > Although there is a `(pkgs // { python = pkgs.python3; })` override on 
> > > line 5, python3 is still not used (when I run `vim --version` it shows 
> > > `+python -python3`). Am I missing anything?
> > >
> > > Thanks,
> > >
> > > Ben
> > >
> > > ___
> > > nix-dev mailing list
> > > nix-dev@lists.science.uu.nl
> > > http://lists.science.uu.nl/mailman/listinfo/nix-dev
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Overriding python with python3 in vim_configurable.customize

2017-04-04 Thread zimbatm
The "with" keyword binds the designated attrset pairs into scope. It
doesn't override other called function variables though.

Do you know if the customise function accepts a python argument as an input?

On Tue, 4 Apr 2017, 06:04 Ben Zhang,  wrote:

> Hello everyone,
>
> I am following [this](
> https://github.com/kamilchm/.nixpkgs/blob/master/vim-config/default.nix)
> template for configuring my custom vim with Nix. My
> `vim-config/default.nix` is as follows:
>
> { pkgs }:
>
> let
>   my_plugins = import ./plugins.nix { inherit (pkgs) vimUtils
> fetchFromGitHub; };
> in with (pkgs // { python = pkgs.python3; });
> vim_configurable.customize {
>   name = "vim";
>   vimrcConfig = {
> customRC = ''
>   syntax on
>   filetype on
>   " ...
> '';
>
> vam.knownPlugins = vimPlugins // my_plugins;
> vam.pluginDictionaries = [
>   { names = [
> "ctrlp"
> # ...
>   ]; }
> ];
>   };
> }
>
> Although there is a `(pkgs // { python = pkgs.python3; })` override on
> line 5, python3 is still not used (when I run `vim --version` it shows
> `+python -python3`). Am I missing anything?
>
> Thanks,
>
> Ben
>
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev