13 gsettings-desktop-schemas,
15 gobject-introspection,
16 # Available plugins (can be overridden)
18 # Used in the withPlugins interface at passthru, can be overrided directly, or
19 # prefarably via e.g: `mailnag.withPlugins([mailnag.availablePlugins.goa])`
25 python3Packages.buildPythonApplication rec {
29 src = fetchFromGitHub {
33 sha256 = "0m1cyzwzm7z4p2v31dx098a1iar7dbilwyjcxiqnjx05nlmiqvgf";
42 gst_all_1.gst-plugins-base
43 gst_all_1.gst-plugins-good
44 gst_all_1.gst-plugins-bad
52 # To later add plugins to
56 propagatedBuildInputs = with python3Packages; [
57 gsettings-desktop-schemas
64 inherit availablePlugins;
68 # goa plugin requires gio's gnome-online-accounts which requires making sure
69 # mailnag runs with GI_TYPELIB_PATH containing the path to Goa-1.0.typelib.
70 # This is handled best by adding the plugins' deps to buildInputs and let
71 # wrapGAppsHook3 handle that.
72 pluginsDeps = lib.flatten (lib.catAttrs "buildInputs" plugs);
81 # See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped
85 substituteInPlace $out/${python3Packages.python.sitePackages}/Mailnag/common/dist_cfg.py \
86 --replace "/usr/" $out/
87 for desktop_file in $out/share/applications/*.desktop; do
88 substituteInPlace "$desktop_file" \
89 --replace "/usr/bin" $out/bin
91 makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
94 # Actually install plugins
96 for plug in ${builtins.toString userPlugins}; do
97 lndir $plug/${python3Packages.python.sitePackages} $out/${python3Packages.python.sitePackages}
102 description = "Extensible mail notification daemon";
103 homepage = "https://github.com/pulb/mailnag";
104 license = licenses.gpl2;
105 platforms = platforms.linux;
106 maintainers = with maintainers; [ doronbehar ];
107 broken = true; # at 2022-09-23