[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#47539] [PATCH 00/28] Add gh and dependencies

From: Xinglu Chen
Subject: [bug#47539] [PATCH 00/28] Add gh and dependencies
Date: Thu, 01 Apr 2021 20:05:01 +0200

On Thu, Apr 01 2021, Leo Prikler wrote:

>> Compiling github-cli without the package doesn't work, and the
>> package is used in multiple places in the source code.  I don't
>> really know what we can do here.  Should I open an issue on their
>> GitHub page, or just leave it as is?
> For now, I don't think this is going to be a blocking issue, as long as
> the package and the input are appropriately marked, e.g. with comments,
> and we make sure not to endorse the Microsoft OS through them.  
> As to how we might handle this, we could do our own investigations into
> dropping the dependency, but asking a question (make sure to tag it as
> such) should work as well.  Also be clear, that the goal is not
> necessarily to remove the dependency altogether, but rather make it an
> optional one.
> After doing some quick investigations myself, I think the following
> pair of substitute*s might work:
>   (("") "os/exec")
>   (("safeexec") "exec")

Thank you for the pointer, I managed to get it to work with the
following snippet:

#+begin_src scheme
(add-after 'unpack 'remove-safeexec
           (lambda* (#:key outputs #:allow-other-keys)
             (let ((prefix-file (lambda (file)
                             (string-append "src/" file))))
               ;; '' is only used for Windows, we
               ;; replace it with the regular 'os/exec'.  See
               ;; <> for discussion.
               (substitute* (map prefix-file
                 (("") "os/exec")
                 (("safeexec") "exec"))
               ;; These files have already imported 'os/exec', meaning that
               ;; 'os/exec' would get imported twice, causing an error.
               ;; Instead, we just remove the ''.
               (substitute* (map prefix-file
                 (("\"\"") "")
                 (("safeexec") "exec")))))

I also used it to open an issue and everything worked as expected.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]