From b7f23a032c537e473217207b403070a6c288ba63 Mon Sep 17 00:00:00 2001 From: Colin Date: Mon, 7 Aug 2023 07:41:00 +0000 Subject: [PATCH] eg25-manager: init at 0.4.6 --- pkgs/additional/eg25-manager/default.nix | 69 ++++++++++++++++++++++++ pkgs/default.nix | 1 + 2 files changed, 70 insertions(+) create mode 100644 pkgs/additional/eg25-manager/default.nix diff --git a/pkgs/additional/eg25-manager/default.nix b/pkgs/additional/eg25-manager/default.nix new file mode 100644 index 00000000..09660f3d --- /dev/null +++ b/pkgs/additional/eg25-manager/default.nix @@ -0,0 +1,69 @@ +# package based on: +# - + +{ lib +, stdenv +, fetchFromGitLab +, gnugrep +, meson +, ninja +, pkg-config +, scdoc +, curl +, glib +, libgpiod +, libgudev +, libusb1 +, modemmanager +}: + +stdenv.mkDerivation rec { + pname = "eg25-manager"; + version = "0.4.6"; + + src = fetchFromGitLab { + owner = "mobian1"; + repo = "eg25-manager"; + rev = version; + hash = "sha256-2JsdwK1ZOr7ljNHyuUMzVCpl+HV0C5sA5LAOkmELqag="; + }; + + postPatch = '' + substituteInPlace 'udev/80-modem-eg25.rules' \ + --replace '/bin/grep' '${gnugrep}/bin/grep' + ''; + + depsBuildBuild = [ + pkg-config + ]; + + nativeBuildInputs = [ + glib # Contains gdbus-codegen program + meson + ninja + pkg-config + scdoc + ]; + + buildInputs = [ + curl + glib + libgpiod + libgudev + libusb1 + modemmanager + ]; + + meta = with lib; { + description = "Manager daemon for the Quectel EG25 mobile broadband modem"; + homepage = "https://gitlab.com/mobian1/eg25-manager"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + # needs to be made compatible with libgpiod 2.0 API. see: + # - + # - + # nixpkgs libgpiod was bumped 2023-07-29: + # - + broken = true; + }; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index 5e12b882..1f616284 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -25,6 +25,7 @@ let bootpart-uefi-x86_64 = callPackage ./additional/bootpart-uefi-x86_64 { }; cargoDocsetHook = callPackage ./additional/cargo-docset/hook.nix { }; chatty-latest = callPackage ./additional/chatty-latest { }; + eg25-manager = callPackage ./additional/eg25-manager { }; feeds = lib.recurseIntoAttrs (callPackage ./additional/feeds { }); lemoa = callPackage ./additional/lemoa { }; jellyfin-media-player-qt6 = callPackage ./additional/jellyfin-media-player-qt6 { };