Creating Component: Ingredients, Libraries and Recipe Files Guide
Description
Read the Development Glossary a more shot general explanation of each file: Development Glossary
The Recipe file:
The Ingredient files:
Prerequisites: A tested component
Note:
This assumes you have already tested a component folder from:
-
Source: AppImage: Creating Component: AppImage Testing
-
Source: Flatpak: Creating Component: Flatpak Testing
Step 1: The RetroDECK Alchemist
Create the artifact.
Read more here:
Step 2: Prepare the component_launcher.sh ingredient
Read more here:
Look at at the examples of other components and just copy from the one closest and start from there.
Step 3: Do a test run of component_launcher.sh
- Run:
flatpak run --command=bash net.retrodeck.retrodeck --debug. - Then from the terminal shell try to run your newly created
component_launcher.sh.
Keep tinkering until the file launches and works as excepted.
Then PR it to the RetroDECK/components/cooker next to the artifact in the folder.
Step 4: Create the rest of the Ingredient Files
Read more here:
Step 5: Add the Ingredient files
Add the Ingredient files to: retrodeck/components/<component_name>
components/<component_name>/component_launcher.sh
components/<component_name>/component_manifest.json
components/<component_name>/component_functions.sh
Example:
components/cemu/component_launcher.sh
components/cemu/component_manifest.json
components/cemu/component_functions.sh
Step 6: Configurations: Try to Optimize (If possible)
Do a first pass and try to tweak configurations:
- Tweak Controls: Test the controls with Steam Input (if possible) and tweak from there.
- Tweak Performance: Check the performance: RetroDECK standard is the Steam Deck hardware as default.
Step 7: Assemble the Release & Into the Cooker
The RetroDECK Alchemist building process follows the component_recipe.json and builds the artifact with the ingredients files into:
After that the RetroDECK Alchemist will take the finished component artifacts and make them part of:
The RetroDECK Team and Community (Taste) Testers will:
- Give you feedback.
- Test and bug report.
- Ask you to tweak configurations.
Step 10: How-to: Access your component?
Now your component have been added into RetroDECK, but how do the users access it?
You need to make it accessible within ES-DE (unless your component is a system that should only be part of the Configurator).
Read more: