summaryrefslogtreecommitdiff
path: root/libre/calibre-libre/desktop_integration.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libre/calibre-libre/desktop_integration.patch')
-rw-r--r--libre/calibre-libre/desktop_integration.patch109
1 files changed, 109 insertions, 0 deletions
diff --git a/libre/calibre-libre/desktop_integration.patch b/libre/calibre-libre/desktop_integration.patch
new file mode 100644
index 000000000..4c756f5d4
--- /dev/null
+++ b/libre/calibre-libre/desktop_integration.patch
@@ -0,0 +1,109 @@
+--- a/src/calibre/linux.py 2012-09-21 06:56:20.000000000 +0200
++++ b/src/calibre/linux.py 2012-09-22 18:51:12.000000000 +0200
+@@ -179,19 +179,6 @@
+ self.setup_completion()
+ if islinux or isbsd:
+ self.setup_desktop_integration()
+- self.create_uninstaller()
+-
+- from calibre.utils.config import config_dir
+- if os.path.exists(config_dir):
+- os.chdir(config_dir)
+- if islinux or isbsd:
+- for f in os.listdir('.'):
+- if os.stat(f).st_uid == 0:
+- import shutil
+- shutil.rmtree(f) if os.path.isdir(f) else os.unlink(f)
+- if os.stat(config_dir).st_uid == 0:
+- os.rmdir(config_dir)
+-
+ if warn is None and self.warnings:
+ self.info('There were %d warnings'%len(self.warnings))
+ for args, kwargs in self.warnings:
+@@ -237,7 +224,7 @@
+ if isnetbsd:
+ f = os.path.join(self.opts.staging_root, 'share/bash_completion.d/calibre')
+ else:
+- f = os.path.join(self.opts.staging_etc, 'bash_completion.d/calibre')
++ f = os.path.join(self.opts.staging_root, 'usr/share/bash-completion/completions/calibre')
+ if not os.path.exists(os.path.dirname(f)):
+ os.makedirs(os.path.dirname(f))
+ self.manifest.append(f)
+@@ -357,63 +344,39 @@
+
+ with TemporaryDirectory() as tdir, CurrentDir(tdir), \
+ PreserveMIMEDefaults():
+- render_img('mimetypes/lrf.png', 'calibre-lrf.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-lrf.png application-lrf', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-lrf', '128'))
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-lrf.png text-lrs', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-lrs',
+- '128'))
+- render_img('mimetypes/mobi.png', 'calibre-mobi.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-mobi.png application-x-mobipocket-ebook', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-x-mobipocket-ebook', '128'))
+- render_img('mimetypes/tpz.png', 'calibre-tpz.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-tpz.png application-x-topaz-ebook', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-x-topaz-ebook', '128'))
+- render_img('mimetypes/azw2.png', 'calibre-azw2.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-azw2.png application-x-kindle-application', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-x-kindle-application', '128'))
+- render_img('mimetypes/azw3.png', 'calibre-azw3.png')
+- cc('xdg-icon-resource install --noupdate --context mimetypes --size 128 calibre-azw3.png application-x-mobi8-ebook', shell=True)
+- self.icon_resources.append(('mimetypes', 'application-x-mobi8-ebook', '128'))
+- render_img('lt.png', 'calibre-gui.png', width=256, height=256)
+- cc('xdg-icon-resource install --noupdate --size 256 calibre-gui.png calibre-gui', shell=True)
+- self.icon_resources.append(('apps', 'calibre-gui', '128'))
+- render_img('viewer.png', 'calibre-viewer.png')
+- cc('xdg-icon-resource install --size 128 calibre-viewer.png calibre-viewer', shell=True)
+- self.icon_resources.append(('apps', 'calibre-viewer', '128'))
++ dir = os.path.join(self.opts.staging_sharedir,'../pixmaps')
++ os.mkdir(dir)
++ render_img('mimetypes/lrf.png', os.path.join(dir,'calibre-lrf.png'))
++ render_img('lt.png', os.path.join(dir, 'calibre-gui.png'))
++ render_img('viewer.png', os.path.join(dir, 'calibre-viewer.png'))
+
+ mimetypes = set([])
+ for x in all_input_formats():
+ mt = guess_type('dummy.'+x)[0]
+- if mt and 'chemical' not in mt and 'ctc-posml' not in mt:
++ if mt and 'chemical' not in mt and 'text' not in mt and 'pdf' not in mt and 'xhtml' not in mt:
+ mimetypes.add(mt)
+
+ def write_mimetypes(f):
+ f.write('MimeType=%s;\n'%';'.join(mimetypes))
+
+- f = open('calibre-lrfviewer.desktop', 'wb')
++ dir = os.path.join(self.opts.staging_sharedir,'../applications')
++ os.mkdir(dir)
++ f = open(os.path.join(dir, 'calibre-lrfviewer.desktop'), 'wb')
+ f.write(VIEWER)
+ f.close()
+- f = open('calibre-ebook-viewer.desktop', 'wb')
++ f = open(os.path.join(dir, 'calibre-ebook-viewer.desktop'), 'wb')
+ f.write(EVIEWER)
+ write_mimetypes(f)
+ f.close()
+- f = open('calibre-gui.desktop', 'wb')
++ f = open(os.path.join(dir, 'calibre-gui.desktop'), 'wb')
+ f.write(GUI)
+ write_mimetypes(f)
+ f.close()
+- des = ('calibre-gui.desktop', 'calibre-lrfviewer.desktop',
+- 'calibre-ebook-viewer.desktop')
+- for x in des:
+- cmd = ['xdg-desktop-menu', 'install', '--noupdate', './'+x]
+- cc(' '.join(cmd), shell=True)
+- self.menu_resources.append(x)
+- cc(['xdg-desktop-menu', 'forceupdate'])
+- f = open('calibre-mimetypes.xml', 'wb')
++ dir = os.path.join(self.opts.staging_sharedir,'../mime/packages/')
++ os.makedirs(dir)
++ f = open(os.path.join(dir, 'calibre.xml'), 'wb')
+ f.write(MIME)
+ f.close()
+- self.mime_resources.append('calibre-mimetypes.xml')
+- cc('xdg-mime install ./calibre-mimetypes.xml', shell=True)
+ except Exception:
+ if self.opts.fatal_errors:
+ raise