# Define a function which returns a value which fills in all the holes left by
# ``storage.nix``.
{
  # An integer giving the value of a single pass in byte×months.
  passValue

  # An integer giving the port number to include in Tahoe storage service
  # advertisements and on which to listen for storage connections.
, publicStoragePort

  # A string giving the NixOS state version for the system.
, stateVersion
, ...
}:
{ config, ... }:
let
  inherit (config.grid) publicKeyPath privateKeyPath;
in {
  services.private-storage = {
    inherit passValue publicStoragePort;
  };

  system.stateVersion = stateVersion;
}