Jump to content

Calibre: Difference between revisions

From Official NixOS Wiki
m Fix formatting a bit
Fyrk (talk | contribs)
Fix Wikipedia link
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[https://calibre-ebook.com/ 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 ===


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


== .cbr and .cbz files ==
<syntaxhighlight lang="nix">
environment.systemPackages = with pkgs; [
  calibre
];
</syntaxhighlight>
 
=== Home Manager ===
 
Add the package to your <code>[https://home-manager-options.extranix.com/?release=master&query=home.packages home.packages]</code>:


If you want to open .cbr and .cbz files, you need to add the following lines to your <code>configuration.nix</code> file:
<syntaxhighlight lang="nix">
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
home.packages = with pkgs; [       
environment.systemPackages = with pkgs; [       
   calibre
   (calibre.override {
    unrarSupport = true;
  })
];
];
</nowiki>}}
</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.


{{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.
For example, you can add this snippet to your NixOS configuration to allow <code>calibre</code> and <code>unrar</code>.
<syntaxHighlight lang=nix>
<syntaxhighlight lang="nix">
{
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
  nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
  "calibre"
    "calibre"
  "unrar"
    "unrar"
];
  ];
</syntaxhighlight>
}
</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