From d79a8896cb4a73c31a6ba9d3ab25f216ea3f8068 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Mon, 18 Nov 2024 16:21:15 +0200 Subject: [PATCH] gnuradio3_8: remove --- pkgs/applications/radio/gnuradio/3.8.nix | 289 ----------------------- pkgs/top-level/aliases.nix | 3 + pkgs/top-level/all-packages.nix | 34 --- 3 files changed, 3 insertions(+), 323 deletions(-) delete mode 100644 pkgs/applications/radio/gnuradio/3.8.nix diff --git a/pkgs/applications/radio/gnuradio/3.8.nix b/pkgs/applications/radio/gnuradio/3.8.nix deleted file mode 100644 index 3379ba4c1df9..000000000000 --- a/pkgs/applications/radio/gnuradio/3.8.nix +++ /dev/null @@ -1,289 +0,0 @@ -{ lib, stdenv -, fetchFromGitHub -, fetchpatch -, cmake -# Remove gcc and python references -, removeReferencesTo -, pkg-config -, volk -, cppunit -, swig3 -, orc -, boost -, log4cpp -, mpir -, doxygen -, python -, codec2 -, gsm -, thrift -, fftwFloat -, alsa-lib -, libjack2 -, CoreAudio -, uhd -, SDL -, gsl -, cppzmq -# Needed only if qt-gui is disabled, from some reason -, icu -# GUI related -, gtk3 -, pango -, gobject-introspection -, cairo -, qt5 -, libsForQt5 -# Features available to override, the list of them is in featuresInfo. They -# are all turned on by default. -, features ? {} -# If one wishes to use a different src or name for a very custom build -, overrideSrc ? {} -, pname ? "gnuradio" -, version ? "3.8.5.0" -}: - -let - sourceSha256 = "sha256-p4VFjTE0GXmdA7QGhWSUzO/WxJ+8Dq3JEnOABtQtJUU="; - featuresInfo = { - # Needed always - basic = { - native = [ - cmake - pkg-config - orc - ]; - runtime = [ - boost - log4cpp - mpir - ] - # when gr-qtgui is disabled, icu needs to be included, otherwise - # building with boost 1.7x fails - ++ lib.optionals (!(hasFeature "gr-qtgui")) [ icu ]; - pythonNative = with python.pkgs; [ - mako - six - ]; - }; - volk = { - cmakeEnableFlag = "VOLK"; - runtime = [ - volk - ]; - }; - doxygen = { - native = [ doxygen ]; - cmakeEnableFlag = "DOXYGEN"; - }; - sphinx = { - pythonNative = with python.pkgs; [ sphinx ]; - cmakeEnableFlag = "SPHINX"; - }; - python-support = { - pythonRuntime = [ python.pkgs.six ]; - native = [ - swig3 - python - ]; - cmakeEnableFlag = "PYTHON"; - }; - testing-support = { - native = [ cppunit ]; - cmakeEnableFlag = "TESTING"; - }; - gnuradio-runtime = { - cmakeEnableFlag = "GNURADIO_RUNTIME"; - }; - gr-ctrlport = { - cmakeEnableFlag = "GR_CTRLPORT"; - native = [ - swig3 - ]; - runtime = [ - thrift - ]; - pythonRuntime = [ - python.pkgs.thrift - # For gr-perf-monitorx - python.pkgs.matplotlib - python.pkgs.networkx - ]; - }; - gnuradio-companion = { - pythonRuntime = with python.pkgs; [ - pyyaml - mako - numpy - pygobject3 - ]; - runtime = [ - gtk3 - pango - gobject-introspection - cairo - ]; - cmakeEnableFlag = "GRC"; - }; - gr-blocks = { - cmakeEnableFlag = "GR_BLOCKS"; - }; - gr-fec = { - cmakeEnableFlag = "GR_FEC"; - }; - gr-fft = { - runtime = [ fftwFloat ]; - cmakeEnableFlag = "GR_FFT"; - }; - gr-filter = { - runtime = [ fftwFloat ]; - cmakeEnableFlag = "GR_FILTER"; - }; - gr-analog = { - cmakeEnableFlag = "GR_ANALOG"; - }; - gr-digital = { - cmakeEnableFlag = "GR_DIGITAL"; - }; - gr-dtv = { - cmakeEnableFlag = "GR_DTV"; - }; - gr-audio = { - runtime = [] - ++ lib.optionals stdenv.hostPlatform.isLinux [ alsa-lib libjack2 ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ CoreAudio ] - ; - cmakeEnableFlag = "GR_AUDIO"; - }; - gr-channels = { - cmakeEnableFlag = "GR_CHANNELS"; - }; - gr-qtgui = { - runtime = [ qt5.qtbase libsForQt5.qwt6_1 ]; - pythonRuntime = [ python.pkgs.pyqt5 ]; - cmakeEnableFlag = "GR_QTGUI"; - }; - gr-trellis = { - cmakeEnableFlag = "GR_TRELLIS"; - }; - gr-uhd = { - runtime = [ uhd ]; - cmakeEnableFlag = "GR_UHD"; - }; - gr-utils = { - cmakeEnableFlag = "GR_UTILS"; - pythonRuntime = with python.pkgs; [ - # For gr_plot - matplotlib - ]; - }; - gr-modtool = { - pythonRuntime = with python.pkgs; [ - setuptools - click - click-plugins - ]; - cmakeEnableFlag = "GR_MODTOOL"; - }; - gr-video-sdl = { - runtime = [ SDL ]; - cmakeEnableFlag = "GR_VIDEO_SDL"; - }; - gr-vocoder = { - runtime = [ codec2 gsm ]; - cmakeEnableFlag = "GR_VOCODER"; - }; - gr-wavelet = { - cmakeEnableFlag = "GR_WAVELET"; - runtime = [ gsl ]; - }; - gr-zeromq = { - runtime = [ cppzmq ]; - cmakeEnableFlag = "GR_ZEROMQ"; - pythonRuntime = [ - # Will compile without this, but it is required by tests, and by some - # gr blocks. - python.pkgs.pyzmq - ]; - }; - }; - shared = (import ./shared.nix { - inherit - stdenv - lib - python - removeReferencesTo - featuresInfo - features - version - sourceSha256 - overrideSrc - fetchFromGitHub - ; - qt = qt5; - gtk = gtk3; - }); - inherit (shared.passthru) hasFeature; # function -in - -stdenv.mkDerivation (finalAttrs: (shared // { - inherit pname version; - # Will still evaluate correctly if not used here. It only helps nix-update - # find the right file in which version is defined. - inherit (shared) src; - # Some of the tests we know why they fail, but others simply hang-out and - # timeout... - doCheck = false; - patches = [ - # Not accepted upstream, see https://github.com/gnuradio/gnuradio/pull/5227 - ./modtool-newmod-permissions.3_8.patch - # Fix compilation with boost 177 - (fetchpatch { - url = "https://github.com/gnuradio/gnuradio/commit/2c767bb260a25b415e8c9c4b3ea37280b2127cec.patch"; - sha256 = "sha256-l4dSzkXb5s3vcCeuKMMwiKfv83hFI9Yg+EMEX+sl+Uo="; - }) - ]; - passthru = shared.passthru // { - # Deps that are potentially overridden and are used inside GR plugins - the same version must - inherit - boost - volk - ; - # Used by many gnuradio modules, the same attribute is present in - # gnuradio3.10 where there it's spdlog. - logLib = log4cpp; - } // lib.optionalAttrs (hasFeature "gr-uhd") { - inherit uhd; - } // lib.optionalAttrs (hasFeature "gr-qtgui") { - qwt = libsForQt5.qwt6_1; - }; - cmakeFlags = shared.cmakeFlags - # From some reason, if these are not set, libcodec2 and gsm are not - # detected properly. The issue is reported upstream: - # https://github.com/gnuradio/gnuradio/issues/4278 - # The above issue was fixed for GR3.9 without a backporting patch. - # - # NOTE: qradiolink needs libcodec2 to be detected in - # order to build, see https://github.com/qradiolink/qradiolink/issues/67 - ++ lib.optionals (hasFeature "gr-vocoder") [ - "-DLIBCODEC2_FOUND=TRUE" - "-DLIBCODEC2_LIBRARIES=${codec2}/lib/libcodec2${stdenv.hostPlatform.extensions.sharedLibrary}" - "-DLIBCODEC2_INCLUDE_DIRS=${codec2}/include" - "-DLIBCODEC2_HAS_FREEDV_API=ON" - "-DLIBGSM_FOUND=TRUE" - "-DLIBGSM_LIBRARIES=${gsm}/lib/libgsm${stdenv.hostPlatform.extensions.sharedLibrary}" - "-DLIBGSM_INCLUDE_DIRS=${gsm}/include/gsm" - ] - ++ lib.optionals (hasFeature "volk" && volk != null) [ - "-DENABLE_INTERNAL_VOLK=OFF" - ] - ; - - postInstall = shared.postInstall - # This is the only python reference worth removing, if needed (3.7 doesn't - # set that reference). - + lib.optionalString (!hasFeature "python-support") '' - remove-references-to -t ${python} $out/lib/cmake/gnuradio/GnuradioConfig.cmake - '' - ; -})) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 2b5d5afbf31f..9b9124c71c46 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -503,6 +503,9 @@ mapAliases { gnuradio3_9 = throw "gnuradio3_9 has been removed because it is not compatible with the latest volk and it had no dependent packages which justified it's distribution"; # Added 2024-07-28 gnuradio3_9Minimal = throw "gnuradio3_9Minimal has been removed because it is not compatible with the latest volk and it had no dependent packages which justified it's distribution"; # Added 2024-07-28 gnuradio3_9Packages = throw "gnuradio3_9Minimal has been removed because it is not compatible with the latest volk and it had no dependent packages which justified it's distribution"; # Added 2024-07-28 + gnuradio3_8 = throw "gnuradio3_8 has been removed because it was too old and incompatible with a not EOL swig"; # Added 2024-11-18 + gnuradio3_8Minimal = throw "gnuradio3_8Minimal has been removed because it was too old and incompatible with a not EOL swig"; # Added 2024-11-18 + gnuradio3_8Packages = throw "gnuradio3_8Minimal has been removed because it was too old and incompatible with a not EOL swig"; # Added 2024-11-18 gn1924 = throw "gn1924 has been removed because it was broken and no longer used by envoy."; # Added 2024-11-03 gobby5 = throw "'gobby5' has been renamed to/replaced by 'gobby'"; # Converted to throw 2024-10-17 gradle_6 = throw "Gradle 6 has been removed, as it is end-of-life (https://endoflife.date/gradle) and has many vulnerabilities that are not resolved until Gradle 7."; # Added 2024-10-30 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e55e7941845d..66eee789b168 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13641,40 +13641,6 @@ with pkgs; }; }; gnuradioPackages = lib.recurseIntoAttrs gnuradio.pkgs; - gnuradio3_8 = callPackage ../applications/radio/gnuradio/wrapper.nix { - unwrapped = callPackage ../applications/radio/gnuradio/3.8.nix ({ - inherit (darwin.apple_sdk.frameworks) CoreAudio; - python = python311; - volk = volk_2; - } // lib.optionalAttrs stdenv.hostPlatform.isLinux { - stdenv = pkgs.stdenvAdapters.useLibsFrom stdenv pkgs.gcc12Stdenv; - }); - }; - gnuradio3_8Packages = lib.recurseIntoAttrs gnuradio3_8.pkgs; - # A build without gui components and other utilites not needed if gnuradio is - # used as a c++ library. - gnuradio3_8Minimal = gnuradio3_8.override { - doWrap = false; - unwrapped = gnuradio3_8.unwrapped.override { - volk = volk_2.override { - enableModTool = false; - }; - uhd = uhdMinimal; - features = { - gnuradio-companion = false; - python-support = false; - examples = false; - gr-qtgui = false; - gr-utils = false; - gr-modtool = false; - sphinx = false; - doxygen = false; - # Doesn't make it reference python eventually, but makes reverse - # depdendencies require python to use cmake files of GR. - gr-ctrlport = false; - }; - }; - }; grandorgue = callPackage ../applications/audio/grandorgue { inherit (darwin.apple_sdk.frameworks) Cocoa;