anchor.diff:          wantedBy = [ "multi-user.target" ];
           path = [ pkgs.pythonPackages.limnoria ];
           preStart = ''
  -          cd ${cfg.homeDir}
  +          mkdir -m 0755 -p ${cfg.stateDir}
  +          chown ${cfg.user}:${cfg.group} ${cfg.stateDir}
  +          cd ${cfg.stateDir}
             mkdir -p logs/plugins backup conf data plugins tmp
  +          ln -sf ${cfg.configFile} supybot.cfg
  +          rm -f supybot.cfg.bak
           '';
           serviceConfig =
             { ExecStart =
  -              "${pkgs.pythonPackages.limnoria}/bin/supybot ${cfg.homeDir}/supybot.cfg";
  +              "${pkgs.pythonPackages.limnoria}/bin/supybot ${cfg.stateDir}/supybot.cfg";
               PIDFile = "/run/supybot.pid";
  -            User = "${cfg.user}"; 
  +            User = "${cfg.user}";
               Group = "${cfg.group}";
               UMask = "0007";
               Restart = "on-abort";
  
positive.code:   ###### implementation
  
    config = mkIf cfg.enable {
    
      environment.systemPackages = [ pkgs.pythonPackages.limnoria ];
  
      users.extraUsers = singleton
  
negative.code: let
  
    cfg  = config.services.supybot;
  
  in
  
  