nixpkgs/pkgs/by-name/sm/smile/package.nix
2024-02-05 13:38:05 -08:00

68 lines
1.4 KiB
Nix

{ lib
, python3
, fetchFromGitHub
, desktop-file-utils
, glib
, gobject-introspection
, gtk4
, meson
, ninja
, wrapGAppsHook4
, libadwaita
}:
python3.pkgs.buildPythonApplication rec {
pname = "smile";
version = "2.9.0";
format = "other";
src = fetchFromGitHub {
owner = "mijorus";
repo = "smile";
rev = version;
hash = "sha256-tXbRel+rtaE2zPO8NOc4X+Ktk4PdRHBMtpsGLbvuHZk=";
};
postPatch = ''
patchShebangs build-aux/meson/postinstall.py
substituteInPlace build-aux/meson/postinstall.py \
--replace-fail gtk-update-icon-cache gtk4-update-icon-cache
'';
nativeBuildInputs = [
desktop-file-utils # for update-desktop-database
glib # for glib-compile-resources
gobject-introspection
gtk4 # for gtk4-update-icon-cache
meson
ninja
wrapGAppsHook4
];
buildInputs = [
libadwaita
];
propagatedBuildInputs = with python3.pkgs; [
dbus-python
manimpango
pygobject3
];
dontWrapGApps = true;
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
meta = {
changelog = "https://smile.mijorus.it/changelog";
description = "An emoji picker for linux, with custom tags support and localization";
downloadPage = "https://github.com/mijorus/smile";
homepage = "https://mijorus.it/projects/smile/";
license = lib.licenses.gpl3Plus;
mainProgram = "smile";
maintainers = with lib.maintainers; [ koppor ];
};
}