diff --git a/pkgs/applications/networking/instant-messengers/chatty/default.nix b/pkgs/applications/networking/instant-messengers/chatty/default.nix new file mode 100644 index 000000000000..e24f5eaf8682 --- /dev/null +++ b/pkgs/applications/networking/instant-messengers/chatty/default.nix @@ -0,0 +1,79 @@ +{ lib +, stdenv +, fetchFromGitLab +, appstream-glib +, desktop-file-utils +, meson +, ninja +, pkg-config +, python3 +, wrapGAppsHook +, evolution-data-server +, feedbackd +, gtk3 +, json-glib +, libgcrypt +, libhandy +, libphonenumber +, olm +, pidgin +, protobuf +, sqlite +, plugins ? [ ] +}: + +stdenv.mkDerivation rec { + pname = "chatty"; + version = "0.3.2"; + + src = fetchFromGitLab { + domain = "source.puri.sm"; + owner = "Librem5"; + repo = "chatty"; + rev = "v${version}"; + sha256 = "sha256-/l8hysfBmXLbs2COIVjdr2JC1qX/c66DqOm2Gyqb9s8="; + }; + + postPatch = '' + patchShebangs build-aux/meson + ''; + + nativeBuildInputs = [ + appstream-glib + desktop-file-utils + meson + ninja + pkg-config + python3 + wrapGAppsHook + ]; + + buildInputs = [ + evolution-data-server + feedbackd + gtk3 + json-glib + libgcrypt + libhandy + libphonenumber + olm + pidgin + protobuf + sqlite + ]; + + preFixup = '' + gappsWrapperArgs+=( + --prefix PURPLE_PLUGIN_PATH : ${pidgin.makePluginPath plugins} + ${lib.concatMapStringsSep " " (p: p.wrapArgs or "") plugins} + ) + ''; + + meta = with lib; { + description = "XMPP and SMS messaging via libpurple and ModemManager"; + homepage = "https://source.puri.sm/Librem5/chatty"; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ dotlambda tomfitzhenry ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d67c5102d94e..b0858f8341ba 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23728,6 +23728,8 @@ with pkgs; inherit (python3Packages) python wrapPython pygments markdown; }; + chatty = callPackage ../applications/networking/instant-messengers/chatty { }; + chirp = callPackage ../applications/radio/chirp { }; browsh = callPackage ../applications/networking/browsers/browsh { };