From: <pkill9@runbox.com>
To: Ricardo Wurmus <rekado@elephly.net>
Cc: 34576 <34576@debbugs.gnu.org>
Subject: [bug#34576] Calibre: Add icon and desktop file to Calibre
Date: Wed, 20 Feb 2019 05:06:30 +0000 (GMT) [thread overview]
Message-ID: <E1gwK5W-00056Z-Fk@rmmprod05.runbox> (raw)
In-Reply-To: <875ztfv59w.fsf@elephly.net>
[-- Attachment #1: Type: text/plain, Size: 2492 bytes --]
I've attached a patch with the 'let' removed from the icon install phase, but I haven't changed the indentation of the desktop file because when I did that it added a blank line at the beginning of the desktop file and created a large indentation before '[Desktop Entry]'. I moved 'out' to be next to the last line of the desktop file output.
> Secondly, the indentation is odd. I’d write it like this:
>
> (format #t "\
> [Desktop Entry]~@
> Name=…
> Comment=…
> …
> Type=Application~%" out)
>
>
> --
I used the xonotic package definition as a reference for thi part, and emacs' `indent-region` indents it like this. I don't know how it should look. I've attached a patch for now.
On Tue, 19 Feb 2019 22:26:35 +0100, Ricardo Wurmus <rekado@elephly.net> wrote:
>
> Hi pkill9,
>
> > + (add-after 'install 'install-icon
> > + (lambda* (#:key outputs #:allow-other-keys)
> > + (let* ((out (assoc-ref outputs "out")))
> > + (install-file "imgsrc/calibre.svg"
> > + (string-append out
> > + "/share/icons/hicolor/scalable/apps")))
> > + #t))
>
> You can do without “let*” here.
>
> > + (add-after 'install-icon 'install-desktop-file
> > + (lambda* (#:key outputs #:allow-other-keys)
> > + (let ((out (assoc-ref outputs "out")))
> > + (mkdir-p (string-append out "/share/applications"))
> > + (with-output-to-file
> > + (string-append out "/share/applications/calibre.desktop")
> > + (lambda _
> > + (format #t
> > + "[Desktop Entry]~@
> > + Name=Calibre~@
> > + Comment=E-book organiser and reader~@
> > + Exec=~a/bin/calibre~@
> > + TryExec=~@*~a/bin/calibre~@
> > + Icon=calibre~@
> > + Categories=Office~@
> > + Type=Application~%"
> > + out)))
> > + #t)))
>
> Does upstream not provide a desktop file? I’d rather see this submitted
> to upstream. Have you contacted the developers about this?
>
> Secondly, the indentation is odd. I’d write it like this:
>
> (format #t "\
> [Desktop Entry]~@
> Name=…
> Comment=…
> …
> Type=Application~%" out)
>
>
> --
> Ricardo
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-calibre-Add-desktop-file-and-icon.patch --]
[-- Type: text/x-patch; name="0001-gnu-calibre-Add-desktop-file-and-icon.patch", Size: 2102 bytes --]
From 14b7aacec811dd8fbbc7d87846dc4722b13522c9 Mon Sep 17 00:00:00 2001
From: Pkill -9 <pkill9@runbox.com>
Date: Wed, 20 Feb 2019 05:01:13 +0000
Subject: [PATCH] gnu: calibre: Add desktop file and icon.
* gnu/packages/ebook.scm (calibre): Add desktop file and icon.
---
gnu/packages/ebook.scm | 25 ++++++++++++++++++++++++-
1 file changed, 24 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm
index 99e49bc17..a34664863 100644
--- a/gnu/packages/ebook.scm
+++ b/gnu/packages/ebook.scm
@@ -185,7 +185,30 @@
(setenv "PODOFO_INC_DIR" (string-append podofo "/include/podofo"))
(setenv "PODOFO_LIB_DIR" (string-append podofo "/lib"))
#t)))
- (add-after 'install 'install-font-liberation
+ (add-after 'install 'install-icon
+ (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "imgsrc/calibre.svg"
+ (string-append (assoc-ref outputs "out")
+ "/share/icons/hicolor/scalable/apps"))
+ #t))
+ (add-after 'install-icon 'install-desktop-file
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p (string-append out "/share/applications"))
+ (with-output-to-file
+ (string-append out "/share/applications/calibre.desktop")
+ (lambda _
+ (format #t
+ "[Desktop Entry]~@
+ Name=Calibre~@
+ Comment=E-book organiser and reader~@
+ Exec=~a/bin/calibre~@
+ TryExec=~@*~a/bin/calibre~@
+ Icon=calibre~@
+ Categories=Office~@
+ Type=Application~%" out))))
+ #t))
+ (add-after 'install-desktop-file 'install-font-liberation
(lambda* (#:key inputs outputs #:allow-other-keys)
(for-each (lambda (file)
(install-file file (string-append
--
2.20.1
next prev parent reply other threads:[~2019-02-20 5:22 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-19 18:26 [bug#34576] Calibre: Add icon and desktop file to Calibre pkill9
2019-02-19 21:26 ` Ricardo Wurmus
2019-02-20 4:30 ` pkill9
2019-02-20 5:00 ` Brett Gilio
2019-02-20 5:06 ` pkill9 [this message]
2019-02-20 14:08 ` Tobias Geerinckx-Rice
2019-02-20 14:25 ` Tobias Geerinckx-Rice
2020-10-01 3:18 ` bug#34576: " Michael Rohleder
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=E1gwK5W-00056Z-Fk@rmmprod05.runbox \
--to=pkill9@runbox.com \
--cc=34576@debbugs.gnu.org \
--cc=rekado@elephly.net \
/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 external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.