diff --git a/lib/systems/architectures.nix b/lib/systems/architectures.nix index bfecaec1ae88..8e3a56b0d7c9 100644 --- a/lib/systems/architectures.nix +++ b/lib/systems/architectures.nix @@ -12,6 +12,12 @@ rec { broadwell = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "fma" ]; skylake = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "fma" ]; skylake-avx512 = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "avx512" "fma" ]; + cannonlake = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "avx512" "fma" ]; + icelake-client = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "avx512" "fma" ]; + icelake-server = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "avx512" "fma" ]; + cascadelake = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "avx512" "fma" ]; + cooperlake = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "avx512" "fma" ]; + tigerlake = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" "avx2" "avx512" "fma" ]; # x86_64 AMD btver1 = [ "sse3" "ssse3" "sse4_1" "sse4_2" ]; btver2 = [ "sse3" "ssse3" "sse4_1" "sse4_2" "aes" "avx" ]; @@ -21,6 +27,7 @@ rec { bdver4 = [ "sse3" "ssse3" "sse4_1" "sse4_2" "sse4a" "aes" "avx" "avx2" "fma" "fma4" ]; znver1 = [ "sse3" "ssse3" "sse4_1" "sse4_2" "sse4a" "aes" "avx" "avx2" "fma" ]; znver2 = [ "sse3" "ssse3" "sse4_1" "sse4_2" "sse4a" "aes" "avx" "avx2" "fma" ]; + znver3 = [ "sse3" "ssse3" "sse4_1" "sse4_2" "sse4a" "aes" "avx" "avx2" "fma" ]; # other armv5te = [ ]; armv6 = [ ]; @@ -41,15 +48,38 @@ rec { broadwell = [ "haswell" ] ++ inferiors.haswell; skylake = [ "broadwell" ] ++ inferiors.broadwell; skylake-avx512 = [ "skylake" ] ++ inferiors.skylake; + # x86_64 AMD + # TODO: fill this (need testing) btver1 = [ ]; - btver2 = [ ]; # TODO: fill this (need testing) - bdver1 = [ ]; # TODO: fill this (need testing) - bdver2 = [ ]; # TODO: fill this (need testing) - bdver3 = [ ]; # TODO: fill this (need testing) - bdver4 = [ ]; # TODO: fill this (need testing) - znver1 = [ ]; # TODO: fill this (need testing) - znver2 = [ ]; # TODO: fill this (need testing) + btver2 = [ ]; + bdver1 = [ ]; + bdver2 = [ ]; + bdver3 = [ ]; + bdver4 = [ ]; + # Regarding `skylake` as inferior of `znver1`, there are reports of + # successful usage by Gentoo users and Phoronix benchmarking of different + # `-march` targets. + # + # The GCC documentation on extensions used and wikichip documentation + # regarding supperted extensions on znver1 and skylake was used to create + # this partial order. + # + # Note: + # + # - The succesors of `skylake` (`cannonlake`, `icelake`, etc) use `avx512` + # which no current AMD Zen michroarch support. + # - `znver1` uses `ABM`, `CLZERO`, `CX16`, `MWAITX`, and `SSE4A` which no + # current Intel microarch support. + # + # https://www.phoronix.com/scan.php?page=article&item=amd-znver3-gcc11&num=1 + # https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html + # https://en.wikichip.org/wiki/amd/microarchitectures/zen + # https://en.wikichip.org/wiki/intel/microarchitectures/skylake + znver1 = [ "skylake" ] ++ inferiors.skylake; + znver2 = [ "znver1" ] ++ inferiors.znver1; + znver3 = [ "znver2" ] ++ inferiors.znver2; + # other armv5te = [ ]; armv6 = [ ]; diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix index 428a76ea6177..17d68c1e5dda 100644 --- a/pkgs/applications/audio/picard/default.nix +++ b/pkgs/applications/audio/picard/default.nix @@ -12,13 +12,13 @@ let ; in pythonPackages.buildPythonApplication rec { pname = "picard"; - version = "2.5.4"; + version = "2.5.5"; src = fetchFromGitHub { owner = "metabrainz"; repo = pname; rev = "release-${version}"; - sha256 = "11kx4wwl6d2yy0kijcsda0kz2494a7cywp3mzvbga1hcz78f2xv6"; + sha256 = "0i97cfnfgg4g13ms8x3bq279s4r7jckxxrv3sdz7dxpcn6gkw35s"; }; nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ] diff --git a/pkgs/applications/audio/qjackctl/default.nix b/pkgs/applications/audio/qjackctl/default.nix index 571fb0a09cc9..4ac64afe8547 100644 --- a/pkgs/applications/audio/qjackctl/default.nix +++ b/pkgs/applications/audio/qjackctl/default.nix @@ -1,18 +1,20 @@ -{ stdenv, mkDerivation, fetchurl -, pkg-config, alsaLib, libjack2, dbus, qtbase, qttools, qtx11extras +{ stdenv, mkDerivation, fetchFromGitHub +, pkg-config, cmake, alsaLib, libjack2, dbus, qtbase, qttools, qtx11extras # Enable jack session support , jackSession ? false }: mkDerivation rec { - version = "0.6.3"; + version = "0.9.0"; pname = "qjackctl"; # some dependencies such as killall have to be installed additionally - src = fetchurl { - url = "mirror://sourceforge/qjackctl/${pname}-${version}.tar.gz"; - sha256 = "0zbb4jlx56qvcqyhx34mbagkqf3wbxgj84hk0ppf5cmcrxv67d4x"; + src = fetchFromGitHub { + owner = "rncbc"; + repo = "qjackctl"; + rev = "${pname}_${stdenv.lib.replaceChars ["."] ["_"] version}"; + sha256 = "044kgwk7pfywad4myza0s2kvfkl21zkqq5wgny7n3c43qlcgs3zr"; }; buildInputs = [ @@ -24,16 +26,19 @@ mkDerivation rec { dbus ]; - nativeBuildInputs = [ pkg-config ]; + nativeBuildInputs = [ + cmake + pkg-config + ]; - configureFlags = [ - "--enable-jack-version" - (stdenv.lib.strings.enableFeature jackSession "jack-session") + cmakeFlags = [ + "-DCONFIG_JACK_VERSION=1" + "-DCONFIG_JACK_SESSION=${toString jackSession}" ]; meta = with stdenv.lib; { description = "A Qt application to control the JACK sound server daemon"; - homepage = "http://qjackctl.sourceforge.net/"; + homepage = "https://github.com/rncbc/qjackctl"; license = licenses.gpl2Plus; maintainers = [ maintainers.goibhniu ]; platforms = platforms.linux; diff --git a/pkgs/applications/gis/qgis/unwrapped.nix b/pkgs/applications/gis/qgis/unwrapped.nix index 54d3d5987597..6f395640f500 100644 --- a/pkgs/applications/gis/qgis/unwrapped.nix +++ b/pkgs/applications/gis/qgis/unwrapped.nix @@ -1,8 +1,9 @@ { mkDerivation, lib, fetchFromGitHub, cmake, ninja, flex, bison, proj, geos, xlibsWrapper, sqlite, gsl , qwt, fcgi, python3Packages, libspatialindex, libspatialite, postgresql , txt2tags, openssl, libzip, hdf5, netcdf, exiv2 -, qtbase, qtwebkit, qtsensors, qca-qt5, qtkeychain, qscintilla, qtserialport, qtxmlpatterns +, qtbase, qtsensors, qca-qt5, qtkeychain, qscintilla, qtserialport, qtxmlpatterns , withGrass ? true, grass +, withWebKit ? true, qtwebkit }: with lib; let @@ -10,7 +11,7 @@ let [ qscintilla-qt5 gdal jinja2 numpy psycopg2 chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ]; in mkDerivation rec { - version = "3.10.11"; + version = "3.10.13"; pname = "qgis"; name = "${pname}-unwrapped-${version}"; @@ -18,7 +19,7 @@ in mkDerivation rec { owner = "qgis"; repo = "QGIS"; rev = "final-${lib.replaceStrings ["."] ["_"] version}"; - sha256 = "157hwi9sgnsf0csbfg4x3c7vh0zgf1hnqgn04lhg9xa1n8jjbv2q"; + sha256 = "0za77znk1phrxzy2cgxpwrld3d0pi0xvhsg78rg4wkb23vaqv6zb"; }; passthru = { @@ -28,8 +29,10 @@ in mkDerivation rec { buildInputs = [ openssl proj geos xlibsWrapper sqlite gsl qwt exiv2 fcgi libspatialindex libspatialite postgresql txt2tags libzip hdf5 netcdf - qtbase qtwebkit qtsensors qca-qt5 qtkeychain qscintilla qtserialport qtxmlpatterns] ++ - (lib.optional withGrass grass) ++ pythonBuildInputs; + qtbase qtsensors qca-qt5 qtkeychain qscintilla qtserialport qtxmlpatterns ] + ++ lib.optional withGrass grass + ++ lib.optional withWebKit qtwebkit + ++ pythonBuildInputs; nativeBuildInputs = [ cmake flex bison ninja ]; @@ -44,17 +47,15 @@ in mkDerivation rec { cmakeFlags = [ "-DCMAKE_SKIP_BUILD_RPATH=OFF" "-DPYQT5_SIP_DIR=${python3Packages.pyqt5}/share/sip/PyQt5" - "-DQSCI_SIP_DIR=${python3Packages.qscintilla-qt5}/share/sip/PyQt5" ] ++ - lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}"; + "-DQSCI_SIP_DIR=${python3Packages.qscintilla-qt5}/share/sip/PyQt5" ] + ++ lib.optional (!withWebKit) "-DWITH_QTWEBKIT=OFF" + ++ lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}"; meta = { description = "A Free and Open Source Geographic Information System"; - homepage = "http://www.qgis.org"; + homepage = "https://www.qgis.org"; license = lib.licenses.gpl2Plus; platforms = with lib.platforms; linux; - maintainers = with lib.maintainers; [ lsix ]; - # Our 3.10 LTS cannot use a newer Qt (5.15) version because it requires qtwebkit - # and our qtwebkit fails to build with 5.15. 01bcfd3579219d60e5d07df309a000f96b2b658b - broken = true; + maintainers = with lib.maintainers; [ lsix sikmir ]; }; } diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix index 241df5f0a034..c1926820ece1 100644 --- a/pkgs/applications/networking/browsers/brave/default.nix +++ b/pkgs/applications/networking/browsers/brave/default.nix @@ -88,11 +88,11 @@ in stdenv.mkDerivation rec { pname = "brave"; - version = "1.18.70"; + version = "1.18.75"; src = fetchurl { url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb"; - sha256 = "08v9r41knmvi3vi27hs8rsjiyrxiidx24zzwz2gbclf4l42sk88j"; + sha256 = "1njgdw7ml30xs517brc7z7piy6lcylrfjhz6wn1dp7gywsxfgx1h"; }; dontConfigure = true; diff --git a/pkgs/applications/science/robotics/mavproxy/default.nix b/pkgs/applications/science/robotics/mavproxy/default.nix index a71ddc874c9d..8e7c5bddd961 100644 --- a/pkgs/applications/science/robotics/mavproxy/default.nix +++ b/pkgs/applications/science/robotics/mavproxy/default.nix @@ -3,11 +3,11 @@ buildPythonApplication rec { pname = "MAVProxy"; - version = "1.8.29"; + version = "1.8.30"; src = fetchPypi { inherit pname version; - sha256 = "8f5900dc0a404ab9cf5a00155f83e9aaeab18161ce21a352dfdcf2d7abf5d78e"; + sha256 = "fe046481b793b592334749249620fce8a463f4c46b394ff744645975465d677b"; }; propagatedBuildInputs = [ diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix index 85d71996b397..0855c27eff49 100644 --- a/pkgs/build-support/cc-wrapper/default.nix +++ b/pkgs/build-support/cc-wrapper/default.nix @@ -76,10 +76,14 @@ let cannonlake = versionAtLeast ccVersion "8.0"; icelake-client = versionAtLeast ccVersion "8.0"; icelake-server = versionAtLeast ccVersion "8.0"; + cascadelake = versionAtLeast ccVersion "9.0"; + cooperlake = versionAtLeast ccVersion "10.0"; + tigerlake = versionAtLeast ccVersion "10.0"; knm = versionAtLeast ccVersion "8.0"; # AMD znver1 = versionAtLeast ccVersion "6.0"; znver2 = versionAtLeast ccVersion "9.0"; + znver3 = versionAtLeast ccVersion "11.0"; }.${arch} or true else if isClang then { # Intel diff --git a/pkgs/development/libraries/libctemplate/default.nix b/pkgs/development/libraries/libctemplate/default.nix index 35707834c086..b571e816fc40 100644 --- a/pkgs/development/libraries/libctemplate/default.nix +++ b/pkgs/development/libraries/libctemplate/default.nix @@ -1,21 +1,26 @@ -{ stdenv, fetchurl, python2 }: +{ stdenv, fetchFromGitHub, python3, autoconf, automake, libtool }: stdenv.mkDerivation rec { pname = "ctemplate"; + version = "2.4"; - version = "2.3"; - - src = fetchurl { - url = "https://github.com/OlafvdSpek/ctemplate/archive/ctemplate-${version}.tar.gz"; - sha256 = "0mi5g2xlws10z1g4x0cj6kd1r673kkav35pgzyqxa1w47xnwprcr"; + src = fetchFromGitHub { + owner = "OlafvdSpek"; + repo = "ctemplate"; + rev = "ctemplate-${version}"; + sha256 = "1x0p5yym6vvcx70pm8ihnbxxrl2wnblfp72ih5vjyg8mzkc8cxrr"; }; - buildInputs = [ python2 ]; + nativeBuildInputs = [ python3 autoconf automake libtool ]; postPatch = '' patchShebangs . ''; + preConfigure = '' + ./autogen.sh + ''; + meta = { description = "A simple but powerful template language for C++"; longDescription = '' diff --git a/pkgs/development/libraries/vtk/default.nix b/pkgs/development/libraries/vtk/default.nix index 4ef140a09996..114c5d19397c 100644 --- a/pkgs/development/libraries/vtk/default.nix +++ b/pkgs/development/libraries/vtk/default.nix @@ -22,6 +22,14 @@ stdenv.mkDerivation rec { sha256 = "1fspgp8k0myr6p2a6wkc21ldcswb4bvmb484m12mxgk1a9vxrhrl"; }; + patches = [ + # Fix compilation with Qt 5.15 + (fetchpatch { + url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sci-libs/vtk/files/vtk-8.2.0-qt-5.15.patch?id=3ca9613d7ad604c93d714e29b116952561e4e41c"; + sha256 = "sha256-BFjoKws1hVD3Ly9RS4lGN62J6RTyI1E8ATHrZdzg7ds="; + }) + ]; + nativeBuildInputs = [ cmake ]; buildInputs = [ libtiff ] diff --git a/pkgs/development/python-modules/auth0-python/default.nix b/pkgs/development/python-modules/auth0-python/default.nix index 2af445b48c53..79844afe318e 100644 --- a/pkgs/development/python-modules/auth0-python/default.nix +++ b/pkgs/development/python-modules/auth0-python/default.nix @@ -8,11 +8,11 @@ buildPythonPackage rec { pname = "auth0-python"; - version = "3.13.0"; + version = "3.14.0"; src = fetchPypi { inherit pname version; - sha256 = "2e968d01364c8c94fbe85154ab77ebe9e51a3f8282405bb33748071452063004"; + sha256 = "ac7808d00676c5e7ffa9eaa228807ca1f8db7a0f4dc115337c80fb6d7eb2b50a"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/tools/parsing/tree-sitter/default.nix b/pkgs/development/tools/parsing/tree-sitter/default.nix index 37811943a6de..57c12cce93ea 100644 --- a/pkgs/development/tools/parsing/tree-sitter/default.nix +++ b/pkgs/development/tools/parsing/tree-sitter/default.nix @@ -2,10 +2,12 @@ , fetchgit, fetchFromGitHub, fetchurl , writeShellScript, runCommand, which , rustPlatform, jq, nix-prefetch-git, xe, curl, emscripten +, Security , callPackage + , enableShared ? true , enableStatic ? false -, Security +, webUISupport ? false }: # TODO: move to carnix or https://github.com/kolloch/crate2nix @@ -54,20 +56,25 @@ in rustPlatform.buildRustPackage { pname = "tree-sitter"; inherit src version cargoSha256; - buildInputs = lib.optionals stdenv.isDarwin [ Security ]; + buildInputs = + lib.optionals stdenv.isDarwin [ Security ]; + nativeBuildInputs = + [ which ] + ++ lib.optionals webUISupport [ emscripten ]; - nativeBuildInputs = [ emscripten which ]; - - postPatch = '' - # needed for the tests - rm -rf test/fixtures/grammars - ln -s ${grammars} test/fixtures/grammars + postPatch = lib.optionalString (!webUISupport) '' + # remove web interface + sed -e '/pub mod web_ui/d' \ + -i cli/src/lib.rs + sed -e 's/web_ui,//' \ + -e 's/web_ui::serve(¤t_dir.*$/println!("ERROR: web-ui is not available in this nixpkgs build; enable the webUISupport"); std::process::exit(1);/' \ + -i cli/src/main.rs ''; # Compile web assembly with emscripten. The --debug flag prevents us from # minifying the JavaScript; passing it allows us to side-step more Node # JS dependencies for installation. - preBuild = '' + preBuild = lib.optionalString webUISupport '' bash ./script/build-wasm --debug ''; diff --git a/pkgs/misc/emulators/craftos-pc/default.nix b/pkgs/misc/emulators/craftos-pc/default.nix new file mode 100644 index 000000000000..42fb33051e61 --- /dev/null +++ b/pkgs/misc/emulators/craftos-pc/default.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchFromGitHub, poco, openssl, SDL2, SDL2_mixer }: + +let + craftos2-lua = fetchFromGitHub { + owner = "MCJack123"; + repo = "craftos2-lua"; + rev = "v2.4.4"; + sha256 = "1q63ki4sxx8bxaa6ag3xj153p7a8a12ivm0k33k935p41k6y2k64"; + }; +in + +stdenv.mkDerivation rec { + pname = "craftos-pc"; + version = "2.4.5"; + + src = fetchFromGitHub { + owner = "MCJack123"; + repo = "craftos2"; + rev = "v${version}"; + sha256 = "00a4p365krbdprlv4979d13mm3alhxgzzj3vqz2g67795plf64j4"; + }; + + buildInputs = [ poco openssl SDL2 SDL2_mixer ]; + + preBuild = '' + cp -R ${craftos2-lua}/* ./craftos2-lua/ + chmod -R u+w ./craftos2-lua + make -C craftos2-lua linux + ''; + + installPhase = '' + mkdir -p $out/bin + DESTDIR=$out/bin make install + ''; + + meta = with stdenv.lib; { + description = "An implementation of the CraftOS-PC API written in C++ using SDL"; + homepage = "https://www.craftos-pc.cc"; + license = licenses.mit; + platforms = platforms.linux; + maintainers = [ maintainers.siraben ]; + }; +} diff --git a/pkgs/os-specific/linux/alsa-firmware/default.nix b/pkgs/os-specific/linux/alsa-firmware/default.nix index 53b3126705ca..01955534bfc7 100644 --- a/pkgs/os-specific/linux/alsa-firmware/default.nix +++ b/pkgs/os-specific/linux/alsa-firmware/default.nix @@ -1,13 +1,18 @@ { stdenv, buildPackages, autoreconfHook, fetchurl, fetchpatch }: stdenv.mkDerivation rec { - name = "alsa-firmware-1.2.4"; + name = "alsa-firmware-1.2.1"; src = fetchurl { url = "mirror://alsa/firmware/${name}.tar.bz2"; - sha256 = "sha256-tnttfQi8/CR+9v8KuIqZwYgwWjz1euLf0LzZpbNs1bs="; + sha256 = "1aq8z8ajpjvcx7bwhwp36bh5idzximyn77ygk3ifs0my3mbpr8mf"; }; + patches = [ (fetchpatch { + url = "https://github.com/alsa-project/alsa-firmware/commit/a8a478485a999ff9e4a8d8098107d3b946b70288.patch"; + sha256 = "0zd7vrgz00hn02va5bkv7qj2395a1rl6f8jq1mwbryxs7hiysb78"; + }) ]; + nativeBuildInputs = [ autoreconfHook buildPackages.stdenv.cc ]; configureFlags = [ diff --git a/pkgs/tools/graphics/directx-shader-compiler/default.nix b/pkgs/tools/graphics/directx-shader-compiler/default.nix index 13665b776469..4e74d2c443f1 100644 --- a/pkgs/tools/graphics/directx-shader-compiler/default.nix +++ b/pkgs/tools/graphics/directx-shader-compiler/default.nix @@ -36,14 +36,14 @@ stdenv.mkDerivation rec { installPhase = '' mkdir -p $out/bin $out/lib $dev/include mv bin/dxc* $out/bin/ - mv lib/libdxcompiler.so* $out/lib/ + mv lib/libdxcompiler.so* lib/libdxcompiler.*dylib $out/lib/ cp -r $src/include/dxc $dev/include/ ''; meta = with stdenv.lib; { description = "A compiler to compile HLSL programs into DXIL and SPIR-V"; homepage = "https://github.com/microsoft/DirectXShaderCompiler"; - platforms = platforms.linux; + platforms = with platforms; linux ++ darwin; license = licenses.ncsa; maintainers = with maintainers; [ expipiplus1 ]; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index dda8f0a28c42..dcea15ed6101 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1757,6 +1757,8 @@ in gflags = null; # only required for examples/tests }; + craftos-pc = callPackage ../misc/emulators/craftos-pc { }; + gcdemu = callPackage ../misc/emulators/cdemu/gui.nix { }; image-analyzer = callPackage ../misc/emulators/cdemu/analyzer.nix { }; @@ -16506,7 +16508,7 @@ in vulkan-tools-lunarg = callPackage ../tools/graphics/vulkan-tools-lunarg { }; vulkan-validation-layers = callPackage ../development/tools/vulkan-validation-layers { }; - vtkWithQt5 = vtk.override { qtLib = qt514; }; + vtkWithQt5 = vtk.override { qtLib = qt515; }; vxl = callPackage ../development/libraries/vxl { libpng = libpng12;