pkgname=neovim pkgver=0.11.5 pkgdesc="Vim-fork focused on extensibility and agility" homepage="https://neovim.io" license=("Apache-2.0" "vim") bdepends=(luajit gperf gettext glibc) depends=( luajit luv lpeg mpack libutf8proc libuv libvterm msgpack tree-sitter tree-sitter-c tree-sitter-lua tree-sitter-markdown tree-sitter-query tree-sitter-vim tree-sitter-vimdoc unibilium ) sources=("${pkgname}-${pkgver}.tar.gz" "sysinit.vim" "nvimdoc.HOOK" ) urls=("https://github.com/neovim/neovim/archive/v${pkgver}.tar.gz" "sysinit.vim" "nvimdoc.HOOK" ) sha512sums=("1b2bb241261eefd195275e28bb9ebe4102261d61d8b7fe38ccebad7131ccc38d29fae8494d511b4c440ad71ef95dc405a2ba6e98b5d47426f215c8137c8bc91f" "d485765ff5161c2a79f1d0f944588448b94cd7bf8d72ca021312e755f13d241a11c796f117148624a8d66809caebbd747da56367a6805f1d37a4956e112cb325" "657d3a9e872481e04428f86e8412139998de41395f1b050cc79daecaa247d004118fa718246a1ea7e70112b7d84876f2d70a896d7e52a278eefba7c54ea09ba5" ) xdg_environment_reset () { export XDG_DATA_HOME="${HOME}/.local/share"; export XDG_CONFIG_HOME="${HOME}/.config"; export XDG_CACHE_HOME="${HOME}/.cache"; export XDG_STATE_HOME="${HOME}/.local/state"; export XDG_RUNTIME_DIR="${TMPDIR}/run"; mkdir -p "${XDG_DATA_HOME}" "${XDG_CONFIG_HOME}" "${XDG_CACHE_HOME}" "${XDG_STATE_HOME}" "${XDG_RUNTIME_DIR}"; chmod 0700 "${XDG_RUNTIME_DIR}"; unset DBUS_SESSION_BUS_ADDRESS } xdg_environment_reset src_prepare() { tar -xf ${distdir}/${sources[0]} --strip-components=1 # Use our system vim dir sed -e "/^# define SYS_VIMRC_FILE/s|\$VIM|${EPREFIX}/etc/vim|" \ -i src/nvim/globals.h } src_build() { local cmake_args=( -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr # appends -flto -DENABLE_LTO=OFF -DPREFER_LUA=no -DLUA_PRG="/usr/bin/luajit" # bug 906019: fix hardcoded usage of ccache -DCACHE_PRG=OFF ) cmake -B build "${cmake_args[@]}" cmake --build build } src_install() { DESTDIR="$pkgdir" cmake --install build install -vDm644 "${filedir}/sysinit.vim" -t "${pkgdir}/etc/vim/" install -dv "${pkgdir}/usr/share/nvim/runtime/parser" for parser in c lua markdown query vim vimdoc; do ln -vs ../../../../lib/libtree-sitter-${parser}.so "${pkgdir}"/usr/share/nvim/runtime/parser/${parser}.so done ln -vs ../share/nvim/runtime/scripts/less.sh ${pkgdir}/usr/bin/nvimpager leaf_install_hook "${filedir}/nvimdoc.HOOK" } # vim:ft=sh syn=sh et sw=2: