diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix | 58 |
1 files changed, 45 insertions, 13 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix index 98827fd3f6a2..d85efd0a4da4 100644 --- a/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix +++ b/infra/libkookie/nixpkgs/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix @@ -1,16 +1,34 @@ -{ stdenv, fetchFromGitHub, substituteAll, python3, openssl, gsound -, meson, ninja, libxml2, pkgconfig, gobject-introspection, wrapGAppsHook -, glib, gtk3, at-spi2-core, upower, openssh, gnome3, gjs }: +{ stdenv +, fetchFromGitHub +, substituteAll +, openssl +, gsound +, meson +, ninja +, pkg-config +, gobject-introspection +, wrapGAppsHook +, glib +, glib-networking +, gtk3 +, openssh +, gnome3 +, gjs +, nixosTests +, gsettings-desktop-schemas +}: stdenv.mkDerivation rec { pname = "gnome-shell-gsconnect"; - version = "41"; + version = "44"; + + outputs = [ "out" "installedTests" ]; src = fetchFromGitHub { owner = "andyholmes"; repo = "gnome-shell-extension-gsconnect"; rev = "v${version}"; - sha256 = "0lcj7k16jki54bsyh01j4ss4hhfddnahcw02zlmlkl637qdv1b5j"; + sha256 = "C+8mhK4UOs2iZplDyY45bCX0mMGgwVV/ZfaPpYUlWxA="; }; patches = [ @@ -19,24 +37,24 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; gapplication = "${glib.bin}/bin/gapplication"; }) + + # Allow installing installed tests to a separate output + ./installed-tests-path.patch ]; nativeBuildInputs = [ - meson ninja pkgconfig + meson + ninja + pkg-config gobject-introspection # for locating typelibs wrapGAppsHook # for wrapping daemons - libxml2 # xmllint ]; buildInputs = [ glib # libgobject + glib-networking gtk3 - at-spi2-core # atspi - gnome3.nautilus # TODO: this contaminates the package with nautilus and gnome-autoar typelibs but it is only needed for the extension - gnome3.nautilus-python gsound - upower - gnome3.caribou gjs # for running daemon gnome3.evolution-data-server # for libebook-contacts typelib ]; @@ -51,11 +69,13 @@ stdenv.mkDerivation rec { "-Dsshkeygen_path=${openssh}/bin/ssh-keygen" "-Dsession_bus_services_dir=${placeholder "out"}/share/dbus-1/services" "-Dpost_install=true" + "-Dinstalled_test_prefix=${placeholder ''installedTests''}" ]; postPatch = '' patchShebangs meson/nmh.sh patchShebangs meson/post-install.sh + patchShebangs installed-tests/prepare-tests.sh # TODO: do not include every typelib everywhere # for example, we definitely do not need nautilus @@ -71,14 +91,26 @@ stdenv.mkDerivation rec { echo "Wrapping program $file" wrapGApp "$file" done + + # Wrap jasmine runner for tests + for file in $installedTests/libexec/installed-tests/gsconnect/minijasmine; do + echo "Wrapping program $file" + wrapGApp "$file" + done ''; uuid = "gsconnect@andyholmes.github.io"; + passthru = { + tests = { + installedTests = nixosTests.installed-tests.gsconnect; + }; + }; + meta = with stdenv.lib; { description = "KDE Connect implementation for Gnome Shell"; homepage = "https://github.com/andyholmes/gnome-shell-extension-gsconnect/wiki"; - license = licenses.gpl2; + license = licenses.gpl2Plus; maintainers = with maintainers; [ etu ]; platforms = platforms.linux; }; |