Commit Graph

24 Commits

Author SHA1 Message Date
Denis 'GNUtoo' Carikli 9cac692b41
configure.ac: fix dependencies checking with and without guix
There was several issues with the way dependencies were handled:

- First the dependencies were checked but if they weren't found,
  nothing happened: you would have "checking for <command>... no" in
  the configure output, but configure would then ignore that issue and
  continue.

- Then there was no need to check for dependencies provided by Guix if
  they weren't also used outside of Guix.

- Then when guix wasn't used, a lot more dependencies are required,
  and most of them were missing. The list was made by reading
  lbwww-build's Makefile.am and scripts but also untitled's build
  script.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-04-14 18:54:58 +02:00
Denis 'GNUtoo' Carikli a6e4a2a225
configure.ac: Add --disable-guix option
This should make it easier for people not having guix to test the
website.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-04-14 18:54:53 +02:00
Denis 'GNUtoo' Carikli 5434311144
Makefile.am: help: Remove extra new lines
Without that fix, running 'make help' prited 3 extra new lines at the
end of the help.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-04-14 18:54:46 +02:00
Denis 'GNUtoo' Carikli 641e4aaa82
configure.ac: Add --with-untitled-path=PATH
This allows to use a local untitled repository.

It is also now possible to build offline by cloning the lbwww,
lbwww-img and untitled repositories locally and passing them to
configure with --with-*-path.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-04-04 16:17:17 +02:00
Denis 'GNUtoo' Carikli eb5845b8b1
build.sh: improve command line parsing
The previous code was simple and worked but it didn't scale.

With one --with-*-path argument, we have only one elif clause. With 2
--with-*-path arguments we end up with 4 elif clauses. And with 3
--with-*-path arguments we end up with 13 elif clauses which is way
too much.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-04-04 16:17:16 +02:00
Denis 'GNUtoo' Carikli e4fe5e0e56
configure.ac: Add --with-lbwww-img-path=PATH
This allows to use a local lbwww-img repository.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-04-04 16:17:16 +02:00
Denis 'GNUtoo' Carikli c81c3ec944
Add automatic tests
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-04-04 16:14:41 +02:00
Denis 'GNUtoo' Carikli 3e9180a277
Convert to autotools to enable configuring the lbwww directory
Using autotools has several advantages against trying to add such a
feature to the Makefile:
- we don't need to always pass an extra option to make, so once
  configured there is less to type
- we also check for dependencies along the way
- the trade-off between easy to use and code simplicity looks better
  than with plain Makefile: with a single option we can easily make
  the Makefile use --share and --with-lbwww-path conditionally. Doing
  that with a plain Makefile would probably be way more complex, or
  would require code duplication (to only use --share and
  --with-lbwww-path when an option is passed to the Makefile), or
  would require to pass raw build.sh options (which would complicate
  usage).

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-03-23 01:55:59 +01:00
Denis 'GNUtoo' Carikli 0259444361
build.sh: Add --with-lbwww-path to use a local lbwww git repository
The ideal situation would be to move integrate all the files of this
repository inside lbwww to be able to easily test local changes.

However that doesn't work as untitled expect lbwww to be in
untitled/www/lbwww and there is no way to configure that.

Using symlinks doesn't work either as untitled doesn't trust symlinks
as there are TOCTU attacks with it if the distribution doesn't
fs.protected_hardlinks and fs.protected_symlinks in sysctl.

Patching untitled is also not the best option here as it could
potentially add extra maintenance in the long run.

So we add the configuration inside lbwww-build instead.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-03-23 01:53:35 +01:00
Denis 'GNUtoo' Carikli 84bb0a3076
build.sh: Add help
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-03-23 01:53:25 +01:00
Denis 'GNUtoo' Carikli 6ba4e7cf7d
README: Add basic information on dependencies
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@a-lec.org>
2023-03-23 01:50:41 +01:00
Denis 'GNUtoo' Carikli d64da48264
Update to current domain
This change is urgent to make as my talk will start in less than 1
hour, so it was not sent for review.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-03-19 15:30:23 +01:00
Denis 'GNUtoo' Carikli ed43d55060
Workaround pandoc build failure on i686
For some reasons pandoc on Guix fails at guix commit
5312d798ac36a72d8a977325a7c6ff7647be670a ("gnu:
go-golang-zx2c4-com-wireguard: Update to 0.0.20211016.") and produce
the following error:
  build of /gnu/store/<hash>-ghc-basement-0.0.15.drv failed
  View build log at '/var/log/guix/drvs/h7/<hash>-ghc-basement-0.0.15.drv.gz'.

Since I use i686 and that we need to publish the website now, we
workaround the build failure by using a known working commit hash.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2023-03-16 17:03:27 +01:00
Denis 'GNUtoo' Carikli f24368b616
README: Improve token generation documentation
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-12-20 18:04:32 +01:00
Denis 'GNUtoo' Carikli 4a7e21edc7
Switch from gnutoo.srht.site/libreboot to libreboot.srht.site
As adding organization support to Source Hut is still a
work in progress, we will use this workaround in the
meantime.

Sourceware also uses a similar workaround.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-12-20 17:57:19 +01:00
Denis 'GNUtoo' Carikli 75660feab4
Switch to our untitled mirror
This makes sure that we host all the source code to reproduce that
website and that we build it with that.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-24 03:15:25 +01:00
Denis 'GNUtoo' Carikli c37de82ede
Move images to the same domain under img/
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-24 02:52:45 +01:00
Denis 'GNUtoo' Carikli 58fc2a673d
Add the ability to test the website locally
That serve the website to http://127.0.0.1:8080/

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-24 02:35:06 +01:00
Denis 'GNUtoo' Carikli 44aa09777d
index.html: Fix naming
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-22 22:04:41 +01:00
Denis 'GNUtoo' Carikli 26810823c9
Move the website to https://gnutoo.srht.site/libreboot/
Without that we can only have one website.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-22 21:58:12 +01:00
Denis 'GNUtoo' Carikli b7e10712a3
Add target to upload the website
The token will need to be added in id_oauth2_bearer.

It's not very safe to pass the content to a command as any user on the
system on which it is run will be able to get the token, though I
didn't find a command line argument in curl to pass it a file path
instead.

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-22 21:57:52 +01:00
Denis 'GNUtoo' Carikli 0292688c77
Generate a tarball of the website
Sourcehut has a way to setup a static website by uploading a tarball
of the content[1].

Even if we don't end up using Sourcehut, generating a tarball of the
website enables more easy deployments.

Note that we didn't touch to the website code yet, so it still uses
the old URLs, the old image locations, etc.

After creating a token (documentation[1]), the website can then be
uploaded with the following command:
curl \
	--oauth2-bearer "<token>" \
	-Fcontent=@website.tar.gz \
	https://pages.sr.ht/publish/gnutoo.srht.site

[1]https://srht.site/quickstart

Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-22 21:57:24 +01:00
Denis 'GNUtoo' Carikli 8f469e26a1
Switch to the version without the policy to include nonfree software
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-22 20:33:57 +01:00
Denis 'GNUtoo' Carikli db0fb8a251
Initial import
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
2022-11-22 20:33:08 +01:00