diff options
author | Michel Alexandre Salim <salimma@fedoraproject.org> | 2022-02-06 22:36:25 -0800 |
---|---|---|
committer | Michel Alexandre Salim <salimma@fedoraproject.org> | 2022-02-06 22:36:56 -0800 |
commit | 8d268b1baa8fe3ef23166cc3b1e6868684082913 (patch) | |
tree | 0fdd97e1377d31f424c6185dca43d9b08c50d8d2 | |
parent | 0f030020d75fce54cd5794bba8f6b1be824c22c1 (diff) | |
download | specs-8d268b1baa8fe3ef23166cc3b1e6868684082913.tar.gz specs-8d268b1baa8fe3ef23166cc3b1e6868684082913.tar.xz specs-8d268b1baa8fe3ef23166cc3b1e6868684082913.zip |
+ lagrange and the_Foundation
Signed-off-by: Michel Alexandre Salim <salimma@fedoraproject.org>
-rw-r--r-- | web/lagrange.spec | 70 | ||||
-rw-r--r-- | web/the_foundation.spec | 104 |
2 files changed, 174 insertions, 0 deletions
diff --git a/web/lagrange.spec b/web/lagrange.spec new file mode 100644 index 0000000..640bd5b --- /dev/null +++ b/web/lagrange.spec @@ -0,0 +1,70 @@ +%global forgeurl https://git.skyjake.fi/gemini/lagrange +%global appid fi.skyjake.Lagrange + +Name: lagrange +Version: 1.10.4 +Release: %autorelease +Summary: A Beautiful Gemini Client + +# SPDX-3.0-License-Identifier: BSD-2-Clause +License: BSD +URL: https://gmi.skyjake.fi/lagrange/ +Source0: %{forgeurl}/releases/download/v%{version}/%{name}-%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: gcc +BuildRequires: pkgconfig(fribidi) +BuildRequires: pkgconfig(harfbuzz) +BuildRequires: pkgconfig(sdl2) +BuildRequires: pkgconfig(the_Foundation) +# for checks +BuildRequires: desktop-file-utils +BuildRequires: libappstream-glib + +%description +Lagrange is a desktop GUI client for browsing Geminispace. It offers modern +conveniences familiar from web browsers, such as smooth scrolling, inline image +viewing, multiple tabs, visual themes, Unicode fonts, bookmarks, history, and +page outlines. + +Like Gemini, Lagrange has been designed with minimalism in mind. It depends on a +small number of essential libraries. It is written in C and uses SDL for +hardware-accelerated graphics. OpenSSL is used for secure communications. + + +%prep +%autosetup -p1 +# remove bundled libs +rm -rf lib + + +%build +%cmake +%cmake_build + + +%install +%cmake_install + + +%check +desktop-file-validate \ + %{buildroot}/%{_datadir}/applications/%{appid}.desktop + +appstream-util validate-relax --nonet \ + %{buildroot}%{_metainfodir}/%{appid}.appdata.xml + + +%files +%license LICENSE.md +%doc AUTHORS.md README.md +%{_bindir}/%{name} +%{_datadir}/applications/%{appid}.desktop +%{_datadir}/icons/hicolor/256x256/apps/%{appid}.png +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/resources.lgr +%{_mandir}/man1/%{name}.1* +%{_metainfodir}/%{appid}.appdata.xml + +%changelog +%autochangelog diff --git a/web/the_foundation.spec b/web/the_foundation.spec new file mode 100644 index 0000000..72f2f44 --- /dev/null +++ b/web/the_foundation.spec @@ -0,0 +1,104 @@ +%bcond_without doc + +%global srcname the_Foundation + +Name: the_foundation +Version: 1.1.0 +Release: %autorelease +Summary: Opinionated C11 library for low-level functionality + +# SPDX-3.0-License-Identifier: BSD-2-Clause +License: BSD +URL: https://git.skyjake.fi/skyjake/the_Foundation +Source0: %{url}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: gcc +BuildRequires: libunistring-devel +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(libpcre) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(zlib) +%if %{with doc} +BuildRequires: doxygen +%endif + +%global _description %{expand: +An object-oriented C library whose API is designed for a particular coding +style, taking cues from C++ STL and Qt.} + +%description %{_description} + + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: cmake-filesystem +Requires: pkgconfig + +%description devel %{_description} + +The %{name}-devel package contains libraries and header files for +developing applications that use %{srcname}. + + +%if %{with doc} +%package doc +Summary: Documentation for %{srcname} +BuildArch: noarch + +%description doc %{_description} + +The %{name}-doc package contains the documentation for %{srcname}. +%endif + + +%prep +%autosetup -n %{name} -p1 + + +%build +%cmake +%cmake_build +%if %{with doc} +doxygen %{srcname}.doxygen +%endif + + +%install +%cmake_install + + +%check +# math and threading has non-zero retvals +for t in \ + archive \ + network \ + string \ + test \ + udptest \ +; do + %{__cmake_builddir}/${t}_Foundation +done + + +%files +%license LICENSE +%doc CHANGES.md README.md +%{_libdir}/*.so.* + +%files devel +%{_includedir}/* +%{_libdir}/*.so +%{_libdir}/cmake/%{srcname} +%{_libdir}/pkgconfig/%{srcname}.pc + +%if %{with doc} +%files doc +%license LICENSE +%doc doc/html/* +%endif + + +%changelog +%autochangelog |