forgejo-lts: 7.0.10 -> 7.0.11
[NixPkgs.git] / pkgs / by-name / mq / mqttmultimeter / package.nix
blob191bc642d7c71c8b2a0504489b4ce08c97527f63
1 { lib
2 , stdenv
3 , dotnetCorePackages
4 , dotnet-runtime_8
5 , buildDotnetModule
6 , fetchFromGitHub
7 , libglvnd
8 , makeDesktopItem
9 , copyDesktopItems
12 buildDotnetModule rec {
13   pname = "mqttmultimeter";
14   version = "1.8.2.272";
16   src = fetchFromGitHub {
17     owner = "chkr1011";
18     repo = "mqttMultimeter";
19     rev = "v" + version;
20     hash = "sha256-vL9lmIhNLwuk1tmXLKV75xAhktpdNOb0Q4ZdvLur5hw=";
21   };
23   sourceRoot = "${src.name}/Source";
25   projectFile = [ "mqttMultimeter.sln" ];
26   nugetDeps = ./deps.nix;
27   dotnet-sdk = dotnetCorePackages.sdk_8_0;
28   dotnet-runtime = dotnet-runtime_8;
29   executables = [ "mqttMultimeter" ];
31   nativeBuildInputs = [
32     copyDesktopItems
33   ];
35   buildInputs = [ (lib.getLib stdenv.cc.cc) ];
37   postInstall = ''
38     rm -rf $out/lib/${lib.toLower pname}/runtimes/{*musl*,win*}
39   '';
41   runtimeDeps = [
42     libglvnd
43   ];
45   desktopItems = [
46     (makeDesktopItem {
47       name = meta.mainProgram;
48       exec = meta.mainProgram;
49       icon = meta.mainProgram;
50       desktopName = meta.mainProgram;
51       genericName = meta.description;
52       comment = meta.description;
53       type = "Application";
54       categories = [ "Network" ];
55       startupNotify = true;
56     })
57   ];
59   meta = with lib; {
60     mainProgram = builtins.head executables;
61     description = "MQTT traffic monitor";
62     license = licenses.free;
63     maintainers = with maintainers; [ peterhoeg ];
64     platforms = platforms.linux;
65   };