File wordgrinder.spec of Package wordgrinder
#
# spec file for package wordgrinder
#
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: wordgrinder
Version: 0.9+git20250317.c04cc82
Release: 0
Summary: Unicode aware Character Cell Word Processor
License: MIT
Group: Productivity/Text/Editors
URL: https://github.com/davidgiven/wordgrinder
Source0: %{name}-%{version}.tar.gz
Source1: icon.png
Source2: README.wg
Source3: %{name}.desktop
Source4: %{name}.xml
Patch0: Makefile.diff
Patch1: dpy.cc.diff
#Patch2: Ast.h.diff
#BuildRequires: ImageMagick
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: libSDL2_ttf-devel
BuildRequires: lua-devel
BuildRequires: lua-luafilesystem
BuildRequires: make
BuildRequires: ninja
BuildRequires: pkgconfig
BuildRequires: pkgconfig(SDL2_ttf)
BuildRequires: pkgconfig(fmt) > 11.0.2
BuildRequires: pkgconfig(glfw3)
BuildRequires: pkgconfig(libcmark)
BuildRequires: pkgconfig(ncurses)
BuildRequires: pkgconfig(ncursesw)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(xft)
BuildRequires: pkgconfig(zlib)
BuildRequires: python3-PIL
BuildRequires: xxd
#####
BuildRequires: -vim
### Swapping out "busybox-vi" for "busybox" in lieu of "hack"
#BuildRequires: busybox-vi
#BuildRequires: busybox
#####
%description
WordGrinder is a simple, Unicode-aware word processor that runs on the
console. It's designed to get the hell out of your way and let you write;
it does very little, but what it does it does well.
It supports basic paragraph styles, basic character styles, basic screen
markup, a menu interface that means you don't have to remember complex
key sequences, HTML import and export, and some other useful features.
WordGrinder does not require X. It runs in a terminal. (But there's a
version which uses X if you want it.)
%prep
%autosetup -p 0
%build
%make_build \
CXXFLAGS="%{optflags} -fPIE -pie" \
DESTDIR=%{buildroot} \
DOCDIR=%{buildroot}%{_docdir} \
PREFIX=%{buildroot}%{_prefix} \
%{?_smp_mflags}
%install
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_docdir}/%{name}
mkdir -p %{buildroot}%{_mandir}/man1
mkdir -p %{buildroot}%{_datadir}/applications
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/256x256/apps
mkdir -p %{buildroot}%{_datadir}/mime/packages
cp -v %{SOURCE1} %{buildroot}%{_datadir}/icons/hicolor/256x256/apps/%{name}.png
cp -v %{SOURCE2} %{buildroot}%{_docdir}/%{name}/
cp -v %{SOURCE3} %{buildroot}%{_datadir}/applications/
cp -v %{SOURCE4} %{buildroot}%{_datadir}/mime/packages/
%make_install PREFIX="%{buildroot}%{_prefix}" MANDIR="%{buildroot}%{_mandir}"
%fdupes -s %{buildroot}
%files
%dir %{_docdir}/%{name}
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/256x256
%dir %{_datadir}/icons/hicolor/256x256/apps
%{_bindir}/wordgrinder
%{_bindir}/xwordgrinder
%{_mandir}/man1/wordgrinder.1*
%{_mandir}/man1/xwordgrinder.1*
%{_docdir}/%{name}/README.wg
%{_datadir}/icons/hicolor/256x256/apps/wordgrinder.png
%{_datadir}/applications/%{name}.desktop
%{_datadir}/mime/packages/%{name}.xml
%changelog