mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-08 21:00:05 +02:00
neovim: new recipe (#13252)
Co-authored-by: user0-07161 <user0thenyancat@proton.me>
This commit is contained in:
76
app-editors/neovim/licenses/Vim
Normal file
76
app-editors/neovim/licenses/Vim
Normal file
@@ -0,0 +1,76 @@
|
||||
I) There are no restrictions on distributing unmodified copies of Vim except
|
||||
that they must include this license text. You can also distribute
|
||||
unmodified parts of Vim, likewise unrestricted except that they must
|
||||
include this license text. You are also allowed to include executables
|
||||
that you made from the unmodified Vim sources, plus your own usage
|
||||
examples and Vim scripts.
|
||||
|
||||
II) It is allowed to distribute a modified (or extended) version of Vim,
|
||||
including executables and/or source code, when the following four
|
||||
conditions are met:
|
||||
1) This license text must be included unmodified.
|
||||
2) The modified Vim must be distributed in one of the following five ways:
|
||||
a) If you make changes to Vim yourself, you must clearly describe in
|
||||
the distribution how to contact you. When the maintainer asks you
|
||||
(in any way) for a copy of the modified Vim you distributed, you
|
||||
must make your changes, including source code, available to the
|
||||
maintainer without fee. The maintainer reserves the right to
|
||||
include your changes in the official version of Vim. What the
|
||||
maintainer will do with your changes and under what license they
|
||||
will be distributed is negotiable. If there has been no negotiation
|
||||
then this license, or a later version, also applies to your changes.
|
||||
The current maintainer is Bram Moolenaar <Bram@vim.org>. If this
|
||||
changes it will be announced in appropriate places (most likely
|
||||
vim.sf.net, www.vim.org and/or comp.editors). When it is completely
|
||||
impossible to contact the maintainer, the obligation to send him
|
||||
your changes ceases. Once the maintainer has confirmed that he has
|
||||
received your changes they will not have to be sent again.
|
||||
b) If you have received a modified Vim that was distributed as
|
||||
mentioned under a) you are allowed to further distribute it
|
||||
unmodified, as mentioned at I). If you make additional changes the
|
||||
text under a) applies to those changes.
|
||||
c) Provide all the changes, including source code, with every copy of
|
||||
the modified Vim you distribute. This may be done in the form of a
|
||||
context diff. You can choose what license to use for new code you
|
||||
add. The changes and their license must not restrict others from
|
||||
making their own changes to the official version of Vim.
|
||||
d) When you have a modified Vim which includes changes as mentioned
|
||||
under c), you can distribute it without the source code for the
|
||||
changes if the following three conditions are met:
|
||||
- The license that applies to the changes permits you to distribute
|
||||
the changes to the Vim maintainer without fee or restriction, and
|
||||
permits the Vim maintainer to include the changes in the official
|
||||
version of Vim without fee or restriction.
|
||||
- You keep the changes for at least three years after last
|
||||
distributing the corresponding modified Vim. When the maintainer
|
||||
or someone who you distributed the modified Vim to asks you (in
|
||||
any way) for the changes within this period, you must make them
|
||||
available to him.
|
||||
- You clearly describe in the distribution how to contact you. This
|
||||
contact information must remain valid for at least three years
|
||||
after last distributing the corresponding modified Vim, or as long
|
||||
as possible.
|
||||
e) When the GNU General Public License (GPL) applies to the changes,
|
||||
you can distribute the modified Vim under the GNU GPL version 2 or
|
||||
any later version.
|
||||
3) A message must be added, at least in the output of the ":version"
|
||||
command and in the intro screen, such that the user of the modified Vim
|
||||
is able to see that it was modified. When distributing as mentioned
|
||||
under 2)e) adding the message is only required for as far as this does
|
||||
not conflict with the license used for the changes.
|
||||
4) The contact information as required under 2)a) and 2)d) must not be
|
||||
removed or changed, except that the person himself can make
|
||||
corrections.
|
||||
|
||||
III) If you distribute a modified version of Vim, you are encouraged to use
|
||||
the Vim license for your changes and make them available to the
|
||||
maintainer, including the source code. The preferred way to do this is
|
||||
by e-mail or by uploading the files to a server and e-mailing the URL.
|
||||
If the number of changes is small (e.g., a modified Makefile) e-mailing a
|
||||
context diff will do. The e-mail address to be used is
|
||||
<maintainer@vim.org>
|
||||
|
||||
IV) It is not allowed to remove this license from the distribution of the Vim
|
||||
sources, parts of it or from a modified version. You may use this
|
||||
license for previous Vim releases instead of the license that they came
|
||||
with, at your option.
|
||||
129
app-editors/neovim/neovim-0.12.0~git.recipe
Normal file
129
app-editors/neovim/neovim-0.12.0~git.recipe
Normal file
@@ -0,0 +1,129 @@
|
||||
SUMMARY="Editor based on Vim"
|
||||
DESCRIPTION="Fork of Vim aiming to improve user experience, plugins, and GUIs"
|
||||
HOMEPAGE="https://neovim.io"
|
||||
COPYRIGHT="Neovim contributors"
|
||||
LICENSE="Apache v2
|
||||
Vim"
|
||||
REVISION="1"
|
||||
srcGitRev="10c11c4644e30f06b5d3029b72b2a945b654ca22"
|
||||
|
||||
SOURCE_URI="https://github.com/neovim/neovim/archive/$srcGitRev.tar.gz"
|
||||
CHECKSUM_SHA256="0c76533552a99d591381e226d90c60a9005fcf145a2e0429e234c9caafd78ca1"
|
||||
SOURCE_DIR="neovim-$srcGitRev"
|
||||
|
||||
SOURCE_URI_2="https://github.com/lunarmodules/lua-compat-5.3/archive/v0.13.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_2="f5dc30e7b1fda856ee4d392be457642c1f0c259264a9b9bfbcb680302ce88fc2"
|
||||
|
||||
SOURCE_URI_3="https://github.com/luvit/luv/archive/1.51.0-1.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_3="d4a11178ae8e16ba5886799ea91905dd9b0b479c75aebd67866d37373e41526f"
|
||||
|
||||
srcGitRev4="d495ee6f79e7962a53ad79670cb92488abe0b9b4"
|
||||
SOURCE_URI_4="https://github.com/neovim/deps/raw/$srcGitRev4/opt/lpeg-1.1.0.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_4="4b155d67d2246c1ffa7ad7bc466c1ea899bbc40fef0257cc9c03cecbaed4352a"
|
||||
|
||||
SOURCE_URI_5="https://github.com/tree-sitter/tree-sitter-c/archive/v0.24.1.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_5="25dd4bb3dec770769a407e0fc803f424ce02c494a56ce95fedc525316dcf9b48"
|
||||
|
||||
SOURCE_URI_6="https://github.com/tree-sitter-grammars/tree-sitter-lua/archive/v0.4.0.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_6="b0977aced4a63bb75f26725787e047b8f5f4a092712c840ea7070765d4049559"
|
||||
|
||||
SOURCE_URI_7="https://github.com/tree-sitter-grammars/tree-sitter-vim/archive/v0.7.0.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_7="44eabc31127c4feacda19f2a05a5788272128ff561ce01093a8b7a53aadcc7b2"
|
||||
|
||||
SOURCE_URI_8="https://github.com/neovim/tree-sitter-vimdoc/archive/v4.0.0.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_8="8096794c0f090b2d74b7bff94548ac1be3285b929ec74f839bd9b3ff4f4c6a0b"
|
||||
|
||||
# XXX: neovim pulls v0.7.0 instead, however this is breaks haikuporter, so we pull the raw commit instead
|
||||
srcGitRev9="60e253d3c9d6b1131a0f75c85e4bdcc9a48d5b42"
|
||||
SOURCE_URI_9="https://github.com/tree-sitter-grammars/tree-sitter-query/archive/$srcGitRev9.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_9="b43e668d7e45a162361f5ffc584c9e01bbc07b6d1210334dbc37ce9788733320"
|
||||
|
||||
SOURCE_URI_10="https://github.com/tree-sitter-grammars/tree-sitter-markdown/archive/v0.5.1.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_10="acaffe5a54b4890f1a082ad6b309b600b792e93fc6ee2903d022257d5b15e216"
|
||||
|
||||
SOURCE_URI_11="https://github.com/tree-sitter/tree-sitter/archive/v0.25.10.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_11="ad5040537537012b16ef6e1210a572b927c7cdc2b99d1ee88d44a7dcdc3ff44c"
|
||||
|
||||
SOURCE_URI_12="https://github.com/juliastrings/utf8proc/archive/v2.11.1.tar.gz#noarchive"
|
||||
CHECKSUM_SHA256_12="dc146fd279eacbbf399d3f70932ce66f516aac2d13f8ec2d26a30f8ed70aa5b4"
|
||||
|
||||
ARCHITECTURES="all !x86_gcc2"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PROVIDES="
|
||||
neovim$secondaryArchSuffix = $portVersion
|
||||
cmd:nvim = $portVersion
|
||||
"
|
||||
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libiconv$secondaryArchSuffix
|
||||
lib:libintl$secondaryArchSuffix
|
||||
lib:libluajit_5.1$secondaryArchSuffix
|
||||
lib:libunibilium$secondaryArchSuffix
|
||||
lib:libuv$secondaryArchSuffix
|
||||
luajit$secondaryArchSuffix
|
||||
"
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:libiconv${secondaryArchSuffix}
|
||||
devel:libintl$secondaryArchSuffix
|
||||
devel:libluajit_5.1$secondaryArchSuffix
|
||||
devel:libunibilium$secondaryArchSuffix
|
||||
devel:libuv$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:cmake
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:sed
|
||||
"
|
||||
|
||||
PATCHES="
|
||||
neovim-0.12.0~git.patchset
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$LUACOMPAT|$(find $sourceDir2/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$LUV|$(find $sourceDir3/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$LPEG|$(find $sourceDir4/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$TREESITTERC|$(find $sourceDir5/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$TREESITTERLUA|$(find $sourceDir6/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$TREESITTERVIM|$(find $sourceDir7/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$TREESITTERVIMDOC|$(find $sourceDir8/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$TREESITTERQUERY|$(find $sourceDir9/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$TREESITTERMD|$(find $sourceDir10/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$TREESITTER|$(find $sourceDir11/*)|"
|
||||
sed -i ./cmake.deps/deps.txt \
|
||||
-e "s|\$UTF8PROC|$(find $sourceDir12/*)|"
|
||||
|
||||
cmake -DUSE_BUNDLED_LIBUV=OFF \
|
||||
-DUSE_BUNDLED_UNIBILIUM=OFF \
|
||||
-DUSE_BUNDLED_LUAJIT=OFF \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
$cmakeDirArgs \
|
||||
-B .deps ./cmake.deps
|
||||
make -C .deps $jobArgs
|
||||
|
||||
cmake . \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
$cmakeDirArgs \
|
||||
-B build
|
||||
make -C build $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
make -C build install $jobArgs
|
||||
}
|
||||
78
app-editors/neovim/patches/neovim-0.12.0~git.patchset
Normal file
78
app-editors/neovim/patches/neovim-0.12.0~git.patchset
Normal file
@@ -0,0 +1,78 @@
|
||||
From d9889eb399a7bc549008e7d20b430989730bd710 Mon Sep 17 00:00:00 2001
|
||||
From: user0-07161 <user0thenyancat@proton.me>
|
||||
Date: Tue, 25 Nov 2025 16:23:24 +0000
|
||||
Subject: [PATCH] allow using files downloaded by haiku
|
||||
|
||||
---
|
||||
cmake.deps/CMakeLists.txt | 2 +-
|
||||
cmake.deps/deps.txt | 22 +++++++++++-----------
|
||||
2 files changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/cmake.deps/CMakeLists.txt b/cmake.deps/CMakeLists.txt
|
||||
index 4189eb4..59fd2b3 100644
|
||||
--- a/cmake.deps/CMakeLists.txt
|
||||
+++ b/cmake.deps/CMakeLists.txt
|
||||
@@ -21,7 +21,7 @@ include(Util)
|
||||
# User settings
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
-set(DEPS_IGNORE_SHA FALSE)
|
||||
+set(DEPS_IGNORE_SHA TRUE)
|
||||
|
||||
# Options
|
||||
option(USE_BUNDLED "Use bundled dependencies." ON)
|
||||
diff --git a/cmake.deps/deps.txt b/cmake.deps/deps.txt
|
||||
index abee83e..22becef 100644
|
||||
--- a/cmake.deps/deps.txt
|
||||
+++ b/cmake.deps/deps.txt
|
||||
@@ -10,13 +10,13 @@ LUA_SHA256 2640fc56a795f29d28ef15e13c34a47e223960b0240e8cb0a82d9b0738695333
|
||||
UNIBILIUM_URL https://github.com/neovim/unibilium/archive/v2.1.2.tar.gz
|
||||
UNIBILIUM_SHA256 370ecb07fbbc20d91d1b350c55f1c806b06bf86797e164081ccc977fc9b3af7a
|
||||
|
||||
-LUV_URL https://github.com/luvit/luv/archive/1.51.0-1.tar.gz
|
||||
+LUV_URL file://$LUV
|
||||
LUV_SHA256 d4a11178ae8e16ba5886799ea91905dd9b0b479c75aebd67866d37373e41526f
|
||||
|
||||
-LPEG_URL https://github.com/neovim/deps/raw/d495ee6f79e7962a53ad79670cb92488abe0b9b4/opt/lpeg-1.1.0.tar.gz
|
||||
+LPEG_URL file://$LPEG
|
||||
LPEG_SHA256 4b155d67d2246c1ffa7ad7bc466c1ea899bbc40fef0257cc9c03cecbaed4352a
|
||||
|
||||
-LUA_COMPAT53_URL https://github.com/lunarmodules/lua-compat-5.3/archive/v0.13.tar.gz
|
||||
+LUA_COMPAT53_URL file://$LUACOMPAT
|
||||
LUA_COMPAT53_SHA256 f5dc30e7b1fda856ee4d392be457642c1f0c259264a9b9bfbcb680302ce88fc2
|
||||
|
||||
XXD_URL https://github.com/neovim/deps/raw/21c5e8bdda33521a6ed497b315e03265a2785cbc/opt/xxd.exe
|
||||
@@ -31,22 +31,22 @@ GETTEXT_SHA256 66415634c6e8c3fa8b71362879ec7575e27da43da562c798a8a2f223e6e47f5c
|
||||
LIBICONV_URL https://github.com/neovim/deps/raw/b9bf36eb31f27e8136d907da38fa23518927737e/opt/libiconv-1.17.tar.gz
|
||||
LIBICONV_SHA256 8f74213b56238c85a50a5329f77e06198771e70dd9a739779f4c02f65d971313
|
||||
|
||||
-UTF8PROC_URL https://github.com/juliastrings/utf8proc/archive/v2.11.1.tar.gz
|
||||
+UTF8PROC_URL file://$UTF8PROC
|
||||
UTF8PROC_SHA256 dc146fd279eacbbf399d3f70932ce66f516aac2d13f8ec2d26a30f8ed70aa5b4
|
||||
|
||||
-TREESITTER_C_URL https://github.com/tree-sitter/tree-sitter-c/archive/v0.24.1.tar.gz
|
||||
+TREESITTER_C_URL file://$TREESITTERC
|
||||
TREESITTER_C_SHA256 25dd4bb3dec770769a407e0fc803f424ce02c494a56ce95fedc525316dcf9b48
|
||||
-TREESITTER_LUA_URL https://github.com/tree-sitter-grammars/tree-sitter-lua/archive/v0.4.0.tar.gz
|
||||
+TREESITTER_LUA_URL file://$TREESITTERLUA
|
||||
TREESITTER_LUA_SHA256 b0977aced4a63bb75f26725787e047b8f5f4a092712c840ea7070765d4049559
|
||||
-TREESITTER_VIM_URL https://github.com/tree-sitter-grammars/tree-sitter-vim/archive/v0.7.0.tar.gz
|
||||
+TREESITTER_VIM_URL file://$TREESITTERVIM
|
||||
TREESITTER_VIM_SHA256 44eabc31127c4feacda19f2a05a5788272128ff561ce01093a8b7a53aadcc7b2
|
||||
-TREESITTER_VIMDOC_URL https://github.com/neovim/tree-sitter-vimdoc/archive/v4.0.0.tar.gz
|
||||
+TREESITTER_VIMDOC_URL file://$TREESITTERLUA
|
||||
TREESITTER_VIMDOC_SHA256 8096794c0f090b2d74b7bff94548ac1be3285b929ec74f839bd9b3ff4f4c6a0b
|
||||
-TREESITTER_QUERY_URL https://github.com/tree-sitter-grammars/tree-sitter-query/archive/v0.7.0.tar.gz
|
||||
+TREESITTER_QUERY_URL file://$TREESITTERQUERY
|
||||
TREESITTER_QUERY_SHA256 79285847e8350ee9fe1f6f6c9eb64bc14320f70f7b9b65037193fc58f2638613
|
||||
-TREESITTER_MARKDOWN_URL https://github.com/tree-sitter-grammars/tree-sitter-markdown/archive/v0.5.1.tar.gz
|
||||
+TREESITTER_MARKDOWN_URL file://$TREESITTERMD
|
||||
TREESITTER_MARKDOWN_SHA256 acaffe5a54b4890f1a082ad6b309b600b792e93fc6ee2903d022257d5b15e216
|
||||
-TREESITTER_URL https://github.com/tree-sitter/tree-sitter/archive/v0.25.10.tar.gz
|
||||
+TREESITTER_URL file://$TREESITTER
|
||||
TREESITTER_SHA256 ad5040537537012b16ef6e1210a572b927c7cdc2b99d1ee88d44a7dcdc3ff44c
|
||||
|
||||
WASMTIME_URL https://github.com/bytecodealliance/wasmtime/archive/v29.0.1.tar.gz
|
||||
--
|
||||
2.51.0
|
||||
|
||||
Reference in New Issue
Block a user