... | @@ -11,47 +11,40 @@ Introduces the Librem 5. Describes the purpose of this document. |
... | @@ -11,47 +11,40 @@ Introduces the Librem 5. Describes the purpose of this document. |
|
* What the developer needs in terms of hardware: desktop machine, laptop, etc.
|
|
* What the developer needs in terms of hardware: desktop machine, laptop, etc.
|
|
* Required software: distro, development environment, connectivity tools, compilers, etc.
|
|
* Required software: distro, development environment, connectivity tools, compilers, etc.
|
|
|
|
|
|
## Setting up Hardware
|
|
## Setting up a Development Environment
|
|
|
|
|
|
|
|
Three paths through the following sections for development targets: Developer Kit, Phone, Emulator. Then the final Workstation section covers the tools used to develop for any or all of these targets.
|
|
|
|
|
|
### Developer Kit
|
|
### Developer Kit
|
|
|
|
|
|
Instructions on setting up hardware, plugging in, getting a shell, etc. (issues [19](https://source.puri.sm/Librem5/developer.puri.sm/issues/19), [1](https://source.puri.sm/guido.gunther/Apps_Issues/issues/1))
|
|
Instructions on setting up hardware, plugging in, getting a shell, etc. (issues [19](https://source.puri.sm/Librem5/developer.puri.sm/issues/19), [1](https://source.puri.sm/guido.gunther/Apps_Issues/issues/1))
|
|
|
|
|
|
* Board setup instructions
|
|
* Board setup instructions
|
|
* Provide setup and reinstalling instructions (maybe more for software, see below)
|
|
* Provide setup and reinstalling instructions
|
|
* Document how disk encryption will work
|
|
* Document how disk encryption will work
|
|
* Document credential retrieval and storage
|
|
* Document credential retrieval and storage
|
|
* Document security "omission" (things that will need to be secure
|
|
* Document security "omission" (things that will need to be secure for the phone but aren't yet)
|
|
* for the phone but aren't yet)
|
|
|
|
|
|
|
|
### Phone
|
|
### Phone
|
|
|
|
|
|
Cables, physical switches, USB hubs, power, etc.
|
|
* Hardware: Cables, physical switches, USB hubs, power, etc.
|
|
|
|
* Software: Anything that needs to be installed, set up or run on the phone.
|
|
## Setting up a Software Development Environment
|
|
|
|
|
|
|
|
### Developer Kit
|
|
|
|
|
|
|
|
Instructions on setting up development environment(s) (issue [19](https://source.puri.sm/Librem5/developer.puri.sm/issues/19))
|
|
|
|
|
|
|
|
### Developing with an Emulator
|
|
### Emulator
|
|
|
|
|
|
Setting up a system emulator, like `qemu`, for development and prototyping of applications.
|
|
Setting up a system emulator, like `qemu`, for development and prototyping of applications.
|
|
|
|
|
|
### Phone
|
|
|
|
|
|
|
|
Anything that needs to be installed, set up or run on the phone.
|
|
|
|
|
|
|
|
### Workstation
|
|
### Workstation
|
|
|
|
|
|
|
|
Instructions on setting up development environment(s) (issue [19](https://source.puri.sm/Librem5/developer.puri.sm/issues/19))
|
|
|
|
|
|
* GNOME technologies: A run through the various GNOME technologies.
|
|
* GNOME technologies: A run through the various GNOME technologies.
|
|
* GNOME Builder documentation: Documentation for the GNOME IDE.
|
|
* GNOME Builder documentation: Documentation for the GNOME IDE.
|
|
* Meson: The recommended build system.
|
|
* Meson: The recommended build system.
|
|
* Flatpak: Application sandboxing and distribution.
|
|
* Flatpak: Application sandboxing and distribution.
|
|
* gitg: The GNOME git client.
|
|
* gitg: The GNOME git client.
|
|
|
|
|
|
Not how to use these, but some information about setting them up, especially
|
|
Not how to use these, but some information about setting them up, especially for use with the phone - configure connections in SDKs, etc.
|
|
for use with the phone - configure connections in SDKs, etc.
|
|
|
|
|
|
|
|
*(A Plasma variant of this only makes sense if phones will ship with Plasma installed. Otherwise, it can wait until later merge requests arrive, in which case the workstation section will get a sibling.)*
|
|
*(A Plasma variant of this only makes sense if phones will ship with Plasma installed. Otherwise, it can wait until later merge requests arrive, in which case the workstation section will get a sibling.)*
|
|
|
|
|
... | | ... | |