diff --git a/README.md b/README.md index 8f52d9150053..66025a20c4f2 100644 --- a/README.md +++ b/README.md @@ -21,10 +21,10 @@ # Community * [Discourse Forum](https://discourse.nixos.org/) -* [IRC - #nixos on freenode.net](irc://irc.freenode.net/#nixos) +* [Matrix Chat](https://matrix.to/#/#community:nixos.org) * [NixOS Weekly](https://weekly.nixos.org/) * [Community-maintained wiki](https://nixos.wiki/) -* [Community-maintained list of ways to get in touch](https://nixos.wiki/wiki/Get_In_Touch#Chat) (Discord, Matrix, Telegram, other IRC channels, etc.) +* [Community-maintained list of ways to get in touch](https://nixos.wiki/wiki/Get_In_Touch#Chat) (Discord, Telegram, IRC, etc.) # Other Project Repositories diff --git a/nixos/modules/tasks/filesystems.nix b/nixos/modules/tasks/filesystems.nix index 24f71d29427f..065d6cc95d18 100644 --- a/nixos/modules/tasks/filesystems.nix +++ b/nixos/modules/tasks/filesystems.nix @@ -321,6 +321,7 @@ in RemainAfterExit = true; }; unitConfig = { + ConditionPathIsMountPoint = "!/sys/fs/pstore"; ConditionVirtualization = "!container"; DefaultDependencies = false; # needed to prevent a cycle }; diff --git a/pkgs/applications/misc/xplr/default.nix b/pkgs/applications/misc/xplr/default.nix index 8c6994b0303c..56553a80e912 100644 --- a/pkgs/applications/misc/xplr/default.nix +++ b/pkgs/applications/misc/xplr/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "xplr"; - version = "0.9.1"; + version = "0.10.1"; src = fetchCrate { inherit pname version; - sha256 = "0ca6r0xkcdg1ha0n79kzxqh2ks5q3l3hgylqqy62vk51c6yrjx9x"; + sha256 = "17x514pwbkzkkrd47a66a4iz3bxrxvm8hk5hphsfbhgzqfnf9iy7"; }; buildInputs = lib.optional stdenv.isDarwin libiconv; - cargoSha256 = "1c29dakcff130fvavgq2kpy2ncpgxkil2mi14q2m9jpsrvhqcdvk"; + cargoSha256 = "03y2fk174rdjvw8wdzwc0hhj0zqwpap7qcga51yhq877rgyxbxir"; meta = with lib; { description = "A hackable, minimal, fast TUI file explorer"; diff --git a/pkgs/development/interpreters/erlang/R23.nix b/pkgs/development/interpreters/erlang/R23.nix index 8fc7d8feac80..cfd508b851f6 100644 --- a/pkgs/development/interpreters/erlang/R23.nix +++ b/pkgs/development/interpreters/erlang/R23.nix @@ -3,6 +3,6 @@ # How to obtain `sha256`: # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz mkDerivation { - version = "23.3.4"; - sha256 = "EKewwcK1Gr84mmFVxVmOLaPiFtsG3r/1ubGOUwM/EYY="; + version = "23.3.4.1"; + sha256 = "vBGPCAq7410ykiWsxDo6PpgnInPMY35+RPx4gl/BW7k="; } diff --git a/pkgs/development/libraries/igraph/default.nix b/pkgs/development/libraries/igraph/default.nix index 29e12cc8541d..0c668525e927 100644 --- a/pkgs/development/libraries/igraph/default.nix +++ b/pkgs/development/libraries/igraph/default.nix @@ -96,6 +96,10 @@ stdenv.mkDerivation rec { cp -r doc "$out/share" ''; + postFixup = lib.optionalString stdenv.isDarwin '' + install_name_tool -change libblas.dylib ${blas}/lib/libblas.dylib $out/lib/libigraph.dylib + ''; + meta = with lib; { description = "The network analysis package"; homepage = "https://igraph.org/"; diff --git a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix index 0229d92d9a21..13ab7e35c5a4 100644 --- a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix +++ b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix @@ -134,7 +134,7 @@ qtModule { ''; qmakeFlags = [ "--" "-system-ffmpeg" ] - ++ optional stdenv.isLinux "-webengine-webrtc-pipewire" + ++ optional (stdenv.isLinux && (lib.versionAtLeast qtCompatVersion "5.15")) "-webengine-webrtc-pipewire" ++ optional enableProprietaryCodecs "-proprietary-codecs"; propagatedBuildInputs = [ @@ -168,6 +168,7 @@ qtModule { xorg.xrandr libXScrnSaver libXcursor libXrandr xorg.libpciaccess libXtst xorg.libXcomposite xorg.libXdamage libdrm + ] ++ optionals (stdenv.isLinux && (lib.versionAtLeast qtCompatVersion "5.15")) [ # Pipewire pipewire_0_2 ] diff --git a/pkgs/development/libraries/science/math/arpack/default.nix b/pkgs/development/libraries/science/math/arpack/default.nix index 23e44bf28b06..a26a3bb6d8d9 100644 --- a/pkgs/development/libraries/science/math/arpack/default.nix +++ b/pkgs/development/libraries/science/math/arpack/default.nix @@ -46,6 +46,10 @@ stdenv.mkDerivation rec { export OMP_NUM_THREADS=2 ''; + postFixup = lib.optionalString stdenv.isDarwin '' + install_name_tool -change libblas.dylib ${blas}/lib/libblas.dylib $out/lib/libarpack.dylib + ''; + meta = { homepage = "https://github.com/opencollab/arpack-ng"; description = '' diff --git a/pkgs/development/node-packages/default.nix b/pkgs/development/node-packages/default.nix index 22c06e96afee..6f5223ad61c9 100644 --- a/pkgs/development/node-packages/default.nix +++ b/pkgs/development/node-packages/default.nix @@ -75,6 +75,7 @@ let flood = super.flood.override { buildInputs = [ self.node-pre-gyp ]; + meta.mainProgram = "flood"; }; expo-cli = super."expo-cli".override (attrs: { diff --git a/pkgs/development/python-modules/cocotb-bus/default.nix b/pkgs/development/python-modules/cocotb-bus/default.nix new file mode 100644 index 000000000000..af740e8d298f --- /dev/null +++ b/pkgs/development/python-modules/cocotb-bus/default.nix @@ -0,0 +1,35 @@ +{ lib +, stdenv +, buildPythonPackage +, fetchPypi +}: + +buildPythonPackage rec { + pname = "cocotb-bus"; + version = "0.1.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "cc9b0bb00c95061a67f650caf96e3a294bb74ef437124dea456dd9e2a9431854"; + }; + + postPatch = '' + # remove circular dependency cocotb from setup.py + substituteInPlace setup.py --replace '"cocotb>=1.5.0.dev,<2.0"' "" + ''; + + # tests require cocotb, disable for now to avoid circular dependency + doCheck = false; + + # checkPhase = '' + # export PATH=$out/bin:$PATH + # make test + # ''; + + meta = with lib; { + description = "Pre-packaged testbenching tools and reusable bus interfaces for cocotb"; + homepage = "https://github.com/cocotb/cocotb-bus"; + license = licenses.bsd3; + maintainers = with maintainers; [ prusnak ]; + }; +} diff --git a/pkgs/development/python-modules/cocotb/default.nix b/pkgs/development/python-modules/cocotb/default.nix index b63432383832..17fe45f1cf49 100644 --- a/pkgs/development/python-modules/cocotb/default.nix +++ b/pkgs/development/python-modules/cocotb/default.nix @@ -1,19 +1,31 @@ -{ lib, stdenv, buildPythonPackage, fetchFromGitHub, setuptools, swig, verilog }: +{ lib +, stdenv +, buildPythonPackage +, fetchPypi +, setuptools +, setuptools-scm +, cocotb-bus +, pytest +, swig +, verilog +}: buildPythonPackage rec { pname = "cocotb"; - version = "1.5.1"; + version = "1.5.2"; - src = fetchFromGitHub { - owner = pname; - repo = pname; - rev = "v${version}"; - sha256 = "02bw2i03vd4rcvdk10qdjl2lbvvy81cn9qpr8vzq8cm9h45689mv"; + # - we need to use the tarball from PyPi + # or the full git checkout (with .git) + # - using fetchFromGitHub will cause a build failure, + # because it does not include required metadata + src = fetchPypi { + inherit pname version; + sha256 = "9f4f3e6eb9caeb479e98d604770645b57469cd25b39e28df1916ffcd593efbe6"; }; - propagatedBuildInputs = [ - setuptools - ]; + nativeBuildInputs = [ setuptools-scm ]; + + buildInputs = [ setuptools ]; postPatch = '' patchShebangs bin/*.py @@ -25,16 +37,14 @@ buildPythonPackage rec { do substituteInPlace $f --replace 'shell which' 'shell command -v' done + + # remove circular dependency cocotb-bus from setup.py + substituteInPlace setup.py --replace "'cocotb-bus<1.0'" "" ''; - checkInputs = [ swig verilog ]; + checkInputs = [ cocotb-bus pytest swig verilog ]; checkPhase = '' - # test expected failures actually pass because of a fix in our icarus version - # https://github.com/cocotb/cocotb/issues/1952 - substituteInPlace tests/test_cases/test_discovery/test_discovery.py \ - --replace 'def access_single_bit' $'def foo(x): pass\ndef foo' - export PATH=$out/bin:$PATH make test ''; diff --git a/pkgs/development/python-modules/croniter/default.nix b/pkgs/development/python-modules/croniter/default.nix index 577fef8d79d9..a93f8e78ce6b 100644 --- a/pkgs/development/python-modules/croniter/default.nix +++ b/pkgs/development/python-modules/croniter/default.nix @@ -10,11 +10,11 @@ buildPythonPackage rec { pname = "croniter"; - version = "1.0.9"; + version = "1.0.13"; src = fetchPypi { inherit pname version; - sha256 = "708532f70584207e23ef2989ca40f367e6238bfe050133a1aff43e1e0e6f6092"; + sha256 = "sha256-V/Nt9PWhwxu/ULv/o1UWEsGfYVarHoji5CNCzLufm5o="; }; propagatedBuildInputs = [ @@ -28,6 +28,8 @@ buildPythonPackage rec { tzlocal ]; + pythonImportsCheck = [ "croniter" ]; + meta = with lib; { description = "croniter provides iteration for datetime object with cron like format"; homepage = "https://github.com/kiorky/croniter"; diff --git a/pkgs/development/python-modules/pur/default.nix b/pkgs/development/python-modules/pur/default.nix index 7d79be68b600..d2bc7d5824dc 100644 --- a/pkgs/development/python-modules/pur/default.nix +++ b/pkgs/development/python-modules/pur/default.nix @@ -7,13 +7,13 @@ buildPythonPackage rec { pname = "pur"; - version = "5.4.0"; + version = "5.4.1"; src = fetchFromGitHub { owner = "alanhamlett"; repo = "pip-update-requirements"; rev = version; - sha256 = "1p2g0kz9l0rb59b3rkclb6wwidc93kwqh2hm4xc22b1w9r946six"; + sha256 = "sha256-a2wViLJW+UXgHcURxr4irFVkH8STH84AVcwQIkvH+Fg="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/tensorflow/default.nix b/pkgs/development/python-modules/tensorflow/default.nix index 0216c05eeacf..522fd7301271 100644 --- a/pkgs/development/python-modules/tensorflow/default.nix +++ b/pkgs/development/python-modules/tensorflow/default.nix @@ -72,7 +72,7 @@ let tfFeature = x: if x then "1" else "0"; - version = "2.4.0"; + version = "2.4.1"; variant = if cudaSupport then "-gpu" else ""; pname = "tensorflow${variant}"; @@ -110,7 +110,7 @@ let owner = "tensorflow"; repo = "tensorflow"; rev = "v${version}"; - sha256 = "0yl06aypfxrcs35828xf04mkidz1x0j89v0q5h4d2xps1cb5rv3f"; + sha256 = "sha256-J62QfP45g5nxN9Nqa1tAGyc4vD2JKh50ddHLrd6/qsY="; }; patches = [ diff --git a/pkgs/tools/X11/caffeine-ng/default.nix b/pkgs/tools/X11/caffeine-ng/default.nix index 4f709ee9db08..8493d312eb47 100644 --- a/pkgs/tools/X11/caffeine-ng/default.nix +++ b/pkgs/tools/X11/caffeine-ng/default.nix @@ -43,6 +43,7 @@ python3Packages.buildPythonApplication rec { ''; meta = with lib; { + mainProgram = "caffeine"; maintainers = with maintainers; [ marzipankaiser ]; description = "Status bar application to temporarily inhibit screensaver and sleep mode"; homepage = "https://github.com/caffeine-ng/caffeine-ng"; diff --git a/pkgs/tools/misc/trash-cli/default.nix b/pkgs/tools/misc/trash-cli/default.nix index cc6d5f8c45bb..3a525ac94972 100644 --- a/pkgs/tools/misc/trash-cli/default.nix +++ b/pkgs/tools/misc/trash-cli/default.nix @@ -2,13 +2,13 @@ python3Packages.buildPythonApplication rec { pname = "trash-cli"; - version = "0.21.5.11"; + version = "0.21.5.22"; src = fetchFromGitHub { owner = "andreafrancia"; repo = "trash-cli"; rev = version; - sha256 = "0ifv717ywq2y0s6m9rkry1fnsr3mg9n2b2zcwaf9r5cxpw90bmym"; + sha256 = "0c1q13fyh9gi9gbxc55n772xlgjjr1ysnlxl41vifdcd4q8fhil8"; }; propagatedBuildInputs = [ python3Packages.psutil ]; diff --git a/pkgs/tools/security/bettercap/default.nix b/pkgs/tools/security/bettercap/default.nix index e50de9fcfcda..9d2adfd9a7d2 100644 --- a/pkgs/tools/security/bettercap/default.nix +++ b/pkgs/tools/security/bettercap/default.nix @@ -10,16 +10,16 @@ buildGoModule rec { pname = "bettercap"; - version = "2.31.0"; + version = "2.31.1"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "sha256-PmS4ox1ZaHrBGJAdNByott61rEvfmR1ZJ12ut0MGtrc="; + sha256 = "sha256-vZajnKjuIFoNnjxSsFkkpxyCR27VWqVN4lGf9SadmPU="; }; - vendorSha256 = "sha256-3j64Z4BQhAbUtoHJ6IT1SCsKxSeYZRxSO3K2Nx9Vv4w="; + vendorSha256 = "sha256-et6D+M+xJbxIiDP7JRRABZ8UqUCpt9ZVI5DP45tyTGM="; doCheck = false; diff --git a/pkgs/tools/system/gdu/default.nix b/pkgs/tools/system/gdu/default.nix index 6e8bdc60edb7..da629e3de35d 100644 --- a/pkgs/tools/system/gdu/default.nix +++ b/pkgs/tools/system/gdu/default.nix @@ -7,13 +7,13 @@ buildGoModule rec { pname = "gdu"; - version = "4.11.2"; + version = "5.0.0"; src = fetchFromGitHub { owner = "dundee"; repo = pname; rev = "v${version}"; - sha256 = "sha256-IrlyHYAcoRvF5CA0LMKHTb8aYSawvEcU7s+a03QYI1c="; + sha256 = "sha256-d1CErJ/vorfXgQCnSfPcM/6iIixPwFXndDqFv+mBhwY="; }; vendorSha256 = "sha256-QiO5p0x8kmIN6f0uYS0IR2MlWtRYTHeZpW6Nmupjias="; diff --git a/pkgs/tools/text/hottext/default.nix b/pkgs/tools/text/hottext/default.nix new file mode 100644 index 000000000000..6d361f50f35a --- /dev/null +++ b/pkgs/tools/text/hottext/default.nix @@ -0,0 +1,100 @@ +{ lib, stdenv, fetchurl, fetchFromGitHub, nim, gentium, SDL2, makeDesktopItem }: + +let + treeformLibs = lib.attrsets.mapAttrsToList (repo: args: + fetchFromGitHub ({ + inherit repo; + owner = "treeform"; + } // args)) { + bumpy = { + rev = "1.0.3"; + sha256 = "sha256-mDmDlhOGoYYjKgF5j808oT2NqRlfcOdLSDE3WtdJFQ0="; + }; + chroma = { + rev = "0.2.5"; + sha256 = "sha256-6lNHpO2aMorgkaPfo6kRcOs9r5R6T/kislVmkeoulw8="; + }; + flatty = { + rev = "0.2.1"; + sha256 = "sha256-TqNnRh2+i6n98ktLRVQxt9CVw17FGLNYq29rJoMus/0="; + }; + pixie = { + rev = "1.1.3"; + sha256 = "sha256-xKIejVxOd19mblL1ZwpJH91dgKQS5g8U08EL8lGGelA="; + }; + typography = { + rev = "0.7.9"; + sha256 = "sha256-IYjw3PCp5XzVed2fGGCt9Hb60cxFeF0BUZ7L5PedTLU="; + }; + vmath = { + rev = "1.0.3"; + sha256 = "sha256-zzSKXjuTZ46HTFUs0N47mxEKTKIdS3dwr+60sQYSdn0="; + }; + }; + + nimLibs = treeformLibs ++ [ + (fetchFromGitHub { + owner = "nim-lang"; + repo = "sdl2"; + rev = "v2.0.2"; + sha256 = "sha256-Ivx/gxDa2HVDjCVrJVu23i4d0pDzzv+ThmwqNjtkjsA="; + }) + (fetchFromGitHub { + owner = "guzba"; + repo = "nimsimd"; + rev = "1.0.0"; + sha256 = "sha256-kp61fylAJ6MSN9hLYLi7CU2lxVR/lbrNCvZTe0LJLGo="; + }) + (fetchFromGitHub { + owner = "guzba"; + repo = "zippy"; + rev = "0.5.6"; + sha256 = "sha256-axp4t9+8TFSpvnATlRKZyuOGLA0e/XKfvrVSwreXpC4="; + }) + ]; + +in stdenv.mkDerivation rec { + pname = "hottext"; + version = "1.3"; + + src = fetchurl { + url = "https://git.sr.ht/~ehmry/hottext/archive/v${version}.tar.gz"; + sha256 = "sha256-iz7Z2x0/yi/E6gGFkYgq/yZDOxrZGwQmumPoO9kckLQ="; + }; + + nativeBuildInputs = [ nim ]; + buildInputs = [ SDL2 ]; + + nimFlags = [ "-d:release" ] ++ map (lib: "--path:${lib}/src") nimLibs; + + HOTTEXT_FONT_PATH = "${gentium}/share/fonts/truetype/GentiumPlus-R.ttf"; + + buildPhase = '' + runHook preBuild + HOME=$TMPDIR + nim $nimFlags compile src/$pname + runHook postBuild + ''; + + desktopItem = makeDesktopItem { + categories = "Utility;"; + comment = meta.description; + desktopName = pname; + exec = pname; + name = pname; + }; + + installPhase = '' + runHook preInstall + install -Dt $out/bin src/$pname + cp -r $desktopItem/* $out + runHook postInstall + ''; + + meta = with lib; { + description = "Simple RSVP speed-reading utility"; + license = licenses.unlicense; + homepage = "https://git.sr.ht/~ehmry/hottext"; + maintainers = with maintainers; [ ehmry ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fbfc9fd3c190..23a90870c1a1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2758,6 +2758,8 @@ in hostsblock = callPackage ../tools/misc/hostsblock { }; + hottext = callPackage ../tools/text/hottext { }; + hopper = qt5.callPackage ../development/tools/analysis/hopper {}; hr = callPackage ../applications/misc/hr { }; diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index 6aa23a22713a..af47529f3640 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -322,10 +322,16 @@ lib.makeScope pkgs.newScope (self: with self; { configureFlags = [ "--with-gmp=${gmp.dev}" ]; } { name = "hash"; enable = lib.versionOlder php.version "7.4"; } { name = "iconv"; - configureFlags = if stdenv.isDarwin then - [ "--with-iconv=${libiconv}" ] - else - [ "--with-iconv" ]; + configureFlags = [ + "--with-iconv${lib.optionalString stdenv.isDarwin "=${libiconv}"}" + ]; + patches = lib.optionals (lib.versionOlder php.version "8.0") [ + # Header path defaults to FHS location, preventing the configure script from detecting errno support. + (fetchpatch { + url = "https://github.com/fossar/nix-phps/raw/263861a8c9bdafd7abe44db6db4ef0179643680c/pkgs/iconv-header-path.patch"; + sha256 = "7GHnEUu+hcsQ4h3itDwk6p46ZKfib9JZ2XpWlXrdn6E="; + }) + ]; doCheck = false; } { name = "imap"; buildInputs = [ uwimap openssl pam pcre' ]; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2661bef8ed57..44b336da316a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1481,6 +1481,8 @@ in { cocotb = callPackage ../development/python-modules/cocotb { }; + cocotb-bus = callPackage ../development/python-modules/cocotb-bus { }; + codecov = callPackage ../development/python-modules/codecov { }; codespell = callPackage ../development/python-modules/codespell { };