# Maintainer: Sven-Hendrik Haase # Maintainer: Caleb Maclennan # Contributor: Florian Walch # Contributor: Florian Hahn # ALARM: Kevin Mihelich # - -DENABLE_LTO=OFF pkgname=neovim pkgver=0.7.2 pkgrel=3 pkgdesc='Fork of Vim aiming to improve user experience, plugins, and GUIs' arch=('x86_64') url='https://neovim.io' backup=('etc/xdg/nvim/sysinit.vim') license=('custom:neovim') provides=('vim-plugin-runtime') depends=('libtermkey' 'libuv' 'msgpack-c' 'unibilium' 'libvterm01' 'luajit' 'libluv' 'tree-sitter') makedepends=('cmake' 'ninja' 'lua51-mpack' 'lua51-lpeg' 'gperf' 'patchelf') optdepends=('python-neovim: for Python 3 plugin support (see :help python)' 'xclip: for clipboard support on X11 (or xsel) (see :help clipboard)' 'xsel: for clipboard support on X11 (or xclip) (see :help clipboard)' 'wl-clipboard: for clipboard support on wayland (see :help clipboard)') options=(debug) source=("https://github.com/neovim/neovim/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz") sha512sums=('04d0fa5b23018531b70b53271821bf6944cde1bcec2210b99f5888e1339cd38f57feaa8e40874a3a504930e6614980947f31852185cbcd2ce106a0867896dd79') build() { # Neovim does not support libvterm 0.2 yet export PKG_CONFIG_PATH="/usr/lib/libvterm01/pkgconfig" # Neovim breaks with GCC 12 # https://github.com/neovim/neovim/issues/19125 CFLAGS+=" -fno-strict-aliasing" cmake \ -Bbuild \ -GNinja \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DENABLE_LTO=OFF \ -W no-dev \ -S neovim-$pkgver cmake --build build --verbose } check() { ./build/bin/nvim --version ./build/bin/nvim --headless -u NONE -i NONE -c ':quit' } package() { DESTDIR="$pkgdir" cmake --install build install -Dm644 neovim-$pkgver/LICENSE.txt -t "${pkgdir}/usr/share/licenses/${pkgname}/" install -Dm644 neovim-$pkgver/runtime/nvim.desktop -t "${pkgdir}/usr/share/applications/" install -Dm644 neovim-$pkgver/runtime/nvim.appdata.xml -t "${pkgdir}/usr/share/metainfo/" install -Dm644 neovim-$pkgver/runtime/nvim.png -t "${pkgdir}/usr/share/pixmaps/" # Make Arch vim packages work mkdir -p "${pkgdir}"/etc/xdg/nvim echo "\" This line makes pacman-installed global Arch Linux vim packages work." > "${pkgdir}"/etc/xdg/nvim/sysinit.vim echo "source /usr/share/nvim/archlinux.vim" >> "${pkgdir}"/etc/xdg/nvim/sysinit.vim mkdir -p "${pkgdir}"/usr/share/vim echo "set runtimepath+=/usr/share/vim/vimfiles" > "${pkgdir}"/usr/share/nvim/archlinux.vim # NOTE: this is very ugly and needs to be removed as soon as neovim supports libvterm >= 0.2.0 # (both libvterm01 and libvterm provide libvterm.so.0) patchelf --add-rpath '/usr/lib/libvterm01' "$pkgdir/usr/bin/nvim" } # vim:set ft=sh sw=2 sts=2 et: