61 lines
1.3 KiB
Nix
61 lines
1.3 KiB
Nix
{ 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" ];
|
|
};
|
|
};
|
|
}
|