depot/third_party/nixpkgs/pkgs/desktops/gnome/apps/polari/default.nix
Default email 8a45d4525b Project import generated by Copybara.
GitOrigin-RevId: 710fed5a2483f945b14f4a58af2cd3676b42d8c8
2022-03-30 11:31:56 +02:00

99 lines
1.8 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ stdenv
, lib
, itstool
, fetchurl
, gdk-pixbuf
, telepathy-glib
, gjs
, meson
, ninja
, gettext
, telepathy-idle
, libxml2
, desktop-file-utils
, pkg-config
, gtk4
, libadwaita
, gtk3
, glib
, libsecret
, libsoup
, webkitgtk
, gobject-introspection
, appstream-glib
, gnome
, wrapGAppsHook4
, telepathy-logger
, gspell
, gsettings-desktop-schemas
}:
stdenv.mkDerivation rec {
pname = "polari";
version = "42.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "WPFbv1tCwLASPv3td1cR07DyRJl1cwlAOMpVZGHgSTw=";
};
patches = [
# Upstream runs the thumbnailer by passing it to gjs.
# If we wrap it in a shell script, gjs can no longer run it.
# Lets change the code to run the script directly by making it executable and having gjs in shebang.
./make-thumbnailer-wrappable.patch
];
propagatedUserEnvPkgs = [
telepathy-idle
telepathy-logger
];
nativeBuildInputs = [
meson
ninja
pkg-config
itstool
gettext
wrapGAppsHook4
libxml2
desktop-file-utils
gobject-introspection
appstream-glib
];
buildInputs = [
gtk4
libadwaita
gtk3 # for thumbnailer
glib
gsettings-desktop-schemas
telepathy-glib
telepathy-logger
gjs
gspell
gdk-pixbuf
libsecret
libsoup
webkitgtk # for thumbnailer
];
postFixup = ''
wrapGApp "$out/share/polari/thumbnailer.js"
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
attrPath = "gnome.${pname}";
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Polari";
description = "IRC chat client designed to integrate with the GNOME desktop";
maintainers = teams.gnome.members;
license = licenses.gpl2Plus;
platforms = platforms.linux;
};
}