website: faq: Add entry about how to support more computers.

The idea behind this FAQ entry is to be able to point to it when
people ask us to support additional computers.

This makes sure we don't miss important points in our answers and it
also tries to convey the kind of work needed, including for less
common but important cases like when the code for a computer is found
to work on another one (in that case we badly want to know about it,
especially if there is only documentation work to be done for it).

In addition this kind of question is very common in projects that have
limited hardware support, so that also should help us spending less
time answering that question again and again.

The answer also makes it very clear that GNU Boot is just a
distribution and also shows the kind of work various contributors do
to show that some of them are really easy to do, in the hope that it
could bring up more contributors as well.

The way the entry is written (trying to avoid technical words, while
also speaking about very technical topics) is because it is meant for
a very wide audience that go from less technical users that just want
GNU Boot to work on the computer they have but don't know anything
about hardware support, to contributors to projects like Coreboot and
U-Boot that might just want to also add support for computers they
worked on in GNU Boot.

Wording like "the computer will need to be supported well by other
project" is vague to enable people used to contribute to projects like
Coreboot or U-Boot or even experienced distributions contributors will
understand it as having the strict minimum of out of tree patches,
while also enabling less technical users (that don't know what is an
"out of tree patch") to understand more or less what it means.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
neox: minor changes (typo and repetition)
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
This commit is contained in:
Denis 'GNUtoo' Carikli 2024-08-26 14:25:28 +02:00 committed by Adrien 'neox' Bourmault
parent 388c0ef3d0
commit 8843206032
Signed by: neox
GPG Key ID: 57BC26A3687116F6
1 changed files with 60 additions and 0 deletions

View File

@ -194,6 +194,66 @@ What systems are compatible with GNU Boot?
See the [hardware compatibility list](docs/hardware/). See the [hardware compatibility list](docs/hardware/).
Can you add support for more computers?
---------------------------------------
Unless GNU Boot already works on computers that for some reasons are
not yet listed as supported, there will be some more work to do than
just testing and reporting what works.
GNU Boot is a 100% free distribution similar to other 100% free
distributions like Parabola or Trisquel, and like Parabola or
Trisquel, it reuses other software to make something that can be
installed.
Most of the work on GNU Boot consists in testing already supported
computers, improving the documentation and various packaging work.
Like with many other free software projects, the GNU Boot maintainers
are very busy running the project and doing improvements that will
benefit the project in the long term, they most likely don't have the
time to add support for newer computers themselves at the moment, but
they can help you getting the job done with some guidance and by
reviewing patches.
So if you want to add a new computer, the first part of the job is to
verify if the computer can boot and is usable without nonfree
software. It's a good idea to start by reading the "Hardware
compatibility" section of this FAQ to avoid the most common mistakes
with that.
Then once you're confident enough that your computer can boot with
fully free software, you can open a bug report and/or contact the GNU
boot project in one of its mailing list to notify the GNU Boot
maintainers and other contributors about that as this way the
information about this computer will not be lost.
This way if you don't have time anymore to work on it, maybe it would
interest other people later on, or maybe not. In addition, this will
help you getting some feedback from other people to help you
understand if you're on the the right track or not with the computer
you want to add support for.
Then once this is done, the computer will need to be supported well by
other project: like Parabola or Trisquel, GNU Boot reuses other
projects to support hardware. For instance Parabola relies on
linux-libre for its drivers.
GNU Boot relies on software like Coreboot or U-Boot instead. So you
will have to add support for your computer in such projects. This
can be very complicated to do if you're not used to work on low-level
software like drivers, kernels, microcontrollers, etc, unless there is
already a computer very similar to the one you want to add support for
(in that case it might be a good way to get started, though expect to
have to learn many things along the way).
Once this is done, you can add support for that computer in GNU Boot
by doing some packaging work, testing, and writing some
documentation. This is relatively easy to do.
The documentation on how to send patches to GNU Boot is available in
the [git.md](git.md) page.
Will the Purism laptops be supported? Will the Purism laptops be supported?
---------------------------------------------------------------------- ----------------------------------------------------------------------