mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-09 15:13:31 -04:00
media-gfx/glslViewer: new package, add 3.2.4
Signed-off-by: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
This commit is contained in:
1
media-gfx/glslViewer/Manifest
Normal file
1
media-gfx/glslViewer/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST glslViewer-3.2.4.tar.gz 108258877 BLAKE2B 552beedeafed97372f36a307c2ce3f742d4437ae3357cf3fa30c091953bac834aedde5270313f267657317c433b3e5eb2378427a66b5687de3956e99ae65f21b SHA512 20766ad1fe288d4e193849809b5633635b2d3a551cd46c9378f80c8817aeb90180847f2e9540e02f6c5729e0fa7fd51c45b4a1fa5f7e4ed6e397c58ef3e32c47
|
||||
@@ -0,0 +1,182 @@
|
||||
From 5fe84056dceee18e99cfcc490330475ac2fd7b6c Mon Sep 17 00:00:00 2001
|
||||
From: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
|
||||
Date: Sat, 28 Jun 2025 04:31:30 +0700
|
||||
Subject: [PATCH 1/2] Removed unsafe post-install MIME and desktop database
|
||||
updates to avoid sandbox violations
|
||||
|
||||
Signed-off-by: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
|
||||
---
|
||||
CMakeLists.txt | 55 ++++++++++++++++++++------------------------------
|
||||
1 file changed, 22 insertions(+), 33 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 6df0206..a7b041c 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -5,7 +5,7 @@ set(VERSION_MINOR 3)
|
||||
set(VERSION_PATCH 0)
|
||||
set(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}")
|
||||
|
||||
-project(glslViewer
|
||||
+project(glslViewer
|
||||
VERSION ${VERSION}
|
||||
LANGUAGES C CXX )
|
||||
|
||||
@@ -13,7 +13,7 @@ set(CMAKE_CXX_STANDARD 14)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
|
||||
-# The compiled vera
|
||||
+# The compiled vera
|
||||
add_subdirectory(deps)
|
||||
|
||||
if(MSVC)
|
||||
@@ -38,7 +38,7 @@ set(CORE_HEADERS
|
||||
"${PROJECT_SOURCE_DIR}/src/core/tools/tracker.h"
|
||||
)
|
||||
|
||||
-set(CORE_SOURCES
|
||||
+set(CORE_SOURCES
|
||||
"${PROJECT_SOURCE_DIR}/src/core/sandbox.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/core/sceneRender.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/core/uniforms.cpp"
|
||||
@@ -48,7 +48,7 @@ set(CORE_SOURCES
|
||||
"${PROJECT_SOURCE_DIR}/src/core/tools/tracker.cpp"
|
||||
)
|
||||
|
||||
-add_executable(glslViewer
|
||||
+add_executable(glslViewer
|
||||
"${PROJECT_SOURCE_DIR}/src/main.cpp"
|
||||
${CORE_SOURCES}
|
||||
)
|
||||
@@ -63,8 +63,8 @@ target_compile_definitions(glslViewer PRIVATE GLSLVIEWER_VERSION_MAJOR=${VERSION
|
||||
target_compile_definitions(glslViewer PRIVATE GLSLVIEWER_VERSION_MINOR=${VERSION_MINOR})
|
||||
target_compile_definitions(glslViewer PRIVATE GLSLVIEWER_VERSION_PATCH=${VERSION_PATCH})
|
||||
|
||||
-if (EMSCRIPTEN)
|
||||
-
|
||||
+if (EMSCRIPTEN)
|
||||
+
|
||||
set(LFLAGS "${LFLAGS} -s USE_GLFW=3")
|
||||
# set(LFLAGS "${LFLAGS} -s FULL_ES2=1")
|
||||
# set(LFLAGS "${LFLAGS} -s FULL_ES3=1")
|
||||
@@ -79,16 +79,16 @@ if (EMSCRIPTEN)
|
||||
set(LFLAGS "${LFLAGS} -s NO_DYNAMIC_EXECUTION=1")
|
||||
# set(LFLAGS "${LFLAGS} -s NO_DISABLE_EXCEPTION_CATCHING")
|
||||
|
||||
- # Copy the default index.html
|
||||
+ # Copy the default index.html
|
||||
file(COPY assets/index.html DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
|
||||
|
||||
- # Add examples folder to the .data file system
|
||||
+ # Add examples folder to the .data file system
|
||||
file(COPY examples DESTINATION ${CMAKE_CURRENT_BINARY_DIR} )
|
||||
set(LFLAGS "${LFLAGS} --preload-file examples")
|
||||
|
||||
set_target_properties(glslViewer PROPERTIES LINK_FLAGS "${LFLAGS}")
|
||||
target_link_libraries(glslViewer PRIVATE glfw webxr)
|
||||
-
|
||||
+
|
||||
else()
|
||||
find_package(Curses)
|
||||
if (CURSES_FOUND)
|
||||
@@ -97,8 +97,8 @@ else()
|
||||
target_link_libraries(glslViewer PRIVATE ${CURSES_LIBRARY})
|
||||
endif()
|
||||
|
||||
- target_compile_definitions(glslViewer PUBLIC
|
||||
- SUPPORT_MULTITHREAD_RECORDING
|
||||
+ target_compile_definitions(glslViewer PUBLIC
|
||||
+ SUPPORT_MULTITHREAD_RECORDING
|
||||
SUPPORT_OSC
|
||||
)
|
||||
|
||||
@@ -139,9 +139,9 @@ else()
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}-${SYSTEM_NAME}-${SYSTEM_ARCH}")
|
||||
|
||||
if (MSVC)
|
||||
- target_link_libraries(glslViewer PRIVATE
|
||||
- lo_static
|
||||
- Ws2_32.lib
|
||||
+ target_link_libraries(glslViewer PRIVATE
|
||||
+ lo_static
|
||||
+ Ws2_32.lib
|
||||
Iphlpapi.lib
|
||||
)
|
||||
|
||||
@@ -151,28 +151,17 @@ else()
|
||||
else()
|
||||
target_link_libraries(glslViewer PRIVATE pthread dl lo_static)
|
||||
install(TARGETS glslViewer DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
-
|
||||
+
|
||||
if (NOT APPLE)
|
||||
target_link_libraries(glslViewer PRIVATE atomic)
|
||||
|
||||
# Install glslViewer Icon
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/assets/glslViewer.png" DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pixmaps)
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/assets/glslViewer.desktop" DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications)
|
||||
-
|
||||
+
|
||||
# Install supported MIME file types by GlslViewer
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/assets/glslViewer-types.xml" DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/mime/packages)
|
||||
- find_program(XDG-MIME_EXECUTABLE xdg-mime)
|
||||
- install(CODE "execute_process(COMMAND ${XDG-MIME_EXECUTABLE} install --novendor ${CMAKE_INSTALL_FULL_DATAROOTDIR}/mime/packages/glslViewer-types.xml)")
|
||||
- install(CODE "execute_process(COMMAND ${XDG-MIME_EXECUTABLE} default ${CMAKE_INSTALL_FULL_DATAROOTDIR}/applications/glslViewer.desktop model/lst)")
|
||||
- install(CODE "execute_process(COMMAND ${XDG-MIME_EXECUTABLE} default ${CMAKE_INSTALL_FULL_DATAROOTDIR}/applications/glslViewer.desktop model/ply)")
|
||||
- install(CODE "execute_process(COMMAND ${XDG-MIME_EXECUTABLE} default ${CMAKE_INSTALL_FULL_DATAROOTDIR}/applications/glslViewer.desktop model/obj)")
|
||||
- install(CODE "execute_process(COMMAND ${XDG-MIME_EXECUTABLE} default ${CMAKE_INSTALL_FULL_DATAROOTDIR}/applications/glslViewer.desktop model/gltf-binary)")
|
||||
- install(CODE "execute_process(COMMAND ${XDG-MIME_EXECUTABLE} default ${CMAKE_INSTALL_FULL_DATAROOTDIR}/applications/glslViewer.desktop model/gltf+json)")
|
||||
- find_program(UPDATE_MIME_DATABASE update-mime-database)
|
||||
- install(CODE "execute_process(COMMAND ${UPDATE_MIME_DATABASE} ${CMAKE_INSTALL_FULL_DATAROOTDIR}/mime )")
|
||||
- find_program(UPDATE_DESKTOP_DATABASE update-desktop-database)
|
||||
- install(CODE "execute_process(COMMAND ${UPDATE_DESKTOP_DATABASE} ${CMAKE_INSTALL_FULL_DATAROOTDIR}/applications)")
|
||||
-
|
||||
+
|
||||
# Add a thumbnailer for 3D Models
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/assets/glslViewer.thumbnailer" DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/thumbnailers)
|
||||
install(FILES "${PROJECT_SOURCE_DIR}/assets/glslThumbnailer.sh"
|
||||
@@ -200,7 +189,7 @@ else()
|
||||
set(CPACK_DEBIAN_PACKAGE_DEPENDS)
|
||||
foreach(DEP ${DEBSRC_PACKAGE_DEPENDS})
|
||||
set(CPACK_DEBIAN_PACKAGE_DEPEND "${CPACK_DEBIAN_PACKAGE_DEPENDS}, ${DEP}")
|
||||
- endforeach(DEP ${DEBSRC_PACKAGE_DEPENDS})
|
||||
+ endforeach(DEP ${DEBSRC_PACKAGE_DEPENDS})
|
||||
|
||||
set(CPACK_DEBIAN_BUILD_DEPENDS)
|
||||
foreach(DEP ${DEBSRC_BUILD_DEPENDS})
|
||||
@@ -211,7 +200,7 @@ else()
|
||||
execute_process(
|
||||
COMMAND dpkg --print-architecture
|
||||
OUTPUT_VARIABLE DEB_ARCHITECTURE
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
+ OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
message(STATUS "package_details.cmake: your architecture is ${DEB_ARCHITECTURE}")
|
||||
|
||||
@@ -220,13 +209,13 @@ else()
|
||||
set(CPACK_DEBIAN_PACKAGE_PRIORITY extra )
|
||||
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Patricio Gonzalez Vivo <patriciogonzalezvivo@gmail.com>")
|
||||
set(CPACK_DEBIAN_DISTRIBUTION_NAME ubuntu )
|
||||
- set(CPACK_DEBIAN_DISTRIBUTION_RELEASES bionic focal )
|
||||
+ set(CPACK_DEBIAN_DISTRIBUTION_RELEASES bionic focal )
|
||||
set(CPACK_DEBIAN_CHANGELOG " * Latest development version.")
|
||||
# set(CPACK_DEBIAN_RESOURCE_FILE_CHANGELOG ${PROJECT_SOURCE_DIR}/changelog)
|
||||
# set(CPACK_DEBIAN_UPDATE_CHANGELOG ON)
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}-${DEB_ARCHITECTURE}")
|
||||
endif()
|
||||
-
|
||||
+
|
||||
endif()
|
||||
|
||||
include(CPack)
|
||||
@@ -259,4 +248,4 @@ if (PYTHON_BINDINGS)
|
||||
target_include_directories(PyGlslViewer PUBLIC ${DEPS_FOLDER})
|
||||
target_link_libraries(PyGlslViewer PRIVATE vera pybind11::module)
|
||||
|
||||
-endif()
|
||||
\ No newline at end of file
|
||||
+endif()
|
||||
--
|
||||
2.50.0
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
From d813c82384ebd642376e09d73d6254a244f2b40a Mon Sep 17 00:00:00 2001
|
||||
From: Nguyen Dinh Dang Duong <dangduong31205@gmail.com>
|
||||
Date: Sat, 28 Jun 2025 04:49:46 +0700
|
||||
Subject: [PATCH 2/2] Install libvera.so to machine
|
||||
|
||||
`
|
||||
---
|
||||
CMakeLists.txt | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index a7b041c..03cf64d 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -16,6 +16,11 @@ set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
# The compiled vera
|
||||
add_subdirectory(deps)
|
||||
|
||||
+install(TARGETS vera
|
||||
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
+
|
||||
if(MSVC)
|
||||
add_definitions( -DPLATFORM_WINDOWS )
|
||||
endif()
|
||||
--
|
||||
2.50.0
|
||||
|
||||
61
media-gfx/glslViewer/glslViewer-3.2.4.ebuild
Normal file
61
media-gfx/glslViewer/glslViewer-3.2.4.ebuild
Normal file
@@ -0,0 +1,61 @@
|
||||
# Copyright 2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake git-r3
|
||||
|
||||
DESCRIPTION="Console-based GLSL live-coding viewer"
|
||||
HOMEPAGE="https://github.com/patriciogonzalezvivo/glslViewer"
|
||||
EGIT_REPO_URI="https://github.com/patriciogonzalezvivo/glslViewer.git"
|
||||
EGIT_COMMIT="7eb6254cb4cedf03f1c78653f90905fe0c3b48fb"
|
||||
|
||||
LICENSE="BSD-3-Clause"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="ffmpeg xvfb"
|
||||
|
||||
DEPEND="
|
||||
media-libs/glu
|
||||
sys-libs/ncurses
|
||||
ffmpeg? (
|
||||
media-video/ffmpeg
|
||||
)
|
||||
xvfb? (
|
||||
x11-base/xorg-server[xvfb]
|
||||
)
|
||||
x11-misc/shared-mime-info
|
||||
"
|
||||
RDEPEND="${DEPEND}"
|
||||
BDEPEND="
|
||||
dev-build/cmake
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/0001-Removed-unsafe-post-install-MIME-and-desktop-databas.patch"
|
||||
"${FILESDIR}/0002-Install-libvera.so-to-machine.patch"
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCMAKE_EXE_LINKER_FLAGS="-ltinfo"
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
dodoc README.md
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg-icon-resource forceupdate || die
|
||||
update-mime-database /usr/share/mime || die
|
||||
update-desktop-database /usr/share/applications || die
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
update-mime-database /usr/share/mime || die
|
||||
update-desktop-database /usr/share/applications || die
|
||||
}
|
||||
12
media-gfx/glslViewer/metadata.xml
Normal file
12
media-gfx/glslViewer/metadata.xml
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>dangduong31205@gmail.com</email>
|
||||
<name>Nguyen Dinh Dang Duong</name>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="ffmpeg">Enable ffmpeg/libav-based audio/video codec support</flag>
|
||||
<flag name="xvfb">Enable support for thumbnail creation via Xvfb</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
Reference in New Issue
Block a user