Merge pull request #90428 from NixOS/wxgtk_gtk3

wxGTK3: make gtk2 and gtk3 specific variants
This commit is contained in:
Peter Hoeg 2020-06-16 06:31:35 +08:00 committed by GitHub
commit 6d95cf3de4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 65 additions and 54 deletions

View File

@ -1,27 +1,28 @@
{ stdenv, fetchzip, autoconf, automake, intltool, pkgconfig, ffmpeg, wxGTK }: { stdenv, fetchFromGitHub, autoreconfHook, intltool, pkgconfig, ffmpeg, wxGTK30-gtk3, wrapGAppsHook }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "spek"; pname = "spek";
version = "0.8.3"; version = "unstable-2018-12-29";
src = fetchzip { src = fetchFromGitHub {
name = "${pname}-${version}-src"; owner = "alexkay";
url = "https://github.com/alexkay/spek/archive/v${version}.tar.gz"; repo = "spek";
sha256 = "0y4hlhswpqkqpsglrhg5xbfy1a6f9fvasgdf336vhwcjqsc3k2xv"; rev = "f071c2956176ad53c7c8059e5c00e694ded31ded";
sha256 = "1l9gj9c1n92zlcjnyjyk211h83dk0idk644xnm5rs7q40p2zliy5";
}; };
nativeBuildInputs = [ pkgconfig ]; # needed for autoreconfHook
buildInputs = [ autoconf automake intltool ffmpeg wxGTK ]; AUTOPOINT="intltoolize --automake --copy";
preConfigure = '' nativeBuildInputs = [ autoreconfHook intltool pkgconfig wrapGAppsHook ];
./autogen.sh
''; buildInputs = [ ffmpeg wxGTK30-gtk3 wxGTK30-gtk3.gtk ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Analyse your audio files by showing their spectrogram"; description = "Analyse your audio files by showing their spectrogram";
homepage = "http://spek.cc/"; homepage = "http://spek.cc/";
license = licenses.gpl3; license = licenses.gpl3;
maintainers = with maintainers; [ bjornfor ];
platforms = platforms.all; platforms = platforms.all;
maintainers = [ maintainers.bjornfor ];
}; };
} }

View File

@ -10,16 +10,10 @@
, pugixml , pugixml
, sqlite , sqlite
, tinyxml , tinyxml
, wxGTK30 , wxGTK30-gtk3
, xdg_utils , xdg_utils
}: }:
let
# we can drop this when wxgtk is built with gtk3 by default
# see: https://github.com/NixOS/nixpkgs/pull/73145
wxgtk' = wxGTK30.override { compat26 = false; withGtk2 = false; };
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "filezilla"; pname = "filezilla";
version = "3.48.1"; version = "3.48.1";
@ -52,8 +46,8 @@ stdenv.mkDerivation rec {
pugixml pugixml
sqlite sqlite
tinyxml tinyxml
wxgtk' wxGTK30-gtk3
wxgtk'.gtk wxGTK30-gtk3.gtk
xdg_utils xdg_utils
]; ];

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, cmake, fftw, hamlib, libpulseaudio, libGL, libX11, liquid-dsp, { stdenv, fetchFromGitHub, cmake, fftw, hamlib, libpulseaudio, libGL, libX11, liquid-dsp,
pkgconfig, soapysdr-with-plugins, wxGTK, enableDigitalLab ? false }: pkgconfig, soapysdr-with-plugins, wxGTK31-gtk3, enableDigitalLab ? false }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "cubicsdr"; pname = "cubicsdr";
@ -13,7 +13,8 @@ stdenv.mkDerivation rec {
}; };
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [ fftw hamlib libpulseaudio libGL libX11 liquid-dsp soapysdr-with-plugins wxGTK ];
buildInputs = [ fftw hamlib libpulseaudio libGL libX11 liquid-dsp soapysdr-with-plugins wxGTK31-gtk3 ];
cmakeFlags = [ "-DUSE_HAMLIB=ON" ] cmakeFlags = [ "-DUSE_HAMLIB=ON" ]
++ stdenv.lib.optional enableDigitalLab "-DENABLE_DIGITAL_LAB=ON"; ++ stdenv.lib.optional enableDigitalLab "-DENABLE_DIGITAL_LAB=ON";

View File

@ -1,14 +1,11 @@
{ stdenv, fetchFromGitHub, cmake { stdenv, fetchFromGitHub, cmake
, sqlite, wxGTK30, libusb1, soapysdr , sqlite, wxGTK30-gtk3, libusb1, soapysdr
, mesa_glu, libX11, gnuplot, fltk , mesa_glu, libX11, gnuplot, fltk
} : } :
let stdenv.mkDerivation rec {
version = "20.01.0";
in stdenv.mkDerivation {
pname = "limesuite"; pname = "limesuite";
inherit version; version = "20.01.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "myriadrf"; owner = "myriadrf";
@ -17,14 +14,16 @@ in stdenv.mkDerivation {
sha256 = "01z4idcby2lm34bbnpbp400ski7p61jjiir6sy6dalnvsl52m7vx"; sha256 = "01z4idcby2lm34bbnpbp400ski7p61jjiir6sy6dalnvsl52m7vx";
}; };
enableParallelBuilding = true;
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
cmakeFlags = [
"-DOpenGL_GL_PREFERENCE=GLVND"
];
buildInputs = [ buildInputs = [
libusb1 libusb1
sqlite sqlite
wxGTK30 wxGTK30-gtk3
fltk fltk
gnuplot gnuplot
libusb1 libusb1
@ -34,11 +33,8 @@ in stdenv.mkDerivation {
]; ];
postInstall = '' postInstall = ''
mkdir -p $out/lib/udev/rules.d install -Dm444 -t $out/lib/udev/rules.d ../udev-rules/64-limesuite.rules
cp ../udev-rules/64-limesuite.rules $out/lib/udev/rules.d install -Dm444 -t $out/share/limesuite bin/Release/lms7suite_mcu/*
mkdir -p $out/share/limesuite
cp bin/Release/lms7suite_mcu/* $out/share/limesuite
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,8 +1,9 @@
{ stdenv, fetchFromGitHub, fetchurl, pkgconfig { stdenv, fetchFromGitHub, fetchurl, pkgconfig
, gtk2, gtk3, libXinerama, libSM, libXxf86vm , libXinerama, libSM, libXxf86vm
, xorgproto, gstreamer, gst-plugins-base, GConf, setfile , gtk2, GConf ? null, gtk3
, xorgproto, gstreamer, gst-plugins-base, setfile
, libGLSupported ? stdenv.lib.elem stdenv.hostPlatform.system stdenv.lib.platforms.mesaPlatforms , libGLSupported ? stdenv.lib.elem stdenv.hostPlatform.system stdenv.lib.platforms.mesaPlatforms
, withMesa ? stdenv.lib.elem stdenv.hostPlatform.system stdenv.lib.platforms.mesaPlatforms , withMesa ? libGLSupported
, libGLU ? null, libGL ? null , libGLU ? null, libGL ? null
, compat24 ? false, compat26 ? true, unicode ? true , compat24 ? false, compat26 ? true, unicode ? true
, withGtk2 ? true , withGtk2 ? true
@ -28,9 +29,10 @@ stdenv.mkDerivation rec {
sha256 = "19mqglghjjqjgz4rbybn3qdgn2cz9xc511nq1pvvli9wx2k8syl1"; sha256 = "19mqglghjjqjgz4rbybn3qdgn2cz9xc511nq1pvvli9wx2k8syl1";
}; };
buildInputs = buildInputs = [
[ (if withGtk2 then gtk2 else gtk3) libXinerama libSM libXxf86vm xorgproto gstreamer libXinerama libSM libXxf86vm xorgproto gstreamer gst-plugins-base
gst-plugins-base GConf ] ] ++ optionals withGtk2 [ gtk2 GConf ]
++ optional (!withGtk2) gtk3
++ optional withMesa libGLU ++ optional withMesa libGLU
++ optional withWebKit webkitgtk ++ optional withWebKit webkitgtk
++ optionals stdenv.isDarwin [ setfile Carbon Cocoa Kernel QTKit ]; ++ optionals stdenv.isDarwin [ setfile Carbon Cocoa Kernel QTKit ];

View File

@ -1,6 +1,7 @@
{ stdenv, fetchFromGitHub, fetchurl, pkgconfig { stdenv, fetchFromGitHub, fetchurl, pkgconfig
, gtk2, gtk3, libXinerama, libSM, libXxf86vm , libXinerama, libSM, libXxf86vm
, xorgproto, gstreamer, gst-plugins-base, GConf, setfile , gtk2, GConf ? null, gtk3
, xorgproto, gstreamer, gst-plugins-base, setfile
, libGLSupported ? stdenv.lib.elem stdenv.hostPlatform.system stdenv.lib.platforms.mesaPlatforms , libGLSupported ? stdenv.lib.elem stdenv.hostPlatform.system stdenv.lib.platforms.mesaPlatforms
, withMesa ? libGLSupported, libGLU ? null, libGL ? null , withMesa ? libGLSupported, libGLU ? null, libGL ? null
, compat28 ? false, compat30 ? true, unicode ? true , compat28 ? false, compat30 ? true, unicode ? true
@ -27,9 +28,10 @@ stdenv.mkDerivation rec {
sha256 = "0gfdhb7xq5vzasm7s1di39nchv42zsp0dmn4v6knzb7mgsb107wb"; sha256 = "0gfdhb7xq5vzasm7s1di39nchv42zsp0dmn4v6knzb7mgsb107wb";
}; };
buildInputs = buildInputs = [
[ (if withGtk2 then gtk2 else gtk3) libXinerama libSM libXxf86vm xorgproto gstreamer libXinerama libSM libXxf86vm xorgproto gstreamer gst-plugins-base
gst-plugins-base GConf ] ] ++ optionals withGtk2 [ gtk2 GConf ]
++ optional (!withGtk2) gtk3
++ optional withMesa libGLU ++ optional withMesa libGLU
++ optional withWebKit webkitgtk ++ optional withWebKit webkitgtk
++ optionals stdenv.isDarwin [ setfile Carbon Cocoa Kernel QTKit ]; ++ optionals stdenv.isDarwin [ setfile Carbon Cocoa Kernel QTKit ];

View File

@ -15145,6 +15145,9 @@ in
wxGTK = wxGTK28; wxGTK = wxGTK28;
wxGTK30 = wxGTK30-gtk2;
wxGTK31 = wxGTK31-gtk2;
wxGTK28 = callPackage ../development/libraries/wxwidgets/2.8 { wxGTK28 = callPackage ../development/libraries/wxwidgets/2.8 {
inherit (gnome2) GConf; inherit (gnome2) GConf;
}; };
@ -15155,18 +15158,32 @@ in
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QuickTime; inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QuickTime;
}; };
wxGTK30 = callPackage ../development/libraries/wxwidgets/3.0 { wxGTK30-gtk2 = callPackage ../development/libraries/wxwidgets/3.0 {
withGtk2 = true;
inherit (gnome2) GConf; inherit (gnome2) GConf;
inherit (darwin.stubs) setfile; inherit (darwin.stubs) setfile;
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit; inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit;
}; };
wxGTK31 = callPackage ../development/libraries/wxwidgets/3.1 { wxGTK30-gtk3 = callPackage ../development/libraries/wxwidgets/3.0 {
withGtk2 = false;
inherit (darwin.stubs) setfile;
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit;
};
wxGTK31-gtk2 = callPackage ../development/libraries/wxwidgets/3.1 {
withGtk2 = true;
inherit (gnome2) GConf; inherit (gnome2) GConf;
inherit (darwin.stubs) setfile; inherit (darwin.stubs) setfile;
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit; inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit;
}; };
wxGTK31-gtk3 = callPackage ../development/libraries/wxwidgets/3.1 {
withGtk2 = false;
inherit (darwin.stubs) setfile;
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit;
};
wxmac = callPackage ../development/libraries/wxwidgets/3.0/mac.nix { wxmac = callPackage ../development/libraries/wxwidgets/3.0/mac.nix {
inherit (darwin.apple_sdk.frameworks) AGL Cocoa Kernel; inherit (darwin.apple_sdk.frameworks) AGL Cocoa Kernel;
inherit (darwin.stubs) setfile rez derez; inherit (darwin.stubs) setfile rez derez;
@ -19120,7 +19137,7 @@ in
ctop = callPackage ../tools/system/ctop { }; ctop = callPackage ../tools/system/ctop { };
cubicsdr = callPackage ../applications/radio/cubicsdr { wxGTK = wxGTK31; }; cubicsdr = callPackage ../applications/radio/cubicsdr { };
cum = callPackage ../applications/misc/cum { }; cum = callPackage ../applications/misc/cum { };
@ -22187,9 +22204,7 @@ in
soxr = callPackage ../applications/misc/audio/soxr { }; soxr = callPackage ../applications/misc/audio/soxr { };
spek = callPackage ../applications/audio/spek { spek = callPackage ../applications/audio/spek { };
ffmpeg = ffmpeg_2;
};
spotify = callPackage ../applications/audio/spotify { spotify = callPackage ../applications/audio/spotify {
libgcrypt = libgcrypt_1_5; libgcrypt = libgcrypt_1_5;