Dear Genodeians,

I started working with the depot tools in order to create and deploy my own 
archives. Unfortunately, I'm a bit puzzled about the hashing/versioning. Let me 
clarify my confusion on a minimal example:

$> git clone https://github.com/genodelabs/genode.git
$> cd genode
$> ./tool/depot/extract local/api/base
Error: /home/johanness/repos/genode/repos/base/recipes/api/base/hash is out of 
date

This error indicates that the archived source code has changed, which should
be reflected by incrementing the archive version and updating the hash of
the recipe. You may update the recipe hash via the following command:

  echo 2018-06-25 1cece72259a129c0906c20d32da078ee0638e545 > 
/home/johanness/repos/genode/repos/base/recipes/api/base/hash
[...]

The latest commit on the current master branch updated the recipe hashes, which 
is why I assumed the extract tool should calculate the same hashes but it 
doesn't.

Next, I executed the same command with `VERBOSE=` to get the command that 
calculates the hash. I tried to run the command manually as follows:

$> cd depot/local/api/base/incomplete
$> find . -type f | sort | xargs -d '\n' cat | sha1sum | sed "s/ .*//
731162f0b76bebabc0741366600973b9bbe23651

As you can see, I get a different hash as the extract tool suggested before. 
Both hashes are different from the recipe hash, by the way. I might be lacking 
some sleep today and am probably misconceiving the process. Anyway, I'd 
appreciate if anyone could help and clarify this point.

PS: I came across this issue when I tried to create my first recipe. As this 
uses the base API, it complained that the hash is out of date. This seems 
counterintuitive as the base API should be pretty stable and deploying my own 
archives should not require me to provide my own base API as well. Please 
correct me if I'm wrong.

Cheers
 Johannes

_______________________________________________
Genode users mailing list
users@lists.genode.org
https://lists.genode.org/listinfo/users

Reply via email to