Commit Graph

212 Commits

Author SHA1 Message Date
Matthieu Coudron
83f6711464 neovim.tests: added more tests
to check for creation of vi/vim aliases.
These tests also now follow the coding conventions of having tests in
passthru.test .
2021-06-09 21:45:25 +02:00
Matthieu Coudron
4a2cbcfbb4 neovim: add some tests
To test the generated RC is included in the file and that we have the
option not to wrap the RC.

run:
nix-build -A tests.vim
2021-06-07 18:21:21 +02:00
Nicolas Berbiche
fbe60d186b
neovim: always generate rplugin.vim (#124990) 2021-05-31 00:05:51 +02:00
Matthieu Coudron
c73371e04b
neovim: fix neovim.override (#124785)
* neovim: temporary revert to unbreak user configs

Newly introduced "plugins" parameter is disabled until we get a better
testing infrastructure to minimize breaking changes.
2021-05-29 16:36:39 +02:00
Matthieu Coudron
4a860879ea wrapNeovimUnstable: accept a wrapRc boolean
additional argument not generated by makeNeovimConfig
If true (the default), appends "-u <customRc>" to the wrapped arguments.
Set to false if you want to control where to save the generated config
(e.g., in ~/.config/init.vim or project/.nvimrc)
2021-05-25 22:41:08 +02:00
Matthieu Coudron
7836469dbe neovimUtils: makeNeovimConfig accepts plugins/customRc
mimics home-manager interface and makes it easier to associate configs with plugins. Added a test as well.
2021-05-25 22:41:08 +02:00
Matthieu Coudron
a793aacf9d neovim: accepts an extraName to distinguish between wrappers
especially useful to distinguish between the different neovim generated during the tests
2021-05-25 22:41:07 +02:00
Christian Kögler
555afaa94e neovide: Fix build caused by llvm multi output 2021-05-23 14:34:13 +02:00
github-actions[bot]
9911b1c75b
Merge staging-next into staging 2021-05-16 01:01:01 +00:00
Christian Kögler
0935f7d7dd neovide: Separate skia externals 2021-05-15 13:27:34 +02:00
Christian Kögler
5067ba8444 neovide: Install icons and desktop files 2021-05-15 10:11:54 +02:00
Christian Kögler
a0bc1ab480 neovide: ba42855 -> 0b976c3
Simplify packaging, since upstream applied proposed pull request.
2021-05-15 08:19:54 +02:00
Christian Kögler
428edf7fe0 neovide: init at ba42855 2021-05-14 18:53:15 +02:00
Daniël de Kok
85f96822a0 treewide: fix cargoSha256/cargoHash
Rust 1.50.0 incorporated a Cargo change (rust-lang/cargo#8937) in
which cargo vendor erroneously changed permissions of vendored
crates. This was fixed in Rust
1.51.0 (rust-lang/cargo#9131). Unfortunately, this means that all
cargoSha256/cargoHashes produced during the Rust 1.50.0 cycle are
potentially broken.

This change updates cargoSha256/cargoHash tree-wide.

Fixes #121994.
2021-05-08 00:36:37 -07:00
Konstantin Alekseev
e349b77943 neovim: set g:loaded_python_provider = 0 2021-05-05 18:04:09 +02:00
Martin Weinelt
d942d4473d neovim, neovimUtils, neovim-qt: drop python2 support
In 2a00e53bd pynvim support for python2 was disabled, this broke the
neovim build. I really think it is time to let go of python2 support in
neovim.
2021-05-02 22:43:53 +02:00
Ana Hobden
c9ab377ebc neovim: set meta.mainProgram
Signed-off-by: Ana Hobden <operator@hoverbear.org>
2021-04-26 07:13:22 -07:00
Matthieu Coudron
b3abdc9534
tests.vim: init (moved from vim-utils.nix) (#119467)
* tests.vim: init (moved from vim-utils.nix)

Moved tests from pkgs/misc/vim-plugins/vim-utils.nix to pkgs/test/vim.
Also reduced the amount of generated config:
- Make it possible to have an empty config when configured adequately
- removed default vim config when using native packages, it could be
  source of bugs see linked issues (syntax on overrides vim highlights)

Things to watch out for:
- if you set configure.beforePlugins yourself, you will need to add set nocompatible too not to lose it
- filetype indent plugin on | syn on is not enabled anymore by default for the vim-plug installer: I dont think we should override vim defualts, at least not here since it is shared with neovim. Also sometimes it's enabled before plugins (pathogen etc,) which is not consistent.


you can run the tests via
$ nix-build -A tests.vim
2021-04-21 12:55:05 +02:00
Ben Siraphob
7d97e284e8 treewide: remove redundant stdenv 2021-03-26 12:18:16 +07:00
Matthieu Coudron
3a25004f2b neovim-qt-unwrapped: init at 2.16.1
more like a refactoring. It was already available but via neovim-qt.passthru.unwrapped

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2021-03-22 10:31:26 +01:00
Minijackson
de6283bebf gnvim: fix install phase with Rust with custom target 2021-03-06 22:02:30 +01:00
Ben Siraphob
e03c068af5 treewide: makeWrapper buildInputs to nativeBuildInputs 2021-02-19 20:09:16 +07:00
Pavol Rusnak
a6ce00c50c
treewide: remove stdenv where not needed 2021-01-25 18:31:47 +01:00
Jonathan Ringer
9bb3fccb5b treewide: pkgs.pkgconfig -> pkgs.pkg-config, move pkgconfig to alias.nix
continuation of #109595

pkgconfig was aliased in 2018, however, it remained in
all-packages.nix due to its wide usage. This cleans
up the remaining references to pkgs.pkgsconfig and
moves the entry to aliases.nix.

python3Packages.pkgconfig remained unchanged because
it's the canonical name of the upstream package
on pypi.
2021-01-19 01:16:25 -08:00
Ben Siraphob
badf51221d treewide: stdenv.lib -> lib 2021-01-16 17:58:11 +07:00
Profpatsch
4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00
Ben Siraphob
3ae5e6ce03 treewide: remove enableParallelBuilding = true if using cmake 2021-01-03 18:37:40 +07:00
Klemens Nanni
e0f258f596
neovim: Do $PATH lookup in neovim.desktop instead of hardcoding derivation
See db236e588d "steam: Do $PATH lookup in steam.desktop [...]".
tl;dr: Otherwise widget/panel/desktop icons in DEs like KDE break.

Simply stop adding the full derivation path for neovim and stick with
how upstream uses no path at all.

While here, take care of gnvim.desktop as well by adjusting the sed(1)
expression (and simplifying it in one go);  I do not use gnvim.desktop
but built it and confirmed the resulting files to contain no full paths
any longer.
2020-11-05 11:41:53 +01:00
Matthieu Coudron
86d7ed8d10 neovim: take into account vi(m)Alias
restore feature broken by compatibility layer
2020-11-03 09:31:56 +01:00
Matthieu Coudron
42cc40ddc8 neovim: fix nodejs and ruby generation
These were not translated correctly in the new wrapper.
2020-11-02 23:27:49 +01:00
Matthieu Coudron
295948f40f neovim: dont wrap when is null
restore previous behavior
2020-11-01 18:55:57 +01:00
Matthieu Coudron
95702fe6d2 neovim: revert change to extraMakeWrapperArgs
wrapNeovim incited users to use a list instead of a string. Revert that:
the change is not super useful while breaking home-manager.
2020-10-31 14:32:02 +01:00
Matthieu Coudron
2eb1610725
neovimUtils: neovim utilities to handle more usecases
Current nixpkgs always wraps neovim with the "-u" which has sideeffects as explained in https://github.com/NixOS/nixpkgs/issues/55376 : 
1.  vim won't set the variable $MYVIMRC as explained #34215
 2. vim skips loading folder-specific .vimrc / .nvimrc

I wanted to provide a way for users to better control what flags are used to wrap neovim. This is achived by introducing wrapNeovimUnstable et neovimUtils, utilities to help with that. We provide a compatibility layer so that wrapNeovim still works and to let us experiment with wrapNeovimUnstable to better control neovim configuration, plugin dependencies, haskell environment etc so that it becomes easier to generate per-project neovim config.

With this commit, it's possible for instance for home-manager to wrap neovim without the `-u` and just write the config in the
expected $XDG_CONFIG_HOME/nvim/init.vim .
Expect wrapNeovimUnstable interface to evolve in the upcoming months.
2020-10-29 09:50:26 +01:00
Matthieu Coudron
4c4c4874c4
neovim: add config to passthru (#101100)
first will register the config under the name init.vim which is more
appropriate for neovim.
Pass the generated config to passthru so that one can easily pass the
current config to a
raw/unwrapped neovim (helps with development).

For instance, home-manager can reference the config in $XDG_CONFIG_HOME/nvim/init.vim
without the need to wrap nvim with its config.
2020-10-20 12:26:39 +02:00
Viacheslav Lotsmanov
897d92c854 neovim-qt: 0.2.15 -> 0.2.16.1 2020-10-03 19:12:57 +02:00
Kevin Cox
599089ed1d
neovim-qt: Add homepage 2020-08-31 07:19:40 -04:00
Sirio Balmelli
0f1434cb2a
neovim: fix build on Darwin
libluv path passed to -DLIBLUV_LIBRARY broken by change in libluv, eg:
libluv.dylib -> libluv.1.30.0.dylib

Signed-off-by: Sirio Balmelli <sirio@b-ad.ch>
2020-08-14 23:29:31 +02:00
Konstantin Alekseev
f9a5d8539d neovim: fix node neovim binary link 2020-08-12 13:59:02 -07:00
Maximilian Bosch
71ca3bf31d
Merge pull request #94705 from yoctocell/neovim-0.4.4
neovim: 0.4.3 -> 0.4.4
2020-08-05 22:20:03 +02:00
yoctocell
7f137849e8 neovim: 0.4.3 -> 0.4.4 2020-08-05 10:22:53 +02:00
Doron Behar
c63b5c4c36 wrapNeovim: fix darwin build 2020-08-04 09:14:09 +03:00
Doron Behar
85f6da6eed wrapNeovim: Rewrite
Cleanups:
- Removed unneeded neovim.meta.description reset.
- Remove unnecessary -x checks in `postBuild`.
- Use a ${placeholder "out"} if needed.

Changes:
- Switch to symlinkJoin, so e.g manpages link to the environment (#87929).
- Use nvim-node from $out/bin/ just like all other providers.
- Compute all arguments to makeWrapper in pure Nix "before" `postBuild`.
- Prevent double wrapping in case `configure != {}` and rplugin.vim
  needs to be generated.

Co-authored-by: Silvan Mosberger <contact@infinisil.com>
2020-07-31 20:39:12 +03:00
Minijackson
1e02256cac
gnvim: 0.1.5 -> 0.1.6 2020-07-08 23:03:42 +02:00
Frederik Rietdijk
d0532e79ae Merge staging-next into staging 2020-06-07 09:25:46 +02:00
Matthieu Coudron
b4c7a0b762 neovim-unwrapped: improve testing ability
Make functionaltests more complete.
2020-06-06 20:21:17 +02:00
Maximilian Bosch
068beb2c07
gnvim: fix build
When running the default builder for Rust, the artifacts would be stored
in `target/<arch>/<profile>`, however the `install`-target expects the
default structure (`target/<profile>`) of `cargo`-builds.

When using the Makefile for building as well, the expected structure is
created instead.
2020-05-13 22:19:47 +02:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
Michael Fellinger
f92600b406
update versions in Gemfile.lock 2020-04-06 15:02:13 +02:00
Ersin Akinci
588ca6e310
neovim: use TMPDIR as home during initilizaiton 2020-03-15 12:55:06 +00:00
Benjamin Hipple
fa353a0f0a
gnvim: upgrade cargo fetcher and cargoSha256 (#82015) 2020-03-08 19:19:41 -04:00