{ config, lib, ... }: with lib; let cfg = config.services.ordercollect; in { options.services.ordercollect = { enable = mkEnableOption "Enable Ordercollect"; port = mkOption { type = types.str; description = "The http port to run on"; default = ""; }; package = mkOption { type = types.package; default = pkgs.ordercollect; description = '' The package for ordercollect ''; }; }; config = mkIf cfg.enable { environment.systemPackages = [ cfg.package ]; systemd.services.ordercollect = { ExecStart = "${cfg.package}/bin/ordercollect --port ${cfg.port}"; Restart = "on-failure"; }; }; }