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: |
-
-
-
-
-
-
-
-
-
-
- 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 ];