Closed lsf37 closed 3 years ago
Do not merge yet: this commit doesn't work, and I'm not sure what exactly the problem is.
The apt-get install
fails downloading the deb
package for texlive-fonts-extra
(consistently). But, if I remove it from this apt-get
line, and later just run
sudo apt-get install texlive-fonts-extra
in the container itself, it works just fine.
@wom-bat do you have any idea what might be going wrong here?
Is it possible to guard things by environment variables in docker? That way a version that can build the manual can be selectively enabled and hosted under a slightly modified label name, ie sel4-manual. This is how we handle riscv toolchains currently.
Is it possible to guard things by environment variables in docker? That way a version that can build the manual can be selectively enabled and hosted under a slightly modified label name, ie sel4-manual. This is how we handle riscv toolchains currently.
Yes, we can do that, basically making a separate script apply_manual.sh. Maybe that will actually circumvent the error.
It might become a bit more interesting when you then want to combine things, e.g. sel4_riscv_manual. Still alright I guess.
@lsf37 I think the problem is this one https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=960304. When the script is executing, you're using the debian snapshot repositories (which seem to be rate limited / randomly closing connections). When you install it afterwards in the container, you're using the normal repos.
@lsf37 I think the problem is this one https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=960304. When the script is executing, you're using the debian snapshot repositories (which seem to be rate limited / randomly closing connections). When you install it afterwards in the container, you're using the normal repos.
Thank you, that sounds exactly like what is happening, and since texlive-fonts-extra
is one of the last packages and reasonably large, it makes sense that it would trigger there. Will see if if the workarounds described in the bug report work for this as well.
Ok, this is now ready for review. I couldn't get it to work on snapshot, even with letting it wait (for rate limiting) etc, but @LukeMondy says there is no big downside to pulling it from the standard non-snapshot repo in this case, so that's what it's doing now.
With this, you can get a sel4-tex
image by invoking
./build.sh -s tex -b sel4
It might make sense to add this to the Makefile as well, which is not done yet, but since @LukeMondy also mentioned that Debian now provides a prebuilt riscv toolchain, we might roll riscv into the base image and refactor the Makefile a bit more in that operation (which would override any new -tex
combinations we put in).
This commit adds doxygen + sufficient LaTeX dependencies to build the seL4 reference manual.
See also the discussion on seL4/ci-actions#65