Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 14 additions & 0 deletions Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -741,3 +741,17 @@ menu "Database"
endmenu

endmenu

# Include hidden batocera-launch packages
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-cdogs/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-cgenius/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-drastic/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-fallout/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-flycast/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-kodi/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-openjazz/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-openjk/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-openjkdf2/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-openmohaa/Config.in"
source "$BR2_EXTERNAL_BATOCERA_PATH/python-src/batocera-launch-rpcs3/Config.in"
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ endif
endif

# List of packages that are always good to rebuild for versioning/stamps etc
MANDATORY_REBUILD_PKGS := batocera-es-system batocera-configgen batocera-system batocera-splash
MANDATORY_REBUILD_PKGS := batocera-es-system batocera-launch batocera-configgen batocera-system batocera-splash

# All supported targets based on the board files in configs/, sorted for consistency
TARGETS := $(sort $(patsubst batocera-%.board,%,$(notdir $(wildcard $(PROJECT_DIR)/configs/*.board))))
Expand Down Expand Up @@ -454,7 +454,7 @@ uart:
# produce the final report files.

ES_SYSTEM_DIR = $(PROJECT_DIR)/package/batocera/emulationstation/batocera-es-system
CONFIGGEN_DIR = $(PROJECT_DIR)/package/batocera/core/batocera-configgen
LAUNCH_DIR = $(PROJECT_DIR)/python-src/batocera-launch

SYSTEMS_REPORT_VENV_SCRIPT = $(PROJECT_DIR)/.venv/bin/batocera-systems-report
SYSTEMS_REPORT_LAST_TARGET = $(lastword $(SYSTEMS_REPORT_TARGETS))
Expand Down Expand Up @@ -503,7 +503,7 @@ systems-report: _check_batocera_systems_report systems-report-data $(SYSTEMS_REP
$(SYSTEMS_REPORT_DATADIR) \
$(ES_SYSTEM_DIR)/es_systems.yml \
$(ES_SYSTEM_DIR)/systems-explanations.yml \
$(CONFIGGEN_DIR)/configs \
$(LAUNCH_DIR)/resources/defaults \
$(SYSTEMS_REPORT_DIR)/batocera_systemsReport.json

cp -f $(SYSTEMS_REPORT_HTML) $(SYSTEMS_REPORT_DIR)/batocera_systemsReport.html
Expand Down
1 change: 1 addition & 0 deletions package/batocera/core/batocera-configgen/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ config BR2_PACKAGE_BATOCERA_CONFIGGEN
bool "batocera configgen"
select BR2_PACKAGE_PYTHON3
select BR2_PACKAGE_PYTHON_BATOCERA_COMMON
select BR2_PACKAGE_BATOCERA_LAUNCH
select BR2_PACKAGE_PYTHON_PYYAML
select BR2_PACKAGE_PYTHON_RUAMEL_YAML
select BR2_PACKAGE_PYTHON_TOML
Expand Down
48 changes: 2 additions & 46 deletions package/batocera/core/batocera-configgen/batocera-configgen.mk
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ BATOCERA_CONFIGGEN_SOURCE=
BATOCERA_CONFIGGEN_SETUP_TYPE = hatch
BATOCERA_CONFIGGEN_DEPENDENCIES = \
python-batocera-common \
batocera-launch \
python-toml \
python-evdev \
python-pyudev \
Expand All @@ -19,63 +20,18 @@ BATOCERA_CONFIGGEN_DEPENDENCIES = \
python-qrcode \
pysdl2 \
batocera-bezel-overlay
BATOCERA_CONFIGGEN_INSTALL_STAGING = YES
BATOCERA_CONFIGGEN_OVERRIDE_SRCDIR=$(BR2_EXTERNAL_BATOCERA_PATH)/package/batocera/core/batocera-configgen/configgen
BATOCERA_CONFIGGEN_OVERRIDE_SRCDIR_RSYNC_EXCLUSIONS=--exclude=".*" --exclude="**/__pycache__/" --exclude="dist"

ifeq ($(BR2_PACKAGE_BATOCERA_TARGET_X86_64_ANY),y)
BATOCERA_CONFIGGEN_SYSTEM = x86_64
else
BATOCERA_CONFIGGEN_SYSTEM = $(BATOCERA_ARCH)
endif

define BATOCERA_CONFIGGEN_INSTALL_STAGING_CMDS
mkdir -p $(STAGING_DIR)/usr/share/batocera/configgen
cp $(BATOCERA_CONFIGGEN_PKGDIR)/configs/configgen-defaults.yml \
$(STAGING_DIR)/usr/share/batocera/configgen/configgen-defaults.yml
cp $(BATOCERA_CONFIGGEN_PKGDIR)/configs/configgen-defaults-$(BATOCERA_CONFIGGEN_SYSTEM).yml \
$(STAGING_DIR)/usr/share/batocera/configgen/configgen-defaults-arch.yml
endef

define BATOCERA_CONFIGGEN_CONFIGS
mkdir -p $(TARGET_DIR)/usr/share/batocera/configgen

cp -pr $(BATOCERA_CONFIGGEN_PKGDIR)/data \
$(TARGET_DIR)/usr/share/batocera/configgen/
cp $(BATOCERA_CONFIGGEN_PKGDIR)/configs/configgen-defaults.yml \
$(TARGET_DIR)/usr/share/batocera/configgen/configgen-defaults.yml
cp $(BATOCERA_CONFIGGEN_PKGDIR)/configs/configgen-defaults-$(BATOCERA_CONFIGGEN_SYSTEM).yml \
$(TARGET_DIR)/usr/share/batocera/configgen/configgen-defaults-arch.yml
cp $(BATOCERA_CONFIGGEN_PKGDIR)/scripts/call_achievements_hooks.sh \
$(TARGET_DIR)/usr/share/batocera/configgen/
# evmapy default hotkeys file
mkdir -p $(TARGET_DIR)/usr/share/evmapy
cp $(BATOCERA_CONFIGGEN_PKGDIR)/hotkeys.keys $(TARGET_DIR)/usr/share/evmapy/hotkeys.keys
endef

define BATOCERA_CONFIGGEN_ES_HOOKS
install -D -m 0755 $(BATOCERA_CONFIGGEN_PKGDIR)/scripts/powermode_launch_hooks.sh \
$(TARGET_DIR)/usr/share/batocera/configgen/scripts/powermode_launch_hooks.sh
endef

define BATOCERA_CONFIGGEN_X86_HOOKS
install -D -m 0755 $(BATOCERA_CONFIGGEN_PKGDIR)/scripts/tdp_hooks.sh \
$(TARGET_DIR)/usr/share/batocera/configgen/scripts/tdp_hooks.sh

install -D -m 0755 $(BATOCERA_CONFIGGEN_PKGDIR)/scripts/nvidia-workaround.sh \
$(TARGET_DIR)/usr/share/batocera/configgen/scripts/nvidia-workaround.sh
endef

define BATOCERA_CONFIGGEN_SCRIPTS
install -D -m 0755 $(BATOCERA_CONFIGGEN_PKGDIR)/scripts/batocera-joysticks-hotkeys.py \
$(TARGET_DIR)/usr/bin/batocera-joysticks-hotkeys
endef

BATOCERA_CONFIGGEN_POST_INSTALL_TARGET_HOOKS = BATOCERA_CONFIGGEN_CONFIGS
BATOCERA_CONFIGGEN_POST_INSTALL_TARGET_HOOKS += BATOCERA_CONFIGGEN_ES_HOOKS
BATOCERA_CONFIGGEN_POST_INSTALL_TARGET_HOOKS += BATOCERA_CONFIGGEN_SCRIPTS

ifeq ($(BR2_PACKAGE_BATOCERA_TARGET_X86_64_ANY),y)
BATOCERA_CONFIGGEN_POST_INSTALL_TARGET_HOOKS += BATOCERA_CONFIGGEN_X86_HOOKS
endif

$(eval $(python-package))
Original file line number Diff line number Diff line change
@@ -1,14 +1,8 @@
from __future__ import annotations

from contextlib import contextmanager
from pathlib import Path
from typing import IO, TYPE_CHECKING, Any, Final, overload

if TYPE_CHECKING:
from _typeshed import OpenBinaryModeUpdating, OpenBinaryModeWriting, OpenTextModeUpdating, OpenTextModeWriting
from collections.abc import Generator
from io import BufferedRandom, BufferedWriter, TextIOWrapper

from batocera_common.paths import (
BATOCERA_CONF as BATOCERA_CONF,
BATOCERA_SHARE_DIR as BATOCERA_SHARE_DIR,
Expand All @@ -25,40 +19,36 @@
SCREENSHOTS as SCREENSHOTS,
USERDATA as USERDATA,
)
from batocera_launch.paths import (
BATOCERA_SHADERS as BATOCERA_SHADERS,
CONF_INIT as CONF_INIT,
DATAINIT_DIR as DATAINIT_DIR,
ES_GAMES_METADATA as ES_GAMES_METADATA,
ES_GUNS_ART_METADATA as ES_GUNS_ART_METADATA,
ES_GUNS_METADATA as ES_GUNS_METADATA,
ES_SETTINGS as ES_SETTINGS,
ES_WHEELS_METADATA as ES_WHEELS_METADATA,
EVMAPY as EVMAPY,
HOME_INIT as HOME_INIT,
SYSTEM_DECORATIONS as SYSTEM_DECORATIONS,
SYSTEM_ES_DIR,
SYSTEM_SCRIPTS as SYSTEM_SCRIPTS,
USER_DECORATIONS as USER_DECORATIONS,
USER_ES_DIR as USER_ES_DIR,
USER_SCRIPTS as USER_SCRIPTS,
USER_SHADERS as USER_SHADERS,
configure_emulator as configure_emulator,
)

DATAINIT_DIR: Final = BATOCERA_SHARE_DIR / 'datainit'

HOME_INIT: Final = DATAINIT_DIR / 'system'
CONF_INIT: Final = HOME_INIT / 'configs'

EVMAPY: Final = CONFIGS / 'evmapy'

USER_ES_DIR: Final = CONFIGS / 'emulationstation'
BATOCERA_ES_DIR: Final = Path('/usr/share/emulationstation')
CONFIGGEN_DATA_DIR: Final = Path('/usr/share/batocera/configgen/data')

_ES_RESOURCES_DIR: Final = BATOCERA_ES_DIR / 'resources'

ES_SETTINGS: Final = USER_ES_DIR / 'es_settings.cfg'
ES_GUNS_METADATA: Final = _ES_RESOURCES_DIR / 'gungames.xml'
ES_WHEELS_METADATA: Final = _ES_RESOURCES_DIR / 'wheelgames.xml'
ES_GAMES_METADATA: Final = _ES_RESOURCES_DIR / 'gamesdb.xml'
ES_GUNS_ART_METADATA: Final = CONFIGGEN_DATA_DIR / 'gamesbuttonsdb.xml'
if TYPE_CHECKING:
from _typeshed import OpenBinaryModeUpdating, OpenBinaryModeWriting, OpenTextModeUpdating, OpenTextModeWriting
from collections.abc import Generator
from io import BufferedRandom, BufferedWriter, TextIOWrapper
from pathlib import Path

DEFAULTS_DIR: Final = BATOCERA_SHARE_DIR / 'configgen'

USER_SHADERS: Final = USERDATA / 'shaders'
BATOCERA_SHADERS: Final = BATOCERA_SHARE_DIR / 'shaders'

USER_DECORATIONS: Final = USERDATA / 'decorations'
SYSTEM_DECORATIONS: Final = DATAINIT_DIR / 'decorations'

USER_SCRIPTS: Final = HOME / 'scripts'
SYSTEM_SCRIPTS: Final = DEFAULTS_DIR / 'scripts'


def configure_emulator(rom: Path, /) -> bool:
return str(rom) == 'config'
CONFIGGEN_DATA_DIR: Final = DEFAULTS_DIR / 'data'
BATOCERA_ES_DIR: Final = SYSTEM_ES_DIR


def mkdir_if_not_exists(dir: Path, /) -> None:
Expand Down

This file was deleted.

This file was deleted.

Loading
Loading