Jump to content

Calibre: Difference between revisions

From Official NixOS Wiki
copied from old wiki
Fyrk (talk | contribs)
Fix Wikipedia link
 
(10 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Calibre is program to view, edit, convert and print ebooks.  
[https://calibre-ebook.com/ Calibre] is program to view, edit, convert, and print ebooks.


This page is intended to explain how to run <code>calibre</code> in nixos.
== Installation ==


== Connecting USB devices ==
Calibre is available in [[nixpkgs]] as {{nixos:package|calibre}}.


To connect devices via USB, you might have to add the following to your <code>configuration.nix</code> file:
=== NixOS ===


services.udisks2.enable = true;
Add the package to your NixOS configuration, in {{nixos:option|environment.systemPackages}}:


== .cbr and .cbz files ==
<syntaxhighlight lang="nix">
environment.systemPackages = with pkgs; [
  calibre
];
</syntaxhighlight>


If you want to open .cbr and .cbz files, you need to add the following lines to your <code>configuration.nix</code> file:
=== Home Manager ===
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
environment.systemPackages = with pkgs; [     
  (calibre.override {
    unrarSupport = true;
  })
]
</nowiki>}}


{{note|<code>calibre</code> requires several unfree packages to open .cbr and .cbz files. If you are using <code>allowUnfreePredicate</code> you will need to ensure that your configurations permit all of them.
Add the package to your <code>[https://home-manager-options.extranix.com/?release=master&query=home.packages home.packages]</code>:
<syntaxHighlight lang=nix>
 
{
<syntaxhighlight lang="nix">
  nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
home.packages = with pkgs; [     
    "calibre"
  calibre
    "unrar"
];
  ];
</syntaxhighlight>
}
 
</syntaxHighlight>
 
== Extras ==
 
=== Connecting USB devices ===
 
To connect devices via USB, you might have to add the following to your NixOS configuration:
 
<syntaxhighlight lang="nix">
services.udisks2 = {
    enable = true;
    mountOnMedia = true;
};
</syntaxhighlight>
 
=== Opening <code>.cbr</code> files ===
 
<code>.cbr</code> files are comic book archives in the [[Wikipedia:RAR_(file_format)|RAR]] archive format.
 
If you want to open <code>.cbr</code> files, replace <code>calibre</code> with the following in your NixOS or Home Manager configuration:
 
<syntaxhighlight lang="nix">
(calibre.override {
  unrarSupport = true;
})
</syntaxhighlight>
 
{{note|<code>calibre</code> requires {{nixos:package|unrar}} to open .cbr files, which is an unfree package. This also causes <code>calibre</code> to be marked as unfree. If you are using [https://nixos.org/manual/nixpkgs/unstable/#sec-allow-unfree <code>allowUnfreePredicate</code>] you will need to ensure that your configurations permit all of them.
 
For example, you can add this snippet to your NixOS configuration to allow <code>calibre</code> and <code>unrar</code>.
<syntaxhighlight lang="nix">
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
  "calibre"
  "unrar"
];
</syntaxhighlight>
}}
}}
== See also ==
* [[wikipedia:Calibre_(software)|Calibre on Wikipedia]]
[[Category: Applications]]
[[Category: Applications]]

Latest revision as of 09:40, 2 May 2026

Calibre is program to view, edit, convert, and print ebooks.

Installation

Calibre is available in nixpkgs as calibre.

NixOS

Add the package to your NixOS configuration, in environment.systemPackages:

environment.systemPackages = with pkgs; [
  calibre
];

Home Manager

Add the package to your home.packages:

home.packages = with pkgs; [      
  calibre
];


Extras

Connecting USB devices

To connect devices via USB, you might have to add the following to your NixOS configuration:

services.udisks2 = {
    enable = true;
    mountOnMedia = true;
};

Opening .cbr files

.cbr files are comic book archives in the RAR archive format.

If you want to open .cbr files, replace calibre with the following in your NixOS or Home Manager configuration:

(calibre.override {
  unrarSupport = true;
})
Note: calibre requires unrar to open .cbr files, which is an unfree package. This also causes calibre to be marked as unfree. If you are using allowUnfreePredicate you will need to ensure that your configurations permit all of them.

For example, you can add this snippet to your NixOS configuration to allow calibre and unrar.

nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
  "calibre"
  "unrar"
];

See also