Browse Source

[docs] full Gentoo caveats/deps (#2939)

Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2939
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
pull/2924/head
crueter 2 months ago
parent
commit
6a9ad5e1ea
No known key found for this signature in database GPG Key ID: 425ACD2D4830EBC6
  1. 16
      docs/Caveats.md
  2. 40
      docs/Deps.md

16
docs/Caveats.md

@ -1,6 +1,7 @@
# Caveats # Caveats
<!-- TOC --> <!-- TOC -->
- [Caveats](#caveats)
- [Arch Linux](#arch-linux) - [Arch Linux](#arch-linux)
- [Gentoo Linux](#gentoo-linux) - [Gentoo Linux](#gentoo-linux)
- [macOS](#macos) - [macOS](#macos)
@ -9,6 +10,7 @@
- [OpenBSD](#openbsd) - [OpenBSD](#openbsd)
- [FreeBSD](#freebsd) - [FreeBSD](#freebsd)
- [NetBSD](#netbsd) - [NetBSD](#netbsd)
- [MSYS2](#msys2)
<!-- /TOC --> <!-- /TOC -->
## Arch Linux ## Arch Linux
@ -17,7 +19,9 @@ Eden is also available as an [AUR package](https://aur.archlinux.org/packages/ed
## Gentoo Linux ## Gentoo Linux
Enable the GURU repository to install [`games-emulation/eden`](https://gitweb.gentoo.org/repo/proj/guru.git/tree/games-emulation/eden). This repository also contains some additional dependencies, such as mcl, sirit, oaknut, etc.
[`games-emulation/eden`](https://gitweb.gentoo.org/repo/proj/guru.git/tree/games-emulation/eden) is available in the GURU. This repository also contains some additional dependencies, such as mcl, sirit, oaknut, etc.
If you're having issues with building, always consult that ebuild.
## macOS ## macOS
@ -121,7 +125,7 @@ export PATH="/${MSYS_TOOLCHAIN}/bin:$PATH"
# grab deps of a dll or exe and place them in the current dir # grab deps of a dll or exe and place them in the current dir
deps() { deps() {
# string parsing is fun # string parsing is fun
objdump -p "$1" | grep -e ".DLL Name:" | cut -d" " -f3 | while read -r dll; do
objdump -p "$1" | awk '/DLL Name:/ {print $3}' | while read -r dll; do
[ -z "$dll" ] && continue [ -z "$dll" ] && continue
# bin directory is used for DLLs, so we can do a quick "hack" # bin directory is used for DLLs, so we can do a quick "hack"
@ -130,8 +134,8 @@ deps() {
[ -z "$dllpath" ] && continue [ -z "$dllpath" ] && continue
# explicitly include system32/syswow64 deps
# these aren't needed to be bundled, as all systems include them
# explicitly exclude system32/syswow64 deps
# these aren't needed to be bundled, as all systems already have them
case "$dllpath" in case "$dllpath" in
*System32* | *SysWOW64*) continue ;; *System32* | *SysWOW64*) continue ;;
esac esac
@ -152,8 +156,8 @@ deps() {
deps eden.exe deps eden.exe
# deploy Qt plugins and such # deploy Qt plugins and such
windeployqt6 --release --no-compiler-runtime \
--no-opengl-sw --no-system-dxc-compiler --no-system-d3d-compiler eden.exe
windeployqt6 --no-compiler-runtime --no-opengl-sw --no-system-dxc-compiler \
--no-system-d3d-compiler eden.exe
# grab deps for Qt plugins # grab deps for Qt plugins
find ./*/ -name "*.dll" | while read -r dll; do deps "$dll"; done find ./*/ -name "*.dll" | while read -r dll; do deps "$dll"; done

40
docs/Deps.md

@ -93,7 +93,45 @@ Click on the arrows to expand.
GURU must be enabled: GURU must be enabled:
``` ```
sudo
sudo emerge -a app-eselect/eselect-repository
sudo eselect repository enable guru
sudo emaint sync -r guru
```
Now, install all deps:
```sh
sudo emerge -a \
app-arch/lz4 app-arch/zstd app-arch/unzip \
dev-libs/libfmt dev-libs/libusb dev-libs/mcl dev-libs/sirit \
dev-libs/unordered_dense dev-libs/boost dev-libs/openssl dev-libs/discord-rpc \
dev-util/spirv-tools dev-util/spirv-headers dev-util/vulkan-headers \
dev-util/vulkan-utility-libraries dev-util/glslang \
media-gfx/renderdoc media-libs/libva media-libs/opus media-video/ffmpeg \
media-libs/VulkanMemoryAllocator media-libs/libsdl2 media-libs/cubeb \
net-libs/enet net-libs/mbedtls \
sys-libs/zlib \
dev-cpp/nlohmann_json dev-cpp/simpleini dev-cpp/cpp-httplib dev-cpp/cpp-jwt \
games-util/gamemode \
net-wireless/wireless-tools \
dev-qt/qtbase:6 dev-libs/quazip \
virtual/pkgconfig
```
- On `amd64`, also add `dev-libs/xbyak`
- On `riscv64`, also add `dev-libs/biscuit` (currently unavailable)
- On `aarch64`, also add `dev-libs/oaknut`
- If tests are enabled, also add `dev-libs/oaknut` and `dev-cpp/catch`
Required USE flags:
- `dev-qt/qtbase network concurrent dbus gui widgets`
- `dev-libs/quazip qt6`
- `net-libs/mbedtls cmac`
- `media-libs/libsdl2 haptic joystick sound video`
- `dev-cpp/cpp-httplib ssl`
[Caveats](./Caveats.md#gentoo-linux)
</details> </details>
<details> <details>

Loading…
Cancel
Save