Apps.rst 2.41 KB
Newer Older
1 2
.. _app_development:

3 4
App Development
===============
5

Heather Ellsworth's avatar
Heather Ellsworth committed
6 7
.. toctree::

8 9
   Apps/Gnome
   Apps/Kde
Heather Ellsworth's avatar
Heather Ellsworth committed
10
   Apps/PublishingApps
11

12
If you are interested in app development then you're in the right place! Here, you can find out how to make, build, deploy, and publish apps for distributing. Take a look at the flow charts below to get a visual idea of the layout of this apps section.
13

14
|pic1| |pic2|
15

16
.. |pic1| image:: Apps/images/phosh_flow_chart.png
17 18
   :width: 310px
   :height: 310px
19

20
.. |pic2| image:: Apps/images/plasma_flow_chart.png
21 22
   :width: 310px
   :height: 310px
23

24
First determine which phone environment you want to integrate with:
25

26 27
  * :ref:`phosh` is developed at Purism as replacement for the gnome-shell and runs based on wlroots
  * :ref:`plamo` will show you how to setup Plasma Mobile and interact with it
28

29
For more information, see :ref:`environments`.
30

Benedikt Wildenhain's avatar
Benedikt Wildenhain committed
31
Your environment will determine which tools and languages are available to you for app development.
32

33 34 35 36
Next, what kind of application format would you like?

  * :ref:`flatpak` will show you how to setup flatpak on the dev board
  * Deb packages are the official package formats for Debian-based distributions. A deb package is installable from the apt package manager and what is needed for the app to be distributed by Debian.
37

Benedikt Wildenhain's avatar
Benedikt Wildenhain committed
38
You can follow the above charts to determine the IDE/build tool suggested.
39

40 41
  * :ref:`gbuilder` will show you how to use GNOME Builder for developing, building, and deploying flatpak'd apps to a phone shell environment. Apps built from GNOME Builder can theoretically be deployed to Plasma Mobile as well
  * :ref:`glade` is an excellent tool for designing GTK+ based UIs
42
  * :ref:`kirigami` will show you how to use Kirigami for developing, building, and deploying flatpak'd apps to a Plasma Mobile environment
43
  * :ref:`qt` provides QtCreator and QtDesigner, good tools for designing Qt based UIs
44 45
  * For building a deb package, `git-buildpackage <http://honk.sigxcpu.org/projects/git-buildpackage/manual-html/gbp.html>`_ is the preferred build method

46
Once your app is ready to be distributed to other developers, you can submit your app for inclusion.
47 48 49 50

  * There will be a flatpak repository for only free software flatpaks. This repository will be hosted by PureOS
  * To submit your app for inclusion into Debian, follow `standard Debian package submission procedures <https://www.debian.org/doc/manuals/distribute-deb/distribute-deb.html#adding-packages-to-debian>`_