initial import

This commit is contained in:
2025-06-22 20:39:04 -05:00
commit f8a70886f0
3428 changed files with 302546 additions and 0 deletions

193
vim/PKGBUILD Normal file
View File

@@ -0,0 +1,193 @@
# Maintainer: Jesus E. <heckyel@riseup.net>
pkgbase=vim
pkgname=('vim' 'gvim' 'vim-runtime')
pkgver=9.1.0707
_versiondir=91
pkgrel=1
pkgdesc="Vi Improved, a highly configurable, improved version of the Vi text editor"
url='https://www.vim.org'
arch=(i686 x86_64)
license=('custom:Vim')
makedepends=('glibc' 'libgcrypt' 'gpm' 'tauthon' 'python' 'ruby' 'libxt' 'gtk' 'lua'
'gawk' 'tcl' 'pcre' 'zlib' 'libffi' 'gettext-tiny')
source=(https://github.com/vim/vim/archive/v${pkgver}/${pkgbase}-${pkgver}.tar.gz
vimrc
hyperbola.vim
vimdoc.hook
fix-build.patch)
sha512sums=('694d9b8d08cd9a980c4ea9c8d6510181f1978ee72125bcde02add255057f2f36d8b14f54180e5ad715d8a09911496f79993a612128bed9f2deff3578d4f98660'
'a81a132d182d1e5cc405bc72777c819b3f4597a36a29228dee78e7fb312eb5da396de23947bdc08f43f8b157211cfdfb528c2cc4831d1a31e9f8a0100bf1ea95'
'7e3bdfa923664125855b212208d68c76861e962cf6b0d8c2a4d8ed773d9a8cc5a73acd1b7a1e439b4cc0b263a7529067e852d2d53887dfc45f9f66240075c45b'
'1e06e981691b17662fd0fddac5c00c87c920d1b4a1cbb6191c42d57cc40b00af12710e26b22fcfc0901bb8142b15f6a04aa65cec2d9b3bb9d5a06cb650d3ab9c'
'095caacf0a5a464941368c738eca136d5f1e7f5b1cfb274661b95b4648ed4562a897e350fdd691d2a4a887510e9359c45cfab2ec7ee2ffc39a188b1a41546b22')
prepare() {
cd "${srcdir}"/vim-$pkgver
# additional fixes for languages
patch -Np1 -i $srcdir/fix-build.patch
cd src
# define the place for the global (g)vimrc file (set to /etc/vimrc)
sed -E 's|^.*(#define SYS_.*VIMRC_FILE.*").*$|\1|g' -i feature.h
sed -E 's|^.*(#define VIMRC_FILE.*").*$|\1|g' -i feature.h
autoconf
cd "$srcdir"
cp -a vim-$pkgver gvim-$pkgver
}
build() {
cd "${srcdir}"/vim-$pkgver
./configure \
--prefix=/usr \
--localstatedir=/var/lib/vim \
--with-features=huge \
--with-compiledby='Hyperbola GNU/Linux-libre' \
--enable-gpm \
--enable-acl \
--with-x=no \
--disable-gui \
--enable-multibyte \
--enable-cscope \
--enable-netbeans \
--enable-perlinterp=no \
--enable-pythoninterp \
--with-python-command=tauthon2.8 \
--enable-python3interp=dynamic \
--enable-rubyinterp=dynamic \
--enable-luainterp=dynamic \
--enable-tclinterp=dynamici \
--disable-canberra
make
cd "${srcdir}"/gvim-$pkgver
./configure \
--prefix=/usr \
--localstatedir=/var/lib/vim \
--with-features=huge \
--with-compiledby='Hyperbola GNU/Linux-libre' \
--enable-gpm \
--enable-acl \
--with-x=yes \
--enable-gui=gtk3 \
--enable-multibyte \
--enable-cscope \
--enable-netbeans \
--enable-perlinterp=no \
--enable-pythoninterp \
--with-python-command=tauthon2.8 \
--enable-python3interp=dynamic \
--enable-rubyinterp=dynamic \
--enable-luainterp=dynamic \
--enable-tclinterp=dynamic \
--disable-canberra
make
}
package_vim-runtime() {
pkgdesc+=' (shared runtime)'
optdepends=('sh: support for some tools and macros'
'python: demoserver example tool'
'gawk: mve tools upport')
backup=('etc/vimrc')
cd "${srcdir}"/vim-$pkgver
make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install
# man and bin files belong to 'vim'
rm -r "${pkgdir}"/usr/share/man/ "${pkgdir}"/usr/bin/
# Don't forget logtalk.dict
install -Dm644 runtime/ftplugin/logtalk.dict \
"${pkgdir}"/usr/share/vim/vim${_versiondir}/ftplugin/logtalk.dict
# rc files
install -Dm644 "${srcdir}"/vimrc "${pkgdir}"/etc/vimrc
install -Dm644 "${srcdir}"/hyperbola.vim \
"${pkgdir}"/usr/share/vim/vimfiles/hyperbola.vim
# no desktop files and icons
rm -r "${pkgdir}"/usr/share/{applications,icons}
# license
install -Dm644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}
# pacman hook for documentation helptags
install -Dm644 "${srcdir}"/vimdoc.hook "${pkgdir}"/usr/share/libalpm/hooks/vimdoc.hook
}
package_vim() {
depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm' 'acl' 'glibc' 'libgcrypt' 'pcre'
'zlib' 'libffi')
optdepends=('tauthon: Tauthon language support'
'python: Python language support'
'ruby: Ruby language support'
'lua: Lua language support'
'tcl: Tcl language support')
conflicts=('gvim' 'vim-minimal' 'vim-python3')
provides=('xxd' 'vim-minimal' 'vim-python3' 'vim-plugin-runtime')
replaces=('vim-python3' 'vim-minimal')
cd "${srcdir}"/vim-$pkgver
make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install
# provided by (n)vi in core
rm "${pkgdir}"/usr/bin/{ex,view}
# delete some manpages
find "${pkgdir}"/usr/share/man -type d -name 'man1' 2>/dev/null | \
while read _mandir; do
cd ${_mandir}
rm -f ex.1 view.1 # provided by (n)vi
rm -f evim.1 # this does not make sense if we have no GUI
done
# Runtime provided by runtime package
rm -r "${pkgdir}"/usr/share/vim
# no desktop files and icons
rm -r "${pkgdir}"/usr/share/{applications,icons}
# license
install -Dm644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}
}
package_gvim() {
pkgdesc+=' (with advanced features, such as a GUI)'
depends=("vim-runtime=${pkgver}-${pkgrel}" 'gpm' 'libxt' 'gtk' 'glibc' 'libgcrypt' 'pcre'
'zlib' 'libffi')
optdepends=('tauthon: Tauthon language support'
'python: Python language support'
'ruby: Ruby language support'
'lua: Lua language support'
'tcl: Tcl language support')
provides=("vim=${pkgver}-${pkgrel}" "xxd" 'vim-plugin-runtime')
conflicts=('vim-minimal' 'vim')
replaces=('gvim-python3')
cd "${srcdir}"/gvim-$pkgver
make -j1 VIMRCLOC=/etc DESTDIR="${pkgdir}" install
# provided by (n)vi in core
rm "${pkgdir}"/usr/bin/{ex,view}
# delete some manpages
find "${pkgdir}"/usr/share/man -type d -name 'man1' 2>/dev/null | \
while read _mandir; do
cd ${_mandir}
rm -f ex.1 view.1 # provided by (n)vi
done
# need to remove since this is provided by vim-runtime
rm -r "${pkgdir}"/usr/share/vim
# keep gvim desktop file only, remove vim
rm "${pkgdir}"/usr/share/applications/vim.desktop
# license
install -Dm644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}
}

137
vim/fix-build.patch Normal file
View File

@@ -0,0 +1,137 @@
--- a/src/po/Make_all.mak 2024-08-31 17:58:16.000000000 +0200
+++ b/src/po/Make_all.mak 2024-09-10 22:09:54.229881033 +0200
@@ -6,7 +6,6 @@
af \
ca \
cs \
- cs.cp1250 \
da \
de \
en_GB \
@@ -18,8 +17,6 @@
hu \
it \
ja \
- ja.euc-jp \
- ja.sjis \
ko \
ko.UTF-8 \
lv \
@@ -28,21 +25,16 @@
no \
pl \
pl.UTF-8 \
- pl.cp1250 \
pt_BR \
ru \
- ru.cp1251 \
sk \
- sk.cp1250 \
sr \
sv \
tr \
uk \
- uk.cp1251 \
vi \
zh_CN \
zh_CN.UTF-8 \
- zh_CN.cp936 \
zh_TW \
zh_TW.UTF-8 \
@@ -51,7 +43,6 @@
af.po \
ca.po \
cs.po \
- cs.cp1250.po \
da.po \
de.po \
en_GB.po \
@@ -63,8 +54,6 @@
hu.po \
it.po \
ja.po \
- ja.euc-jp.po \
- ja.sjis.po \
ko.po \
ko.UTF-8.po \
lv.po \
@@ -73,21 +62,16 @@
no.po \
pl.po \
pl.UTF-8.po \
- pl.cp1250.po \
pt_BR.po \
ru.po \
- ru.cp1251.po \
sk.po \
- sk.cp1250.po \
sr.po \
sv.po \
tr.po \
uk.po \
- uk.cp1251.po \
vi.po \
zh_CN.po \
zh_CN.UTF-8.po \
- zh_CN.cp936.po \
zh_TW.po \
zh_TW.UTF-8.po \
@@ -126,17 +110,6 @@
MOCONVERTED = \
- cs.cp1250.mo \
- ja.euc-jp.mo \
- ja.sjis.mo \
- ko.mo \
- pl.UTF-8.mo \
- pl.cp1250.mo \
- ru.cp1251.mo \
- sk.cp1250.mo \
- uk.cp1251.mo \
- zh_CN.mo \
- zh_CN.cp936.mo \
zh_TW.mo \
@@ -144,7 +117,6 @@
af.ck \
ca.ck \
cs.ck \
- cs.cp1250.ck \
da.ck \
de.ck \
en_GB.ck \
@@ -156,8 +128,6 @@
hu.ck \
it.ck \
ja.ck \
- ja.euc-jp.ck \
- ja.sjis.ck \
ko.UTF-8.ck \
ko.ck \
lv.ck \
@@ -166,21 +136,16 @@
no.ck \
pl.UTF-8.ck \
pl.ck \
- pl.cp1250.ck \
pt_BR.ck \
ru.ck \
- ru.cp1251.ck \
sk.ck \
- sk.cp1250.ck \
sr.ck \
sv.ck \
tr.ck \
uk.ck \
- uk.cp1251.ck \
vi.ck \
zh_CN.UTF-8.ck \
zh_CN.ck \
- zh_CN.cp936.ck \
zh_TW.UTF-8.ck \
zh_TW.ck \

26
vim/hyperbola.vim Normal file
View File

@@ -0,0 +1,26 @@
" The Hyperbola GNU/Linux-libre global vimrc - setting only a few sane defaults
"
" Maintainer: Thomas Dziedzic [gostrc@gmail.com]
" Maintainer for Hyperbola rebranding: André Silva [emulatorman@hyperbola.info]
"
" NEVER EDIT THIS FILE, IT'S OVERWRITTEN UPON UPGRADES, GLOBAL CONFIGURATION
" SHALL BE DONE IN /etc/vimrc, USER SPECIFIC CONFIGURATION IN ~/.vimrc
" Normally we use vim-extensions. If you want true vi-compatibility
" remove change the following statements
set nocompatible " Use Vim defaults instead of 100% vi compatibility
set backspace=indent,eol,start " more powerful backspacing
" Now we set some defaults for the editor
set history=50 " keep 50 lines of command line history
set ruler " show the cursor position all the time
" Suffixes that get lower priority when doing tab completion for filenames.
" These are files we are not likely to want to edit or read.
set suffixes=.bak,~,.swp,.o,.info,.aux,.log,.dvi,.bbl,.blg,.brf,.cb,.ind,.idx,.ilg,.inx,.out,.toc,.png,.jpg
if has('gui_running')
" Make shift-insert work like in Xterm
map <S-Insert> <MiddleMouse>
map! <S-Insert> <MiddleMouse>
endif

11
vim/vimdoc.hook Normal file
View File

@@ -0,0 +1,11 @@
[Trigger]
Operation = Install
Operation = Upgrade
Operation= Remove
Type = File
Target = usr/share/vim/vimfiles/doc/
[Action]
Description = Updating Vim help tags...
Exec = /usr/bin/vim -es --cmd ":helptags /usr/share/vim/vimfiles/doc" --cmd ":q"
When = PostTransaction

18
vim/vimrc Normal file
View File

@@ -0,0 +1,18 @@
" All system-wide defaults are set in $VIMRUNTIME/hyperbola.vim (usually just
" /usr/share/vim/vimfiles/hyperbola.vim) and sourced by the call to :runtime
" you can find below. If you wish to change any of those settings, you should
" do it in this file (/etc/vimrc), since hyperbola.vim will be overwritten
" everytime an upgrade of the vim packages is performed. It is recommended to
" make changes after sourcing hyperbola.vim since it alters the value of the
" 'compatible' option.
" This line should not be removed as it ensures that various options are
" properly set to work with the Vim-related packages.
runtime! hyperbola.vim
" If you prefer the old-style vim functionalty, add 'runtime! vimrc_example.vim'
" Or better yet, read /usr/share/vim/vim80/vimrc_example.vim or the vim manual
" and configure vim to your own liking!
" do not load defaults if ~/.vimrc is missing
"let skip_defaults_vim=1