From 62e1a35f1b6a818d4806121c556187a3f648850c Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Thu, 9 Jan 2025 21:43:57 +0100 Subject: [PATCH 1/4] freedv: move to pkgs/by-name --- .../radio/freedv/default.nix => by-name/fr/freedv/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename pkgs/{applications/radio/freedv/default.nix => by-name/fr/freedv/package.nix} (100%) diff --git a/pkgs/applications/radio/freedv/default.nix b/pkgs/by-name/fr/freedv/package.nix similarity index 100% rename from pkgs/applications/radio/freedv/default.nix rename to pkgs/by-name/fr/freedv/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cd1a3db79f56..f00f848ff953 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13648,7 +13648,7 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) AVFoundation Carbon Cocoa CoreAudio Kernel OpenGL; }; - freedv = callPackage ../applications/radio/freedv { + freedv = callPackage ../by-name/fr/freedv/package.nix { inherit (darwin.apple_sdk.frameworks) AppKit AVFoundation Cocoa CoreMedia; codec2 = codec2.override { freedvSupport = true; From ce23adb791032c924dcec561900060574363d45b Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Thu, 9 Jan 2025 21:44:22 +0100 Subject: [PATCH 2/4] freedv: reformat with nixfmt --- pkgs/by-name/fr/freedv/package.nix | 102 ++++++++++++++++------------- 1 file changed, 55 insertions(+), 47 deletions(-) diff --git a/pkgs/by-name/fr/freedv/package.nix b/pkgs/by-name/fr/freedv/package.nix index 678cc378ecc0..2db88792a3a8 100644 --- a/pkgs/by-name/fr/freedv/package.nix +++ b/pkgs/by-name/fr/freedv/package.nix @@ -1,26 +1,27 @@ -{ config -, lib -, stdenv -, fetchFromGitHub -, cmake -, macdylibbundler -, makeWrapper -, darwin -, codec2 -, libpulseaudio -, libsamplerate -, libsndfile -, lpcnetfreedv -, portaudio -, speexdsp -, hamlib_4 -, wxGTK32 -, sioclient -, pulseSupport ? config.pulseaudio or stdenv.hostPlatform.isLinux -, AppKit -, AVFoundation -, Cocoa -, CoreMedia +{ + config, + lib, + stdenv, + fetchFromGitHub, + cmake, + macdylibbundler, + makeWrapper, + darwin, + codec2, + libpulseaudio, + libsamplerate, + libsndfile, + lpcnetfreedv, + portaudio, + speexdsp, + hamlib_4, + wxGTK32, + sioclient, + pulseSupport ? config.pulseaudio or stdenv.hostPlatform.isLinux, + AppKit, + AVFoundation, + Cocoa, + CoreMedia, }: stdenv.mkDerivation rec { @@ -42,30 +43,34 @@ stdenv.mkDerivation rec { sed -i "/codesign/d;/hdiutil/d" src/CMakeLists.txt ''; - nativeBuildInputs = [ - cmake - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - macdylibbundler - makeWrapper - darwin.autoSignDarwinBinariesHook - ]; + nativeBuildInputs = + [ + cmake + ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + macdylibbundler + makeWrapper + darwin.autoSignDarwinBinariesHook + ]; - buildInputs = [ - codec2 - libsamplerate - libsndfile - lpcnetfreedv - speexdsp - hamlib_4 - wxGTK32 - sioclient - ] ++ (if pulseSupport then [ libpulseaudio ] else [ portaudio ]) - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - AppKit - AVFoundation - Cocoa - CoreMedia - ]; + buildInputs = + [ + codec2 + libsamplerate + libsndfile + lpcnetfreedv + speexdsp + hamlib_4 + wxGTK32 + sioclient + ] + ++ (if pulseSupport then [ libpulseaudio ] else [ portaudio ]) + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + AppKit + AVFoundation + Cocoa + CoreMedia + ]; cmakeFlags = [ "-DUSE_INTERNAL_CODEC2:BOOL=FALSE" @@ -86,7 +91,10 @@ stdenv.mkDerivation rec { homepage = "https://freedv.org/"; description = "Digital voice for HF radio"; license = licenses.lgpl21; - maintainers = with maintainers; [ mvs wegank ]; + maintainers = with maintainers; [ + mvs + wegank + ]; platforms = platforms.unix; mainProgram = "freedv"; }; From 6635523f69ca497e8a50cbdd586d9b466a49c558 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Thu, 9 Jan 2025 21:45:08 +0100 Subject: [PATCH 3/4] freedv: use new apple sdk pattern --- pkgs/by-name/fr/freedv/package.nix | 32 ++++++++++-------------------- pkgs/top-level/all-packages.nix | 1 - 2 files changed, 10 insertions(+), 23 deletions(-) diff --git a/pkgs/by-name/fr/freedv/package.nix b/pkgs/by-name/fr/freedv/package.nix index 2db88792a3a8..dce3838e2c2f 100644 --- a/pkgs/by-name/fr/freedv/package.nix +++ b/pkgs/by-name/fr/freedv/package.nix @@ -18,10 +18,6 @@ wxGTK32, sioclient, pulseSupport ? config.pulseaudio or stdenv.hostPlatform.isLinux, - AppKit, - AVFoundation, - Cocoa, - CoreMedia, }: stdenv.mkDerivation rec { @@ -53,24 +49,16 @@ stdenv.mkDerivation rec { darwin.autoSignDarwinBinariesHook ]; - buildInputs = - [ - codec2 - libsamplerate - libsndfile - lpcnetfreedv - speexdsp - hamlib_4 - wxGTK32 - sioclient - ] - ++ (if pulseSupport then [ libpulseaudio ] else [ portaudio ]) - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - AppKit - AVFoundation - Cocoa - CoreMedia - ]; + buildInputs = [ + codec2 + libsamplerate + libsndfile + lpcnetfreedv + speexdsp + hamlib_4 + wxGTK32 + sioclient + ] ++ (if pulseSupport then [ libpulseaudio ] else [ portaudio ]); cmakeFlags = [ "-DUSE_INTERNAL_CODEC2:BOOL=FALSE" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f00f848ff953..93106351e6e6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13649,7 +13649,6 @@ with pkgs; }; freedv = callPackage ../by-name/fr/freedv/package.nix { - inherit (darwin.apple_sdk.frameworks) AppKit AVFoundation Cocoa CoreMedia; codec2 = codec2.override { freedvSupport = true; }; From 2ecc1c281e66153934f4153f39bcde95a11dc928 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Thu, 9 Jan 2025 21:47:51 +0100 Subject: [PATCH 4/4] freedv: refactor --- pkgs/by-name/fr/freedv/package.nix | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/by-name/fr/freedv/package.nix b/pkgs/by-name/fr/freedv/package.nix index dce3838e2c2f..91bfa5a71c0b 100644 --- a/pkgs/by-name/fr/freedv/package.nix +++ b/pkgs/by-name/fr/freedv/package.nix @@ -27,7 +27,7 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "drowe67"; repo = "freedv-gui"; - rev = "v${version}"; + tag = "v${version}"; hash = "sha256-oFuAH81mduiSQGIDgDDy1IPskqqCBmfWbpqQstUIw9g="; }; @@ -61,10 +61,10 @@ stdenv.mkDerivation rec { ] ++ (if pulseSupport then [ libpulseaudio ] else [ portaudio ]); cmakeFlags = [ - "-DUSE_INTERNAL_CODEC2:BOOL=FALSE" - "-DUSE_STATIC_DEPS:BOOL=FALSE" - "-DUNITTEST=ON" - "-DUSE_PULSEAUDIO:BOOL=${if pulseSupport then "TRUE" else "FALSE"}" + (lib.cmakeBool "USE_INTERNAL_CODEC2" false) + (lib.cmakeBool "USE_STATIC_DEPS" false) + (lib.cmakeBool "UNITTEST" true) + (lib.cmakeBool "USE_PULSEAUDIO" pulseSupport) ]; doCheck = true; @@ -75,15 +75,15 @@ stdenv.mkDerivation rec { makeWrapper $out/Applications/FreeDV.app/Contents/MacOS/FreeDV $out/bin/freedv ''; - meta = with lib; { + meta = { homepage = "https://freedv.org/"; description = "Digital voice for HF radio"; - license = licenses.lgpl21; - maintainers = with maintainers; [ + license = lib.licenses.lgpl21Only; + maintainers = with lib.maintainers; [ mvs wegank ]; - platforms = platforms.unix; + platforms = lib.platforms.unix; mainProgram = "freedv"; }; }