nixpkgs-suyu/pkgs/applications/networking/instant-messengers/chatty/default.nix
Tom Fitzhenry a4d63cf111 chatty: unbreak by relying on same commit Alpine does
Motivation: Fix chatty.

Background: chatty 0.6.7 depends on libsoup2 and
evolution-data-service. During the GNOME 42 -> 43 migration,
evolution-data-service changed from using libsoup2 to
libsoup3. chatty's use of libsoup2 and libsoup3 was
conflicting, and thus chatty broke.

To fix this, let's use a recent unreleased commit, as Alpine did:
https://git.alpinelinux.org/aports/commit/community/chatty/APKBUILD?id=1184b834c74362df3f9963585311256ed2c6908a

Longer term, we can use chatty 0.7 when it is released:
https://source.puri.sm/Librem5/chatty/-/merge_requests/1134
2022-10-15 05:39:36 +11:00

92 lines
1.7 KiB
Nix

{ lib
, stdenv
, fetchFromGitLab
, appstream-glib
, desktop-file-utils
, itstool
, meson
, ninja
, pkg-config
, python3
, wrapGAppsHook
, evolution-data-server
, feedbackd
, glibmm
, gnome-desktop
, gspell
, gtk3
, json-glib
, libgcrypt
, libhandy
, libphonenumber
, modemmanager
, olm
, pidgin
, protobuf
, sqlite
, plugins ? [ ]
}:
stdenv.mkDerivation rec {
pname = "chatty";
version = "unstable-2022-09-20";
src = fetchFromGitLab {
domain = "source.puri.sm";
owner = "Librem5";
repo = "chatty";
# https://source.puri.sm/Librem5/chatty/-/tree/247c53fd990f7472ddd1a92c2f9e1299ae3ef4e4
rev = "247c53fd990f7472ddd1a92c2f9e1299ae3ef4e4";
fetchSubmodules = true;
hash = "sha256-9hgQC0vLmmJJxrBWTdTIrJbSSwLS23uVoJri2ieCj4E=";
};
postPatch = ''
patchShebangs build-aux/meson
'';
nativeBuildInputs = [
appstream-glib
desktop-file-utils
itstool
meson
ninja
pkg-config
python3
wrapGAppsHook
];
buildInputs = [
evolution-data-server
feedbackd
glibmm
gnome-desktop
gspell
gtk3
json-glib
libgcrypt
libhandy
libphonenumber
modemmanager
olm
pidgin
protobuf
sqlite
];
preFixup = ''
gappsWrapperArgs+=(
--prefix PURPLE_PLUGIN_PATH : ${lib.escapeShellArg (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";
changelog = "https://source.puri.sm/Librem5/chatty/-/blob/${src.rev}/NEWS";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ dotlambda tomfitzhenry ];
platforms = platforms.linux;
};
}