diff --git a/distributions/ROCKNIX/config/functions b/distributions/ROCKNIX/config/functions index 34440cd3c55..500a5bd5595 100644 --- a/distributions/ROCKNIX/config/functions +++ b/distributions/ROCKNIX/config/functions @@ -282,10 +282,28 @@ if [ "\${saved_entry}" ]; then else set timeout=-1 fi +EOF + + cat << EOF +set abl_known= if fdtdump --prop model --set abl_model; then - set default="abl" - set timeout=2 +EOF + + xmlstarlet sel -t -m "//rocknix/${DEVICE}/file[@full]" \ + -v "@full" -n "${CONFIGXML}" 2>/dev/null | while IFS= read -r FULL; do + cat << EOF + if [ "\${abl_model}" = "${FULL}" ]; then set abl_known=1; fi +EOF + done + + cat << EOF + if [ -n "\${abl_known}" ]; then + set default="abl" + set timeout=2 + else + set abl_model= + fi fi if [ x"\${feature_menuentry_id}" = xy ]; then @@ -314,7 +332,7 @@ if [ "\${saved_entry}" = "${SHORT}" ]; then set rotation=$(((360 - ROT * 90) % 3 EOF done - xmlstarlet sel -t -m "//rocknix/${DEVICE}/file[@rotation]" \ + xmlstarlet sel -t -m "//rocknix/${DEVICE}/file[@rotation and @full]" \ -v "concat(@full, '|', @rotation)" -n "${CONFIGXML}" 2>/dev/null | while IFS='|' read -r FULL ROT; do cat << EOF if [ "\${abl_model}" = "${FULL}" ]; then set rotation=$(((360 - ROT * 90) % 360)); fi diff --git a/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam.sh b/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam.sh index 1333cc9236a..457ae25bf33 100755 --- a/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam.sh +++ b/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam.sh @@ -20,16 +20,6 @@ steam_prepare_storage_and_vdf() { steam_load_es_thunk_settings() { GAME=$(echo "${1}" | sed "s#^/.*/##") PLATFORM=$(echo "${2}" | sed "s#^/.*/##") - ASOUND_LIB=$(get_setting asound_host_library "${PLATFORM}" "${GAME}") - ASOUND_LIB=${ASOUND_LIB:-0} - DRM_LIB=$(get_setting drm_host_library "${PLATFORM}" "${GAME}") - DRM_LIB=${DRM_LIB:-0} - VULKAN_LIB=$(get_setting vulkan_host_library "${PLATFORM}" "${GAME}") - VULKAN_LIB=${VULKAN_LIB:-0} - WAYLAND_LIB=$(get_setting wayland_client_host_library "${PLATFORM}" "${GAME}") - WAYLAND_LIB=${WAYLAND_LIB:-0} - GL_LIB=$(get_setting gl_host_library "${PLATFORM}" "${GAME}") - GL_LIB=${GL_LIB:-0} LSFG_ENABLE=$(get_setting lsfg_enable "${PLATFORM}" "${GAME}") LSFG_ENABLE=${LSFG_ENABLE:-0} LSFG_MULTIPLIER=$(get_setting lsfg_multiplier "${PLATFORM}" "${GAME}") @@ -62,26 +52,6 @@ steam_apply_lsfg_settings() { fi } -steam_write_fex_config_json() { - local tmp - tmp=$(mktemp) - jq \ - --arg asound "$ASOUND_LIB" \ - --arg drm "$DRM_LIB" \ - --arg vulkan "$VULKAN_LIB" \ - --arg wayland "$WAYLAND_LIB" \ - --arg gl "$GL_LIB" \ - '.ThunksDB |= { - asound: ($asound | tonumber), - drm: ($drm | tonumber), - Vulkan: ($vulkan | tonumber), - WaylandClient: ($wayland | tonumber), - GL: ($gl | tonumber) - }' \ - /storage/.config/fex-emu/Config.json >"$tmp" && - mv "$tmp" /storage/.config/fex-emu/Config.json -} - steam_set_cpu_affinity() { local cores cores=$(get_setting "cores" "${PLATFORM}" "${GAME}") @@ -98,11 +68,6 @@ steam_debug_print() { echo "GAME set to: ${GAME}" echo "PLATFORM set to: ${PLATFORM}" echo "CPU CORES set to: ${EMUPERF}" - echo "ASOUND HOST LIB set to: ${ASOUND_LIB}" - echo "DRM HOST LIB set to: ${DRM_LIB}" - echo "VULKAN HOST LIB set to: ${VULKAN_LIB}" - echo "WAYLAND HOST LIB set to: ${WAYLAND_LIB}" - echo "GL HOST LIB set to: ${GL_LIB}" echo "LSFG ENABLE set to: ${LSFG_ENABLE}" echo "LSFG MULTIPLIER set to: ${LSFG_MULTIPLIER}" echo "LSFG FLOW SCALE set to: ${LSFG_FLOW_SCALE}" @@ -188,7 +153,7 @@ steam_launch_bigpicture() { GAMESCOPE_MODE_SAVE_FILE="${gamescope_mode_file}" GAMESCOPE_FAKE_OUTPUT_MM=508x286 \ env -u WAYLAND_DISPLAY LD_LIBRARY_PATH=/storage/.local/share/Steam/lib/aarch64-linux-gnu/ ${EMUPERF} \ gamescope $PREFER_OUTPUT -W "$W" -H "$H" -r "$REFRESH_HZ" --xwayland-count 2 --mangoapp --backend drm --force-orientation "${force_orientation}" -e -- \ - /storage/.local/share/Steam/steamrtarm64/steam -steamdeck -steamos3 -gamepadui -noverifyfiles -nobootstrapupdate -skipinitialbootstrap -norepairfiles -noshaders ${game_uri:+"$game_uri"} + /storage/.local/share/Steam/steamrtarm64/steam -deckard -steamos3 -gamepadui -noverifyfiles -nobootstrapupdate -skipinitialbootstrap -norepairfiles -noshaders ${game_uri:+"$game_uri"} systemctl start essway exit 0 else diff --git a/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam_arm64.sh b/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam_arm64.sh index e0fe7755b8b..0d5bfa4faa3 100755 --- a/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam_arm64.sh +++ b/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam_arm64.sh @@ -15,7 +15,6 @@ set_kill set "gamescope steam FEX" steam_ensure_fex_config_template steam_prepare_storage_and_vdf steam_load_es_thunk_settings "$@" -steam_write_fex_config_json steam_apply_lsfg_settings steam_apply_fps_limit steam_set_cpu_affinity diff --git a/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam_x86.sh b/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam_x86.sh index df0c89fe09d..2ba5487932f 100755 --- a/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam_x86.sh +++ b/projects/ROCKNIX/packages/emulators/standalone/steam/scripts/start_steam_x86.sh @@ -15,7 +15,6 @@ set_kill set "-9 FEX" steam_ensure_fex_config_template steam_prepare_storage_and_vdf steam_load_es_thunk_settings "$@" -steam_write_fex_config_json steam_apply_lsfg_settings steam_apply_fps_limit steam_set_cpu_affinity diff --git a/projects/ROCKNIX/packages/graphics/SDL2/package.mk b/projects/ROCKNIX/packages/graphics/SDL2/package.mk index 6c9bd5847b1..317d7893b83 100644 --- a/projects/ROCKNIX/packages/graphics/SDL2/package.mk +++ b/projects/ROCKNIX/packages/graphics/SDL2/package.mk @@ -9,7 +9,7 @@ PKG_SITE="https://www.libsdl.org/" PKG_URL="https://www.libsdl.org/release/SDL2-${PKG_VERSION}.tar.gz" PKG_DEPENDS_TARGET="toolchain alsa-lib systemd dbus pulseaudio libdrm SDL2:host libX11:host" PKG_LONGDESC="Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware." -PKG_DEPENDS_HOST="toolchain:host distutilscross:host" +PKG_DEPENDS_HOST="toolchain:host" if [ ! "${OPENGL_SUPPORT}" = "no" ]; then PKG_DEPENDS_TARGET+=" ${OPENGL} glu" diff --git a/projects/ROCKNIX/packages/graphics/SDL3/package.mk b/projects/ROCKNIX/packages/graphics/SDL3/package.mk index 66f31500fcd..4a4b842b390 100644 --- a/projects/ROCKNIX/packages/graphics/SDL3/package.mk +++ b/projects/ROCKNIX/packages/graphics/SDL3/package.mk @@ -9,7 +9,7 @@ PKG_SITE="https://www.libsdl.org/" PKG_URL="https://www.libsdl.org/release/SDL3-${PKG_VERSION}.tar.gz" PKG_DEPENDS_TARGET="toolchain alsa-lib systemd dbus pulseaudio pipewire libdrm libusb" PKG_LONGDESC="Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware." -PKG_DEPENDS_HOST="toolchain:host distutilscross:host" +PKG_DEPENDS_HOST="toolchain:host" PKG_TOOLCHAIN="cmake" diff --git a/projects/ROCKNIX/packages/graphics/lsfg-vk/package.mk b/projects/ROCKNIX/packages/graphics/lsfg-vk/package.mk index d62e33836f1..ae0fc553125 100644 --- a/projects/ROCKNIX/packages/graphics/lsfg-vk/package.mk +++ b/projects/ROCKNIX/packages/graphics/lsfg-vk/package.mk @@ -28,7 +28,7 @@ pre_configure_host() { -DLSFGVK_BUILD_CLI=OFF \ -DLSFGVK_INSTALL_DEVELOP=OFF \ -DLSFGVK_INSTALL_XDG_FILES=OFF \ - -DLSFGVK_LAYER_LIBRARY_PATH=/usr/lib/liblsfg-vk-layer.so" + -DLSFGVK_LAYER_LIBRARY_PATH=/usr/lib/liblsfg-vk-layer-x86.so" } makeinstall_target() { @@ -45,7 +45,8 @@ makeinstall_target() { ${INSTALL}/usr/lib/pressure-vessel/overrides/share/vulkan/implicit_layer.d mkdir -p ${INSTALL}/usr/share/fex-emu - cp -a ${TOOLCHAIN}/lib/liblsfg-vk-layer.so ${INSTALL}/usr/share/fex-emu + cp -a ${TOOLCHAIN}/lib/liblsfg-vk-layer.so ${INSTALL}/usr/share/fex-emu/liblsfg-vk-layer-x86.so + cp -a ${TOOLCHAIN}/share/vulkan/implicit_layer.d/VkLayer_LSFGVK_frame_generation.json ${INSTALL}/usr/share/fex-emu/VkLayer_LSFGVK_frame_generation-x86.json } diff --git a/projects/ROCKNIX/packages/python/devel/distutilscross/package.mk b/projects/ROCKNIX/packages/python/devel/distutilscross/package.mk deleted file mode 100644 index 69ea5b28a25..00000000000 --- a/projects/ROCKNIX/packages/python/devel/distutilscross/package.mk +++ /dev/null @@ -1,17 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0-or-later -# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv) -# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv) - -PKG_NAME="distutilscross" -PKG_VERSION="0.1" -PKG_SHA256="4ed3fb427708c8a3ed5fe9c599532480f581078a1e0aec0e50f40eb58e9f0015" -PKG_LICENSE="GPL" -PKG_SITE="https://pypi.org/project/distutilscross/" -PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz" -PKG_DEPENDS_HOST="Python3:host setuptools:host" -PKG_LONGDESC="distutilscross enhances distutils to support Cross Compile of Python extensions" -PKG_TOOLCHAIN="manual" - -makeinstall_host() { - exec_thread_safe python setup.py install --prefix=${TOOLCHAIN} -} diff --git a/projects/ROCKNIX/packages/python/devel/distutilscross/patches/distutilscross-0000-fix-python3.patch b/projects/ROCKNIX/packages/python/devel/distutilscross/patches/distutilscross-0000-fix-python3.patch deleted file mode 100644 index 0afb4173336..00000000000 --- a/projects/ROCKNIX/packages/python/devel/distutilscross/patches/distutilscross-0000-fix-python3.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff --git a/distutilscross/crosscompile.py b/distutilscross/crosscompile.py -index 31dfd6c..16b683e 100644 ---- a/distutilscross/crosscompile.py -+++ b/distutilscross/crosscompile.py -@@ -13,7 +13,7 @@ class build(_build): - self.cross_compile = 0 - - def finalize_options(self): -- if self.cross_compile and os.environ.has_key('PYTHONXCPREFIX'): -+ if self.cross_compile and 'PYTHONXCPREFIX' in os.environ: - prefix = os.environ['PYTHONXCPREFIX'] - sysconfig.get_python_lib = get_python_lib - sysconfig.PREFIX = prefix -@@ -31,8 +31,8 @@ class build(_build): - - _get_python_lib = sysconfig.get_python_lib - def get_python_lib(plat_specific=0, standard_lib=0, prefix=None): -- if os.environ.has_key('PYTHONXCPREFIX'): -- print "Setting prefix" -+ if 'PYTHONXCPREFIX' in os.environ: -+ print("Setting prefix") - prefix = os.environ['PYTHONXCPREFIX'] - - return _get_python_lib(plat_specific, standard_lib, prefix) -@@ -50,24 +50,24 @@ def customize_compiler(compiler): - sysconfig.get_config_vars('CC', 'CXX', 'OPT', 'CFLAGS', - 'CCSHARED', 'LDSHARED', 'SO') - -- if os.environ.has_key('CC'): -+ if 'CC' in os.environ: - cc = os.environ['CC'] -- if os.environ.has_key('CXX'): -+ if 'CXX' in os.environ: - cxx = os.environ['CXX'] -- if os.environ.has_key('LDSHARED'): -+ if 'LDSHARED' in os.environ: - ldshared = os.environ['LDSHARED'] -- if os.environ.has_key('CPP'): -+ if 'CPP' in os.environ: - cpp = os.environ['CPP'] - else: - cpp = cc + " -E" # not always -- if os.environ.has_key('LDFLAGS'): -+ if 'LDFLAGS' in os.environ: - ldshared = ldshared + ' ' + os.environ['LDFLAGS'] -- if os.environ.has_key('OPT'): -+ if 'OPT' in os.environ: - opt = os.environ['OPT'] -- if os.environ.has_key('CFLAGS'): -+ if 'CFLAGS' in os.environ: - cflags = opt + ' ' + os.environ['CFLAGS'] - ldshared = ldshared + ' ' + os.environ['CFLAGS'] -- if os.environ.has_key('CPPFLAGS'): -+ if 'CPPFLAGS' in os.environ: - cpp = cpp + ' ' + os.environ['CPPFLAGS'] - cflags = cflags + ' ' + os.environ['CPPFLAGS'] - ldshared = ldshared + ' ' + os.environ['CPPFLAGS'] diff --git a/projects/ROCKNIX/packages/sysutils/i2c-tools/package.mk b/projects/ROCKNIX/packages/sysutils/i2c-tools/package.mk index 15ab0b800de..6a81a42cb75 100644 --- a/projects/ROCKNIX/packages/sysutils/i2c-tools/package.mk +++ b/projects/ROCKNIX/packages/sysutils/i2c-tools/package.mk @@ -7,7 +7,7 @@ PKG_SHA256="1f899e43603184fac32f34d72498fc737952dbc9c97a8dd9467fadfdf4600cf9" PKG_LICENSE="GPL" PKG_SITE="https://i2c.wiki.kernel.org/index.php/I2C_Tools" PKG_URL="https://www.kernel.org/pub/software/utils/i2c-tools/${PKG_NAME}-${PKG_VERSION}.tar.xz" -PKG_DEPENDS_TARGET="toolchain Python3 distutilscross:host" +PKG_DEPENDS_TARGET="toolchain Python3" PKG_LONGDESC="A heterogeneous set of I2C tools for Linux." PKG_BUILD_FLAGS="-sysroot" diff --git a/projects/ROCKNIX/packages/tools/pyFDT/package.mk b/projects/ROCKNIX/packages/tools/pyFDT/package.mk index 628d07e44f4..43705b5d8e3 100644 --- a/projects/ROCKNIX/packages/tools/pyFDT/package.mk +++ b/projects/ROCKNIX/packages/tools/pyFDT/package.mk @@ -7,19 +7,10 @@ PKG_SHA256="f70b1008ea78a2a46429d2f3b06a2a71f2bfd59a5e13000c2f3f2a957b57ea9b" PKG_LICENSE="Apache-2.0" PKG_SITE="https://github.com/molejar/${PKG_NAME}" PKG_URL="${PKG_SITE}/archive/refs/tags/${PKG_VERSION}.zip" -PKG_DEPENDS_TARGET="Python3" +PKG_DEPENDS_TARGET="toolchain Python3 setuptools:host" PKG_LONGDESC="This python module is usable for manipulation with Device Tree Data and primary was created for imxsb tool" -PKG_TOOLCHAIN="manual" +PKG_TOOLCHAIN="python" -pre_configure_target() { - cd ${PKG_BUILD} - rm -rf .${TARGET_NAME} -} - -make_target() { - python3 setup.py build -} - -makeinstall_target() { - python3 setup.py install --root=${INSTALL} --prefix=/usr +post_makeinstall_target() { + python_remove_source } diff --git a/projects/ROCKNIX/packages/tools/pyudev/package.mk b/projects/ROCKNIX/packages/tools/pyudev/package.mk index f7b1d40e15e..23647ebc746 100644 --- a/projects/ROCKNIX/packages/tools/pyudev/package.mk +++ b/projects/ROCKNIX/packages/tools/pyudev/package.mk @@ -8,23 +8,10 @@ PKG_VERSION="5e00141" PKG_LICENSE="OSS" PKG_SITE="https://github.com/pyudev/pyudev" PKG_URL="https://github.com/pyudev/pyudev/archive/${PKG_VERSION}.tar.gz" -PKG_DEPENDS_TARGET="toolchain Python3 distutilscross:host" +PKG_DEPENDS_TARGET="toolchain Python3 setuptools:host" PKG_LONGDESC="pyudev is a LGPL licenced, pure Python 2/3 binding to libudev, the device and hardware management and information library of Linux." - -pre_make_target() { - export PYTHONXCPREFIX="${SYSROOT_PREFIX}/usr" - export LDFLAGS="${LDFLAGS} -L${SYSROOT_PREFIX}/usr/lib -L${SYSROOT_PREFIX}/lib" - export LDSHARED="${CC} -shared" -} - -make_target() { - python3 setup.py build -} - -makeinstall_target() { - python3 setup.py install --root=${INSTALL} --prefix=/usr -} +PKG_TOOLCHAIN="python" post_makeinstall_target() { - find ${INSTALL}/usr/lib/python*/site-packages/ -name "*.py" -exec rm -rf {} ";" + python_remove_source } diff --git a/projects/ROCKNIX/packages/tools/six/package.mk b/projects/ROCKNIX/packages/tools/six/package.mk index b919fd725de..c3bda98fd31 100644 --- a/projects/ROCKNIX/packages/tools/six/package.mk +++ b/projects/ROCKNIX/packages/tools/six/package.mk @@ -6,25 +6,10 @@ PKG_VERSION="02c3bca" PKG_LICENSE="OSS" PKG_SITE="https://github.com/benjaminp/six" PKG_URL="${PKG_SITE}/archive/${PKG_VERSION}.tar.gz" -PKG_DEPENDS_TARGET="toolchain Python3 distutilscross:host" +PKG_DEPENDS_TARGET="toolchain Python3 setuptools:host" PKG_LONGDESC="Python 2 and 3 compatibility library " -PKG_TOOLCHAIN="manual" - -pre_make_target() { - export PYTHONXCPREFIX="${SYSROOT_PREFIX}/usr" - export LDFLAGS="${LDFLAGS} -L${SYSROOT_PREFIX}/usr/lib -L${SYSROOT_PREFIX}/lib" - export LDSHARED="${CC} -shared" -} - -make_target() { - python3 setup.py build -# python3 setup.py build --cross-compile -} - -makeinstall_target() { - python3 setup.py install --root=${INSTALL} --prefix=/usr -} +PKG_TOOLCHAIN="python" post_makeinstall_target() { - find ${INSTALL}/usr/lib/python*/site-packages/ -name "*.py" -exec rm -rf {} ";" + python_remove_source } diff --git a/projects/ROCKNIX/packages/ui/emulationstation/config/common/es_features.cfg b/projects/ROCKNIX/packages/ui/emulationstation/config/common/es_features.cfg index 017bca24783..ba0a7731c90 100644 --- a/projects/ROCKNIX/packages/ui/emulationstation/config/common/es_features.cfg +++ b/projects/ROCKNIX/packages/ui/emulationstation/config/common/es_features.cfg @@ -337,26 +337,6 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/projects/ROCKNIX/packages/ui/emulationstation/package.mk b/projects/ROCKNIX/packages/ui/emulationstation/package.mk index d64eb00930e..1ff638177fc 100644 --- a/projects/ROCKNIX/packages/ui/emulationstation/package.mk +++ b/projects/ROCKNIX/packages/ui/emulationstation/package.mk @@ -2,48 +2,30 @@ # Copyright (C) 2024-present ROCKNIX (https://github.com/ROCKNIX) PKG_NAME="emulationstation" -PKG_VERSION="3ca0e9ad196d18b2de9c8eabad34ed21e72f5848" -PKG_GIT_CLONE_BRANCH="master" +PKG_VERSION="9d664e2ffa75d0fcfd129c6598318c61b57ff8f7" PKG_LICENSE="GPL" PKG_SITE="https://github.com/ROCKNIX/emulationstation-next" -PKG_URL="${PKG_SITE}.git" -PKG_DEPENDS_TARGET="boost toolchain SDL2 freetype curl freeimage bash rapidjson SDL2_mixer fping p7zip alsa vlc drm_tool pugixml" +PKG_URL="${PKG_SITE}/archive/${PKG_VERSION}.tar.gz" +PKG_DEPENDS_TARGET="boost toolchain SDL2 freetype curl freeimage bash rapidjson SDL2_mixer fping p7zip alsa vlc drm_tool pugixml ${OPENGLES}" PKG_NEED_UNPACK="busybox" PKG_LONGDESC="Emulationstation emulator frontend" PKG_BUILD_FLAGS="-gold" -PKG_PATCH_DIRS+="${DEVICE}" - -if [ -f "${ROOT}/.rocknix/options" ]; then - . "${ROOT}/.rocknix/options" -fi - -if [ ! "${OPENGL}" = "no" ]; then - PKG_DEPENDS_TARGET+=" ${OPENGL} glu" - PKG_CMAKE_OPTS_TARGET+=" -DGL=1" -fi - -if [ ! "${OPENGLES_SUPPORT}" = no ]; then - PKG_DEPENDS_TARGET+=" ${OPENGLES}" - PKG_CMAKE_OPTS_TARGET+=" -DGLES2=1" -fi - PKG_CMAKE_OPTS_TARGET+=" -DROCKNIX=1 \ -DDISABLE_KODI=1 \ -DENABLE_FILEMANAGER=0 \ -DCEC=0 \ -DENABLE_PULSE=1 \ - -DUSE_SYSTEM_PUGIXML=1" + -DUSE_SYSTEM_PUGIXML=1 \ + -DGLES3=1" [ "${DEVICE}" = "S922X" ] && PKG_CMAKE_OPTS_TARGET+=" -DBATTERYPLUS=1" pre_configure_target() { for key in SCREENSCRAPER_DEV_LOGIN \ - GAMESDB_APIKEY \ - CHEEVOS_DEV_LOGIN - do - if [ -z "${!key}" ] - then + GAMESDB_APIKEY \ + CHEEVOS_DEV_LOGIN; do + if [ -z "${!key}" ]; then echo "WARNING: ${key} not declared, will not build support." else echo "USING: ${key} = ${!key}" @@ -53,54 +35,43 @@ pre_configure_target() { export DEVICE=$(echo ${DEVICE^^} | sed "s#-#_##g") } -pre_build_target() { - cp -f ${ROOT}/distributions/${DISTRO}/fonts/NanumSquareNeo-bRg.ttf ${PKG_BUILD}/resources/PyeojinGothic-Medium.ttf - cp -f ${ROOT}/distributions/${DISTRO}/assets/emulationstation2.po ${PKG_BUILD}/locale/lang/ko/LC_MESSAGES/emulationstation2.po - msgfmt ${PKG_BUILD}/locale/lang/ko/LC_MESSAGES/emulationstation2.po -o ${PKG_BUILD}/locale/lang/ko/LC_MESSAGES/emulationstation2.mo -} - makeinstall_target() { mkdir -p ${INSTALL}/usr/config/locale - cp -rf ${PKG_BUILD}/locale/lang/* ${INSTALL}/usr/config/locale/ + cp -a ${PKG_BUILD}/locale/lang/* ${INSTALL}/usr/config/locale + + # Pre-generate default (en_US.UTF-8) locale for lower-end devices to speed up first boot + # This saves a minute or two on RK3326 in a cost of about 1 MB of SYSTEM size + # Copy-paste of a locale generating part of es_settings script + I18NPATH=$(get_install_dir glibc)/usr/share/i18n/locales/ \ + localedef --force --verbose --inputfile=en_US --charmap=UTF-8 \ + ${INSTALL}/usr/config/locale/en_US.UTF-8 || true - # Pre-generate default (en_US.UTF-8) locale for lower-end devices to speed up first boot - # This saves a minute or two on RK3326 in a cost of about 1 MB of SYSTEM size - # Copy-paste of a locale generating part of es_settings script - I18NPATH=$(get_install_dir glibc)/usr/share/i18n/locales/ \ - localedef --force --verbose --inputfile=en_US --charmap=UTF-8 \ - ${INSTALL}/usr/config/locale/en_US.UTF-8 || true + mkdir -p ${INSTALL}/usr/config/emulationstation + cp -a ${PKG_DIR}/config/common/*.cfg ${INSTALL}/usr/config/emulationstation + rm -f ${INSTALL}/usr/config/emulationstation/resources/logo.png mkdir -p ${INSTALL}/usr/config/emulationstation/resources - cp -rf ${PKG_BUILD}/resources/* ${INSTALL}/usr/config/emulationstation/resources/ - cp -f ${PKG_BUILD}/arcaderoms.xml ${INSTALL}/usr/config/emulationstation/resources/ - rm -rf ${INSTALL}/usr/config/emulationstation/resources/logo.png + cp -a ${PKG_BUILD}/resources/* ${INSTALL}/usr/config/emulationstation/resources mkdir -p ${INSTALL}/usr/bin - cp ${PKG_BUILD}/es_settings ${INSTALL}/usr/bin - chmod 0755 ${INSTALL}/usr/bin/es_settings - - cp ${PKG_BUILD}/start_es.sh ${INSTALL}/usr/bin - chmod 0755 ${INSTALL}/usr/bin/start_es.sh - - cp ${PKG_BUILD}/ppsspp_font.sh ${INSTALL}/usr/bin - chmod 0755 ${INSTALL}/usr/bin/ppsspp_font.sh - - cp ${PKG_BUILD}/serial_number_check ${INSTALL}/usr/bin - chmod 0755 ${INSTALL}/usr/bin/serial_number_check + cp -a ${PKG_BUILD}/es_settings ${INSTALL}/usr/bin + cp -a ${PKG_BUILD}/start_es.sh ${INSTALL}/usr/bin + cp -a ${PKG_BUILD}/serial_number_check ${INSTALL}/usr/bin mkdir -p ${INSTALL}/usr/bin - #ln -sf /storage/.config/emulationstation/resources ${INSTALL}/usr/bin/resources - cp -rf ${PKG_BUILD}/emulationstation ${INSTALL}/usr/bin + #ln -sf /storage/.config/emulationstation/resources ${INSTALL}/usr/bin/resources + cp -a ${PKG_BUILD}/emulationstation ${INSTALL}/usr/bin - mkdir -p ${INSTALL}/etc/emulationstation/ - ln -sf /storage/.config/emulationstation/themes ${INSTALL}/etc/emulationstation/ + mkdir -p ${INSTALL}/etc + ln -sf /storage/.cache/system_timezone ${INSTALL}/etc/timezone + + mkdir -p ${INSTALL}/etc/emulationstation + ln -sf /storage/.config/emulationstation/themes ${INSTALL}/etc/emulationstation/themes + ln -sf ${INSTALL}/usr/config/emulationstation/es_systems.cfg ${INSTALL}/etc/emulationstation/es_systems.cfg - cp -rf ${PKG_DIR}/config/common/*.cfg ${INSTALL}/usr/config/emulationstation # If we're not an emulation device, ES may still be installed so we need a default config. - if [ "${EMULATION_DEVICE}" = "no" ] || \ - [ "${BASE_ONLY}" = "true" ] - then + if [[ "${EMULATION_DEVICE}" == "no" || "${BASE_ONLY}" == "true" ]]; then cat <${INSTALL}/usr/config/emulationstation/es_systems.cfg @@ -120,24 +91,20 @@ makeinstall_target() { EOF fi - ln -sf /usr/config/emulationstation/es_systems.cfg ${INSTALL}/etc/emulationstation/es_systems.cfg - - ln -sf /storage/.cache/system_timezone ${INSTALL}/etc/timezone - #Delete all vulkan options from es_features when vulkan is not present - if [ ! "${VULKAN_SUPPORT}" = "yes" ] - then - xmlstarlet ed --inplace -d '//choice[contains(@name, "vulkan")]' ${INSTALL}/usr/config/emulationstation/es_features.cfg + if [ ! "${VULKAN_SUPPORT}" = "yes" ]; then + xmlstarlet ed --inplace -d '//choice[contains(@name, "vulkan")]' ${INSTALL}/usr/config/emulationstation/es_features.cfg fi } post_install() { mkdir -p ${INSTALL}/usr/share - ln -sf /storage/.config/locale ${INSTALL}/usr/share/locale + ln -sf /storage/.config/locale ${INSTALL}/usr/share/locale mkdir -p ${INSTALL}/usr/lib - ln -sf /usr/share/locale ${INSTALL}/usr/lib/locale + ln -sf /usr/share/locale ${INSTALL}/usr/lib/locale - ln -sf /usr/share/locale ${INSTALL}/usr/config/emulationstation/locale + mkdir -p ${INSTALL}/usr/config/emulationstation + ln -sf /usr/share/locale ${INSTALL}/usr/config/emulationstation/locale } diff --git a/projects/ROCKNIX/packages/ui/emulationstation/sources/serial_number_check b/projects/ROCKNIX/packages/ui/emulationstation/sources/serial_number_check old mode 100644 new mode 100755 diff --git a/projects/ROCKNIX/packages/virtual/emulators/sources/Install Steam.sh b/projects/ROCKNIX/packages/virtual/emulators/sources/Install Steam.sh index d090a262fc4..f5cb2d178af 100755 --- a/projects/ROCKNIX/packages/virtual/emulators/sources/Install Steam.sh +++ b/projects/ROCKNIX/packages/virtual/emulators/sources/Install Steam.sh @@ -55,9 +55,15 @@ ensure_fex_rootfs() { FEXRootFSFetcher --distro-name=arch --distro-version=rolling -y -x || die "Failed to fetch FEX RootFS." fi cp -f "/usr/share/fex-emu/libvulkan_freedreno.so" "${FEX_ARCH_USR_LIB}" || die "Failed to copy libvulkan_freedreno.so." - cp -f "/usr/share/fex-emu/liblsfg-vk-layer.so" "${FEX_ARCH_USR_LIB}" || die "Failed to copy liblsfg-vk-layer.so." + cp -f "/usr/lib/liblsfg-vk-layer.so" "${FEX_ARCH_USR_LIB}" || die "Failed to copy liblsfg-vk-layer.so." + cp -f "/usr/share/fex-emu/liblsfg-vk-layer-x86.so" "${FEX_ARCH_USR_LIB}" || die "Failed to copy liblsfg-vk-layer-x86.so." cp -f "/usr/share/vulkan/implicit_layer.d/VkLayer_LSFGVK_frame_generation.json" \ "${FEX_ARCH_ROOT}/usr/share/vulkan/implicit_layer.d/" || die "Failed to copy VkLayer_LSFGVK_frame_generation.json to ArchLinux rootfs." + cp -f "/usr/share/fex-emu/VkLayer_LSFGVK_frame_generation-x86.json" \ + "${FEX_ARCH_ROOT}/usr/share/vulkan/implicit_layer.d/" || die "Failed to copy VkLayer_LSFGVK_frame_generation-x86.json to ArchLinux rootfs." + sed -i 's/"name": "VK_LAYER_LSFGVK_frame_generation"/"name": "VK_LAYER_LSFGVK_frame_generation_x86"/' "${FEX_ARCH_ROOT}/usr/share/vulkan/implicit_layer.d/VkLayer_LSFGVK_frame_generation-x86.json" + sed -i 's|"library_path": "/usr/lib/libvulkan_freedreno.so"|"library_path": "libvulkan_freedreno.so"|' \ + ${FEX_ARCH_ROOT}/usr/share/vulkan/icd.d/freedreno_icd.x86_64.json } link_steam_library() { diff --git a/projects/ROCKNIX/patches/pugixml/001-fix-for-emulationstation.patch b/projects/ROCKNIX/patches/pugixml/001-fix-for-emulationstation.patch new file mode 100644 index 00000000000..52c5cdbc9a9 --- /dev/null +++ b/projects/ROCKNIX/patches/pugixml/001-fix-for-emulationstation.patch @@ -0,0 +1,12 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -298,6 +298,9 @@ + install(FILES ${PUGIXML_HEADERS} + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}${versioned-dir} COMPONENT ${PUGIXML_DEVELOPMENT_COMPONENT}) + ++ install(FILES ${PUGIXML_HEADERS} ++ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}${versioned-dir}/pugixml/src COMPONENT ${PUGIXML_DEVELOPMENT_COMPONENT}) ++ + if (PUGIXML_INSTALL_SOURCE) + install(FILES ${PUGIXML_SOURCE} + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}${versioned-dir} COMPONENT ${PUGIXML_DEVELOPMENT_COMPONENT})