{ config, pkgs, lib, ... }: let cfg = config.homeModules.social; in lib.mkIf cfg.enable { home.packages = with pkgs; [ # WhatsApp (via webapp in browser or Electron wrapper) whatsapp-for-linux # Telegram Desktop client telegram-desktop # Signal signal-desktop # Discord discord # Zoom (unfree) zoom-us # Mastodon (via browser or desktop client) #tootle # or choose “sengi” or “mastodon” Electron client if preferred # Matrix client element-desktop ]; # Optional: associate default browser-based apps xdg.mimeApps = { enable = true; defaultApplications = { "x-scheme-handler/https" = [ "firefox.desktop" ]; "x-scheme-handler/http" = [ "firefox.desktop" ]; }; }; # Optional: start messaging apps on login systemd.user.services = { signal-desktop = { Unit.Description = "Signal Desktop"; Service = { ExecStart = "${pkgs.signal-desktop}/bin/signal-desktop"; Restart = "on-failure"; }; Install.WantedBy = [ "default.target" ]; }; telegram-desktop = { Unit.Description = "Telegram Desktop"; Service = { ExecStart = "${pkgs.telegram-desktop}/bin/telegram-desktop"; Restart = "on-failure"; }; Install.WantedBy = [ "default.target" ]; }; }; }