nixpkgs/pkgs/desktops/gnome-3/misc/gpaste/default.nix

48 lines
1.8 KiB
Nix

{ stdenv, fetchurl, autoreconfHook, pkgconfig, vala, glib, gjs, mutter
, pango, gtk3, gnome3, dbus, clutter, appstream-glib, wrapGAppsHook, systemd, gobjectIntrospection }:
stdenv.mkDerivation rec {
version = "3.28.2";
name = "gpaste-${version}";
src = fetchurl {
url = "https://github.com/Keruspe/GPaste/archive/v${version}.tar.gz";
sha256 = "1zfx73qpw976hyzp5k569lywsq2b6dbnnzf2cvhjvn3mvkw8pin2";
};
patches = [
./fix-paths.patch
];
# TODO: switch to substituteAll with placeholder
# https://github.com/NixOS/nix/issues/1846
# https://github.com/NixOS/nixpkgs/pull/37693
postPatch = ''
substituteInPlace src/gnome-shell/extension.js \
--subst-var-by typelibPath "$out/lib/girepository-1.0"
substituteInPlace src/gnome-shell/prefs.js \
--subst-var-by typelibPath "$out/lib/girepository-1.0"
substituteInPlace src/libgpaste/settings/gpaste-settings.c \
--subst-var-by gschemasCompiled "$out/share/gsettings-schemas/${name}/glib-2.0/schemas"
'';
nativeBuildInputs = [ autoreconfHook pkgconfig vala wrapGAppsHook ];
buildInputs = [ glib gjs mutter gnome3.adwaita-icon-theme
gtk3 gnome3.gnome-control-center dbus
clutter pango appstream-glib systemd gobjectIntrospection ];
configureFlags = [ "--with-controlcenterdir=$(out)/share/gnome-control-center/keybindings"
"--with-dbusservicesdir=$(out)/share/dbus-1/services"
"--with-systemduserunitdir=$(out)/etc/systemd/user" ];
enableParallelBuilding = true;
meta = with stdenv.lib; {
homepage = https://github.com/Keruspe/GPaste;
description = "Clipboard management system with GNOME3 integration";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = gnome3.maintainers;
};
}