[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks.
From: |
Marius Bakke |
Subject: |
bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks. |
Date: |
Mon, 13 Mar 2017 18:00:51 +0100 |
User-agent: |
Notmuch/0.23.7 (https://notmuchmail.org) Emacs/25.1.1 (x86_64-unknown-linux-gnu) |
Clément Lassieur <address@hidden> writes:
> ng0 <address@hidden> writes:
>
>> On 17-03-05 16:24:14, Clément Lassieur wrote:
>>> address@hidden writes:
>>>
>>> > + (add-before 'install 'fix-hooks-shebangs
>>> > + (lambda* (#:key inputs #:allow-other-keys)
>>> > + (let ((perl (string-append (assoc-ref inputs
>>> > "perl")
>>> > + "/bin/perl")))
>>> > + ;; The files in 'lib/Gitolite/Hooks' keep
>>> > references to
>>> > + ;; '/usr/bin/perl', without this fix it is
>>> > impossible to
>>> > + ;; to run gitolite in production.
>>> > + (substitute* (find-files
>>> > "src/lib/Gitolite/Hooks" ".*")
>>> > + (("/usr/bin/perl")
>>> > + perl))
>>> > + #t)))
>>>
>>> This patch introduces references to the store in files installed by
>>> "gitolite setup" command. Those files are installed once and for all.
>>> So for example .gitolite/hooks/common/update's shebang is
>>> #!/gnu/store/vcjvzmdy5091bklv73rx9nc0yvlk12yv-perl-5.24.0/bin/perl. But
>>> then what happens when perl is upgraded, and Guix garbage collected? My
>>> understanding is that the shebang won't work anymore, and gitolite will
>>> be broken.
>>>
>>> One can use instead special-files-service-type, which allows to have
>>> /usr/bin/perl working. But it won't work anymore with this patch.
>>>
>>> I suggest we revert it, but I might be wrong. WDYT?
>>
>> I wanted a solution which works. I didn't consider this until it was
>> merged in (see my last reply). I don't think special-file-types are
>> a solution, I want this to work out of the box so that a service I want
>> to write for gitolite will work.
>> It can be a solution if it would work with the service and when it will
>> be documented as a requirement for gitolite. The off-the-shelves status
>> of gitolite is broken, you are not informed about these shebangs..
>
> This solution works right now, but later, when perl is garbage
> collected, it won't work anymore. And this is worse that just not
> working, because things may already be in production when the bug
> appears.
>
> The special-files-service-type workaround has the benefit of being
> stable: while the user doesn't change her configuration, it will work.
> Even though it does not work "out of the box".
>
> So once again, I suggest we revert it. Please could someone else
> comment on this?
>
> (BTW, when this is reverted, users who did run "gitolite setup" with
> this patch applied will still have the bug: they'll have to fix it
> manually. So the sooner the better.)
So the problem is that created repositories has a perl reference that is
not visible to the garbage collector. Would it be possible to convince
Gitolite to create GC roots for each repo? That's about the only thing I
can think of that will work on both GuixSD and foreign distros.
Using the "special-files-service-type" to create /usr/bin/perl on GuixSD
seems "hacky"; users might want to have a different perl in "/usr/bin".
signature.asc
Description: PGP signature
- bug#25966: Fix bug 25957 and updates gitolite, ng0, 2017/03/04
- bug#25966: [PATCH 1/2] gnu: gitolite: Update to 3.6.6., contact . ng0, 2017/03/04
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., contact . ng0, 2017/03/04
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., Clément Lassieur, 2017/03/05
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., ng0, 2017/03/05
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., Clément Lassieur, 2017/03/13
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks.,
Marius Bakke <=
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., ng0, 2017/03/13
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., Marius Bakke, 2017/03/13
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., Leo Famulari, 2017/03/14
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., ng0, 2017/03/14
- bug#25966: [PATCH 2/2] gnu: gitolite: Fix shebangs in hooks., Clément Lassieur, 2017/03/16
bug#25966: Fix bug 25957 and updates gitolite, ng0, 2017/03/04
bug#25966: Fix bug 25957 and updates gitolite, ng0, 2017/03/04
bug#25966: Fix bug 25957 and updates gitolite, Leo Famulari, 2017/03/04