anchor.diff:          ${config.my.init}
         '';
   
  -    my.home.xdg.configFile."zsh/extra.zshrc".text = config.my.zsh.rc;
  +    my.home.xdg.configFile."zsh/extra.zshrc".text =
  +      let aliasLines = mapAttrsToList (n: v: "alias ${n}=\"${v}\"") config.my.alias;
  +      in ''
  +         ${concatStringsSep "\n" aliasLines}
  +         ${config.my.zsh.rc}
  +      '';
       my.home.xdg.configFile."zsh/extra.zshenv".text = config.my.zsh.env;
  +
  +    system.userActivationScripts.mySetup = config.my.setup;
     };
   }
  
positive.code:     my.user.packages = config.my.packages;
      my.env.PATH = [ "$PATH" ];
  
      environment.shellAliases = config.my.alias;
      environment.extraInit =
        let exportLines = mapAttrsToList (n: v: "export ${n}=\"${v}\"") config.my.env;
        in ''
  
negative.code:       description = "...";
      };
  
      setup = mkOption {
        type = types.lines;
        default = "";
        description = "...";
      };
  
      zsh = {
        rc = mkOption {
          type = types.lines;
  