18
18
'ebook-convert = calibre.ebooks.conversion.cli:main',
19
19
'markdown-calibre = calibre.ebooks.markdown.markdown:main',
20
20
'web2disk = calibre.web.fetch.simple:main',
21
'calibre-server = calibre.library.server:main',
21
'calibre-server = calibre.library.server.main:main',
22
22
'lrf2lrs = calibre.ebooks.lrf.lrfparser:main',
23
23
'lrs2lrf = calibre.ebooks.lrf.lrs.convert_from:main',
24
24
'librarything = calibre.ebooks.metadata.library_thing:main',
287
286
self.task_failed('Setting up completion failed')
289
def setup_udev_rules(self):
290
self.info('Trying to setup udev rules...')
292
group_file = os.path.join(self.opts.staging_etc, 'group')
293
if not os.path.exists(group_file):
294
group_file = '/etc/group'
295
groups = open(group_file, 'rb').read()
296
group = 'plugdev' if 'plugdev' in groups else 'usb'
297
old_udev = '/etc/udev/rules.d/95-calibre.rules'
298
if not os.path.exists(old_udev):
299
old_udev = os.path.join(self.opts.staging_etc, 'udev/rules.d/95-calibre.rules')
300
if os.path.exists(old_udev):
304
self.warn('Old udev rules found, please delete manually:',
306
if self.opts.staging_root == '/usr':
309
base = os.path.join(self.opts.staging_root, 'lib')
310
base = os.path.join(base, 'udev', 'rules.d')
311
if not os.path.exists(base):
313
with open(os.path.join(base, '95-calibre.rules'), 'wb') as udev:
314
self.manifest.append(udev.name)
315
udev.write('''# Sony Reader PRS-500\n'''
316
'''SUBSYSTEMS=="usb", SYSFS{idProduct}=="029b", SYSFS{idVendor}=="054c", MODE="660", GROUP="%s"\n'''%(group,)
319
if self.opts.fatal_errors:
321
self.task_failed('Setting up udev rules failed')
323
288
def install_man_pages(self):
325
290
from calibre.utils.help2man import create_man_page
446
411
def opts_and_words(name, op, words):
447
412
opts = '|'.join(options(op))
448
413
words = '|'.join([w.replace("'", "\\'") for w in words])
449
return ('_'+name+'()'+\
414
fname = name.replace('-', '_')
415
return ('_'+fname+'()'+\
473
complete -F _'''%(opts, words) + name + ' ' + name +"\n\n").encode('utf-8')
439
complete -F _'''%(opts, words) + fname + ' ' + name +"\n\n").encode('utf-8')
476
442
def opts_and_exts(name, op, exts):