GNU bug report logs - #43194
[PATCH] gnu: publicly define freedink-engine and freedink-data

Previous Next

Package: guix-patches;

Reported by: Jesse Gibbons <jgibbons2357 <at> gmail.com>

Date: Fri, 4 Sep 2020 04:34:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 43194 in the body.
You can then email your comments to 43194 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#43194; Package guix-patches. (Fri, 04 Sep 2020 04:34:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Jesse Gibbons <jgibbons2357 <at> gmail.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 04 Sep 2020 04:34:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Jesse Gibbons <jgibbons2357 <at> gmail.com>
To: Guix Patches <guix-patches <at> gnu.org>
Subject: [PATCH] gnu: publicly define freedink-engine and freedink-data
Date: Thu, 3 Sep 2020 22:33:31 -0600
[Message part 1 (text/plain, inline)]
The attached patch publicly defines freedink-engine and freedink-data. 
This resolves many of the issues described in #43061. This patch, 
combined with patch #43193(sent earlier today), can close #43061.

-Jesse

[v1-0001-gnu-publicly-define-freedink-engine-and-freedink-.patch (text/x-patch, attachment)]

Information forwarded to guix-patches <at> gnu.org:
bug#43194; Package guix-patches. (Mon, 07 Sep 2020 13:47:01 GMT) Full text and rfc822 format available.

Message #8 received at 43194 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Jesse Gibbons <jgibbons2357 <at> gmail.com>
Cc: 43194 <at> debbugs.gnu.org
Subject: Re: [bug#43194] [PATCH] gnu: publicly define freedink-engine and
 freedink-data
Date: Mon, 07 Sep 2020 15:46:41 +0200
Hi,

Jesse Gibbons <jgibbons2357 <at> gmail.com> skribis:

> The attached patch publicly defines freedink-engine and
> freedink-data. This resolves many of the issues described in
> #43061. This patch, combined with patch #43193(sent earlier today),
> can close #43061.

Now I’m confused: how does it help to make freedink-{engine,data}
public?

>>From 583215aced9b557d6f4e54b290e788d33880c03c Mon Sep 17 00:00:00 2001
> From: Jesse Gibbons <jgibbons2357+guix <at> gmail.com>
> Date: Wed, 26 Aug 2020 21:38:24 -0600
> Subject: [PATCH v1 1/1] gnu: publicly define freedink-engine and freedink-data
>
> * gnu/packages/games.scm: (freedink-engine): make public
> (freedink-data): make public

[...]

>  (define-public freedink
>    ;; This is a wrapper that tells the engine where to find the data.
> -  (package (inherit freedink-engine)
> +  (package ;(inherit freedink-engine)

Is it intended?  Looks like inheriting avoids duplicating fields, no?

Thanks,
Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#43194; Package guix-patches. (Mon, 07 Sep 2020 17:14:02 GMT) Full text and rfc822 format available.

Message #11 received at 43194 <at> debbugs.gnu.org (full text, mbox):

From: Jesse Gibbons <jgibbons2357 <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 43194 <at> debbugs.gnu.org
Subject: Re: [bug#43194] [PATCH] gnu: publicly define freedink-engine and
 freedink-data
Date: Mon, 7 Sep 2020 11:13:17 -0600
Thank you for reviewing.

On 9/7/20 7:46 AM, Ludovic Courtès wrote:
> Hi,
>
> Jesse Gibbons <jgibbons2357 <at> gmail.com> skribis:
>
>> The attached patch publicly defines freedink-engine and
>> freedink-data. This resolves many of the issues described in
>> #43061. This patch, combined with patch #43193(sent earlier today),
>> can close #43061.
> Now I’m confused: how does it help to make freedink-{engine,data}
> public?
Other than making guix more consistent in publicly defining game data 
packages (0ad-data and megaglest-data are public, and I like that -- I 
could write a good article about why, which I think would be a worthy 
entry in the guix blog, especially after #43193 is applied), there are 4 
reasons for this change:

-> freedink-dfarc has problems locating the editor, installed in 
freedink-engine. I guess we could also fix this by making 
freedink-engine an input to freedink-dfarc and splicing a reference to 
it into the default configuration?

-> Unless freedink-data is public, `guix build --source freedink-data` 
fails, and `guix build --sources=all freedink` does not build a source 
for freedink-data. I think future users who want to alter the freedink 
data would appreciate the ability to use guix to get the data. Also, 
it's pointless to use the editor on the installed freedink-data because 
it's read-only when it's installed.

-> Back when I was fixing freedink, I found it difficult to debug 
without freedink-engine being public, because freedink does nothing with 
the freedink-engine source.

-> Freedink-engine installs desktop files to launch freedink without 
freedink-dfarc or the console. This is actually a new issue I will 
address in an updated patch: the desktop files fail because the data 
location is not hard-coded. I think the freedink desktop file can be 
patched if freedink-data is an input, but, like I said above, it's 
pointless to use dinkedit on a read-only directory, so I intend to 
remove it.

>
>> >From 583215aced9b557d6f4e54b290e788d33880c03c Mon Sep 17 00:00:00 2001
>> From: Jesse Gibbons <jgibbons2357+guix <at> gmail.com>
>> Date: Wed, 26 Aug 2020 21:38:24 -0600
>> Subject: [PATCH v1 1/1] gnu: publicly define freedink-engine and freedink-data
>>
>> * gnu/packages/games.scm: (freedink-engine): make public
>> (freedink-data): make public
> [...]
>
>>   (define-public freedink
>>     ;; This is a wrapper that tells the engine where to find the data.
>> -  (package (inherit freedink-engine)
>> +  (package ;(inherit freedink-engine)
> Is it intended?  Looks like inheriting avoids duplicating fields, no?

Oops! I did not intend to leave (inherit freedink-engine) in a comment. 
I initially commented it out because freedink does nothing with the 
source anyway, and I wanted to see what would happen if I removed the 
inheritance. I guess I forgot to remove the semicolon and other additions.

As noted above, it is easiest to use freedink-dfarc to launch the 
editor, but freedink-dfarc must be told what editor to use, and it is 
easier to identify it if the editor is installed in a profile (or 
included as an input). Also, freedink-engine includes (broken) desktop 
files. Since freedink just installs a wrapper script around the engine, 
and does not include the editor or any desktop files, perhaps it would 
be better to put the wrapper script in freedink-engine (thus fixing the 
desktop file), completely remove the freedink package, and rename 
"freedink-engine" to just "freedink"? But freedink-dfarc would still 
need to be able to launch freedink without pointing to any read-only 
data if a user wants to test the edited freedink data.

>
> Thanks,
> Ludo’.
-Jesse




Information forwarded to guix-patches <at> gnu.org:
bug#43194; Package guix-patches. (Mon, 07 Sep 2020 17:27:02 GMT) Full text and rfc822 format available.

Message #14 received at 43194 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Jesse Gibbons <jgibbons2357 <at> gmail.com>
Cc: 43194 <at> debbugs.gnu.org
Subject: Re: [bug#43194] [PATCH] gnu: publicly define freedink-engine and
 freedink-data
Date: Mon, 07 Sep 2020 19:26:10 +0200
Hi,

Jesse Gibbons <jgibbons2357 <at> gmail.com> skribis:

>>> The attached patch publicly defines freedink-engine and
>>> freedink-data. This resolves many of the issues described in
>>> #43061. This patch, combined with patch #43193(sent earlier today),
>>> can close #43061.
>> Now I’m confused: how does it help to make freedink-{engine,data}
>> public?
> Other than making guix more consistent in publicly defining game data
> packages (0ad-data and megaglest-data are public, and I like that -- I
> could write a good article about why, which I think would be a worthy
> entry in the guix blog, especially after #43193 is applied), there are
> 4 reasons for this change:
>
> -> freedink-dfarc has problems locating the editor, installed in
> freedink-engine. I guess we could also fix this by making
> freedink-engine an input to freedink-dfarc and splicing a reference to
> it into the default configuration?
>
> -> Unless freedink-data is public, `guix build --source freedink-data`
> fails, and `guix build --sources=all freedink` does not build a source
> for freedink-data. I think future users who want to alter the freedink
> data would appreciate the ability to use guix to get the data. Also,
> it's pointless to use the editor on the installed freedink-data
> because it's read-only when it's installed.
>
> -> Back when I was fixing freedink, I found it difficult to debug
> without freedink-engine being public, because freedink does nothing
> with the freedink-engine source.
>
> -> Freedink-engine installs desktop files to launch freedink without
> freedink-dfarc or the console. This is actually a new issue I will
> address in an updated patch: the desktop files fail because the data
> location is not hard-coded. I think the freedink desktop file can be
> patched if freedink-data is an input, but, like I said above, it's
> pointless to use dinkedit on a read-only directory, so I intend to
> remove it.

OK, makes sense—thanks for explaining.

>>> >From 583215aced9b557d6f4e54b290e788d33880c03c Mon Sep 17 00:00:00 2001
>>> From: Jesse Gibbons <jgibbons2357+guix <at> gmail.com>
>>> Date: Wed, 26 Aug 2020 21:38:24 -0600
>>> Subject: [PATCH v1 1/1] gnu: publicly define freedink-engine and freedink-data
>>>
>>> * gnu/packages/games.scm: (freedink-engine): make public
>>> (freedink-data): make public
>> [...]
>>
>>>   (define-public freedink
>>>     ;; This is a wrapper that tells the engine where to find the data.
>>> -  (package (inherit freedink-engine)
>>> +  (package ;(inherit freedink-engine)
>> Is it intended?  Looks like inheriting avoids duplicating fields, no?
>
> Oops! I did not intend to leave (inherit freedink-engine) in a
> comment. I initially commented it out because freedink does nothing
> with the source anyway, and I wanted to see what would happen if I
> removed the inheritance. I guess I forgot to remove the semicolon and
> other additions.

OK.  If you send an updated patch, I’ll happily apply it, then!

> As noted above, it is easiest to use freedink-dfarc to launch the
> editor, but freedink-dfarc must be told what editor to use, and it is
> easier to identify it if the editor is installed in a profile (or
> included as an input). Also, freedink-engine includes (broken) desktop
> files. Since freedink just installs a wrapper script around the
> engine, and does not include the editor or any desktop files, perhaps
> it would be better to put the wrapper script in freedink-engine (thus
> fixing the desktop file), completely remove the freedink package, and
> rename "freedink-engine" to just "freedink"? But freedink-dfarc would
> still need to be able to launch freedink without pointing to any
> read-only data if a user wants to test the edited freedink data.

Maybe, sounds like a reasonable option.

Thank you,
Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#43194; Package guix-patches. (Thu, 24 Sep 2020 15:19:01 GMT) Full text and rfc822 format available.

Message #17 received at 43194 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Jesse Gibbons <jgibbons2357 <at> gmail.com>
Cc: 43194 <at> debbugs.gnu.org
Subject: Re: [bug#43194] [PATCH] gnu: publicly define freedink-engine and
 freedink-data
Date: Thu, 24 Sep 2020 17:18:31 +0200
Ping!  :-)

Ludovic Courtès <ludo <at> gnu.org> skribis:

> Hi,
>
> Jesse Gibbons <jgibbons2357 <at> gmail.com> skribis:
>
>>>> The attached patch publicly defines freedink-engine and
>>>> freedink-data. This resolves many of the issues described in
>>>> #43061. This patch, combined with patch #43193(sent earlier today),
>>>> can close #43061.
>>> Now I’m confused: how does it help to make freedink-{engine,data}
>>> public?
>> Other than making guix more consistent in publicly defining game data
>> packages (0ad-data and megaglest-data are public, and I like that -- I
>> could write a good article about why, which I think would be a worthy
>> entry in the guix blog, especially after #43193 is applied), there are
>> 4 reasons for this change:
>>
>> -> freedink-dfarc has problems locating the editor, installed in
>> freedink-engine. I guess we could also fix this by making
>> freedink-engine an input to freedink-dfarc and splicing a reference to
>> it into the default configuration?
>>
>> -> Unless freedink-data is public, `guix build --source freedink-data`
>> fails, and `guix build --sources=all freedink` does not build a source
>> for freedink-data. I think future users who want to alter the freedink
>> data would appreciate the ability to use guix to get the data. Also,
>> it's pointless to use the editor on the installed freedink-data
>> because it's read-only when it's installed.
>>
>> -> Back when I was fixing freedink, I found it difficult to debug
>> without freedink-engine being public, because freedink does nothing
>> with the freedink-engine source.
>>
>> -> Freedink-engine installs desktop files to launch freedink without
>> freedink-dfarc or the console. This is actually a new issue I will
>> address in an updated patch: the desktop files fail because the data
>> location is not hard-coded. I think the freedink desktop file can be
>> patched if freedink-data is an input, but, like I said above, it's
>> pointless to use dinkedit on a read-only directory, so I intend to
>> remove it.
>
> OK, makes sense—thanks for explaining.
>
>>>> >From 583215aced9b557d6f4e54b290e788d33880c03c Mon Sep 17 00:00:00 2001
>>>> From: Jesse Gibbons <jgibbons2357+guix <at> gmail.com>
>>>> Date: Wed, 26 Aug 2020 21:38:24 -0600
>>>> Subject: [PATCH v1 1/1] gnu: publicly define freedink-engine and freedink-data
>>>>
>>>> * gnu/packages/games.scm: (freedink-engine): make public
>>>> (freedink-data): make public
>>> [...]
>>>
>>>>   (define-public freedink
>>>>     ;; This is a wrapper that tells the engine where to find the data.
>>>> -  (package (inherit freedink-engine)
>>>> +  (package ;(inherit freedink-engine)
>>> Is it intended?  Looks like inheriting avoids duplicating fields, no?
>>
>> Oops! I did not intend to leave (inherit freedink-engine) in a
>> comment. I initially commented it out because freedink does nothing
>> with the source anyway, and I wanted to see what would happen if I
>> removed the inheritance. I guess I forgot to remove the semicolon and
>> other additions.
>
> OK.  If you send an updated patch, I’ll happily apply it, then!
>
>> As noted above, it is easiest to use freedink-dfarc to launch the
>> editor, but freedink-dfarc must be told what editor to use, and it is
>> easier to identify it if the editor is installed in a profile (or
>> included as an input). Also, freedink-engine includes (broken) desktop
>> files. Since freedink just installs a wrapper script around the
>> engine, and does not include the editor or any desktop files, perhaps
>> it would be better to put the wrapper script in freedink-engine (thus
>> fixing the desktop file), completely remove the freedink package, and
>> rename "freedink-engine" to just "freedink"? But freedink-dfarc would
>> still need to be able to launch freedink without pointing to any
>> read-only data if a user wants to test the edited freedink data.
>
> Maybe, sounds like a reasonable option.
>
> Thank you,
> Ludo’.




Information forwarded to guix-patches <at> gnu.org:
bug#43194; Package guix-patches. (Fri, 25 Sep 2020 03:56:02 GMT) Full text and rfc822 format available.

Message #20 received at 43194 <at> debbugs.gnu.org (full text, mbox):

From: Jesse Gibbons <jgibbons2357 <at> gmail.com>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 43194 <at> debbugs.gnu.org
Subject: Re: [bug#43194] [PATCH] gnu: publicly define freedink-engine and
 freedink-data
Date: Thu, 24 Sep 2020 21:55:01 -0600
[Message part 1 (text/plain, inline)]
Sorry it took so long. Updated patch is attached.

-Jesse.

On 9/24/20 9:18 AM, Ludovic Courtès wrote:
> Ping!  :-)
>
> Ludovic Courtès <ludo <at> gnu.org> skribis:
>
>
...
>>> -> Freedink-engine installs desktop files to launch freedink without
>>> freedink-dfarc or the console. This is actually a new issue I will
>>> address in an updated patch: the desktop files fail because the data
>>> location is not hard-coded. I think the freedink desktop file can be
>>> patched if freedink-data is an input, but, like I said above, it's
>>> pointless to use dinkedit on a read-only directory, so I intend to
>>> remove it.
The patch removes both desktop files.
>> OK, makes sense—thanks for explaining.

>>>>>    (define-public freedink
>>>>>      ;; This is a wrapper that tells the engine where to find the data.
>>>>> -  (package (inherit freedink-engine)
>>>>> +  (package ;(inherit freedink-engine)
>>>> Is it intended?  Looks like inheriting avoids duplicating fields, no?
>>> Oops! I did not intend to leave (inherit freedink-engine) in a
>>> comment. I initially commented it out because freedink does nothing
>>> with the source anyway, and I wanted to see what would happen if I
>>> removed the inheritance. I guess I forgot to remove the semicolon and
>>> other additions.
The patch fixes this.

>>> As noted above, it is easiest to use freedink-dfarc to launch the
>>> editor, but freedink-dfarc must be told what editor to use, and it is
>>> easier to identify it if the editor is installed in a profile (or
>>> included as an input). Also, freedink-engine includes (broken) desktop
>>> files. Since freedink just installs a wrapper script around the
>>> engine, and does not include the editor or any desktop files, perhaps
>>> it would be better to put the wrapper script in freedink-engine (thus
>>> fixing the desktop file), completely remove the freedink package, and
>>> rename "freedink-engine" to just "freedink"? But freedink-dfarc would
>>> still need to be able to launch freedink without pointing to any
>>> read-only data if a user wants to test the edited freedink data.
>> Maybe, sounds like a reasonable option.
The patch does not do this. For now, I don't have the time (and probably 
won't have much time until late December), so I'll leave it as a to-do 
item for anyone who wants to accomplish this.

-Jesse

[0001-gnu-publicly-define-freedink-engine-and-freedink-dat.patch (text/x-patch, attachment)]

Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Fri, 25 Sep 2020 16:30:01 GMT) Full text and rfc822 format available.

Notification sent to Jesse Gibbons <jgibbons2357 <at> gmail.com>:
bug acknowledged by developer. (Fri, 25 Sep 2020 16:30:02 GMT) Full text and rfc822 format available.

Message #25 received at 43194-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Jesse Gibbons <jgibbons2357 <at> gmail.com>
Cc: 43194-done <at> debbugs.gnu.org
Subject: Re: [bug#43194] [PATCH] gnu: publicly define freedink-engine and
 freedink-data
Date: Fri, 25 Sep 2020 18:29:32 +0200
Jesse Gibbons <jgibbons2357 <at> gmail.com> skribis:

> From 438c2044f23e36fc1ddc07b388624194caebb077 Mon Sep 17 00:00:00 2001
> From: Jesse Gibbons <jgibbons2357+guix <at> gmail.com>
> Date: Wed, 26 Aug 2020 21:38:24 -0600
> Subject: [PATCH 1/1] gnu: publicly define freedink-engine and freedink-data
>
> * gnu/packages/games.scm: (freedink-engine): make public
> (freedink-data): make public

I tweaked the commit log and applied, thanks!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 24 Oct 2020 11:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 156 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.