Unverified Commit 8bb9de55 authored by Nikolay Korotkiy's avatar Nikolay Korotkiy
Browse files

svxlink: modernize

parent 88ff20cd
Loading
Loading
Loading
Loading
+16 −31
Original line number Diff line number Diff line
@@ -4,13 +4,13 @@
  cmake,
  pkg-config,
  fetchFromGitHub,
  makeDesktopItem,
  alsa-lib,
  speex,
  libopus,
  curl,
  gsm,
  libgcrypt,
  libgpiod_1,
  libsigcxx,
  popt,
  qt5,
@@ -21,46 +21,33 @@
  jsoncpp,
}:

let
  desktopItem = makeDesktopItem rec {
    name = "Qtel";
    exec = "qtel";
    icon = "qtel";
    desktopName = name;
    genericName = "EchoLink Client";
    categories = [
      "HamRadio"
      "Qt"
      "Network"
    ];
  };

in
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "svxlink";
  version = "25.05.1";

  src = fetchFromGitHub {
    owner = "sm0svx";
    repo = "svxlink";
    tag = version;
    tag = finalAttrs.version;
    hash = "sha256-OyAR/6heGX6J53p6x+ZPXY6nzSv22umMTg0ISlWcjp8=";
  };

  sourceRoot = "${finalAttrs.src.name}/src";

  cmakeFlags = [
    "-DDO_INSTALL_CHOWN=NO"
    "-DRTLSDR_LIBRARIES=${rtl-sdr}/lib/librtlsdr.so"
    "-DRTLSDR_INCLUDE_DIRS=${rtl-sdr}/include"
    "../src"
    (lib.cmakeBool "DO_INSTALL_CHOWN" false)
    (lib.cmakeFeature "RTLSDR_LIBRARIES" "${rtl-sdr}/lib/librtlsdr.so")
    (lib.cmakeFeature "RTLSDR_INCLUDE_DIRS" "${rtl-sdr}/include")
  ];

  dontWrapQtApps = true;

  nativeBuildInputs = [
    cmake
    pkg-config
    doxygen
    groff
    pkg-config
    qt5.qttools
    qt5.wrapQtAppsHook
  ];

@@ -68,21 +55,19 @@ stdenv.mkDerivation rec {
    alsa-lib
    curl
    gsm
    jsoncpp
    libgcrypt
    libsigcxx
    libgpiod_1
    libopus
    libsigcxx
    popt
    qt5.qtbase
    qt5.qttools
    rtl-sdr
    speex
    tcl
    jsoncpp
  ];

  postInstall = ''
    rm -rf $out/share/applications
    ln -s ${desktopItem}/share/applications $out/share/applications
    wrapQtApp $out/bin/qtel
  '';

@@ -92,9 +77,9 @@ stdenv.mkDerivation rec {
      Advanced repeater controller and EchoLink software for Linux including a
      GUI, Qtel - The Qt EchoLink client
    '';
    homepage = "http://www.svxlink.org/";
    license = with lib.licenses; [ gpl2 ];
    homepage = "https://www.svxlink.org/";
    license = with lib.licenses; [ gpl2Plus ];
    maintainers = with lib.maintainers; [ zaninime ];
    platforms = lib.platforms.linux;
  };
}
})