Jump to content

Calibre: Difference between revisions

From Official NixOS Wiki
copy from old wiki
 
Fyrk (talk | contribs)
Fix Wikipedia link
 
(12 intermediate revisions by 5 users not shown)
Line 1: Line 1:
This page is intended to explain how to run <code>calibre</code> in nixos.
[https://calibre-ebook.com/ Calibre] is program to view, edit, convert, and print ebooks.


== .cbr and .cbz files ==
== Installation ==


If you want to open .cbr and .cbz files, you need to add the following lines to your <code>configuration.nix</code> file:
Calibre is available in [[nixpkgs]] as {{nixos:package|calibre}}.
{{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.
=== NixOS ===
<syntaxHighlight lang=nix>
 
{
Add the package to your NixOS configuration, in {{nixos:option|environment.systemPackages}}:
  nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
 
    "calibre"
<syntaxhighlight lang="nix">
    "unrar"
environment.systemPackages = with pkgs; [
  ];
  calibre
}
];
</syntaxHighlight>
</syntaxhighlight>
 
=== Home Manager ===
 
Add the package to your <code>[https://home-manager-options.extranix.com/?release=master&query=home.packages home.packages]</code>:
 
<syntaxhighlight lang="nix">
home.packages = with pkgs; [     
  calibre
];
</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]]

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