blender: add python3Packages.requests
[julm/julm-nix.git] / homes / softwares / vim.nix
index 5fab94610929a7194ce2a6fdbdb466d3826590d4..224bce82b91c2f7bd5952d827b84a36c14f4bc45 100644 (file)
@@ -1,73 +1,77 @@
-{ pkgs, lib, config, ... }:
+{ pkgs, lib, config, options, ... }:
 let inherit (builtins) readFile; in
 {
-programs.vim = {
-  extraConfig =
-    readFile vim/vimrc
-    #+ readFile home/vim/syntastic.vim
-    #+ readFile home/vim/coc.vim
-    + readFile vim/ale.vim
-    ;
-  # Plugin list:
-  # nix-instantiate -E --eval 'builtins.attrNames (import <nixpkgs> {}).vimPlugins'
-  plugins = [
-    #pkgs.vimPlugins.vim-lsc
-    pkgs.vimPlugins.gitgutter
-    #pkgs.vimPlugins.nvim-yarp
-    #pkgs.vimPlugins.deoplete-nvim
-    #pkgs.vimPlugins.deoplete-lsp
-    #pkgs.vimPlugins.LanguageClient-neovim
-    #pkgs.vimPlugins.fzf-vim
-    #pkgs.vimPlugins.echodoc
-    pkgs.vimPlugins.ale
-    #pkgs.vimPlugins.indentLine
-    #pkgs.vimPlugins.vim-indent-guides
-    #pkgs.vimPlugins.coc-nvim
-    #pkgs.vimPlugins.coc-diagnostic
-    #pkgs.vimPlugins.coc-json
-    #pkgs.vimPlugins.coc-lists
-    pkgs.vimPlugins.easy-align
-    pkgs.vimPlugins.hoogle
-    pkgs.vimPlugins.Recover-vim
-    #pkgs.vimPlugins.syntastic
-    #pkgs.vimPlugins.The_NERD_tree
-    pkgs.vimPlugins.vim-dirvish
-    pkgs.vimPlugins.vim-buffergator
-    pkgs.vimPlugins.vim-markdown
-    pkgs.vimPlugins.vimproc
-    #pkgs.vimPlugins.fugitive
-  ];
-};
-programs.neovim = {
-  extraConfig =
-    readFile neovim/init.vim +
-    readFile vim/ale.vim;
-  plugins = [
-    #pkgs.vimPlugins.vim-lsc
-    pkgs.vimPlugins.gitgutter
-    #pkgs.vimPlugins.nvim-yarp
-    #pkgs.vimPlugins.deoplete-nvim
-    #pkgs.vimPlugins.deoplete-lsp
-    #pkgs.vimPlugins.LanguageClient-neovim
-    #pkgs.vimPlugins.fzf-vim
-    #pkgs.vimPlugins.echodoc
-    pkgs.vimPlugins.ale
-    #pkgs.vimPlugins.indentLine
-    #pkgs.vimPlugins.vim-indent-guides
-    #pkgs.vimPlugins.coc-nvim
-    #pkgs.vimPlugins.coc-diagnostic
-    #pkgs.vimPlugins.coc-json
-    #pkgs.vimPlugins.coc-lists
-    pkgs.vimPlugins.easy-align
-    pkgs.vimPlugins.hoogle
-    pkgs.vimPlugins.Recover-vim
-    #pkgs.vimPlugins.syntastic
-    #pkgs.vimPlugins.The_NERD_tree
-    pkgs.vimPlugins.vim-dirvish
-    pkgs.vimPlugins.vim-buffergator
-    pkgs.vimPlugins.vim-markdown
-    pkgs.vimPlugins.vimproc
-    #pkgs.vimPlugins.fugitive
-  ];
+config = {
+  programs.vim = {
+    extraConfig =
+      readFile vim/vimrc
+      #+ readFile home/vim/syntastic.vim
+      #+ readFile home/vim/coc.vim
+      + readFile vim/ale.vim
+      ;
+    # Plugin list:
+    # nix-instantiate -E --eval 'builtins.attrNames (import <nixpkgs> {}).vimPlugins'
+    plugins = [
+      #pkgs.vimPlugins.vim-lsc
+      pkgs.vimPlugins.gitgutter
+      #pkgs.vimPlugins.nvim-yarp
+      #pkgs.vimPlugins.deoplete-nvim
+      #pkgs.vimPlugins.deoplete-lsp
+      #pkgs.vimPlugins.LanguageClient-neovim
+      #pkgs.vimPlugins.fzf-vim
+      #pkgs.vimPlugins.echodoc
+      pkgs.vimPlugins.ale
+      #pkgs.vimPlugins.indentLine
+      #pkgs.vimPlugins.vim-indent-guides
+      #pkgs.vimPlugins.coc-nvim
+      #pkgs.vimPlugins.coc-diagnostic
+      #pkgs.vimPlugins.coc-json
+      #pkgs.vimPlugins.coc-lists
+      pkgs.vimPlugins.easy-align
+      pkgs.vimPlugins.hoogle
+      pkgs.vimPlugins.Recover-vim
+      #pkgs.vimPlugins.syntastic
+      #pkgs.vimPlugins.The_NERD_tree
+      pkgs.vimPlugins.vim-dirvish
+      pkgs.vimPlugins.vim-buffergator
+      pkgs.vimPlugins.vim-markdown
+      pkgs.vimPlugins.vimproc
+      #pkgs.vimPlugins.fugitive
+    ];
+  };
+  programs.neovim = {
+    extraConfig =
+      readFile neovim/init.vim +
+      readFile vim/ale.vim;
+    plugins = [
+      #pkgs.vimPlugins.vim-lsc
+      pkgs.vimPlugins.gitgutter
+      #pkgs.vimPlugins.nvim-yarp
+      #pkgs.vimPlugins.deoplete-nvim
+      #pkgs.vimPlugins.deoplete-lsp
+      #pkgs.vimPlugins.LanguageClient-neovim
+      #pkgs.vimPlugins.fzf-vim
+      #pkgs.vimPlugins.echodoc
+      pkgs.vimPlugins.ale
+      #pkgs.vimPlugins.indentLine
+      #pkgs.vimPlugins.vim-indent-guides
+      #pkgs.vimPlugins.coc-nvim
+      #pkgs.vimPlugins.coc-diagnostic
+      #pkgs.vimPlugins.coc-json
+      #pkgs.vimPlugins.coc-lists
+      pkgs.vimPlugins.easy-align
+      pkgs.vimPlugins.hoogle
+      pkgs.vimPlugins.Recover-vim
+      #pkgs.vimPlugins.syntastic
+      #pkgs.vimPlugins.The_NERD_tree
+      pkgs.vimPlugins.vim-dirvish
+      pkgs.vimPlugins.vim-buffergator
+      pkgs.vimPlugins.vim-markdown
+      pkgs.vimPlugins.vimproc
+      #pkgs.vimPlugins.fugitive
+    ];
+  };
+} // lib.optionalAttrs (options ? "nixpkgs") {
+  nixpkgs.config.vim.gui = if config.host.desktop then "gtk3" else "";
 };
 }