Document building ELRS using a flatpak install of Visual Studio Code + distrobox + platform io + devcontainers.
- Dominant language
- HTML
- Stars
- 53
- Forks
- 132
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 2
Description
I'm pressed for time right now, but it would be good if someone could integrate the instructions below into the docs.
1. Install VS Code flatpak via Bazaar. (NOT VSCodium)
2. From terminal create a new distrobox.
`$ distrobox create --name expresslrs --unshare-netns`
3. Run VSCode on host.
4. Install Microsoft Dev Containers extension.
5. Get the official distrobox script for vscode integraton.
```
mkdir ~/.local/bin
curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/extras/podman-host -o ~/.local/bin/podman-host
chmod +x ~/.local/bin/podman-host
```
6. In VS Code set docker path to `/home/` with your linux username)
7. Install PlatformIO extension.
8. Restart VS code when installation completes.
9. In VS Code, click the remote explorer button in the sidebar.
10. Click the right arrow `->` button next to the `expresslrs` container, wait for it to finish.
11. Either clone the expresslrs repo using git or open an existing ELRS git checkout.
12. Click the Platform IO button in the sidebar.
13. Open the src folder in the ELRS git local workspace, wait for platform IO to open the project. it will install some dependencies.
14. Continue development as normal, e.g. pick an env target then press build from the status bar at the bottom of the window.
Here's what it should look like after a running build:
If you need to run terminal commands you can use the PIO cli from within VS Code, or from a terminal you can run `distrobox enter expresslrs` and `cd` to your checkout and run commands as normal, as below.
References/Links:
* VS Code flatpak - https://flathub.org/en-GB/apps/com.visualstudio.code
* Distrobox - https://github.com/89luca89/distrobox
* Distrobox VS Code integration - https://github.com/89luca89/distrobox/blob/main/docs/posts/integrate_vscode_distrobox.md
* Bazzite - https://bazzite.gg/
* Fedora atomic desktops - https://www.fedoraproject.org/atomic-desktops/
I tested this running on Bazzite (20260101, Fedora 43).
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.