Package Details: neovim-nightly-git 0.5.0.r955.gd918759de-1

Git Clone URL: https://mpr.hunterwittenborn.com/neovim-nightly-git.git (read-only, click to copy)
Package Base: neovim-nightly-git
Description: Fork of Vim aiming to improve user experience, plugins, and GUIs.
Upstream URL: https://github.com/neovim/neovim
Licenses: custom:neovim
Conflicts: neovim, neovim-git, neovim-bin
Provides: neovim
Submitter: alfador
Maintainer: None
Last Packager: alfador
Votes: 0
Popularity: 0.000000
First Submitted: 2021-10-27 22:57
Last Updated: 2021-10-27 22:57

Dependencies (25)

  • libtermkey-dev
  • gperf
  • luajit
  • libluajit-5.1-dev
  • lua-mpack
  • lua-lpeg
  • libunibilium-dev
  • libmsgpack-dev
  • git (make)
  • ninja-build (make)
  • gettext (make)
  • libtool (make)
  • libtool-bin (make)
  • autoconf (make)
  • automake (make)
  • cmake (make)
  • g++ (make)
  • pkg-config (make)
  • doxygen (make)
  • python3-neovim (optional) – for Python 3 plugin support (see :help provider-python)
  • python2-neovim (optional) – for Python 2 plugin support (see :help provider-python)
  • ruby-neovim (optional) – for Ruby plugin support (see :help provider-ruby)
  • xclip (optional) – for clipboard support (or xsel) (see :help provider-clipboard)
  • xsel (optional) – for clipboard support (or xclip) (see :help provider-clipboard)
  • wl-clipboard (optional) – for clipboard support on wayland (see :help clipboard)

Required by (0)

Sources (1)

Latest Comments

alfador commented on 2021-11-08 13:20

@hwittenborn by all means, please go ahead and delete this package.

hwittenborn commented on 2021-11-08 03:58

@alfador are we good to delete this package then, or does more need to be done still?

only_vip commented on 2021-11-05 17:57

I would be glad to add you as a comaintainer. You won't be able to delete it though. Let's see how it all comes about.

alfador commented on 2021-11-05 12:41

@only_vip maybe it would be a good idea to add me as a co-maintainer to your package. I am going to look into submission of global vim plugins (e.g nvim-packer-git) to mpr; the pkgbuild in Aur had a little bit more stuff in release() function to make sure plugins installed from aur would work ; I will experiment with it and see if we would need to include those on debian or not and I would push it to neovim-git package if you give me access.

alfador commented on 2021-11-05 12:36 (edited on 2021-11-05 12:54 by alfador)

@only_vip

  • Regarding aarch64 builds, there are no real resources. It's more of a trial and error approach. Here is a job log of a failed build on arm64 when -DENABLE_JEMALLOC=FALSE is not part of your cmake flags (CMAKE_EXTRA_FLAGS environment variable). if you look at the source Dockerfile, you would notice that this image is based on Alpine, thus linking the binary against musl ; that may be the reason why disabling jemalloc fixed the problem; I am not sure if that problem would exist when linking against glibc, i.e building for Debian based distros.
  • Regarding item 2 that you brought up, you are not doing anything wrong per say. if you look at my PKGBUILD file, I am also building with make. the difference is how optimized our build binaries are. Essentially, to make production binaries, you have to set the optimization level, which is where CMAKE_BUILD_TYPE environment variable comes into play. Neovim recommends setting CMAKE_BUILD_TYPE to Release or RelWithDebInfo for production release. I am using Release as it produces most optimal binaries.There is a good StackOverflow page explaining the differences.
  • regarding item 3 that you brought up, you are right, it really isn't needed. I just think it would be good practice to run basic tests to detect edge case problems, such as missing libraries or problem with linking which is extremely rare and probably will never happen but better safe than sorry
  • --version invocation is to detect any base issues that might occur, even before loading the runtime and other pieces of neovim
  • launching neovim in headless mode forces it to load all components, if there are any problems, that is when it will be detected.
  • regarding item 4 that you brought up, I think the way you set pkg version is much much nicer. My method sucks, it has been copied from aur and I didn't do much research on it. I also want bring to your attention the value in front of Build type; neovim-git is Debug while neovim-nightly-git is Release. UPDATE: in case you want nvim --version to show Compilation flags ( like the original output of neovim-git that you shared ), use RelWithDebInfo.
  • there are more optimizations we can do,for instance, in CFLAGS we might be able to set -mtune=native to build ensure gcc optimizes the code for the CPU of the machine running the build; there are edge cases here though, for instance , you can't use -mtune=native in docker images, since people will run the image on different CPUs; for instance if the docker image was built on Intel CPU, nvim binary won't run on a machine with AMD CPU since the code was optimized for intel.
  • your new PKGBUILD looks solid, I am gonna remove this package then in favor of yours.

only_vip commented on 2021-11-05 06:11 (edited on 2021-11-05 07:30 by only_vip)

  1. any source to read more on that?
  2. i have used make which fetches lua deps from source and builds them during build process.
  3. so check wasn't needed however adding it won't be difficult.
  4. neovim-git nvim --version gives while neovim-nightly-git nvim --version gives
  5. however, i would welcome the merge. as both are inherently the same package. after sorting point 4 out.
  6. all of the stuff could have been submitted in the other package. thats different from this one.
  7. heres my PKGBUILD modified. i dont find the inclusion of sysinit and debian.vim so i skipped it.

alfador commented on 2021-11-01 17:57 (edited on 2021-11-01 17:59 by alfador)

@hwittenborn There are a bunch of differences between this and neovim-git:

  • to build neovim from source properly for production release, you have to use CMAKE_BUILD_TYPE and set it to Release or RelWithDebInfo .
  • Building neovim for aarch64 architecture is a bit tricky. My memory is foggy but I believe it would fail without disabling jemalloc.
  • I was planning on submitting a bunch of Vim plugins to MPR. looking at the aur package for inspiration, it looks like the following lines are required for global packages to work
  • the other package does not have a check() function. I think of it as good practice to always include check() functions.

Maybe we can just merge this into neovim-git package.

hwittenborn commented on 2021-10-31 23:28

Does this package serve any different purpose from the neovim-git package?