{ lib , stdenv , fetchFromGitLab , meson , ninja , pkg-config , glib , python3 , help2man , bash-completion , bash , buildPackages , withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages , withDocs ? stdenv.hostPlatform == stdenv.buildPlatform , gobject-introspection }: stdenv.mkDerivation rec { pname = "libmbim"; version = "1.30.0"; outputs = [ "out" "dev" ] ++ lib.optionals withDocs [ "man" ]; src = fetchFromGitLab { domain = "gitlab.freedesktop.org"; owner = "mobile-broadband"; repo = "libmbim"; rev = version; hash = "sha256-sHTpu9WeMZroT+1I18ObEHWSzcyj/Relyz8UNe+WawI="; }; mesonFlags = [ "-Dudevdir=${placeholder "out"}/lib/udev" (lib.mesonBool "introspection" withIntrospection) (lib.mesonBool "man" withDocs) ]; strictDeps = true; nativeBuildInputs = [ meson ninja pkg-config python3 ] ++ lib.optionals withDocs [ help2man ] ++ lib.optionals withIntrospection [ gobject-introspection ]; buildInputs = [ glib bash-completion bash ]; doCheck = true; postPatch = '' patchShebangs \ build-aux/mbim-codegen/mbim-codegen ''; meta = with lib; { homepage = "https://www.freedesktop.org/wiki/Software/libmbim/"; description = "Library for talking to WWAN modems and devices which speak the Mobile Interface Broadband Model (MBIM) protocol"; changelog = "https://gitlab.freedesktop.org/mobile-broadband/libmbim/-/raw/${version}/NEWS"; maintainers = teams.freedesktop.members; platforms = platforms.linux; license = licenses.gpl2Plus; }; }