Without that fix, shellcheck -x complains a lot:
In build.sh line 53:
mkdir -p "$(dirname ${dst_path})"
^---------^
SC2086 (info): Double quote to prevent globbing and word splitting.
In build.sh line 82:
git -C "${dst_path}" am $(realpath ${patch})
^------------------^
SC2046 (warning): Quote this to prevent word splitting.
git -C "${dst_path}" am $(realpath ${patch})
^------^
SC2086 (info): Double quote to prevent globbing and word splitting.
In build.sh line 112:
opt="$(eval echo \$$i)"
^--
SC2086 (info): Double quote to prevent globbing and word splitting.
In build.sh line 127:
untitled_path="$(eval echo \$$(expr $i + 1))"
^------------^
SC2046 (warning): Quote this to prevent word splitting.
untitled_path="$(eval echo \$$(expr $i + 1))"
^--^
SC2003 (style): expr is antiquated.
Consider rewriting this using $((..)), ${} or [[ ]].
untitled_path="$(eval echo \$$(expr $i + 1))"
^--
SC2086 (info): Double quote to prevent globbing and word splitting.
In build.sh line 128:
i="$(expr "$i" + 1)"
^--^
SC2003 (style): expr is antiquated.
Consider rewriting this using $((..)), ${} or [[ ]].
In build.sh line 136:
i="$(expr "$i" + 1)"
^--^
SC2003 (style): expr is antiquated.
Consider rewriting this using $((..)), ${} or [[ ]].
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
First this is more consistent as we already have a website-build
directory. Then it is also useful for migrating to haunt as 'haunt
build' puts the generated website in a 'site/' directory, so without
this rename, when the migration would be complete we'd have site/site
instead of website/site.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
The patch added support for deploying websites made with untitled in
subdirectory and was needed to make the news/ pages work.
But now the functionality has been merged upstream, so we don't need a
patch for that anymore.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
The file adding the news is named gnuboot-december-2023.md instead of
gnuboot-0.1-rc1.md as the later is understood as a translation in the
'1-rc1' lang. Renaming the file to gnuboot-0.1-rc1.en.md instead makes
untitled detect the lang correctly but then it assumes this is a
translation and adds a broken link for "English" on the new page.
For now the older Libreboot news were kept as this shows the history
of the project and since GNU Boot is a continuation of the Libreboot
project it makes sense to also keep them.
The CSS also needed to be separated from the template because
otherwise the generated news page would be incomplete and miss all
what comes before the CSS like '<!DOCTYPE html>' for instance.
Finally x-reviewed was changed into x-unreviewed because we can't set
x-reviewed for the news, so the only way to remove the banner for the
individual news is to default to reviewed (and to mark all unreviewed
files as such).
As for the Untitled patch it is needed to make the news page work.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
This also makes it possible to use --disable-guix on a Guix system.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
Without that fix, build.sh compares the desired Untitled revision with
the GNU Boot git revision, so the comparison always fail, which leads
to broken offline builds.
This was broken from the start in the commit
cabc1cac08 ("website-build: avoid
unnecessary git fetch").
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
When we already have the right untitled revision checked out, we don't
need to try to fetch its revision again. This also enable offline
builds in that case.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
The new untitled revision has a fix for having spaces inside the
website title.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
Before we needed to fetch the website from git because it was in a
separate repository.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
Without that fix, we end up with 'Fix SC2086 (info): Double quote to
prevent globbing and word splitting.' shellcheck warnings.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
Without that fix, using shellcheck on this file results in several warning
like this one:
In website-build/build.sh line 101:
if [ $i -ge $# ] ; then
^-- SC2086 (info):
Double quote to prevent
globbing and word splitting.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
Without that fix, using shellcheck on this file results in several warning
like this one:
In website-build/build.sh line 32:
echo -e "\t-h, --help"
^-- SC3037 (warning):
In POSIX sh, echo flags are undefined.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
Since the website and the images were merged in GNU boot respectively
in site/ and www/, we can now modify GNU boot to only be cloned once
to build the website.
The image path was also modified to make images work both in the local
served website and at gnu.org and also to minimize the differences
between the test and deployment setups.
Libreboot.at also hosted a copy of Untitled to make it simple to
control the revision being used.
But in the longer term, it would be a bad idea to do that again for
GNU boot since there are plans to convert the website and/or
documentation to the texinfo format, and so at some point Untitled
will stop being used, and we don't want to end up with a git
repository that needs to be kept for historic reasons but that is
unused.
Since the website isn't ready we also have a redirection to Savannah
to make sure that visitors are redirected to something meaningful.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Neox: Suggested the split in smaller commits and various ways to do
that (including some that were used).
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
Since the website and the images were merged in GNU boot respectively
in site/ and www/, we can now modify GNU boot to only be cloned once
to build the website.
This also requires to move the images inside site/ at the place where
website-build expects them.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Neox: Suggested the split from the "website-build: build.sh: switch to
GNU Boot repositories." commit.
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
This for instance enable users to manually override the revisions to
test branches of git repositories.
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
Having that code inside the same repository than GNU Boot makes it
easier to keep Untitled versions (and possibly additional patches on
top) in sync with the documentation/website being worked on.
This is relevant as there are plans within GNU Boot to convert the
website to Texinfo but that would require to patch untitled (to add
support for Texinfo pages in untitled) to do a progressive transition
to Texinfo.
Using an external repository to temporarily maintain a patched version
of Untitled is not optimal as we would end up having to warn users not
to use that repository anymore at some point.
Bringing in the whole untitled source code and documentation in this
GNU Boot repository is also not a good option since we only need
minimal patching on top of untitled, so in the long run not doing that
would help keep the GNU Boot repository smaller and more simple.
In addition we currently do need to wrap the build with a fixed Guix
revision as for instance with a more recent Guix revision than the one
used by website-built, for instance at the commit ("gnu: nyxt: Update
to 3.9.0."), if we run ./build.sh directly without using a fixed Guix
revision, the build is broken:
Generating 'www/lbwww/site/index.html'
Generating 'www/lbwww/site/license.html'
YAML parse exception at line 7, column 0,
while scanning a simple key:
could not find expected ':'
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>