Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add batocera-bootstrap tooling for more configuration management options #12914

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Skeeg
Copy link

@Skeeg Skeeg commented Nov 10, 2024

I wrote this for the Knulli distribution initially, but have been using more devices that are natively supported in Batocera and desire the functionality across the board.

This is designed to be invoked manually, or during the postshare.sh process to start a newly formatted system with predetermined configurations.

If the postshare.sh script is used, the configurations will be applied on each boot.
This can make it such that your preferred wifi network will be reapplied on every boot.
So if you change networks as you travel, it would always reset to your /boot/bootstrap.batocera.conf. settings upon reboot.

Recommended usage is to place files directly on the root folder of the BATOCERA partition after flashing a new image and place bootstrap files in the root of that partition. (/boot mount when booted from Batocera drive)

Multiple files can be used to allow flexible application of settings. I personally have a basic set of preferences that I set for each particular class of device I have in my house, and then apply customized, "sensitive" settings individually per user. So the file list on the root of my boot partition on my device looks like this:

bootstrap.batocera.conf.common
bootstrap.batocera.conf.h700
bootstrap.batocera.conf.sensitive.skeeg
bootstrap.batocera.conf.sensitive.wifi
bootstrap.es_settings.cfg.common
bootstrap.es_settings.cfg.h700
bootstrap.es_settings.cfg.sensitive.skeeg
postshare.sh

While my kids would have a *sensitive.firstborn file in place of the skeeg ones, and I might place different values in a bootstrap.batocera.conf.rpi5 file for a Raspberry Pi 5 that is more capable than the H700 and can support rewind on more systems, etc.

Some examples can be found here: https://gist.github.com/Skeeg/9b5a68f0d18c2df0b589274ca534363c#file-batocera-bootstrapper-sh
With a postshare.sh example here: https://gist.github.com/Skeeg/9b5a68f0d18c2df0b589274ca534363c#file-postshare-sh-L1-L3

@nadenislamarre
Copy link
Collaborator

hi,
not sure i understand the need.
to avoid kids manipulation there is the kids mode, right ?
for scripting and manipulating es_settings.cfg it may be ok, but for boot files, i don't understand while there is already a setting script.
i miss something on the use case.

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