[packages/vim-classic] Initial
arekm
arekm at pld-linux.org
Tue Jun 2 20:13:26 CEST 2026
commit ad48919cf59f76c7d512bcb6ad764f6947483592
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Tue Jun 2 20:12:55 2026 +0200
Initial
vim-classic.spec | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 117 insertions(+)
---
diff --git a/vim-classic.spec b/vim-classic.spec
new file mode 100644
index 0000000..e8454f9
--- /dev/null
+++ b/vim-classic.spec
@@ -0,0 +1,117 @@
+Summary: VIM Classic - long-term maintenance fork of Vim 8.x
+Summary(pl.UTF-8): VIM Classic - długoterminowo utrzymywany fork Vima 8.x
+Name: vim-classic
+Version: 8.3.0
+Release: 1
+License: Charityware
+Group: Applications/Editors/Vim
+Source0: https://git.sr.ht/~sircmpwn/vim-classic/archive/v%{version}.tar.gz
+# Source0-md5: d762e8ed8694346cee29f7e4fac8401b
+URL: https://sr.ht/~sircmpwn/vim-classic/
+BuildRequires: acl-devel
+BuildRequires: attr-devel
+# -std=gnu17
+BuildRequires: gcc >= 6:7
+BuildRequires: gettext-tools
+BuildRequires: gpm-devel
+BuildRequires: ncurses-devel
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.718
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+# configure forces -D_FORTIFY_SOURCE=1 (=2 crashes Vim, see src/configure.ac)
+%define filterout_cpp -D_FORTIFY_SOURCE=[0-9]*
+%define filterout_c -Wp,-D_FORTIFY_SOURCE=2
+
+# cflags get changed while configuring
+%undefine configure_cache
+
+%define specflags -std=gnu17
+
+%description
+Vim Classic is a fork of Vim 8.2 focused on long-term maintenance,
+created by Drew DeVault. Little new feature development is expected; it
+tracks bug and security fixes only and does not include Vim9script.
+
+This package installs as the vim-classic command and is co-installable
+alongside the regular vim package, keeping its runtime files under
+/usr/share/vim-classic.
+
+%description -l pl.UTF-8
+Vim Classic to fork edytora Vim 8.2 nastawiony na długoterminowe
+utrzymanie, stworzony przez Drew DeVaulta. Nie dodaje nowych funkcji -
+skupia się na poprawkach błędów i bezpieczeństwa, nie zawiera też
+Vim9script.
+
+Pakiet udostępnia polecenie vim-classic i jest przeznaczony do
+równoległej instalacji obok zwykłego Vima; swoje pliki uruchomieniowe
+trzyma w katalogu /usr/share/vim-classic.
+
+%prep
+%setup -q -n vim-classic-v%{version}
+
+%build
+cd src
+# Vim re-runs configure during make when config.mk looks stale, dropping our
+# flags; configure once, distclean, then configure for real.
+%configure \
+ --with-tlib="ncursesw"
+%{__make} -j1 distclean
+
+%configure \
+ --with-vim-name=%{name} \
+ --with-features=huge \
+ --with-tlib="ncursesw" \
+ --with-compiledby="PLD Linux Distribution" \
+ --with-modified-by="PLD Linux Distribution" \
+ --disable-gui \
+ --without-x \
+ --disable-canberra \
+ --disable-selinux \
+ --enable-cscope \
+ --enable-gpm \
+ --enable-multibyte \
+ --enable-nls
+
+# VIMDIR relocates the whole tree (runtime, $VIM base, runtimepath, message
+# catalogs) under /usr/share/vim-classic so nothing collides with the vim package
+%{__make} \
+ VIMDIR=/%{name}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_bindir}
+
+# STRIP=/bin/true keeps the binary unstripped so the debuginfo package is built
+%{__make} -C src -j1 install \
+ DESTDIR=$RPM_BUILD_ROOT \
+ VIMDIR=/%{name} \
+ STRIP=/bin/true
+
+# console editor: drop GUI desktop/icon artifacts
+%{__rm} -rf $RPM_BUILD_ROOT%{_desktopdir} $RPM_BUILD_ROOT%{_iconsdir} \
+ $RPM_BUILD_ROOT%{_pixmapsdir} $RPM_BUILD_ROOT%{_datadir}/applications
+
+# standalone helper scripts (not part of the editor runtime) with shebangs that
+# fail PLD's policy check; the vim package drops them too
+%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{name}/vim*/tools
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/vim*/doc/vim2html.pl
+
+# keep only the renamed main binary; the ex/view/*diff/rvim links, xxd and the
+# tutor wrapper would collide with the vim and xxd packages in shared paths
+find $RPM_BUILD_ROOT%{_bindir} -mindepth 1 ! -name %{name} -delete
+
+# ship only the English vim-classic manual page; translated trees and the
+# ex/view/vimdiff pages would collide with the vim package
+find $RPM_BUILD_ROOT%{_mandir} -mindepth 1 -maxdepth 1 ! -name man1 -exec %{__rm} -rf {} +
+find $RPM_BUILD_ROOT%{_mandir}/man1 -mindepth 1 ! -name '%{name}.1*' -delete
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%defattr(644,root,root,755)
+%doc README.md
+%attr(755,root,root) %{_bindir}/%{name}
+%{_datadir}/%{name}
+%{_mandir}/man1/%{name}.1*
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/vim-classic.git/commitdiff/ad48919cf59f76c7d512bcb6ad764f6947483592
More information about the pld-cvs-commit
mailing list