Fix up the macvim package to build again, with the latest snapshot. The
patchfile has been recreated by manually reapplying all of the changes
from the old patchfile, and the other changes in here were figured out
by trial and error (such as the need to unset `LD`).
Also tweak the package to use python37 by default, and add an option to
go back to python27 if desired.
Disable Sparkle so the user isn't prompted to update a readonly package.
Whenever we create scripts that are installed to $out, we must use runtimeShell
in order to get the shell that can be executed on the machine we create the
package for. This is relevant for cross-compiling. The only use case for
stdenv.shell are scripts that are executed as part of the build system.
Usages in checkPhase are borderline however to decrease the likelyhood
of people copying the wrong examples, I decided to use runtimeShell as well.
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_NSArray", referenced from:
objc-class-ref in os_macosx.o
ld: symbol(s) not found for architecture x86_64
Using gtk + darwin support seems broken at the moment, we probably want
guiSupport = "carbon" instead but that doesn't work and something like
macvim is probably better for that. This fixes the build while keeping
guiSupport enabled which might be desirable for eg. +clientserver.
Fixes#45025
As suggested by @jtojnar in GitHub issue #44580, this patch adds the
package `wrapGAppsHook` to the dependencies (specifically, the
`nativeBuildInputs`) of `vim_configurable`, when `vim_configurable` is
built against GTK 3.
This change prevents GVim from crashing if one tries to use its
file-choosing dialog, and fixes a warning that otherwise might be
emitted if one tries to use its find/replace dialog.
Use `stdenv.mkDerivation` directly instead of `composableDerivation`.
Some configure flags may have changed as the conversion wasn't exactly
straightforward.
Use `stdenv.mkDerivation` directly instead of `composableDerivation`.
Some configure flags may have changed as the conversion wasn't exactly
straightforward.
It seems as Python will be fetched from $PATH in Vim 8.1:
```
stat("/home/ma27/bin/python", 0x7ffe57a317b0) = -1 ENOENT (No such file or directory)
stat("/run/wrappers/bin/python", 0x7ffe57a317b0) = -1 ENOENT (No such file or directory)
stat("/home/ma27/.nix-profile/bin/python", 0x7ffe57a317b0) = -1 ENOENT (No such file or directory)
stat("/nix/var/nix/profiles/default/bin/python", 0x7ffe57a317b0) = -1 ENOENT (No such file or directory)
stat("/run/current-system/sw/bin/python", {st_mode=S_IFREG|0555, st_size=291, ...}) = 0
readlink("/run/current-system/sw/bin/python", "/nix/store/ggjkqbvwnv7dflkmdgmmp"..., 4096) = 72
```
This breaks in cases where you want to use a modified Python derivation
for the VIM plugins you use in `vim_configurable`:
```
let
vim_configurable' = vim_configurable.override {
# python with modules for ensime
python = python.withPackages (ps: with ps; [ sexpdata websocket_client ]);
};
in
vim_configurable'.customize {
# ...
}
```
With VIM 8.0 this worked perfectly fine, now it's necessary to install
the modified `python` in $PATH to actually use it, otherwise an error
like this arises:
```
[ensime] A dependency is missing, please `pip2 install sexpdata websocket-client` and restart Vim.
Press ENTER or type command to continue
```
However it should be possible to pass the modified Python to the
modules, the easiest workaround is to write a wrapper which prefixes
$PATH to have the Python derivation available.
* Never modify tabstop. This causes incompatibilities with other
utilities that expect tabs to always be 8 spaces.
* Add standard boilerplate for system-level filetype plugins.
Semi-automatic update generated by https://github.com/ryantm/nix-update tools.
This update was made based on information from https://repology.org/metapackage/vim/versions.
These checks were done:
- built on NixOS
- ran `/nix/store/j6w96w36f0naab7fffqri1cmspaa3mnb-vim-8.0.1655/bin/vim -h` got 0 exit code
- ran `/nix/store/j6w96w36f0naab7fffqri1cmspaa3mnb-vim-8.0.1655/bin/vim --help` got 0 exit code
- ran `/nix/store/j6w96w36f0naab7fffqri1cmspaa3mnb-vim-8.0.1655/bin/vim --version` and found version 8.0.1655
- found 8.0.1655 with grep in /nix/store/j6w96w36f0naab7fffqri1cmspaa3mnb-vim-8.0.1655
- directory tree listing: https://gist.github.com/b65f9cb4045c205c8c3ee68503c42596
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/5afa788kqasx65plvzwjnffq9ihzdbmn-vim-8.0.1605/bin/vim -h` got 0 exit code
- ran `/nix/store/5afa788kqasx65plvzwjnffq9ihzdbmn-vim-8.0.1605/bin/vim --help` got 0 exit code
- ran `/nix/store/5afa788kqasx65plvzwjnffq9ihzdbmn-vim-8.0.1605/bin/vim --version` and found version 8.0.1605
- found 8.0.1605 with grep in /nix/store/5afa788kqasx65plvzwjnffq9ihzdbmn-vim-8.0.1605
- directory tree listing: https://gist.github.com/f9af564ba8cc53b90d1d262c2e786eee
* remove EOL ruby versions for security and maintenance reasons.
* only expose ruby_MAJOR_MINOR to the top-level. we don't provide
guarantees for the TINY version.
* mark all related packages as broken
* switch the default ruby version from 2.3.x to 2.4.x
This update contains a lot of fixes that are too much to be summarized
here, so here is the upstream changelog (basically "git log"):
https://github.com/vim/vim/commits/v8.0.1250
The main reason for this bump is that I got annoyed by a bug that was
fixed in upstream version 8.0.1194, which caused a race condition during
vim startup when it's trying to retrieve background colors from the
terminal.
Sometimes it could happen that random commands are executed at Vim
startup (typically pasting the "" buffer) and after bisecting I've found
out that version 8.0.1194 indeed fixed this problem.
The reason why I'm updating to version 8.0.1250 is that when looking
through the Git log it contains a whole lot of fixes but no new
features, so I'd assume it's safe to upgrade.
I've tested all packages that depend on Vim and they still succeed
building. In addition to that I've used the new version for a couple of
hours without any issue.
Signed-off-by: aszlig <aszlig@nix.build>
Cc: @lovek323, @LnL7, @vaibhavsagar
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.
- fix wrongly used *native* build inputs;
- remove confusing `prePatch = "cd src";` ;
- adapt RPATH handling to multiple-output changes;
- don't list full compiler flags in vim --version,
as that would keep references to -dev paths.
Together, the closure of the default feature-set drops almost by 100 MB.
The lean vim attribute would *not* lose any references due to patching
--version, so we only apply it for vim_configurable.
In the [discussion](https://github.com/NixOS/nixpkgs/pull/18801) of this pull
request @LnL7 was unable to complete a darwin build because the
python_framework.patch does not apply and suggests it should be removed.
Instead of explicitly stating "I want version 3" or "I want version 2"
you now simply specify what the python argument will be, and
vim_configurable will set up the flags for you. config.vim.python must
be set, still.
In 6f08fdd26, I left in a typo after copying from my `~/.nixpkgs/config`.
I would normally test this out locally, but I'm fixing up my conf locally,
and, in the interest of not forgetting to push this change up, made the edit
through GitHub's UI.
Oops.