1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Web Browser-like beautiful Gemini Client
8 HOMEPAGE= https://github.com/skyjake/lagrange
9 CONTACT= Michael_Reim[kraileth@elderlinux.org]
12 SITES[main]= https://github.com/skyjake/lagrange/releases/download/v1.15.8/
13 DISTFILE[1]= lagrange-1.15.8.tar.gz:main
15 SPKGS[standard]= single
17 OPTIONS_AVAILABLE= none
18 OPTIONS_STANDARD= none
20 BUILD_DEPENDS= zip:single:standard
22 BUILDRUN_DEPENDS= fribidi:single:standard
23 harfbuzz:primary:standard
24 libunistring:primary:standard
25 mpg123:primary:standard
28 USES= cmake ncurses pcre pkgconfig zlib ssl:openssl11 curl
33 LICENSE= BSD2CLAUSE:single
34 LICENSE_FILE= BSD2CLAUSE:{{WRKSRC}}/LICENSE.md
37 FPC_EQUIVALENT= www/lagrange
39 CMAKE_ARGS= -DENABLE_FRIBIDI:BOOL=ON
40 -DENABLE_FRIBIDI_BUILD:BOOL=OFF
41 -DENABLE_HARFBUZZ:BOOL=ON
42 -DENABLE_HARFBUZZ_MINIMAL:BOOL=OFF
43 -DENABLE_MPG123:BOOL=ON
47 ${INSTALL_PROGRAM} ${WRKSRC}/build-tui/clagrange ${STAGEDIR}${PREFIX}/bin/
48 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/clagrange
49 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/lagrange
52 (cd ${WRKSRC} && ./build-tui.sh)
55 ${REINPLACE_CMD} -i'' -e "s|__PREFIX__|${PREFIX}|g" \
56 -e "s|__STAGEDIR__|${STAGEDIR}|" ${WRKSRC}/build-tui.sh
57 # unclear why SDL_HINT_WINDOWS_DPI_AWARENESS is not defined; it's in SDL_hints.h
58 # it's for windows only anywhy, just cut it out
59 ${REINPLACE_CMD} -e '/SDL_HINT_WINDOWS_DPI_AWARENESS/d' ${WRKSRC}/src/main.c
61 [FILE:776:descriptions/desc.single]
62 Lagrange is a desktop GUI client for browsing Geminispace. It offers
63 modern conveniences familiar from web browsers, such as smooth scrolling,
64 inline image viewing, multiple tabs, visual themes, Unicode fonts,
65 bookmarks, history, and page outlines.
68 * Ability to optionally view images inside the gemtext document
69 * Beautiful typography using Unicode fonts
70 * Autogenerated page style and Unicode icon for each Gemini domain
71 * Smart URL field suggestions: Search bookmarks, history, identities
72 * Sidebar for page outline, managing bookmarks and identities as well as
75 * Identity management: Create and use TLS client certificates
76 * Audio playback: MP3, Ogg Vorbis, WAV
77 * And more! Open about:help in the app, or see help.gmi
81 7511afc24261439d65c51452e38d2c3ca95d97c3a8f42821ffd612274469416b 9961734 lagrange-1.15.8.tar.gz
84 [FILE:235:manifests/plist.single]
88 share/applications/fi.skyjake.Lagrange.desktop
89 share/icons/hicolor/256x256/apps/fi.skyjake.Lagrange.png
90 share/lagrange/resources.lgr
91 share/man/man1/lagrange.1.gz
92 share/metainfo/fi.skyjake.Lagrange.appdata.xml
95 [FILE:2293:patches/patch-build-tui.sh]
96 --- build-tui.sh.orig 2023-04-07 11:42:39 UTC
100 # You can customize the install directory prefix here and build type here:
102 -INSTALL_PREFIX="/usr/local"
103 +INSTALL_PREFIX="__PREFIX__"
104 CMAKE_BUILD_TYPE="Release"
105 +export PKG_CONFIG_PATH=/__PREFIX__/openssl11/lib/pkgconfig
106 +export LDFLAGS="-L/__PREFIX__/openssl11/lib -Wl,-rpath,/__PREFIX__/openssl11/lib"
108 echo "\nThis script will build and optionally install clagrange with"
109 echo "statically linked the_Foundation and SEALCurses. First, let's configure"
112 -echo "Build type? [${CMAKE_BUILD_TYPE}]"
114 -if [ "${INPUT}." != "." ]; then
115 - CMAKE_BUILD_TYPE=${INPUT}
118 -echo "Install prefix? [${INSTALL_PREFIX}]"
120 -if [ "${INPUT}." != "." ]; then
121 - INSTALL_PREFIX=${INPUT}
124 if [ ! -d lib/sealcurses ]; then
125 echo "'lib/sealcurses' not found. Clone with Git? [Yn]"
127 @@ -67,6 +57,7 @@ cmake ../../lib/the_Foundation -DCMAKE_B
128 -DTFDN_STATIC_LIBRARY=YES \
129 -DTFDN_ENABLE_WEBREQUEST=NO \
130 -DTFDN_ENABLE_TESTS=NO \
131 + -DCMAKE_INSTALL_LIBDIR:STRING="lib" \
132 -DCMAKE_INSTALL_PREFIX="${BUILD_DIR}" $*
133 cmake --build . || exit 1
135 @@ -79,13 +70,13 @@ cmake ../../lib/sealcurses -DCMAKE_BUILD
136 -DCMAKE_C_FLAGS_RELEASE=-O1 \
138 -Dthe_Foundation_DIR="${BUILD_DIR}/lib/cmake/the_Foundation" \
139 + -DCMAKE_INSTALL_LIBDIR:STRING="lib" \
140 -DCMAKE_INSTALL_PREFIX="${BUILD_DIR}" $*
141 cmake --build . || exit 1
145 export PKG_CONFIG_PATH="${BUILD_DIR}/lib/pkgconfig":${PKG_CONFIG_PATH}
146 -LDFLAGS="`pkg-config --static --libs the_Foundation`"
148 -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \
149 -DCMAKE_EXE_LINKER_FLAGS="${LDFLAGS}" \
150 @@ -97,15 +88,11 @@ cmake .. \
151 -DENABLE_HARFBUZZ=NO \
152 -DENABLE_POPUP_MENUS=NO \
153 -DENABLE_IDLE_SLEEP=NO \
154 + -DCMAKE_SKIP_RPATH:BOOL=TRUE \
155 -Dthe_Foundation_DIR="${BUILD_DIR}/lib/cmake/the_Foundation" \
157 cmake --build . || exit 1
160 echo "clagrange and resources.lgr can be found in 'build-tui'."
161 -echo "Do you want to install them to ${INSTALL_PREFIX}? (sudo) [yN]"
163 -if [ "${CONFIRMED}" = "y" ]; then
164 - sudo cmake --install .
170 [FILE:454:patches/patch-cmake_Depends.cmake]
171 --- cmake/Depends.cmake.orig 2023-04-07 11:42:39 UTC
172 +++ cmake/Depends.cmake
173 @@ -42,6 +42,7 @@ else ()
174 set (TFDN_ENABLE_WEBREQUEST OFF CACHE BOOL "")
175 add_subdirectory (lib/the_Foundation)
176 add_library (the_Foundation::the_Foundation ALIAS the_Foundation)
177 + find_package (OpenSSL)
178 if (NOT OPENSSL_FOUND)
179 message (FATAL_ERROR "Lagrange requires OpenSSL for TLS. Please check if pkg-config can find 'openssl'.")
183 [FILE:343:patches/patch-lib_sealcurses_CMakeLists.txt]
184 --- lib/sealcurses/CMakeLists.txt.orig 2023-04-07 11:43:31 UTC
185 +++ lib/sealcurses/CMakeLists.txt
186 @@ -8,7 +8,7 @@ find_package (PkgConfig REQUIRED)
187 set (CMAKE_C_STANDARD 11)
190 -pkg_check_modules (CURSES ncursesw)
191 +pkg_check_modules (CURSES ncurses)
192 if (NOT CURSES_FOUND)
193 find_library (CURSES curses)
197 [FILE:1138:patches/patch-lib_the__Foundation_Depends.cmake]
198 --- lib/the_Foundation/Depends.cmake.orig 2023-04-07 11:43:30 UTC
199 +++ lib/the_Foundation/Depends.cmake
200 @@ -14,24 +14,7 @@ if (NOT IOS AND NOT ANDROID)
201 if (TFDN_ENABLE_TLSREQUEST)
202 set (OPENSSL_FOUND NO)
203 set (iHaveOpenSSL NO)
205 - # Try the system-provided libraries first.
206 - find_library (LIBSSL ssl)
207 - find_library (LIBCRYPTO crypto)
208 - if (LIBSSL AND LIBCRYPTO)
209 - message (STATUS "Using system-provided libssl: ${LIBSSL}")
210 - add_library (libssl INTERFACE)
211 - target_link_libraries (libssl INTERFACE ${LIBSSL} ${LIBCRYPTO})
212 - set (OPENSSL_FOUND YES)
214 - pkg_check_modules (OPENSSL eopenssl11)
216 - set (EOPENSSL_FOUND YES)
220 - pkg_check_modules (OPENSSL openssl)
222 + pkg_check_modules (OPENSSL openssl)
224 # Unicode text strings
225 set (UNISTRING_DIR "" CACHE PATH "Location of libunistring")