dotfiles

My PC Dotfiles & Website

_dev.nix (1335B)


## Development
_: {
  nixos = {
    config,
    pkgs,
    ...
  }: {
    # VPN
    services.cloudflare-warp = {
      enable = true;
      openFirewall = true;
    };

    # VPN Tunnel
    services.tailscale = {
      enable = true;
      openFirewall = true;
      #authKeyFile = config.sops.secrets."tailscale.secret".path;
    };

    environment = {
      persist.directories = [
        "/var/lib/tailscale"
        config.services.cloudflare-warp.rootDir
      ];

      # Tools
      systemPackages = with pkgs; [
        cloudflared
        gcc
        repomix
        mongodb-compass

        # Node
        nodejs
        npm-check-updates
        pnpm
      ];
    };

    networking.firewall = {
      allowedUDPPorts = [7777];
      allowedTCPPorts = [7777];
    };
  };

  home = {config, ...}: {
    programs.ssh.includes = [config.sops.secrets."ssh-config.secret".path];

    home = {
      persist.directories = [
        ".mongodb"
        ".npm"
        ".config/rog"
        ".config/MongoDB Compass"
        ".local/share/cloudflare-warp-gui"
      ];

      # NPM
      sessionPath = ["$HOME/.npm/packages/bin"];
      sessionVariables = {
        NPM_CONFIG_USERCONFIG = "$HOME/.npm/npmrc";
        NPM_CONFIG_PREFIX = "$HOME/.npm/packages";
        NPM_CONFIG_CACHE = "$HOME/.npm/cache";
      };
    };
  };
}