Subject: Re: Telegram-CLI (v7/v8)

From: Raghav Gururajan <[email-masked]>
Date: Tue, 2 Feb 2021 21:41:14 -0500

Hi Leo!

> Anything particularly worth noting?

Not sure. But based on commit messages, it seems lot of bug fixes.

>>> Please stop trying to use this as a snippet to mean "the root of
>>> the
>>> source and build directory".  It is extremely obscure and people
>>> are
>>> already using "../source" just fine.  (Just do an rgrep if you
>>> aren't
>>> convinced.)
>>
>> Fixed in v8.
> "Fixed".  While it is true, that you're no longer using getenv, binding
> source for string-append later on is not a particularly elegant
> solution either.
> 
>>>> Hmm. I tried but couldn't come up with a way to do it like that.
>>>> :(
>>> You can still try harder for v8 ;)
>>
>> I tried different ways but the arguments key-words between gnu and
>> copy
>> differ a lot. I am unable use key-words from both build systems at
>> the
>> same time. Like using #:configure-flags (from gnu) and #:install
>> (from
>> copy).
> Use something along the lines of
>    (replace 'install
>      (lambda args
>        (apply (assoc-ref copy:%standard-phases 'install)
>               #:install-plan <your install plan>
>               args)))
> Phases should be written in a way, that gratuitous arguments will not
> be read, but passing it in arguments through the package-arguments
> fields remains tricky.  Though even if it were possible, the snippet
> above has better locality.
> 
>> Also, I spent significant amount time to come up the phase I have. So
>> if
>> there are no critical issues, I would like to keep it as-is. :-)
> I personally regard readability as a severe issue in this case.  Of
> course there would be ways of doing this without invoking copy-build-
> system, but in my personal opinion an install plan would likely be the
> most concise here.
> 
> For instance instead of using string-append source everywhere, you
> could just use a directory excursion.  But more importantly, why is it,
> that all of the stuff you're installing is located in the source
> directory?  Do you even build anything that ends up in the
> installation?  Would it make more sense to have #:out-of-source? #f?
> 
> In tgl, you use several directory excursions when arguably only one
> would be needed.  Try to simplify your install process, so that you
> need to bind as few variables as possible.

Agreed. I have updated the pack-def in v9. :-)

Regards,
RG.