depot/third_party/nixpkgs/nixos/modules/services/web-apps/suwayomi-server.md
Default email 23b612e36f Project import generated by Copybara.
GitOrigin-RevId: ae5c332cbb5827f6b1f02572496b141021de335f
2024-01-25 23:12:00 +09:00

2 KiB

Suwayomi-Server

A free and open source manga reader server that runs extensions built for Tachiyomi.

Basic usage

By default, the module will execute Suwayomi-Server backend and web UI:

{ ... }:

{
  services.suwayomi-server = {
    enable = true;
  };
}

It runs in the systemd service named suwayomi-server in the data directory /var/lib/suwayomi-server.

You can change the default parameters with some other parameters:

{ ... }:

{
  services.suwayomi-server = {
    enable = true;

    dataDir = "/var/lib/suwayomi"; # Default is "/var/lib/suwayomi-server"
    openFirewall = true;

    settings = {
      server.port = 4567;
    };
  };
}

If you want to create a desktop icon, you can activate the system tray option:

{ ... }:

{
  services.suwayomi-server = {
    enable = true;

    dataDir = "/var/lib/suwayomi"; # Default is "/var/lib/suwayomi-server"
    openFirewall = true;

    settings = {
      server.port = 4567;
      server.enableSystemTray = true;
    };
  };
}

Basic authentication

You can configure a basic authentication to the web interface with:

{ ... }:

{
  services.suwayomi-server = {
    enable = true;

    openFirewall = true;

    settings = {
      server.port = 4567;
      server = {
        basicAuthEnabled = true;
        basicAuthUsername = "username";

        # NOTE: this is not a real upstream option
        basicAuthPasswordFile = ./path/to/the/password/file;
      };
    };
  };
}

Extra configuration

Not all the configuration options are available directly in this module, but you can add the other options of suwayomi-server with:

{ ... }:

{
  services.suwayomi-server = {
    enable = true;

    openFirewall = true;

    settings = {
      server = {
        port = 4567;
        autoDownloadNewChapters = false;
        maxSourcesInParallel" = 6;
      };
    };
  };
}