Skip to content

Conversation

@Begasus
Copy link
Contributor

@Begasus Begasus commented Dec 23, 2025

No description provided.

@Begasus
Copy link
Contributor Author

Begasus commented Dec 23, 2025

This only fixes the build, launching it still errors out not finding the assets?

~> Li-ri 
screen frame: BRect(l:0.0, t:0.0, r:1919.0, b:1079.0)

OpenGL load add-on: /boot/system/add-ons/opengl/Software Pipe
OpenGL add-on registered: /boot/system/add-ons/opengl/Software Pipe
GalliumContext: CreateDisplay: Using llvmpipe (LLVM 12.0.1, 256 bits) driver.
screen frame: BRect(l:0.0, t:0.0, r:1919.0, b:1079.0)

ERROR: Unable to find 'Sounds/clic.wav'
ERROR: Unable to find 'Sounds/speed.wav'
ERROR: Unable to find 'Sounds/crash.wav'
ERROR: Unable to find 'Sounds/end.wav'
ERROR: Unable to find 'Sounds/lose.wav'
ERROR: Unable to find 'Sounds/etire.wav'
ERROR: Unable to find 'Sounds/wagon.wav'
ERROR: Unable to find 'Sounds/reduit.wav'
ERROR: Unable to find 'Sounds/live.wav'
ERROR: Unable to find 'Sounds/menu.mod'
ERROR: Unable to find 'language.dat'
ERROR: Unable to find 'language.dat'

@Begasus Begasus marked this pull request as draft December 23, 2025 15:01
@petitlapin
Copy link
Owner

This only fixes the build, launching it still errors out not finding the assets?

~> Li-ri 
screen frame: BRect(l:0.0, t:0.0, r:1919.0, b:1079.0)

OpenGL load add-on: /boot/system/add-ons/opengl/Software Pipe
OpenGL add-on registered: /boot/system/add-ons/opengl/Software Pipe
GalliumContext: CreateDisplay: Using llvmpipe (LLVM 12.0.1, 256 bits) driver.
screen frame: BRect(l:0.0, t:0.0, r:1919.0, b:1079.0)

ERROR: Unable to find 'Sounds/clic.wav'
ERROR: Unable to find 'Sounds/speed.wav'
ERROR: Unable to find 'Sounds/crash.wav'
ERROR: Unable to find 'Sounds/end.wav'
ERROR: Unable to find 'Sounds/lose.wav'
ERROR: Unable to find 'Sounds/etire.wav'
ERROR: Unable to find 'Sounds/wagon.wav'
ERROR: Unable to find 'Sounds/reduit.wav'
ERROR: Unable to find 'Sounds/live.wav'
ERROR: Unable to find 'Sounds/menu.mod'
ERROR: Unable to find 'language.dat'
ERROR: Unable to find 'language.dat'

Thanks! The data are supposed to be installed in ${CMAKE_INSTALL_DATADIR}/Li-ri (https://github.com/petitlapin/Li-Ri/blob/main/CMakeLists.txt#L111) and this can be configured in command-line invocation:

Li-Ri/INSTALL

Line 20 in 71195e6

To specify the folder where to look for the data files, you can set the variable `LIRI_DATA_DIR` to the value you want in the cmake invocation: `cmake -DCMAKE_BUILD_TYPE=Release -S . -B build -DLIRI_DATA_DIR=/usr/local/Li-ri/data/`.

@Begasus
Copy link
Contributor Author

Begasus commented Dec 23, 2025

Even with setting the data dir it doesn't seem to find them:

cmake -B build -S . -DCMAKE_INSTALL_PREFIX=/boot/home/config/non-packaged -DCMAKE_INSTALL_DATADIR=/boot/home/config/non-packaged/data/Li-ri

@petitlapin
Copy link
Owner

can you try: cmake -B build -S . -DCMAKE_INSTALL_PREFIX=/boot/home/config/non-packaged -DLIRI_DATA_DIR=/boot/home/config/non-packaged/data/Li-ri?

@Begasus
Copy link
Contributor Author

Begasus commented Dec 23, 2025

can you try: cmake -B build -S . -DCMAKE_INSTALL_PREFIX=/boot/home/config/non-packaged -DLIRI_DATA_DIR=/boot/home/config/non-packaged/data/Li-ri?

Almost, this worked :)

cmake -B build -S . -DCMAKE_INSTALL_PREFIX=/boot/home/config/non-packaged -DLIRI_DATA_DIR=/boot/home/config/non-packaged/data/Li-ri -DCMAKE_INSTALL_DATADIR=/boot/home/config/non-packaged/data/

EDIT:

Li-ri

Only need to work this into a recipe update with this patch, will get back on that ;)

@petitlapin
Copy link
Owner

I can merge this PR and create a new release to make it easier

@Begasus
Copy link
Contributor Author

Begasus commented Dec 23, 2025

Also used: (not sure if it's required)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 58d85f8..c5f0ca1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -91,9 +91,9 @@ target_link_libraries(${LIRI_EXECUTABLE_NAME} PRIVATE SimpleIni::SimpleIni)
 
 include(GNUInstallDirs)
 install(TARGETS ${LIRI_EXECUTABLE_NAME}
-  ARCHIVE DESTINATION bin
-  RUNTIME DESTINATION bin
-  LIBRARY DESTINATION lib
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_BINDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
   BUNDLE DESTINATION .)
 
 install(FILES io.github.petitlapin.Li-ri.appdata.xml DESTINATION "${CMAKE_INSTALL_DATADIR}/appdata/")

EDIT: this sneaked in, in my work directory I don't have it :)

@petitlapin
Copy link
Owner

Also used: (not sure if it's required)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 58d85f8..c5f0ca1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -91,9 +91,9 @@ target_link_libraries(${LIRI_EXECUTABLE_NAME} PRIVATE SimpleIni::SimpleIni)
 
 include(GNUInstallDirs)
 install(TARGETS ${LIRI_EXECUTABLE_NAME}
-  ARCHIVE DESTINATION bin
-  RUNTIME DESTINATION bin
-  LIBRARY DESTINATION lib
+  ARCHIVE DESTINATION ${CMAKE_INSTALL_BINDIR}
+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
   BUNDLE DESTINATION .)
 
 install(FILES io.github.petitlapin.Li-ri.appdata.xml DESTINATION "${CMAKE_INSTALL_DATADIR}/appdata/")

yes, let's make it cleaner (Probably need to add include(GNUInstallDirs)), thanks!

@Begasus
Copy link
Contributor Author

Begasus commented Dec 23, 2025

yes, let's make it cleaner (Probably need to add include(GNUInstallDirs)), thanks!

Should I push that change also (PS GNUInstallDirs is already included)?
Another thing, I see it installs a header and cmake configuration files for SimpleIni, is that required?

@petitlapin
Copy link
Owner

yes, let's make it cleaner (Probably need to add include(GNUInstallDirs)), thanks!

Should I push that change also (PS GNUInstallDirs is already included)? Another thing, I see it installs a header and cmake configuration files for SimpleIni, is that required?

I've just pushed it directly.

For SimpleIni, can you run cmake with -DUSE_SYSTEM_SIMPLEINI=ON, to see if there no extra files (and in the recipe add it as dependency if you already have a recipe for it)? They should only be needed if we build it manually

@Begasus
Copy link
Contributor Author

Begasus commented Dec 23, 2025

For SimpleIni, can you run cmake with -DUSE_SYSTEM_SIMPLEINI=ON, to see if there no extra files (and in the recipe add it as dependency if you already have a recipe for it)? They should only be needed if we build it manually

We don't have a seperate package for it it seems, another package pulls in the sources in the recipe (this way we can check the archive with a checksum which makes it safer to download then with using git). Going to check if I can do the same on our side.

EDIT: fixed local package for Simpleini :)
-- Found SimpleIni, version: 4.25

@Begasus Begasus marked this pull request as ready for review December 23, 2025 18:40
@Begasus
Copy link
Contributor Author

Begasus commented Dec 23, 2025

OK, think I'm done here. If things get merged I'll hold of if you intend to release a new version. Thanks for the pointers!

@petitlapin
Copy link
Owner

petitlapin commented Dec 23, 2025

OK, think I'm done here. If things get merged I'll hold of if you intend to release a new version. Thanks for the pointers!

thank you! Yes, I'm doing a release for it.

edit: tag v3.1.6 done :)

@petitlapin petitlapin merged commit 98200a0 into petitlapin:main Dec 23, 2025
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants