1 diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
2 index ad0679d6165..cf593ad6aa9 100644
3 --- a/nixos/modules/module-list.nix
4 +++ b/nixos/modules/module-list.nix
6 ./services/networking/mjpg-streamer.nix
7 ./services/networking/minidlna.nix
8 ./services/networking/miniupnpd.nix
9 - ./services/networking/mosquitto.nix
10 + ./services/networking/miredo.nix
11 + ./services/networking/mjpg-streamer.nix
12 + ./services/networking/mmsd.nix
13 ./services/networking/monero.nix
14 ./services/networking/morty.nix
15 ./services/networking/mozillavpn.nix
16 diff --git a/nixos/modules/services/networking/mmsd.nix b/nixos/modules/services/networking/mmsd.nix
18 index 00000000000..7e262a9326c
20 +++ b/nixos/modules/services/networking/mmsd.nix
22 +{ pkgs, lib, config, ... }:
25 + cfg = config.services.mmsd;
26 + dbusServiceFile = pkgs.writeTextDir "share/dbus-1/services/org.ofono.mms.service" ''
29 + SystemdService=dbus-org.ofono.mms.service
31 + # Exec= is still required despite SystemdService= being used:
32 + # https://github.com/freedesktop/dbus/blob/ef55a3db0d8f17848f8a579092fb05900cc076f5/test/data/systemd-activation/com.example.SystemdActivatable1.service
33 + Exec=${pkgs.coreutils}/bin/false mmsd
37 + options.services.mmsd = {
38 + enable = mkEnableOption (mdDoc "Multimedia Messaging Service Daemon");
39 + extraArgs = mkOption {
40 + type = with types; listOf str;
41 + description = mdDoc "Extra arguments passed to `mmsd-tng`";
43 + example = ["--debug"];
46 + config = mkIf cfg.enable {
47 + services.dbus.packages = [ dbusServiceFile ];
48 + systemd.user.services.mmsd = {
49 + after = [ "ModemManager.service" ];
50 + aliases = [ "dbus-org.ofono.mms.service" ];
53 + ExecStart = "${pkgs.mmsd-tng}/bin/mmsdtng " + escapeShellArgs cfg.extraArgs;
54 + BusName = "org.ofono.mms";
55 + Restart = "on-failure";
60 diff --git a/pkgs/tools/networking/mmsd-tng/default.nix b/pkgs/tools/networking/mmsd-tng/default.nix
62 index 00000000000..eaf12263751
64 +++ b/pkgs/tools/networking/mmsd-tng/default.nix
74 +, mobile-broadband-provider-info
81 +stdenv.mkDerivation rec {
85 + src = fetchFromGitLab {
89 + sha256 = "sha256-fhbiTJWmQwJpuMaVX2qWyWwJ/2Y/Vczo//+0T0b6jhA=";
92 + nativeBuildInputs = [
104 + mobile-broadband-provider-info
112 + description = "Multimedia Messaging Service Daemon - The Next Generation";
113 + homepage = "https://gitlab.com/kop316/mmsd";
114 + license = licenses.gpl2Plus;
115 + maintainers = with maintainers; [ julm ];
116 + platforms = platforms.linux;
119 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
120 index dc456b3848e..9cf798e033d 100644
121 --- a/pkgs/top-level/all-packages.nix
122 +++ b/pkgs/top-level/all-packages.nix
123 @@ -30199,6 +30199,8 @@ with pkgs;
125 mmsd = callPackage ../tools/networking/mmsd { };
127 + mmsd-tng = callPackage ../tools/networking/mmsd-tng { };
129 mmtc = callPackage ../applications/audio/mmtc { };
131 mnamer = callPackage ../applications/misc/mnamer { };