On branch monkeyxWiki

Changes to be committed:
	modified:   wiki-rtd/docs/wiki_development/general/build-locally.md
This commit is contained in:
monkeyx-net 2024-05-26 17:52:02 +01:00
parent fc5eb15132
commit d0c7b08e61

View file

@ -7,7 +7,7 @@ It is based on notes taken while adding the Ruffle(Flash Emulator) to the RetroD
RetroDECK is a big project in terms of scope and build size! It creates a 1.4GB flatpak file and the build folder is about 23GB. RetroDECK is a big project in terms of scope and build size! It creates a 1.4GB flatpak file and the build folder is about 23GB.
It takes about 3 hours to build on an 8 core PC. It takes about 3 hours to build on an 8 core PC.
The document was initially based on adding a new function to RetroDECK as part of the build process. The person that wrote this as a hobbyist coder/developer decided that it was better to cover just building RetroDECK before moving onto to adding/changing RetroDECK. This document was initially based on adding a new function to RetroDECK as part of the build process. The person that wrote this as a hobbyist coder/developer, decided that it was better to cover just building RetroDECK before moving onto to adding/changing RetroDECK.
Adding to and changing the RetroDECK flatpak manifest will be covered in another wiki article. Adding to and changing the RetroDECK flatpak manifest will be covered in another wiki article.
@ -19,13 +19,11 @@ Note that you can run most applications in the app folder that have been built v
<img src="../../../wiki_images/graphics/development/retrodeck-overview.png" width="500"> <img src="../../../wiki_images/graphics/development/retrodeck-overview.png" width="500">
### Project Resources ### Project Resources
In order to save project resources. Please try and use a self-hosted runner to test your build process. Once you are confident that In order to save project resources. Please try and use a self-hosted runner to test your build process.
Please do not forget that RetroDECK is a volunteer based open source project. If you would like to support the build environment that is provided as part of the project. Then please consider making a donation to [the project or other projects involved.](https://retrodeck.readthedocs.io/en/latest/wiki_about/donations-licenses/) Please do not forget that RetroDECK is a volunteer based open source project. If you would like to support the build environment that is provided as part of the project. Then please consider making a donation to [the project or other projects involved.](https://retrodeck.readthedocs.io/en/latest/wiki_about/donations-licenses/)
## Build Process ## Build Process
### Download/Clone RetroDeck ### Download/Clone RetroDeck
@ -40,9 +38,49 @@ If you missed doing a recursive download then can also use the command below. Th
git submodule update --init --recursive git submodule update --init --recursive
``` ```
Then use git checkout to select the latest cooker branch. Then use ```git checkout``` to select the latest cooker branch.
### RetroDECK flatpak manifest
### Build locally via bash script
```bash
developer_toolbox/build_retrodeck_locally.sh
```
Have a look at what the script does first and look at the corresponding automation_tools/ folder that the script above references for the build
The build will take about 3 hours on a relatively 8 core pc/laptop.
Creates this folder when building locally
RetroDECK/.flatpak-builder/
Produces
### Build locally installed github runner
#### Install self-hosted github runner
[Add a self-hosted runner](https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository) to a repository.
#### Setup runner to run as a service(optional)
[Create the self-hosted runner](https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/configuring-the-self-hosted-runner-application-as-a-service) as a service.
####
Creates an artifact on Github and a local file in actions-runners
Explain local runner
https://github.com/monkeyx-net/RetroDECK/settings/actions/runners
Creates
actions-runner/_work/RetroDECK/RetroDECK/
File RetroDECK-cooker.flatpak
Also can download as an artifact from Github
## RetroDECK flatpak manifest
```bash ```bash
net.retrodeck.retrodeck.yml net.retrodeck.retrodeck.yml
``` ```
@ -71,48 +109,6 @@ bottom
### Build locally via bash script
```bash
cd RetroDECK
developer_toolbox/build_retrodeck_locally.sh
```
Have a look at what the script does first and look at the corresponding automation_tools/ folder that the script above references for the build
The build will take about 3 hours on a relatively 8 core pc/laptop.
Creates this folder when building locally
RetroDECK/.flatpak-builder/
Produces
### Build locally installed github runner
#### Install self-hosted github runner
[Add a self-hosted runner](https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/adding-self-hosted-runners#adding-a-self-hosted-runner-to-a-repository) to a repository.
#### Setup runner to run as a service(optional)
[Create the self-hosted runner](https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/configuring-the-self-hosted-runner-application-as-a-service) as a service.
####
Creates an artifact on Github and a local file in actions-runners
Explain local runner
https://github.com/monkeyx-net/RetroDECK/settings/actions/runners
Creates
actions-runner/_work/RetroDECK/RetroDECK/
File RetroDECK-cooker.flatpak
Also can download as an artifact from Github
## FAQ ## FAQ
### Crash during local sh build? ### Crash during local sh build?