Files
nixpkgs/nixos/modules/services/web-apps/pingvin-share.md
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

1.1 KiB

Pingvin Share

A self-hosted file sharing platform and an alternative for WeTransfer.

Configuration

By default, the module will execute Pingvin Share backend and frontend on the ports 8080 and 3000.

I will run two systemd services named pingvin-share-backend and pingvin-share-frontend in the specified data directory.

Here is a basic configuration:

{
  services-pingvin-share = {
    enable = true;

    openFirewall = true;

    backend.port = 9010;
    frontend.port = 9011;
  };
}

Reverse proxy configuration

The preferred method to run this service is behind a reverse proxy not to expose an open port. This, you can configure Nginx such like this:

{
  services-pingvin-share = {
    enable = true;

    hostname = "pingvin-share.domain.tld";
    https = true;

    nginx.enable = true;
  };
}

Furthermore, you can increase the maximal size of an uploaded file with the option services.nginx.clientMaxBodySize.