feat: compute download url in recipe, not in attributes

Closes #11