diff --git a/.github/ISSUE_TEMPLATE/05_package_request.yml b/.github/ISSUE_TEMPLATE/05_package_request.yml deleted file mode 100644 index b73360a91cb4..000000000000 --- a/.github/ISSUE_TEMPLATE/05_package_request.yml +++ /dev/null @@ -1,108 +0,0 @@ -name: "Request: new package" -description: "Create a package request for software that is not yet included in Nixpkgs." -title: "Package request: PACKAGENAME" -labels: ["0.kind: enhancement", "0.kind: packaging request", "9.needs: package (new)"] -body: - - type: "markdown" - attributes: - value: | -

- - - - - NixOS logo - - -

- - Welcome to Nixpkgs. Please replace the **`Package request: PACKAGENAME`** template above with the correct package name (As seen in the [NixOS Package Search](https://search.nixos.org/packages)). - - > [!TIP] - > For instance, if you were filing a request against the missing `hello` package, your title would be as follows: - > `Package request: hello` - - --- - - type: "textarea" - id: "description" - attributes: - label: "Describe the package" - description: "Please include a clear and concise description of what the package is." - validations: - required: true - - type: "input" - id: "homepage" - attributes: - label: "Upstream homepage" - description: "Please copy and paste a link to the package's homepage." - validations: - required: true - - type: "input" - id: "source" - attributes: - label: "Source URL" - description: "Please copy and paste a link to the package's source code or binary download page." - validations: - required: true - - type: "input" - id: "license" - attributes: - label: "License" - description: "Please indicate the package's license. If the package has no license, or the source code is not public, please indicate the package is `unfree`." - validations: - required: true - - type: "dropdown" - id: "platforms" - attributes: - label: "Platforms" - description: "Please indicate the platforms this package compiles for. `darwin` refers to macOS. `Exotic` refers to uncommon platforms like RISC-V or 32-bit ARM; please mention in the 'Additional Context' section below if this package is supposed to compile for such exotic platforms." - multiple: true - options: - - "x86_64-linux" - - "aarch64-linux" - - "x86_64-darwin" - - "aarch64-darwin" - - "Exotic" - - type: "textarea" - id: "additional-context" - attributes: - label: "Additional context" - description: "Add any other context about the proposed module here." - validations: - required: false - - type: "checkboxes" - id: "sanity-check" - attributes: - label: "I assert that this issue is relevant for Nixpkgs" - options: - - label: "I assert that this package does not yet exist in an [open pull request](https://github.com/NixOS/nixpkgs/pulls?q=is%3Aopen+is%3Apr+label%3A%228.has%3A+package+%28new%29%22) or in [Nixpkgs Unstable](https://search.nixos.org/packages?channel=unstable)." - required: true - - label: "I assert that this is not a [duplicate of any known issue](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+label%3A%220.kind%3A+packaging+request%22)." - required: true - - label: "I assert that I have read the [NixOS Code of Conduct](https://github.com/NixOS/.github/blob/master/CODE_OF_CONDUCT.md) and agree to abide by it." - required: true - - type: "markdown" - attributes: - value: | - # Thank you for helping improve Nixpkgs! - - --- - - type: "textarea" - id: "prioritisation" - attributes: - label: "For this package's maintainers:" - description: | - **Please do not modify this text area!** - - This template helps Nixpkgs developers know which issues should be prioritised by allowing users to vote with a :+1: reaction and also reminds them to tag this issue in their pull requests. - This is not a guarantee that highly-requested issues will be fixed first, but it helps us to figure out what's important to users. Please react on other users' issues if you find them important. - value: | - - Please tag this issue in your pull request description. (i.e. `Resolves #ISSUE`.) - - --- - - Add a :+1: [reaction] to [issues you find important]. - - [reaction]: https://github.blog/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/ - [issues you find important]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc diff --git a/.github/ISSUE_TEMPLATE/06_update_request.yml b/.github/ISSUE_TEMPLATE/05_update_request.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/06_update_request.yml rename to .github/ISSUE_TEMPLATE/05_update_request.yml diff --git a/.github/ISSUE_TEMPLATE/07_module_request.yml b/.github/ISSUE_TEMPLATE/06_module_request.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/07_module_request.yml rename to .github/ISSUE_TEMPLATE/06_module_request.yml diff --git a/.github/ISSUE_TEMPLATE/08_backport_request.yml b/.github/ISSUE_TEMPLATE/07_backport_request.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/08_backport_request.yml rename to .github/ISSUE_TEMPLATE/07_backport_request.yml diff --git a/.github/ISSUE_TEMPLATE/09_documentation_request.yml b/.github/ISSUE_TEMPLATE/08_documentation_request.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/09_documentation_request.yml rename to .github/ISSUE_TEMPLATE/08_documentation_request.yml diff --git a/.github/ISSUE_TEMPLATE/10_unreproducible_package.yml b/.github/ISSUE_TEMPLATE/09_unreproducible_package.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/10_unreproducible_package.yml rename to .github/ISSUE_TEMPLATE/09_unreproducible_package.yml diff --git a/pkgs/by-name/au/autobrr/package.nix b/pkgs/by-name/au/autobrr/package.nix index 13d5453eda32..89d456a0cc9e 100644 --- a/pkgs/by-name/au/autobrr/package.nix +++ b/pkgs/by-name/au/autobrr/package.nix @@ -13,12 +13,12 @@ let pname = "autobrr"; - version = "1.59.0"; + version = "1.60.0"; src = fetchFromGitHub { owner = "autobrr"; repo = "autobrr"; tag = "v${version}"; - hash = "sha256-etVhOgE8H8bWuraBepwDSZZzo9Xl819w2sT+UwpUVjM="; + hash = "sha256-HaNaVxOtlzquKvWmUzUELtv0ZQZ+C/G5ni9/QbOlAh4="; }; autobrr-web = stdenvNoCC.mkDerivation { diff --git a/pkgs/by-name/ge/geant4/package.nix b/pkgs/by-name/ge/geant4/package.nix index c2ce7289690b..13bc349112e6 100644 --- a/pkgs/by-name/ge/geant4/package.nix +++ b/pkgs/by-name/ge/geant4/package.nix @@ -38,12 +38,12 @@ let in stdenv.mkDerivation rec { - version = "11.3.0"; + version = "11.3.1"; pname = "geant4"; src = fetchurl { url = "https://cern.ch/geant4-data/releases/geant4-v${version}.tar.gz"; - hash = "sha256-HaQxiz+W+H9NR1WKMtqyabjz/JVnCAOMKOcqGAsO+6Y="; + hash = "sha256-yTyplvbzWqQ/lI/8q6lgNGjfAd7rYvYcM7p2kifDGf4="; }; # Fix broken paths in a .pc diff --git a/pkgs/by-name/pe/petsc/package.nix b/pkgs/by-name/pe/petsc/package.nix index d31359143af8..d394c69ce2c4 100644 --- a/pkgs/by-name/pe/petsc/package.nix +++ b/pkgs/by-name/pe/petsc/package.nix @@ -1,23 +1,24 @@ { lib, + newScope, stdenv, fetchzip, - gfortran, replaceVars, - python3, - python3Packages, - blas, - lapack, - zlib, # propagated by p4est but required by petsc + bash, + pkg-config, + gfortran, + bison, mpi, # generic mpi dependency mpiCheckPhaseHook, - bash, + python3, + python3Packages, # Build options - petsc-optimized ? true, - petsc-scalar-type ? "real", - petsc-precision ? "double", + debug ? false, + scalarType ? "real", + precision ? "double", mpiSupport ? true, + fortranSupport ? true, pythonSupport ? false, # petsc python binding withExamples ? false, withFullDeps ? false, # full External libraries support @@ -26,41 +27,88 @@ # External libraries options withHdf5 ? withCommonDeps, withMetis ? withCommonDeps, - withScalapack ? withFullDeps, + withZlib ? (withP4est || withPtscotch), + withScalapack ? withCommonDeps && mpiSupport, withParmetis ? withFullDeps, # parmetis is unfree - withPtscotch ? withFullDeps, - withMumps ? withFullDeps, + withPtscotch ? withCommonDeps && mpiSupport, + withMumps ? withCommonDeps, withP4est ? withFullDeps, + withHypre ? withCommonDeps && mpiSupport, + withFftw ? withCommonDeps, + withSuperLu ? withCommonDeps, + withSuitesparse ? withCommonDeps, # External libraries - hdf5-fortran-mpi, + blas, + lapack, + hdf5, metis, parmetis, scotch, scalapack, - mumps_par, - pkg-config, + mumps, p4est, + zlib, # propagated by p4est but required by petsc + hypre, + fftw, + superlu, + suitesparse, + + # Used in passthru.tests + petsc, }: assert withFullDeps -> withCommonDeps; # This version of PETSc does not support a non-MPI p4est build -assert withP4est -> (p4est.mpiSupport && mpiSupport); +assert withP4est -> (mpiSupport && withZlib); # Package parmetis depend on metis and mpi support assert withParmetis -> (withMetis && mpiSupport); -assert withPtscotch -> mpiSupport; +assert withPtscotch -> (mpiSupport && withZlib); assert withScalapack -> mpiSupport; -assert withMumps -> withScalapack; +assert (withMumps && mpiSupport) -> withScalapack; +assert withHypre -> mpiSupport; -stdenv.mkDerivation rec { +let + petscPackages = lib.makeScope newScope (self: { + inherit + # global override options + mpiSupport + fortranSupport + pythonSupport + precision + ; + enableMpi = self.mpiSupport; + + petscPackages = self; + # external libraries + mpi = self.callPackage mpi.override { }; + blas = self.callPackage blas.override { }; + lapack = self.callPackage lapack.override { }; + hdf5 = self.callPackage hdf5.override { + fortran = gfortran; + cppSupport = !mpiSupport; + }; + metis = self.callPackage metis.override { }; + parmetis = self.callPackage parmetis.override { }; + scotch = self.callPackage scotch.override { }; + scalapack = self.callPackage scalapack.override { }; + mumps = self.callPackage mumps.override { }; + p4est = self.callPackage p4est.override { }; + hypre = self.callPackage hypre.override { }; + fftw = self.callPackage fftw.override { }; + superlu = self.callPackage superlu.override { }; + suitesparse = self.callPackage suitesparse.override { }; + }); +in +stdenv.mkDerivation (finalAttrs: { pname = "petsc"; - version = "3.22.4"; + version = "3.23.0"; src = fetchzip { - url = "https://web.cels.anl.gov/projects/petsc/download/release-snapshots/petsc-${version}.tar.gz"; - hash = "sha256-8WV1ylXytkhiNa7YpWSOIpSvzLCCjdVVe5SiGfhicas="; + url = "https://web.cels.anl.gov/projects/petsc/download/release-snapshots/petsc-${finalAttrs.version}.tar.gz"; + hash = "sha256-OcI4iyDOR0YTVV+JoOhbfutoW00EmfapNaMnD/JJFsI="; }; strictDeps = true; @@ -70,6 +118,7 @@ stdenv.mkDerivation rec { python3 gfortran pkg-config + bison ] ++ lib.optional mpiSupport mpi ++ lib.optionals pythonSupport [ @@ -79,16 +128,21 @@ stdenv.mkDerivation rec { buildInputs = [ - blas - lapack + petscPackages.blas + petscPackages.lapack ] - ++ lib.optional withHdf5 hdf5-fortran-mpi - ++ lib.optional withP4est p4est - ++ lib.optional withMetis metis - ++ lib.optional withParmetis parmetis - ++ lib.optional withPtscotch scotch - ++ lib.optional withScalapack scalapack - ++ lib.optional withMumps mumps_par; + ++ lib.optional withZlib zlib + ++ lib.optional withHdf5 petscPackages.hdf5 + ++ lib.optional withP4est petscPackages.p4est + ++ lib.optional withMetis petscPackages.metis + ++ lib.optional withParmetis petscPackages.parmetis + ++ lib.optional withPtscotch petscPackages.scotch + ++ lib.optional withScalapack petscPackages.scalapack + ++ lib.optional withMumps petscPackages.mumps + ++ lib.optional withHypre petscPackages.hypre + ++ lib.optional withSuperLu petscPackages.superlu + ++ lib.optional withFftw petscPackages.fftw + ++ lib.optional withSuitesparse petscPackages.suitesparse; propagatedBuildInputs = lib.optional pythonSupport python3Packages.numpy; @@ -109,57 +163,39 @@ stdenv.mkDerivation rec { [ "--with-blas=1" "--with-lapack=1" - "--with-scalar-type=${petsc-scalar-type}" - "--with-precision=${petsc-precision}" + "--with-scalar-type=${scalarType}" + "--with-precision=${precision}" "--with-mpi=${if mpiSupport then "1" else "0"}" ] - ++ lib.optional pythonSupport "--with-petsc4py=1" ++ lib.optionals mpiSupport [ "--CC=mpicc" "--with-cxx=mpicxx" "--with-fc=mpif90" ] - ++ lib.optionals withMetis [ - "--with-metis=1" - "--with-metis-dir=${metis}" - ] - ++ lib.optionals withParmetis [ - "--with-parmetis=1" - "--with-parmetis-dir=${parmetis}" - ] - ++ lib.optionals withPtscotch [ - "--with-ptscotch=1" - "--with-ptscotch-include=${lib.getDev scotch}/include" - "--with-ptscotch-lib=[-L${lib.getLib scotch}/lib,-lptscotch,-lptesmumps,-lptscotchparmetisv3,-lptscotcherr,-lesmumps,-lscotch,-lscotcherr]" - ] - ++ lib.optionals withScalapack [ - "--with-scalapack=1" - "--with-scalapack-dir=${scalapack}" - ] - ++ lib.optionals withMumps [ - "--with-mumps=1" - "--with-mumps-dir=${mumps_par}" - ] - ++ lib.optionals withP4est [ - "--with-p4est=1" - "--with-zlib-include=${lib.getDev zlib}/include" - "--with-zlib-lib=[-L${lib.getLib zlib}/lib,-lz]" - ] - ++ lib.optionals withHdf5 [ - "--with-hdf5=1" - "--with-hdf5-fortran-bindings=1" - "--with-hdf5-include=${lib.getDev hdf5-fortran-mpi}/include" - "--with-hdf5-lib=[-L${lib.getLib hdf5-fortran-mpi}/lib,-lhdf5]" - ] - ++ lib.optionals petsc-optimized [ + ++ lib.optionals (!debug) [ "--with-debugging=0" "COPTFLAGS=-O3" "FOPTFLAGS=-O3" "CXXOPTFLAGS=-O3" "CXXFLAGS=-O3" - ]; + ] + ++ lib.optional (!fortranSupport) "--with-fortran-bindings=0" + ++ lib.optional pythonSupport "--with-petsc4py=1" + ++ lib.optional withMetis "--with-metis=1" + ++ lib.optional withParmetis "--with-parmetis=1" + ++ lib.optional withPtscotch "--with-ptscotch=1" + ++ lib.optional withScalapack "--with-scalapack=1" + ++ lib.optional withMumps "--with-mumps=1" + ++ lib.optional (withMumps && !mpiSupport) "--with-mumps-serial=1" + ++ lib.optional withP4est "--with-p4est=1" + ++ lib.optional withZlib "--with-zlib=1" + ++ lib.optional withHdf5 "--with-hdf5=1" + ++ lib.optional withHypre "--with-hypre=1" + ++ lib.optional withSuperLu "--with-superlu=1" + ++ lib.optional withFftw "--with-fftw=1" + ++ lib.optional withSuitesparse "--with-suitesparse=1"; - hardeningDisable = lib.optionals (!petsc-optimized) [ + hardeningDisable = lib.optionals debug [ "fortify" "fortify3" ]; @@ -198,19 +234,40 @@ stdenv.mkDerivation rec { pythonImportsCheck = [ "petsc4py" ]; passthru = { - inherit mpiSupport pythonSupport; + inherit + mpiSupport + pythonSupport + fortranSupport + ; + petscPackages = petscPackages.overrideScope ( + final: prev: { + petsc = finalAttrs.finalPackage; + } + ); + tests = + { + serial = petsc.override { + mpiSupport = false; + }; + } + // lib.optionalAttrs stdenv.hostPlatform.isLinux { + fullDeps = petsc.override { + withFullDeps = true; + withParmetis = false; + }; + }; }; setupHook = ./setup-hook.sh; - meta = with lib; { + meta = { description = "Portable Extensible Toolkit for Scientific computation"; homepage = "https://petsc.org/release/"; - license = licenses.bsd2; + license = lib.licenses.bsd2; platforms = lib.platforms.unix; - maintainers = with maintainers; [ + maintainers = with lib.maintainers; [ cburstedde qbisi ]; }; -} +}) diff --git a/pkgs/by-name/sl/slepc/package.nix b/pkgs/by-name/sl/slepc/package.nix index 371cd1d15805..42add99600f3 100644 --- a/pkgs/by-name/sl/slepc/package.nix +++ b/pkgs/by-name/sl/slepc/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitLab, - sowing, python3, python3Packages, arpack-mpi, @@ -17,13 +16,13 @@ assert petsc.mpiSupport; assert pythonSupport -> petsc.pythonSupport; stdenv.mkDerivation (finalAttrs: { pname = "slepc"; - version = "3.22.2"; + version = "3.23.0"; src = fetchFromGitLab { owner = "slepc"; repo = "slepc"; tag = "v${finalAttrs.version}"; - hash = "sha256-a5DmsA7NAlhrEaS43TYPk7vtDfhXLEP+5sftu2A9Yt4="; + hash = "sha256-Z9CVZQ/Ezb1S2EkTb9amAPxaN4tiUnKrbvQIc3BnVuU="; }; postPatch = '' @@ -33,11 +32,6 @@ stdenv.mkDerivation (finalAttrs: { "slepc.prefixdir,'${python3.sitePackages}'" patchShebangs lib/slepc/bin - - # Use system bfort - substituteInPlace config/packages/sowing.py \ - --replace-fail "bfort = os.path.join(archdir,'bin','bfort')" \ - "bfort = '${sowing}/bin/bfort'" ''; # Usually this project is being built as part of a `petsc` build or as part of diff --git a/pkgs/development/python-modules/msmart-ng/default.nix b/pkgs/development/python-modules/msmart-ng/default.nix index 0f01c755834f..8d1983474e18 100644 --- a/pkgs/development/python-modules/msmart-ng/default.nix +++ b/pkgs/development/python-modules/msmart-ng/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + fetchpatch2, # build-system setuptools, @@ -17,16 +18,27 @@ buildPythonPackage rec { pname = "msmart-ng"; - version = "2025.3.1"; + version = "2025.3.3"; pyproject = true; src = fetchFromGitHub { owner = "mill1000"; repo = "midea-msmart"; tag = version; - hash = "sha256-hTYqRJn/ixseHHezfTOG0UzdQmnpn4hACijYOMtwtT8="; + hash = "sha256-M8Gl6QXj0tRN7VFDhop47vINk8MeWSyCJ9bboo3j8Go="; }; + patches = [ + (fetchpatch2 { + # Revert until setuptools + # implements support for . + name = "revert-pyproject-license-declaration-pep639-syntax.patch"; + url = "https://github.com/mill1000/midea-msmart/commit/e5d6a982135e497c251095e421d3de4686f36056.patch?full_index=1"; + hash = "sha256-+mxmFGZd04MZY2C5eo4k1lFoXsM8XyeJNazShnjAseE="; + revert = true; + }) + ]; + build-system = [ setuptools setuptools-scm diff --git a/pkgs/servers/home-assistant/custom-components/midea_ac/package.nix b/pkgs/servers/home-assistant/custom-components/midea_ac/package.nix index 8588b6045e72..9befc39ade5e 100644 --- a/pkgs/servers/home-assistant/custom-components/midea_ac/package.nix +++ b/pkgs/servers/home-assistant/custom-components/midea_ac/package.nix @@ -8,13 +8,13 @@ buildHomeAssistantComponent rec { owner = "mill1000"; domain = "midea_ac"; - version = "2025.3.0"; + version = "2025.3.1"; src = fetchFromGitHub { owner = "mill1000"; repo = "midea-ac-py"; tag = version; - hash = "sha256-UJS9z+t+Tb/w7yRHKXJ6HoQ4uS1guM8PYl0OcLz4EJM="; + hash = "sha256-oO+t0my72PwWWUAzr8blA3Q8uJyICZNcfoOHsLFL3MQ="; }; dependencies = [ msmart-ng ];