unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Jesse Gibbons <jgibbons2357@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 43194@debbugs.gnu.org
Subject: [bug#43194] [PATCH] gnu: publicly define freedink-engine and freedink-data
Date: Thu, 24 Sep 2020 21:55:01 -0600	[thread overview]
Message-ID: <d057876d-2a44-0fb2-47c3-7dcef1e7f6eb@gmail.com> (raw)
In-Reply-To: <87zh5f6w54.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 2338 bytes --]

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@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


[-- Attachment #2: 0001-gnu-publicly-define-freedink-engine-and-freedink-dat.patch --]
[-- Type: text/x-patch, Size: 2462 bytes --]

From 438c2044f23e36fc1ddc07b388624194caebb077 Mon Sep 17 00:00:00 2001
From: Jesse Gibbons <jgibbons2357+guix@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
---
 gnu/packages/games.scm | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 126539825c..8182bbbe6c 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -2861,7 +2861,7 @@ interface or via an external visual interface such as GNU XBoard.")
                   (ftp-directory . "/chess")))
     (license license:gpl3+)))
 
-(define freedink-engine
+(define-public freedink-engine
   (package
     (name "freedink-engine")
     (version "109.6")
@@ -2891,7 +2891,16 @@ interface or via an external visual interface such as GNU XBoard.")
 	     (invoke "autoreconf")
 	     ;; Build fails when autom4te.cache exists.
 	     (delete-file-recursively "autom4te.cache")
-             #t)))))
+             #t))
+         (add-after 'install 'delete-freedinkedit-desktop
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+             ;; freedinkedit does not know where to find freedink data
+             ;; freedink data is read-only, so it cannot be edited anyway.
+             ;; TODO: fix freedink.desktop
+             (delete-file-recursively (string-append
+                            out "/share/applications"))
+             #t))))))
     (native-inputs `(("autoconf" ,autoconf)
                      ("automake" ,automake)
                      ("cxxtest" ,cxxtest)
@@ -2913,7 +2922,7 @@ game data files but it also supports user-produced game mods or \"D-Mods\".
 To that extent, it also includes a front-end for managing all of your D-Mods.")
     (license license:gpl3+)))
 
-(define freedink-data
+(define-public freedink-data
   (package
     (name "freedink-data")
     (version "1.08.20190120")
@@ -2971,7 +2980,6 @@ and its numerous D-Mods.")
     (arguments
      '(#:builder (begin
                    (use-modules (guix build utils))
-
                    (let* ((output     (assoc-ref %outputs "out"))
                           (bin        (string-append output "/bin"))
                           (executable (string-append bin "/freedink")))
-- 
2.28.0


  reply	other threads:[~2020-09-25  3:56 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-04  4:33 [bug#43194] [PATCH] gnu: publicly define freedink-engine and freedink-data Jesse Gibbons
2020-09-07 13:46 ` Ludovic Courtès
2020-09-07 17:13   ` Jesse Gibbons
2020-09-07 17:26     ` Ludovic Courtès
2020-09-24 15:18       ` Ludovic Courtès
2020-09-25  3:55         ` Jesse Gibbons [this message]
2020-09-25 16:29           ` bug#43194: " Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d057876d-2a44-0fb2-47c3-7dcef1e7f6eb@gmail.com \
    --to=jgibbons2357@gmail.com \
    --cc=43194@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).