commit 122cd82161cfc69dcf34c0b043ddde78c5b42e00 Author: EnumDev Date: Tue Dec 30 21:07:38 2025 +0200 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3e58e5f --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Exclude bpm archives +*.bpm \ No newline at end of file diff --git a/check-version.sh b/check-version.sh new file mode 100644 index 0000000..0f34c8f --- /dev/null +++ b/check-version.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +# Github repository +REPO="neovim/neovim" + +# Get tag name using Github Rest API +TAG_NAME=$(curl -s -L -H "X-GitHub-Api-Version: 2022-11-28" -H "Authorization: token ${GITHUB_API_TOKEN}" https://api.github.com/repos/"$REPO"/releases/latest | jq -r '.tag_name') + +# Trim 'v' character in VERSTAG_NAMEION variable +VERSION=$(echo "$TAG_NAME" | tr -d 'v') + +echo "$VERSION" diff --git a/pkg.info b/pkg.info new file mode 100644 index 0000000..89caa9d --- /dev/null +++ b/pkg.info @@ -0,0 +1,29 @@ +name: neovim +description: Fork of Vim aiming to improve user experience, plugins, and GUIs +version: 0.11.5 +revision: 1 +url: https://neovim.io/ +license: Apache-2.0 AND Vim +architecture: any +type: source +depends: + - libluv + - libutf8proc + - libuv + - libvterm + - lua5.1-lpeg + - luajit + - msgpack-c + - tree-sitter + - unibilium +optional_depends: + - wl-clipboard + - xclip +make_depends: + - cmake + - lua5.1-mpack +downloads: + - url: https://github.com/neovim/neovim/archive/refs/tags/v${BPM_PKG_VERSION}.tar.gz + extract_to: ${BPM_SOURCE} + extract_strip_components: 1 + checksum: c63450dfb42bb0115cd5e959f81c77989e1c8fd020d5e3f1e6d897154ce8b771 diff --git a/source.sh b/source.sh new file mode 100644 index 0000000..8d953a3 --- /dev/null +++ b/source.sh @@ -0,0 +1,31 @@ +# This is the source.sh script. It is executed by BPM in a temporary directory when compiling a source package +# BPM Expects the source code to be extracted into the automatically created 'source' directory which can be accessed using $BPM_SOURCE +# BPM Expects the output files to be present in the automatically created 'output' directory which can be accessed using $BPM_OUTPUT + +# The build function is executed in the source directory +# This function is used to compile the source code +build() { + cmake -B build -DCMAKE_INSTALL_PREFIX=/usr -DUSE_BUNDLED=OFF -DENABLE_TRANSLATIONS=ON -Wno-dev + cmake --build build +} + +# The check function is executed in the source directory +# This function is used to run tests to verify the package has been compiled correctly +check() { + ./build/bin/nvim --version + ./build/bin/nvim --headless -u NONE -i NONE +q +} + +# The package function is executed in the source directory +# This function is used to move the compiled files into the output directory +package() { + DESTDIR="$BPM_OUTPUT" cmake --install build + + # Install desktop file + install -Dm644 runtime/nvim.desktop "$BPM_OUTPUT"/usr/share/applications/nvim.desktop + install -Dm644 runtime/nvim.appdata.xml "$BPM_OUTPUT"/usr/share/metainfo/nvim.appdata.xml + install -Dm644 runtime/nvim.png "$BPM_OUTPUT"/usr/share/pixmaps/nvim.png + + # Install package license + install -Dm644 "$BPM_SOURCE"/LICENSE.txt "$BPM_OUTPUT"/usr/share/licenses/neovim/LICENSE.txt +}