Subject: Re:

From: Brendan Tildesley <[email-masked]>
Date: Sun, 13 Sep 2020 22:43:27 +1000

On 8/9/20 10:22 pm, Prafulla Giri wrote:
> I see.
>
> Yes, it does make sense now why you chose to replace the 'wrap phase.
>
> I wonder.... perhaps it'd be better altogether if the (wrap-program) 
> procedure could be re-written to not make ..*.real.real programs...? 
> That would save us a lot of code-duplication...

I have come to understand wrap-program a little better and I realised 
your patch could have actually been fixed in a better way than I did. 
The issue is with the part of your code that runs

(find-files "." ".*")

This is what matches all the .calibre-real files

If instead of that, it was:

(find-files "." (lambda (file stat) (not (wrapper? file))))

or

(find-files "." (lambda (file stat) (not (string-prefix "." (basename 
file))))

It should avoid double wrapping. An even simpler way would have been to 
use (add-before 'wrap ..., instead of (add-after 'wrap ...

If you are still interested, feel free to make a patch overwriting mine 
to use this more correct method, instead of where i duplicated the wrap 
PYTHONPATH bit.

The fact that this happened is a bug though. I created some patches I 
think fix this for core-updates. It would have made your original patch 
error and force you to fix it: https://issues.guix.gnu.org/43367