diff options
Diffstat (limited to 'image/backends/README.rst')
-rw-r--r-- | image/backends/README.rst | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/image/backends/README.rst b/image/backends/README.rst new file mode 100644 index 0000000..ca510b9 --- /dev/null +++ b/image/backends/README.rst @@ -0,0 +1,89 @@ +====================================================== + README for Project Horizon - Image Creation Backends +====================================================== +:Authors: + * **A. Wilcox**, principal author, project manager +:Status: + Development +:Copyright: + © 2020 Adélie Linux. + Code: AGPL-3.0 license. + Documentation: CC BY-NC-SA open source license. + + +Introduction +============ + +This directory contains the various backends for creating images using +Project Horizon. + + +License +``````` +Development documentation for Project Horizon is licensed under the +Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. + +You should have received a copy of the license along with this +work. If not, see <http://creativecommons.org/licenses/by-nc-sa/4.0/>. + +Code is licensed under the Affero GPL (AGPL) 3 license. + + +Changes +``````` +Any changes to this repository must be reviewed before being pushed to the +master branch. + + + +Design +====== + +Image creation backends shall derive from the Horizon::Image::BasicBackend +class. Concrete backends can exist in any namespace. To be used with the +Image Creation utility, the backend must be registered in the ``backends.hh`` +file along with a unique Type Code. This Type Code can then be passed to +the Image Creation utility with the ``-t`` parameter for use. + +The Horizon::Image::BasicBackend is an abstract (pure virtual) class that +has a single method that you must implement: ``create()``. This will be +called on a constructed object of your concrete backend class, with two +parameters: ``std::string ir_dir``, which is the base directory for the +installed system (like ``/target`` during a normal installation), and +``std::string out_path``, which is the user's desired output path and file +name. + + + +Repository Layout +================= + +Each backend has its own .cc/.hh file. The special ``backends.hh`` file +contains the table used by the Image Creation utility for determining +supported types and backends. + + + +Contributing +============ + +See the CONTIRIBUTING.rst_ file in the roort directory of the Project Horizon +repository more details on how to contribute your own backend. + +.. _CONTRIBUTING.rst: https://code.foxkit.us/adelie/horizon/blob/master/CONTRIBUTING.rst + + + +Reporting Issues +================ + +If you have an issue using Project Horizon, you may view our BTS_. You may +also `submit an issue`_ directly. + +For general discussion, questions, or to submit a patch, please use the +`Horizon mailing list`_. + +.. _BTS: https://bts.adelielinux.org/buglist.cgi?product=Horizon&resolution=--- +.. _`submit an issue`: https://bts.adelielinux.org/enter_bug.cgi?product=Horizon +.. _`Horizon mailing list`: https://lists.adelielinux.org/postorius/lists/horizon.lists.adelielinux.org/ + |