Chromium based browsers + Electron apps can't acces Whatsapp Web

Hi,
I tried installing some of the Electon wrappers aruound Whatsapp web (whatsie, wasistlos, zapzap) and they all reoprt no access to the Internet. Accessing web.whatsapp.com in Vivaldi or Brave shows “This site can’t be reached”, while other pages work fine. Accessing web.whatsapp.com in Librewolf works fine.
Here is my configuration.nix:


{ config, pkgs, ...  }:


let
  unstableTarball =
      fetchTarball
        https://github.com/NixOS/nixpkgs/archive/nixos-unstable.tar.gz;
        
  daisy = builtins.fetchGit {
      url = "https://github.com/rm-dr/daisy.git";
      ref = "master";
    } + /default.nix;

  # enable auto-login on boot and Tuigreet after logout
  # https://discourse.nixos.org/t/autologin-hyprland/38159
  # https://fryboyter.de/en/how-to-use-greetd-with-automatic-login-instead-of-sddm/
   tuigreet = "${pkgs.greetd.tuigreet}/bin/tuigreet";
   session = "startplasma-wayland";
   username = "knuschberkeks";
   
in {
  imports =
    [ 
    # Include the results of the hardware scan.
      ./hardware-configuration.nix
    # Include Fraework 12 stuff
    <nixos-hardware/framework/12-inch/13th-gen-intel>
    ];

  nixpkgs.config = {
    packageOverrides = pkgs: {
      unstable = import unstableTarball {
        config = config.nixpkgs.config;
      };
    };
  };    

  # Bootloader.
  boot.loader = {
  	systemd-boot.enable = true;
  	efi.canTouchEfiVariables = true;
  };

  # Set up Networking
  networking = {
    networkmanager.enable = true;
  	hostName = "Framework"; # Define your hostname.
  # wireless.enable = true;  # Enables wireless support via wpa_supplicant.
  };


  # Enable Hardware for Framework 12
  # Enabling tablet Mode
  	boot.initrd.kernelModules = [ "pinctrl_tigerlake" ];
  # Enabling the accelerometer
  	nixpkgs.overlays = [
  	  (final: prev: {
  	    iio-sensor-proxy = prev.iio-sensor-proxy.overrideAttrs (oldAttrs: {
  	      postPatch = oldAttrs.postPatch + ''
  	      sed -i -e 's/.*iio-buffer-accel/#&/' data/80-iio-sensor-proxy.rules
  	      '';
  	    });
  	  })
  	];
  # Enable Stylus support
  hardware.opentabletdriver.enable = true;
  services.libinput.enable = true;
  	
   
  # SWAP
  # add a 16 GiB Swap File
  swapDevices = [ {
    device = "/var/lib/swapfile";
    size = 16*1024;
    priority = 2;
  } ];
  # add a zramSwap 29% of physical RAM size
  # This refers to the uncompressed size, actual memory usage will be lower.
  zramSwap = {
  	enable = true;
  	priority = 4;
  	memoryPercent = 29;  	
  };



  # Set your time zone.
  time.timeZone = "Europe/Berlin";

  # Select internationalisation properties.
  i18n = {
    defaultLocale = "en_GB.UTF-8";
    extraLocaleSettings = {
      LC_ADDRESS = "en_GB.UTF-8";
      LC_IDENTIFICATION = "en_GB.UTF-8";
      LC_MEASUREMENT = "en_GB.UTF-8";
      LC_MONETARY = "en_GB.UTF-8";
      LC_NAME = "en_GB.UTF-8";
      LC_NUMERIC = "en_GB.UTF-8";
      LC_PAPER = "en_GB.UTF-8";
      LC_TELEPHONE = "en_GB.UTF-8";
      LC_TIME = "en_GB.UTF-8";
      };
    };
  # Configure console keymap
  console.keyMap = "de";
  
  # change standard editor to micro
  environment.variables = {
  	# Environment variables go here
  	EDITOR = "micro";
  	VISUAL = "$EDITOR";
  };

  # enable (Nerd)fonts
  fonts = {
  	enableDefaultPackages = true;
  	fontconfig.enable = true;
  	packages = with pkgs; [
  	# fonts go here
  	dina-font
  	fira-code
  	eb-garamond
  	noto-fonts
  	vollkorn
  	ibm-plex
  	nerd-fonts.blex-mono
  	];
  };
  
  # Disable the X11 windowing system.
  services.xserver.enable = false;

  # Enable SDDM Display manager
  #services.displayManager.sddm = {
  #	enable = true;
  #	wayland.enable = true;
  #	settings.General.DisplayServer = "wayland";
  #};
  
  # enable auto-login on boot and Tuigreet after logout
  # https://discourse.nixos.org/t/autologin-hyprland/38159
  # https://fryboyter.de/en/how-to-use-greetd-with-automatic-login-instead-of-sddm/
  services.greetd = {
      enable = true;
      settings = {
        initial_session = {
          command = "${session}";
          user = "${username}";
        };
        default_session = {
          command = "${tuigreet} --greeting 'Welcome to NixOS!' --remember --remember-user-session --time -cmd ${session}";
          user = "greeter";
        };
      };
    };



  

  # Enable Desktop Environments.
  services.desktopManager = {
  	plasma6.enable = true;
  	cosmic.enable = true;
  };

  # Enable CUPS to print documents.
  services.printing.enable = true;
  # Enable autodiscovery of network printers
  services.avahi = {
    enable = true;
    nssmdns4 = true;
    openFirewall = true;
  };

  # Enable bluetooth
  hardware.bluetooth.enable = true;

  # Enable sound with pipewire.
  services.pulseaudio.enable = false;
  security.rtkit.enable = true;
  services.pipewire = {
    enable = true;
    alsa.enable = true;
    alsa.support32Bit = true;
    pulse.enable = true;
    # If you want to use JACK applications, uncomment this
    #jack.enable = true;

    # use the example session manager (no others are packaged yet so this is enabled by default,
    # no need to redefine it in your config for now)
    #media-session.enable = true;
  };

  # Enable touchpad support (enabled default in most desktopManager).
  # services.xserver.libinput.enable = true;

  # Define a user account. Don't forget to set a password with ‘passwd’.
  users.users.knuschberkeks = {
    isNormalUser = true;
    description = "Knuschberkeks";
    extraGroups = [ "networkmanager" "wheel" "cdrom" ];
    packages = with pkgs; [
    #  kdePackages.kate
    #  thunderbird
    ];
  };

  # Connect to smb shares
  fileSystems = builtins.listToAttrs (
    map (share:
      { name = "/mnt/${share}";
        value = {
          device = "//192.168.178.20/${share}";
          fsType = "cifs";
          options = [
            "x-systemd.automount"
            "noauto"
            "x-systemd.idle-timeout=60"
            "x-systemd.device-timeout=5s"
            "x-systemd.mount-timeout=5s"
            "credentials=/etc/nixos/smb-secrets"
            "uid=${toString config.users.users.knuschberkeks.uid}"
            "gid=${toString config.users.groups.users.gid}"
            "noperm"
          ];
        };
      }
####### ↓↓↓ Put the names of shares here ↓↓↓ #######
    ) [ "Backups" "Bilder" "Dokumente" "music" "Software" "Sonstiges" "Temp" "video" ]
  );

  # garbage collection
  nix.gc = {
      automatic = true;  # Enable the automatic garbage collector
      dates = "weekly";   # When to run the garbage collector
      options = "--delete-older-than 42d";    # Arguments to pass to nix-collect-garbage
  };
  # use deduplication on nixos store
  nix.settings.auto-optimise-store = true;
  
  # enable fwupd
  services.fwupd.enable = true;
  services.fwupd.extraRemotes = [ "lvfs-testing" ];
  # Might be necessary once to make the update succeed
  services.fwupd.uefiCapsuleSettings.DisableCapsuleUpdateOnDisk = true;

  # Allow unfree packages
  nixpkgs.config.allowUnfree = true;

  # List packages installed in system profile. To search, run:
  # $ nix search wget

  # remove unnecesary System Packages (be careful)
  programs = {
    nano.enable = false;
  };
  
  # install  additionalSystem programs
  # programs.firefox.enable = true;
  programs = {
  	git.enable = true;
  	kclock.enable = true;
  	k3b.enable = true;
  	thunderbird.enable = true;

  	
  	steam = {
  	  enable = true;
  	  remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
  	  dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
  	  localNetworkGameTransfers.openFirewall = true; # Open ports in the firewall for Steam Local Network Game Transfers
  	  gamescopeSession.enable = true;
  	};
  	
  	bash.completion.enable = true;
  	thefuck.enable = true;
  	evolution = {
  	    enable = true;
  	    plugins = [ pkgs.evolution-ews ];
  	};
  };

  environment.systemPackages = with pkgs; [
  # find package names at search.nixos.org
  fw-ectool
  #unstable.whatsapp-electron
  zapzap
  libinput
  posy-cursors
  ollama
  ffmpeg
  maliit-keyboard
  gparted
  piper-tts # Text to Speech cli
  synology-drive-client
  cifs-utils
  kdePackages.kcalc
  kdePackages.kwallet-pam
  wl-clipboard-rs
  krusader
    kdePackages.kompare # needed for krusader
    krename # needed for krusader
  kdePackages.filelight # Quickly visualize your disk space usage
  unstable.signal-desktop

  (callPackage daisy { }) # A pretty, general-purpose scientific calculator with support for units, derivatives, and more.

  ######## BROWSERS ########
  unstable.librewolf
  lynx
  unstable.tor-browser
  (vivaldi.overrideAttrs # make Vivaldi work in Plasma 6
        (oldAttrs: {     # source: https://web.archive.org/web/20250322060957/https://wiki.nixos.org/wiki/Vivaldi
          dontWrapQtApps = false;
          dontPatchELF = true;
          nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [pkgs.kdePackages.wrapQtAppsHook];
        }))
    
  ######## COMPRESSION ########
  p7zip
  rar
  zip
  unzip
  
  ######## GAMES ########
  open-adventure
  brogue-ce
  chocolate-doom
  moon-buggy
  rogue
  sauerbraten
  warmux
  openclonk
  nsnake
  vitetris
  superTux
  superTuxKart
  widelands
  lutris
  heroic
  bottles
  fceux

  ######## IMAGE EDITORS & VIEWERS ########
  inkscape-with-extensions
  gimp-with-plugins
  feh
  imagemagick
 
  ######## MUSIC ########
  audacity
  musescore
  tuxguitar
  gmetronome

  ######## OFFICE  ########
  unstable.neomutt
  zathura
  xournalpp # pdf Editor
  ocamlPackages.cpdf # CLI PDF tool
  evince # GNOME's document viewer
  krop # Crop PDFs
  texliveMedium
  poppler-utils
  libreoffice
  # dictionaries for libreoffice:
  hunspell
  hunspellDicts.en_GB-ise
  hunspellDicts.en_US
  hunspellDicts.de_DE
  

  ######## SHELLS & SHELL TOOLS ########
  dash
  elvish
  checkbashisms
  
  ######## TERMINAL EMULATORS ########  
  alacritty
  cool-retro-term
  
  ######## TEXT EDITORS ########
  micro
  #featherpad
  vim

  ######## CLI UTILITIES ########

  neo-cowsay
  pv # Tool for monitoring the progress of data through a pipeline
  btop
  hello
  sl
  nvtopPackages.intel #(h)top like task monitor for AMD, Adreno, Intel and NVIDIA GPUs.
  eza
  bat
  fastfetch
  figlet
  stress-ng
  tealdeer
  dmidecode # Tool that reads information about your system's hardware from the BIOS according to the SMBIOS/DMI standard
  smartmontools
  cyme # Modern cross-platform lsusb
  yt-dlp
  hwinfo


  ######## VIDEO ########
  mpv
  unstable.multiviewer-for-f1
  mkvtoolnix
  vlc 
  ];


  # package setting overrides
  nixpkgs.config = {
  ##############################################
      libreoffice = {
          kdeIntegration = true;
          langs = [ # languages to install:
            "de"
          	"en-GB"
          	"en-US"
          ];
      };
   #############################################
     mpv = {
     	cddasupport = true;
     	x11support = false;
     	waylandSupport = true;
     };
   #############################################  
     vivaldi = {
     	proprietaryCodecs = true;
     	enableWidevine = true;
     };
    ############################################
     yt-dlp = {
       withAlias = true;	
     };
  };
  

  # Some programs need SUID wrappers, can be configured further or are
  # started in user sessions.
  # programs.mtr.enable = true;
  # programs.gnupg.agent = {
  #   enable = true;
  #   enableSSHSupport = true;
  # };

  # List services that you want to enable:

  # Enable the OpenSSH daemon.
  # services.openssh.enable = true;

  # Open ports in the firewall.
  # networking.firewall.allowedTCPPorts = [ ... ];
  # networking.firewall.allowedUDPPorts = [ ... ];
  # Or disable the firewall altogether.
  # networking.firewall.enable = false;


  # This value determines the NixOS release from which the default
  # settings for stateful data, like file locations and database versions
  # on your system were taken. It‘s perfectly fine and recommended to leave
  # this value at the release version of the first install of this system.
  # Before changing this value read the documentation for this option
  # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
  system.stateVersion = "25.05"; # Did you read the comment?

}

Sounds like DNS. Firefox does DNS separately.

Most likely this is dumb configuration being disseminated via DHCP, which you would want to fix on the router. Consider using DoH to shield yourself from this.

2 Likes

of course it was DNS. Thanks for your help.