anchor.diff:  
       services.xserver.enable = true;
       test-support.displayManager.auto.user = "alice";
  -    environment.systemPackages = [ pkgs.signal-desktop ];
  +    environment.systemPackages = with pkgs; [ signal-desktop file ];
       virtualisation.memorySize = 1024;
     };
   
  
positive.code: {
    name = "signal-desktop";
    meta = with pkgs.lib.maintainers; {
      maintainers = [ flokli ];
    };
  
    machine = { ... }:
  
negative.code:     machine.wait_for_text("Signal")
      machine.wait_for_text("File Edit View Window Help")
      machine.screenshot("signal_desktop")
  
      # Test if the database is encrypted to prevent these issues:
      # - https://github.com/NixOS/nixpkgs/issues/108772
      # - https://github.com/NixOS/nixpkgs/pull/117555
      print(machine.succeed("su - alice -c 'file ~/.config/Signal/sql/db.sqlite'"))
      # TODO: The DB should be encrypted and the following should be machine.fail
      # instead of machine.succeed but the DB is currently unencrypted and we
      # want to notice if this isn't the case anymore as the transition to a
      # encrypted DB can cause data loss!:
      machine.succeed(
          "su - alice -c 'file ~/.config/Signal/sql/db.sqlite' | grep -i sqlite"
      )
    '';
  })
  