diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/glib-networking/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/glib-networking/default.nix | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/glib-networking/default.nix b/nixpkgs/pkgs/development/libraries/glib-networking/default.nix new file mode 100644 index 000000000000..585897341662 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/glib-networking/default.nix @@ -0,0 +1,93 @@ +{ lib, stdenv +, fetchurl +, substituteAll +, meson +, ninja +, nixosTests +, pkg-config +, glib +, gettext +, makeWrapper +, python3 +, gnutls +, p11-kit +, libproxy +, gnome3 +, gsettings-desktop-schemas +}: + +stdenv.mkDerivation rec { + pname = "glib-networking"; + version = "2.66.0"; + + outputs = [ "out" "installedTests" ]; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "16807qwflbghp0c66jdx2gnaffvdp4bla35ppzp9dlgx6wjbxmy5"; + }; + + patches = [ + (substituteAll { + src = ./hardcode-gsettings.patch; + gds_gsettings_path = glib.getSchemaPath gsettings-desktop-schemas; + }) + + ./installed-tests-path.patch + ]; + + postPatch = '' + chmod +x meson_post_install.py # patchShebangs requires executable file + patchShebangs meson_post_install.py + ''; + + nativeBuildInputs = [ + meson + ninja + pkg-config + gettext + makeWrapper + python3 # for install_script + ]; + + buildInputs = [ + glib + gnutls + p11-kit + libproxy + gsettings-desktop-schemas + ]; + + doCheck = false; # tests need to access the certificates (among other things) + + mesonFlags = [ + "-Dinstalled_tests=true" + "-Dinstalled_test_prefix=${placeholder "installedTests"}" + ]; + + postFixup = '' + find "$installedTests/libexec" "$out/libexec" -type f -executable -print0 \ + | while IFS= read -r -d "" file; do + echo "Wrapping program '$file'" + wrapProgram "$file" --prefix GIO_EXTRA_MODULES : "$out/lib/gio/modules" + done + ''; + + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + }; + + tests = { + installedTests = nixosTests.installed-tests.glib-networking; + }; + }; + + meta = with lib; { + description = "Network-related giomodules for glib"; + homepage = "https://gitlab.gnome.org/GNOME/glib-networking"; + license = licenses.lgpl21Plus; + maintainers = teams.gnome.members; + platforms = platforms.unix; + }; +} |