作为电子书管理的瑞士军刀,Calibre
一直备受书籍爱好者和数字书虫们的喜爱。虽然存在更好(更轻量级)的
电子书阅读器,但 Calibre
在创建电子书、转换格式以及管理你的电子书库方面做得更出色。简言之,它是满足你所有电子书需求的全套解决方案。
从ArchLinux仓库中安装
Calibre
如果您不需要它,可以使用pacman
卸载 Calibre
1 sudo pacman -Rns calibre
获取最新版本的 Calibre
Calibre 官方
推荐安装提供的官方二进制文件。目的是防止用户使用存在错误或已过时的软件包。该二进制文件包含了所有私有版本的依赖项,支持
32 位和 64 位的机器。
安装依赖
1 sudo pacman -S xdg-utils wget xz-utils python3
从官网安装二进制文件
1 sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin
关于上述安装命令的解解释
考虑两种情况:
sudo
未配置为命令需要密码( NOPASSWD
标记),
对sudo
的两个调用都在没有任何提示的情况下成功。
sudo
被配置为需要命令的密码:
如果它们最近进行了身份验证,sudo -v
只需更新缓存凭据的时间戳即可。
如果用户最近没有对sudo
进行身份验证,它将提示他们输入密码;一旦经过验证,他们的凭据就会被缓存。
一旦sudo -v
进程成功,第二个sudo sh /dev/stdin
调用应该使用其缓存的凭据并不间断地运行。
考虑另一种情况(
sudo
仍然被配置为提示输入密码),其中没有初始的sudo -v
命令。在这种情况下,wget
可能已经将输出写到stdout
或stderr
,这可能会导致用户错过看到它,并想知道为什么什么都没有发生。
sh /dev/stdin
的目的是什么?
在这里,sh
是用一个参数作为command_file
调用的,这个参数是一个特殊的文件--一个指向stdin
的链接。
名称破折号-命令解释器(外壳)简要说明破折号.[command_file
争论...]
结果,sh
读取command_file
,期待并执行它的命令。这个特殊的stdin
“文件”通过管道连接到来自wget
的输出,因此最终的结果是将URL
的内容发送到根级shell
。
我不知道为什么口径项目具体选择这种语法。备选办法包括: 1 2 ... | sudo sh ... | sudo sh -
创建启动器
/usr/share/applications/calibre-gui.desktop 1 2 3 4 5 6 7 8 9 10 11 12 13 [Desktop Entry] Version=1.0 Type=Application Name=Calibre GenericName=E-book library management Comment=E-book library management: Convert, view, share, catalogue all your e-books TryExec=/opt/calibre/calibre Exec=/opt/calibre/calibre --detach %U Icon=calibre-gui Categories=Office; X-GNOME-UsesNotifications=true Keywords=epub;ebook;manager; MimeType=application/x-cbz;application/x-cbc;application/x-mobipocket-ebook;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/ereader;application/x-cb7;application/x-mobi8-ebook;application/vnd.ms-word.document.macroenabled.12;application/vnd.ctc-posml;application/epub+zip;application/oebps-package+xml;image/vnd.djvu;application/x-cbr;application/x-sony-bbeb;application/x-mobipocket-subscription;x-scheme-handler/calibre;
/usr/share/applications/calibre-lrfviewer.desktop 1 2 3 4 5 6 7 8 9 10 11 12 [Desktop Entry] Version=1.0 Type=Application Name=LRF viewer GenericName=Viewer for LRF files Comment=Viewer for LRF files (SONY ebook format files) TryExec=/opt/calibre/lrfviewer Exec=/opt/calibre/lrfviewer %f Icon=calibre-viewer MimeType=application/x-sony-bbeb; Categories=Office;Viewer; Keywords=lrf;viewer;
/usr/share/applications/calibre-ebook-edit.desktop 1 2 3 4 5 6 7 8 9 10 11 12 [Desktop Entry] Version=1.0 Type=Application Name=E-book editor GenericName=Editor for E-books Comment=Edit E-books in various formats TryExec=/opt/calibre/ebook-edit Exec=/opt/calibre/ebook-edit --detach %f Icon=calibre-ebook-edit Categories=Office;WordProcessor Keywords=epub;ebook;editor; MimeType=application/xhtml+xml;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/x-mobi8-ebook;application/epub+zip;text/html;
/usr/share/applications/calibre-ebook-viewer.desktop 1 2 3 4 5 6 7 8 9 10 11 12 [Desktop Entry] Version=1.0 Type=Application Name=E-book viewer GenericName=Viewer for E-books Comment=Viewer for E-books in all the major formats TryExec=/opt/calibre/ebook-viewer Exec=/opt/calibre/ebook-viewer --detach %f Icon=calibre-viewer Categories=Office;Viewer; Keywords=epub;ebook;viewer; MimeType=application/x-cbz;application/x-cbc;application/x-mobipocket-ebook;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/ereader;application/x-cb7;application/x-mobi8-ebook;application/vnd.ms-word.document.macroenabled.12;application/vnd.ctc-posml;application/epub+zip;application/oebps-package+xml;image/vnd.djvu;application/x-cbr;application/x-sony-bbeb;application/x-mobipocket-subscription;
注意:各启动器文件所有者和群组都应当设置为root
.
参考文章
Linux KDE
和Linux GNOME
桌面系统都使用 Desktop
Entry
Specification 来描述程序启动配置信息。Desktop Entry 文件标准
是由
X Desktop Group
制定的,目前最新的版本是"Desktop Entry
Specification 1.5"。