On Sunday, April 7, 2019 at 6:06:13 AM UTC+1, haaber wrote:
> Hey Thomas,
> 
> I are right, it that was definitely better to put the FAQ on the site
> (and this list). I did set up a standalone debian-10 to build, and the
> process went through smoothly. Thank you. The 'but' comes now: BUT, in
> the end the checksum fails!
> 
> sha256sum vmlinuz
> 570be5685298acb014cfaec132a35469e1cafbe2f731945dc5c57e8956e6638f

Did you use Docker to build it in your standalone qube? It should match if so. 
If not, it's unlikely to match because you're probably building against 
different library versions.

> I stored the output of find . -type f -exec sha256sum \{} \;  of the
> qubes-mirage-firewall folder in this file
> 
> https://framabin.org/p/?d9b2b5de724e5c2a#20uFbk/hVlaZnMqHYQ/DXjv9Lav3+Y8Fw7rU05k1IhY=
> 
> to avoid sending 260 lines here. If someone has recently build the
> version 0.5, could you run a diff on that to see what happened ? Cheers,
> Bernhard

If you want to check that building without Docker gives exactly the same result 
as building with it (which might not be too easy...) you'll need to make sure 
that every installed OCaml library has the same version at least.

I'd suggest copying the firewall directory and building the copy with Docker 
(be sure to delete the copied _build directory first). Then you can compare 
between the two on your own computer.

For example, running "opam list" will show you the local (non-Docker) versions 
chosen.

To enter the Docker virtual build environment (after building), do:

$ docker run --rm -it --entrypoint bash qubes-mirage-firewall

That will get you a bash prompt, and you can run "opam list" there to see which 
versions the Docker build is using, and compare.

Note that any changes you make within the Docker build environment will be lost 
when you exit the shell.

To make sure it always uses the same version, the Docker image contains a Git 
clone of the opam repository, which it pins (in Dockerfile) to a particular 
commit. That means that the build-with-docker script will always build against 
the versions available at that fixed point in time, not the latest ones.

You might also find that Debian packages affect it (e.g. make sure you have the 
same version of gcc, as there are a few C source files used too).

If you need to get things in or out of the Docker environment, you can use -v 
to share a directory. e.g.

$ docker run --rm -it -v $(pwd):/mnt --entrypoint bash qubes-mirage-firewall

will share the current directory with Docker, mounted at `/mnt` in the virtual 
environment.

You might also be interested in the console output from the Travis CI build 
(this also lists the versions used):

https://travis-ci.org/mirage/qubes-mirage-firewall/builds/515629873

Hope that helps.

-- 
You received this message because you are subscribed to the Google Groups 
"qubes-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/qubes-users/8e80a54d-a0b4-41cb-969e-01950f6f49a4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to