Merge staging-next into staging

This commit is contained in:
Emily 2025-04-23 17:26:19 +01:00
commit 35937cd7d0
84 changed files with 961 additions and 953 deletions

View file

@ -42,7 +42,7 @@ shows the status of tests for the `nixpkgs-unstable` channel.
The tests are conducted by a cluster called [Hydra](https://nixos.org/hydra/),
which also builds binary packages from the Nix expressions in Nixpkgs for
`x86_64-linux`, `i686-linux` and `x86_64-darwin`.
`x86_64-linux`, `aarch64-linux`, `x86_64-darwin` and `aarch64-darwin`.
The binaries are made available via a [binary cache](https://cache.nixos.org).
The current Nix expressions of the channels are available in the

View file

@ -196,6 +196,8 @@
- `nodejs_latest` was updated from 23.x to 24.x. `nodejs_23` has been removed in favor of `nodejs_24`.
- `nodejs_18` package was removed due to upstream End-of-Life in April 2025.
- `nodePackages."@commitlint/config-conventional"` has been removed, as it is a library, and projects should depend on it instead.
- zigbee2mqtt is now available in version 2.x as `zigbee2mqtt_2`. In NixOS 25.11 we'll remove `zigbee2mqtt_1` and default to `zigbee2mqtt_2`. See the [breaking changes](https://github.com/Koenkk/zigbee2mqtt/discussions/24198) announcement for 2.0.0.

View file

@ -301,9 +301,9 @@ rec {
Nix has an [attribute selection operator](https://nixos.org/manual/nix/stable/language/operators#attribute-selection) which is sufficient for such queries, as long as the number of attributes is static. For example:
```nix
x.a.b == getAttrByPath ["a" "b"] x
x.a.b == getAttrFromPath ["a" "b"] x
# and
x.${f p}."example.com" == getAttrByPath [ (f p) "example.com" ] x
x.${f p}."example.com" == getAttrFromPath [ (f p) "example.com" ] x
```
# Inputs

View file

@ -279,6 +279,7 @@ let
naturalSort
compareLists
take
takeEnd
drop
dropEnd
sublist

View file

@ -1462,6 +1462,40 @@ rec {
*/
take = count: sublist 0 count;
/**
Return the last (at most) N elements of a list.
# Inputs
`count`
: Maximum number of elements to pick
`list`
: Input list
# Type
```
takeEnd :: int -> [a] -> [a]
```
# Examples
:::{.example}
## `lib.lists.takeEnd` usage example
```nix
takeEnd 2 [ "a" "b" "c" "d" ]
=> [ "c" "d" ]
takeEnd 2 [ ]
=> [ ]
```
:::
*/
takeEnd = n: xs: drop (max 0 (length xs - n)) xs;
/**
Remove the first (at most) N elements of a list.

View file

@ -1357,6 +1357,69 @@ runTests {
)
];
testTakeEnd =
let
inherit (lib) takeEnd;
in
testAllTrue [
(
takeEnd 0 [
1
2
3
] == [ ]
)
(
takeEnd 1 [
1
2
3
] == [ 3 ]
)
(
takeEnd 2 [
1
2
3
] == [
2
3
]
)
(
takeEnd 3 [
1
2
3
] == [
1
2
3
]
)
(
takeEnd 4 [
1
2
3
] == [
1
2
3
]
)
(takeEnd 0 [ ] == [ ])
(takeEnd 1 [ ] == [ ])
(
takeEnd (-1) [
1
2
3
] == [ ]
)
(takeEnd (-1) [ ] == [ ])
];
testDrop =
let
inherit (lib) drop;

View file

@ -2,15 +2,30 @@
Nixpkgs contains a variety of modules to build custom images for different virtualization platforms and cloud providers, such as e.g. `amazon-image.nix` and `proxmox-lxc.nix`.
While those can be imported individually, `system.build.images` provides an attribute set mapping variant names to image derivations. Available variants are defined - end extendable - in `image.modules`, an attribute set mapping variant names to a list of NixOS modules.
While those can be imported directly, `system.build.images` provides an attribute set mapping variant names to image derivations. Available variants are defined - end extendable - in `image.modules`, an attribute set mapping variant names to NixOS modules.
All of those images can be built via both, their `system.build.image` attribute, and the CLI `nixos-rebuild build-image`. To build i.e. an Amazon image from your existing NixOS configuration:
All of those images can be built via both, their `system.build.image` attribute and the `nixos-rebuild build-image` command.
For example, to build an Amazon image from your existing NixOS configuration, run:
```ShellSession
$ nixos-rebuild build-image --image-variant amazon
$ ls result
nixos-image-amazon-25.05pre-git-x86_64-linux.vhd nix-support
[...]
Done. The disk image can be found in /nix/store/[hash]-nixos-image-amazon-25.05pre-git-x86_64-linux/nixos-image-amazon-25.05pre-git-x86_64-linux.vpc
```
To get a list of all variants available, run `nixos-rebuild build-image` without arguments.
::: {.example #ex-nixos-rebuild-build-image-customize}
## Customize specific image variants {#sec-image-nixos-rebuild-build-image-customize}
The `image.modules` option can be used to set specific options per image variant, in a similar fashion as [specialisations](options.html#opt-specialisation) for generic NixOS configurations.
E.g. images for the cloud provider Linode use `grub2` as a bootloader by default. If you are using `systemd-boot` on other platforms and want to disable it for Linode only, you could use the following options:
``` nix
image.modules.linode = {
boot.loader.systemd-boot.enable = lib.mkForce false;
};
```

View file

@ -161,6 +161,9 @@
"ex-config": [
"index.html#ex-config"
],
"ex-nixos-rebuild-build-image-customize": [
"index.html#ex-nixos-rebuild-build-image-customize"
],
"sec-installation-additional-notes": [
"index.html#sec-installation-additional-notes"
],
@ -215,6 +218,9 @@
"sec-image-nixos-rebuild-build-image": [
"index.html#sec-image-nixos-rebuild-build-image"
],
"sec-image-nixos-rebuild-build-image-customize": [
"index.html#sec-image-nixos-rebuild-build-image-customize"
],
"sec-image-repart": [
"index.html#sec-image-repart"
],

View file

@ -536,8 +536,7 @@
./services/desktops/deepin/dde-api.nix
./services/desktops/deepin/app-services.nix
./services/desktops/deepin/dde-daemon.nix
./services/desktops/dleyna-renderer.nix
./services/desktops/dleyna-server.nix
./services/desktops/dleyna.nix
./services/desktops/espanso.nix
./services/desktops/flatpak.nix
./services/desktops/geoclue2.nix

View file

@ -1,29 +0,0 @@
# dleyna-renderer service.
{
config,
lib,
pkgs,
...
}:
{
###### interface
options = {
services.dleyna-renderer = {
enable = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Whether to enable dleyna-renderer service, a DBus service
for handling DLNA renderers.
'';
};
};
};
###### implementation
config = lib.mkIf config.services.dleyna-renderer.enable {
environment.systemPackages = [ pkgs.dleyna-renderer ];
services.dbus.packages = [ pkgs.dleyna-renderer ];
};
}

View file

@ -1,29 +0,0 @@
# dleyna-server service.
{
config,
lib,
pkgs,
...
}:
{
###### interface
options = {
services.dleyna-server = {
enable = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Whether to enable dleyna-server service, a DBus service
for handling DLNA servers.
'';
};
};
};
###### implementation
config = lib.mkIf config.services.dleyna-server.enable {
environment.systemPackages = [ pkgs.dleyna-server ];
services.dbus.packages = [ pkgs.dleyna-server ];
};
}

View file

@ -0,0 +1,33 @@
{
config,
lib,
pkgs,
...
}:
{
imports = [
(lib.mkRenamedOptionModule [ "services" "dleyna-server" ] [ "services" "dleyna" ])
(lib.mkRenamedOptionModule [ "services" "dleyna-renderer" ] [ "services" "dleyna" ])
];
###### interface
options = {
services.dleyna = {
enable = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Whether to enable dleyna-renderer and dleyna-server service,
a DBus service for handling DLNA servers and renderers.
'';
};
};
};
###### implementation
config = lib.mkIf config.services.dleyna.enable {
environment.systemPackages = [ pkgs.dleyna ];
services.dbus.packages = [ pkgs.dleyna ];
};
}

View file

@ -73,7 +73,8 @@ in
serviceConfig = {
Type = "notify";
ExecStart = "${pkgs.runtimeShell} -c 'source ${config.system.build.setEnvironment}; exec ${cfg.package}/bin/emacs --fg-daemon'";
ExecStop = "${cfg.package}/bin/emacsclient --eval (kill-emacs)";
# Emacs exits with exit code 15 (SIGTERM), when stopped by systemd.
SuccessExitStatus = 15;
Restart = "always";
};

View file

@ -509,9 +509,27 @@ in
upstreams.dependency-track.servers."localhost:${toString cfg.port}" = { };
virtualHosts.${cfg.nginx.domain} = {
locations = {
"/".alias = "${cfg.package.frontend}/dist/";
"/" = {
alias = "${cfg.package.frontend}/dist/";
index = "index.html";
tryFiles = "$uri $uri/ /index.html";
extraConfig = ''
location ~ (index\.html)$ {
add_header Cache-Control "max-age=0, no-cache, no-store, must-revalidate";
add_header Pragma "no-cache";
add_header Expires 0;
}
'';
};
"/api".proxyPass = "http://dependency-track";
"= /static/config.json".alias = frontendConfigFile;
"= /static/config.json" = {
alias = frontendConfigFile;
extraConfig = ''
add_header Cache-Control "max-age=0, no-cache, no-store, must-revalidate";
add_header Pragma "no-cache";
add_header Expires 0;
'';
};
};
};
};

View file

@ -245,8 +245,7 @@ in
services.system-config-printer.enable = config.services.printing.enable;
# For BCC's Sharing panel.
services.dleyna-renderer.enable = mkDefault true;
services.dleyna-server.enable = mkDefault true;
services.dleyna.enable = mkDefault true;
services.gnome.gnome-user-share.enable = mkDefault true;
services.gnome.rygel.enable = mkDefault true;

View file

@ -282,8 +282,7 @@ in
programs.dconf.enable = true;
security.polkit.enable = true;
services.accounts-daemon.enable = true;
services.dleyna-renderer.enable = mkDefault true;
services.dleyna-server.enable = mkDefault true;
services.dleyna.enable = mkDefault true;
services.power-profiles-daemon.enable = mkDefault true;
services.gnome.at-spi2-core.enable = true;
services.gnome.evolution-data-server.enable = true;

View file

@ -45,22 +45,27 @@ import ./make-test-python.nix (
};
};
testScript = ''
import json
testScript =
# python
''
import json
start_all()
start_all()
server.wait_for_unit("dependency-track.service")
server.wait_until_succeeds(
"journalctl -o cat -u dependency-track.service | grep 'Dependency-Track is ready'"
)
server.wait_for_open_port(${toString dependencyTrackPort})
with subtest("version api returns correct version"):
version = json.loads(
server.succeed("curl http://localhost/api/version")
server.wait_for_unit("dependency-track.service")
server.wait_until_succeeds(
"journalctl -o cat -u dependency-track.service | grep 'Dependency-Track is ready'"
)
assert version["version"] == "${pkgs.dependency-track.version}"
'';
server.wait_for_open_port(${toString dependencyTrackPort})
with subtest("version api returns correct version"):
version = json.loads(
server.succeed("curl http://localhost/api/version")
)
assert version["version"] == "${pkgs.dependency-track.version}"
with subtest("nginx serves frontend"):
server.succeed("curl http://localhost/ | grep \"<title>Dependency-Track</title>\"")
'';
}
)

View file

@ -22,6 +22,7 @@ import ./make-test-python.nix (
];
services.netdata = {
enable = true;
package = pkgs.netdataCloud;
python.recommendedPythonPackages = true;
configDir."apps_groups.conf" = pkgs.writeText "apps_groups.conf" ''
@ -32,35 +33,25 @@ import ./make-test-python.nix (
};
testScript = ''
start_all()
start_all()
netdata.wait_for_unit("netdata.service")
netdata.wait_for_unit("netdata.service")
# wait for the service to listen before sending a request
netdata.wait_for_open_port(19999)
# wait for the service to listen before sending a request
netdata.wait_for_open_port(19999)
# check if the netdata main page loads.
netdata.succeed("curl --fail http://localhost:19999/")
netdata.succeed("curl --fail http://127.0.0.1:19999")
netdata.succeed("sleep 4")
# check if netdata can read disk ops for root owned processes.
# if > 0, successful. verifies both netdata working and
# apps.plugin has elevated capabilities.
url = "http://localhost:19999/api/v1/data?chart=user.root_disk_physical_io"
filter = '[.data[range(10)][2]] | add | . < 0'
# check if netdata api shows correct os
url = "http://127.0.0.1:19999/api/v3/info"
filter = '.agents[0].application.os.os | . == "NixOS"'
cmd = f"curl -s {url} | jq -e '{filter}'"
netdata.wait_until_succeeds(cmd)
# check if the control socket is available
netdata.succeed("sudo netdatacli ping")
# check that custom groups in apps_groups.conf are used.
# if > 0, successful. verifies that user-specified apps_group.conf
# is used.
url = "http://localhost:19999/api/v1/data?chart=app.netdata_test_cpu_utilization"
filter = '[.data[range(10)][2]] | add | . > 0'
cmd = f"curl -s {url} | jq -e '{filter}'"
netdata.wait_until_succeeds(cmd, timeout=30)
'';
}
)

View file

@ -27,7 +27,6 @@
SDL2,
SDL2_mixer,
wayland-protocols,
CoreServices,
callPackage,
nixosTests,
@ -44,6 +43,15 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-8rGnW+VtqNJYqUqQDp0yOVIQd7w+cq7PIpqqIQPhkbE=";
};
prePatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
# Disable code signing on macOS
substituteInPlace cmake/macros.cmake --replace-fail "codesign" "true"
substituteInPlace cmake/system/apple.cmake --replace-fail "if(APPLE)" "if(false)"
# calls otool -L on /usr/lib/libSystem.B.dylib and fails because it doesn't exist
substituteInPlace cmake/applebundle.cmake --replace-fail 'fixup_bundle("''${TARGET_BUNDLE_DIR}" "" "")' ""
'';
nativeBuildInputs = [
cmake
pkg-config
@ -73,8 +81,6 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optional stdenv.hostPlatform.isLinux wayland-protocols
++ lib.optional (!stdenv.hostPlatform.isDarwin) opencl-headers;
cmakeFlags = lib.optional stdenv.hostPlatform.isDarwin "-DCORESERVICES_LIB=${CoreServices}";
# error: "The plain signature for target_link_libraries has already been used"
doCheck = false;
@ -82,17 +88,27 @@ stdenv.mkDerivation (finalAttrs: {
gtest
];
# Set the data directory for each executable. We cannot set it at build time
# with the PKGDATADIR cmake variable because each executable needs a specific
# one.
# This is not needed on darwin, since on that platform data files are saved
# in *.app/Contents/Resources/ too, and are picked up automatically.
postInstall = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
for prog in $out/bin/*; do
wrapProgram "$prog" \
--set CORE_PATH $out/share/$(basename "$prog")/
done
'';
postInstall =
if stdenv.hostPlatform.isDarwin then
''
mkdir -p $out/Applications
mv $out/*.app $out/Applications/
mkdir -p $out/bin
ln -s $out/Applications/vengi-voxconvert.app/Contents/MacOS/vengi-voxconvert $out/bin/vengi-voxconvert
''
else
# Set the data directory for each executable. We cannot set it at build time
# with the PKGDATADIR cmake variable because each executable needs a specific
# one.
# This is not needed on darwin, since on that platform data files are saved
# in *.app/Contents/Resources/ too, and are picked up automatically.
''
for prog in $out/bin/*; do
wrapProgram "$prog" \
--set CORE_PATH $out/share/$(basename "$prog")/
done
'';
passthru.tests = {
voxconvert-roundtrip = callPackage ./test-voxconvert-roundtrip.nix { };
@ -117,6 +133,5 @@ stdenv.mkDerivation (finalAttrs: {
];
maintainers = with maintainers; [ fgaz ];
platforms = platforms.all;
broken = stdenv.hostPlatform.isDarwin;
};
})

View file

@ -1,39 +1,45 @@
{
fetchurl,
fetchFromGitHub,
lib,
stdenv,
gtk,
pkg-config,
libgsf,
libofx,
autoreconfHook,
intltool,
wrapGAppsHook3,
libsoup_2_4,
adwaita-icon-theme,
nix-update-script,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "grisbi";
version = "2.0.5";
version = "3.0.4";
src = fetchurl {
url = "mirror://sourceforge/grisbi/${pname}-${version}.tar.bz2";
sha256 = "sha256-vTrbq/xLTfwF7/YtKzZFiiSw8A0HzzWin2ry8gPHej8=";
src = fetchFromGitHub {
owner = "grisbi";
repo = "grisbi";
tag = "upstream_version_${lib.replaceStrings [ "." ] [ "_" ] finalAttrs.version}";
hash = "sha256-3E57M/XE4xyo3ppVceDA4OFDnVicosCY8ikE2gDJoUQ=";
};
nativeBuildInputs = [
pkg-config
wrapGAppsHook3
intltool
autoreconfHook
];
buildInputs = [
gtk
libgsf
libofx
libsoup_2_4
adwaita-icon-theme
];
passthru.updateScript = nix-update-script { };
meta = with lib; {
description = "Personnal accounting application";
mainProgram = "grisbi";
@ -50,4 +56,4 @@ stdenv.mkDerivation rec {
maintainers = with maintainers; [ layus ];
platforms = platforms.linux;
};
}
})

View file

@ -1,53 +0,0 @@
{
stdenv,
lib,
meson,
ninja,
pkg-config,
fetchFromGitHub,
fetchpatch,
dleyna-core,
glib,
}:
stdenv.mkDerivation rec {
pname = "dleyna-connector-dbus";
version = "0.4.1";
src = fetchFromGitHub {
owner = "phako";
repo = "dleyna-connector-dbus";
rev = "v${version}";
sha256 = "WDmymia9MD3BRU6BOCzCIMrz9V0ACRzmEGqjbbuUmlA=";
};
patches = [
# Fix build with meson 1.2. We use the gentoo patch instead of the
# usptream one because the latter only applies on the libsoup_3 based
# merged dLeyna project.
# https://gitlab.gnome.org/World/dLeyna/-/merge_requests/6
(fetchpatch {
url = "https://github.com/gentoo/gentoo/raw/4a0982b49a1d94aa785b05d9b7d256c26c499910/net-libs/dleyna-connector-dbus/files/meson-1.2.0.patch";
sha256 = "sha256-/p2OaPO5ghWtPotwIir2TtcFF5IDFN9FFuyqPHevuFI=";
})
];
nativeBuildInputs = [
meson
ninja
pkg-config
];
buildInputs = [
dleyna-core
glib
];
meta = with lib; {
description = "D-Bus API for the dLeyna services";
homepage = "https://github.com/phako/dleyna-connector-dbus";
maintainers = with maintainers; [ jtojnar ];
platforms = platforms.unix;
license = licenses.lgpl21Only;
};
}

View file

@ -1,53 +0,0 @@
{
stdenv,
lib,
fetchFromGitHub,
meson,
ninja,
pkg-config,
gupnp,
}:
stdenv.mkDerivation rec {
pname = "dleyna-core";
version = "0.7.0";
outputs = [
"out"
"dev"
];
setupHook = ./setup-hook.sh;
src = fetchFromGitHub {
owner = "phako";
repo = "dleyna-core";
rev = "v${version}";
sha256 = "i4L9+iyAdBNtgImbD54jkjYL5hvzeZ2OaAyFrcFmuG0=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
];
propagatedBuildInputs = [
gupnp
];
env.NIX_CFLAGS_COMPILE = toString (
lib.optionals stdenv.cc.isClang [
"-Wno-error=implicit-function-declaration"
"-Wno-error=int-conversion"
]
);
meta = with lib; {
description = "Library of utility functions that are used by the higher level dLeyna";
homepage = "https://github.com/phako/dleyna-core";
maintainers = with maintainers; [ jtojnar ];
platforms = platforms.unix;
license = licenses.lgpl21Only;
};
}

View file

@ -1,8 +0,0 @@
addDleynaConnectorPath () {
if test -d "$1/lib/dleyna-1.0/connectors"
then
export DLEYNA_CONNECTOR_PATH="${DLEYNA_CONNECTOR_PATH-}${DLEYNA_CONNECTOR_PATH:+:}$1/lib/dleyna-1.0/connectors"
fi
}
addEnvHooks "$targetOffset" addDleynaConnectorPath

View file

@ -1,76 +0,0 @@
{
stdenv,
lib,
fetchFromGitHub,
fetchpatch,
meson,
ninja,
pkg-config,
dleyna-connector-dbus,
dleyna-core,
gssdp,
gupnp,
gupnp-av,
gupnp-dlna,
libsoup_2_4,
makeWrapper,
docbook-xsl-nons,
libxslt,
}:
stdenv.mkDerivation rec {
pname = "dleyna-renderer";
version = "0.7.2";
src = fetchFromGitHub {
owner = "phako";
repo = "dleyna-renderer";
rev = "v${version}";
sha256 = "sha256-bGasT3XCa7QHV3D7z59TSHoqWksNSIgaO0z9zYfHHuw=";
};
patches = [
# Fix build with meson 1.2. We use the gentoo patch instead of the
# usptream one because the latter only applies on the libsoup_3 based
# merged dLeyna project.
# https://gitlab.gnome.org/World/dLeyna/-/merge_requests/6
(fetchpatch {
url = "https://github.com/gentoo/gentoo/raw/2ebe20ff4cda180cc248d31a021107d08ecf39d9/net-libs/dleyna-renderer/files/meson-1.2.0.patch";
sha256 = "sha256-/p2OaPO5ghWtPotwIir2TtcFF5IDFN9FFuyqPHevuFI=";
})
];
nativeBuildInputs = [
meson
ninja
pkg-config
makeWrapper
# manpage
docbook-xsl-nons
libxslt # for xsltproc
];
buildInputs = [
dleyna-core
dleyna-connector-dbus # runtime dependency to be picked up to DLEYNA_CONNECTOR_PATH
gssdp
gupnp
gupnp-av
gupnp-dlna
libsoup_2_4
];
preFixup = ''
wrapProgram "$out/libexec/dleyna-renderer-service" \
--set DLEYNA_CONNECTOR_PATH "$DLEYNA_CONNECTOR_PATH"
'';
meta = with lib; {
description = "Library to discover and manipulate Digital Media Renderers";
homepage = "https://github.com/phako/dleyna-renderer";
maintainers = with maintainers; [ jtojnar ];
platforms = platforms.unix;
license = licenses.lgpl21Only;
};
}

View file

@ -1,70 +0,0 @@
{
stdenv,
lib,
fetchFromGitHub,
fetchpatch,
meson,
ninja,
makeWrapper,
pkg-config,
dleyna-core,
dleyna-connector-dbus,
gssdp,
gupnp,
gupnp-av,
gupnp-dlna,
libsoup_2_4,
}:
stdenv.mkDerivation rec {
pname = "dleyna-server";
version = "0.7.2";
src = fetchFromGitHub {
owner = "phako";
repo = pname;
rev = "v${version}";
sha256 = "sha256-jlF9Lr/NG+Fsy/bB7aLb7xOLqel8GueJK5luo9rsDME=";
};
patches = [
# Fix build with meson 1.2. We use the gentoo patch instead of the
# usptream one because the latter only applies on the libsoup_3 based
# merged dLeyna project.
# https://gitlab.gnome.org/World/dLeyna/-/merge_requests/6
(fetchpatch {
url = "https://github.com/gentoo/gentoo/raw/2e3a1f4f7a1ef0c3e387389142785d98b5834e60/net-misc/dleyna-server/files/meson-1.2.0.patch";
sha256 = "sha256-/p2OaPO5ghWtPotwIir2TtcFF5IDFN9FFuyqPHevuFI=";
})
];
nativeBuildInputs = [
meson
ninja
pkg-config
makeWrapper
];
buildInputs = [
dleyna-core
dleyna-connector-dbus # runtime dependency to be picked up to DLEYNA_CONNECTOR_PATH
gssdp
gupnp
gupnp-av
gupnp-dlna
libsoup_2_4
];
preFixup = ''
wrapProgram "$out/libexec/dleyna-server-service" \
--set DLEYNA_CONNECTOR_PATH "$DLEYNA_CONNECTOR_PATH"
'';
meta = with lib; {
description = "Library to discover, browse and manipulate Digital Media Servers";
homepage = "https://github.com/phako/dleyna-server";
maintainers = with maintainers; [ jtojnar ];
platforms = platforms.unix;
license = licenses.lgpl21Only;
};
}

View file

@ -0,0 +1,57 @@
{
stdenv,
lib,
docutils,
fetchFromGitLab,
meson,
ninja,
pkg-config,
gupnp_1_6,
gupnp-av,
gupnp-dlna,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "dleyna";
version = "0.8.3";
outputs = [
"out"
"dev"
];
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "World";
repo = "dLeyna";
tag = "v${finalAttrs.version}";
hash = "sha256-ti4yF8sALpWyrdQTt/jVrMKQ4PLhakEi620fJNMxT0c=";
};
nativeBuildInputs = [
meson
ninja
docutils
pkg-config
];
buildInputs = [
gupnp_1_6
gupnp-dlna
gupnp-av
gupnp-dlna
];
mesonFlags = [
# Sphinx docs not installed, do not depend on sphinx
"-Ddocs=false"
];
meta = {
description = "Library of utility functions that are used by the higher level dLeyna";
homepage = "https://gitlab.gnome.org/World/dLeyna";
maintainers = with lib.maintainers; [ jtojnar ];
platforms = lib.platforms.unix;
license = lib.licenses.lgpl21Only;
};
})

View file

@ -38,5 +38,6 @@ rustPlatform.buildRustPackage rec {
koral
];
mainProgram = "dysk";
platforms = platforms.linux;
};
}

View file

@ -10,18 +10,22 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "equicord";
version = "1.11.4";
# Upstream discourages inferring the package version from the package.json found in
# the Equicord repository. Dates as tags (and automatic releases) were the compromise
# we came to with upstream. Please do not change the version schema (e.g., to semver)
# unless upstream changes the tag schema from dates.
version = "2025-04-17";
src = fetchFromGitHub {
owner = "Equicord";
repo = "Equicord";
tag = "v${finalAttrs.version}";
hash = "sha256-BjAp+bubpG9tTo8y5LWcTCnpLbiyuY1Q6ZnprgeKoZg=";
tag = "${finalAttrs.version}";
hash = "sha256-pAuNqPrQBeL2qPIoIvyBl1PrUBz81TrBd5RT15Iuuus=";
};
pnpmDeps = pnpm_9.fetchDeps {
inherit (finalAttrs) pname version src;
hash = "sha256-4uCo/pQ4f8k/7DNpCPDAeqfroZ9icFiTwapwS10uWkE=";
hash = "sha256-fjfzBy1Z7AUKA53yjjCQ6yasHc5QMaOBtXtXA5fNK5s=";
};
nativeBuildInputs = [
@ -52,7 +56,12 @@ stdenv.mkDerivation (finalAttrs: {
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
passthru.updateScript = nix-update-script {
extraArgs = [
"--version-regex"
"^\d{4}-\d{2}-\d{2}$"
];
};
meta = {
description = "The other cutest Discord client mod";

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "exploitdb";
version = "2025-04-19";
version = "2025-04-23";
src = fetchFromGitLab {
owner = "exploit-database";
repo = "exploitdb";
rev = "refs/tags/${version}";
hash = "sha256-Gq+Yg9Qf1D86vM0d+FFPneztm0KMdbheghmef334+Ps=";
hash = "sha256-K5WQhYVO3z6gR2Jl5yJJW8vK8BA89iAwPzhq4jX27y0=";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -7,18 +7,19 @@
xcbuild,
nix-update-script,
}:
buildNpmPackage rec {
pname = "firebase-tools";
version = "14.1.0";
version = "14.2.0";
src = fetchFromGitHub {
owner = "firebase";
repo = "firebase-tools";
tag = "v${version}";
hash = "sha256-7yxDBK3A2Yosp/83JmFpV3cm+YEDxHMLVj5B+rwSIR8=";
hash = "sha256-ga0UsU/VTDIoz88XxdQIGX+md1G21DgctYYmXPr3zbQ=";
};
npmDepsHash = "sha256-r6vonG5edL/nTtyj8uXc/4w2xgihRce/Md+umxomTzo=";
npmDepsHash = "sha256-XiOLtZCm3qxd2Oq3vqMzxU64y37ZZfhivvkxT6m7ES4=";
postPatch = ''
ln -s npm-shrinkwrap.json package-lock.json
@ -32,9 +33,7 @@ buildNpmPackage rec {
xcbuild
];
env = {
PUPPETEER_SKIP_DOWNLOAD = true;
};
env.PUPPETEER_SKIP_DOWNLOAD = true;
passthru.updateScript = nix-update-script { };

View file

@ -6,7 +6,7 @@
babl,
dbus,
desktop-file-utils,
dleyna-renderer,
dleyna,
gdk-pixbuf,
gegl,
geocode-glib_2,
@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
buildInputs = [
babl
dbus
dleyna-renderer
dleyna
gdk-pixbuf
gegl
geocode-glib_2

View file

@ -0,0 +1,36 @@
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule {
pname = "goarista";
version = "0-unstable-2025-03-24";
src = fetchFromGitHub {
owner = "aristanetworks";
repo = "goarista";
rev = "2af7f36a2220911d96d9d5cf8dee641a7c01eb07";
hash = "sha256-M/gZVn4ioaxRwbqlee3yeRfWIjaG6mFq2Z+XL5mGjoA=";
};
vendorHash = "sha256-5vdVHTQOXsYc8EdEGEAXk2ZX/6o88gHxBzfwETcwXvA=";
checkFlags =
let
skippedTests = [
"TestDeepSizeof"
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ "TestDialTCPTimeoutWithTOS" ];
in
[ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
meta = {
description = "Collection of open-source tools for network management and monitoring mostly based around gNMI";
homepage = "https://github.com/aristanetworks/goarista";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.haylin ];
mainProgram = "gnmi";
};
}

View file

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "gosmee";
version = "0.23.4";
version = "0.24.0";
src = fetchFromGitHub {
owner = "chmouel";
repo = "gosmee";
rev = "v${version}";
hash = "sha256-orQDLuEbfxWWXmothxfTgeaMiqzJeTOFeNnPNDHwnYU=";
hash = "sha256-hE9iZkIkMzCICw9n1XhJ2PO5SvqE0EVhLJQO7tCUw3U=";
};
vendorHash = null;

View file

@ -26,7 +26,7 @@
json-glib,
avahi,
tinysparql,
dleyna-server,
dleyna,
itstool,
totem-pl-parser,
}:
@ -94,7 +94,7 @@ stdenv.mkDerivation rec {
avahi
libmediaart
tinysparql
dleyna-server
dleyna
gst_all_1.gstreamer
];

View file

@ -0,0 +1,36 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
doxygen,
graphviz,
pkg-config,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "gz-cmake";
version = "4.1.1";
src = fetchFromGitHub {
owner = "gazebosim";
repo = "gz-cmake";
tag = "gz-cmake${lib.versions.major finalAttrs.version}_${finalAttrs.version}";
hash = "sha256-BWgRm+3UW65Cu7TqXtFFG05JlYF52dbpAsIE8aDnJM0=";
};
nativeBuildInputs = [
cmake
doxygen
graphviz
pkg-config
];
meta = {
description = "CMake modules to build Gazebo projects";
homepage = "https://github.com/gazebosim/gz-cmake";
changelog = "https://github.com/gazebosim/gz-cmake/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.asl20;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ guelakais ];
};
})

View file

@ -9,13 +9,13 @@
buildGoModule rec {
pname = "ignite-cli";
version = "28.8.2";
version = "28.9.0";
src = fetchFromGitHub {
repo = "cli";
owner = "ignite";
rev = "v${version}";
hash = "sha256-d7+T0VlmKQgmAJ8eyDg8JDL9HHJbU+nOTvJP0GTuIRY=";
hash = "sha256-NLQ+Zd77JyHuih7hPeM067fcpny1V50GFDLGhtclGms=";
};
vendorHash = "sha256-EaOs3m5AN0EYMO8j3mkKPOQwapi0WRaTIUJKTjDpmCo=";

View file

@ -9,16 +9,16 @@
buildGoModule rec {
pname = "kubecolor";
version = "0.5.0";
version = "0.5.1";
src = fetchFromGitHub {
owner = "kubecolor";
repo = "kubecolor";
rev = "v${version}";
sha256 = "sha256-Q3Bl1ejuSpiMpQgiqKa2x/g02hNx326GM2MIDoi7q7o=";
sha256 = "sha256-FyHTceFpB3Osj8SUw+IRk+JWnoREVZgl8YHczDyY+Ak=";
};
vendorHash = "sha256-SWJbJ/zr9ygZYUuH8QNvgmUXdxb/3OViai48CFmWmXw=";
vendorHash = "sha256-eF0NcymLmRsFetkI67ZVUfOcIYtht0iYFcPIy2CWr+M=";
ldflags = [
"-s"

View file

@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ cmake ];
buildInputs = lib.optionals useTBB [
propagatedBuildInputs = lib.optionals useTBB [
# 2022.0 crashes on macOS at the moment
tbb_2021_11
];

View file

@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "mathmod";
version = "12.0";
version = "12.1";
src = fetchFromGitHub {
owner = "parisolab";
repo = "mathmod";
tag = finalAttrs.version;
hash = "sha256-h1iI7bheJVfE2+0m6Yk7QNCkl9Vye97tqb/WkQExVcQ=";
hash = "sha256-gDIYDXI9X24JAM1HP10EhJXkHZV2X8QngD5KPCUqdyI=";
};
patches = [ ./fix-paths.patch ];

View file

@ -4,13 +4,13 @@
fetchYarnDeps,
makeWrapper,
mkYarnPackage,
nodejs_18,
nodejs_20,
callPackage,
}:
let
data = lib.importJSON ./pin.json;
nodejs = nodejs_18;
nodejs = nodejs_20;
matrix-sdk-crypto-nodejs = callPackage ./matrix-sdk-crypto-nodejs-0_1_0-beta_3/package.nix { };
in
mkYarnPackage rec {
@ -59,5 +59,7 @@ mkYarnPackage rec {
chvp
];
license = licenses.asl20;
# Depends on nodejs_18 that has been removed.
broken = true;
};
}

View file

@ -2,7 +2,7 @@ src: version:
{
lib,
fetchYarnDeps,
nodejs_18,
nodejs_20,
fixup-yarn-lock,
stdenv,
yarn,
@ -19,8 +19,8 @@ stdenv.mkDerivation {
nativeBuildInputs = [
fixup-yarn-lock
nodejs_18
(yarn.override { nodejs = nodejs_18; })
nodejs_20
(yarn.override { nodejs = nodejs_20; })
];
configurePhase = ''
@ -55,5 +55,7 @@ stdenv.mkDerivation {
description = "Frontend for Mealie";
license = licenses.agpl3Only;
maintainers = with maintainers; [ litchipi ];
# Depends on nodejs_18 that has been removed.
broken = true;
};
}

View file

@ -1,21 +1,21 @@
{
"version": "3.137.0",
"version": "3.139.1",
"assets": {
"x86_64-linux": {
"url": "https://github.com/metalbear-co/mirrord/releases/download/3.137.0/mirrord_linux_x86_64",
"hash": "sha256-IrsvX7Z+8k3OvtojhWuSeeiO75Okth6MCF3sPs3jIZo="
"url": "https://github.com/metalbear-co/mirrord/releases/download/3.139.1/mirrord_linux_x86_64",
"hash": "sha256-VBmPo94DPWh/fvA8ZZfxcqCab9ZNqCVXKLwNcBMZm4E="
},
"aarch64-linux": {
"url": "https://github.com/metalbear-co/mirrord/releases/download/3.137.0/mirrord_linux_aarch64",
"hash": "sha256-E5Jhx3FsaVNCbvC1SH0D2GPsgQDwKkMPe/wR9MoVzKs="
"url": "https://github.com/metalbear-co/mirrord/releases/download/3.139.1/mirrord_linux_aarch64",
"hash": "sha256-ct/NyfVXI/GlR4HKAKX2vKrzU95+u2tO7ltw2aEbji0="
},
"aarch64-darwin": {
"url": "https://github.com/metalbear-co/mirrord/releases/download/3.137.0/mirrord_mac_universal",
"hash": "sha256-PKW2K5ITt1wagtET6MVx2rTn9CcqqujKaYt0XleIyzY="
"url": "https://github.com/metalbear-co/mirrord/releases/download/3.139.1/mirrord_mac_universal",
"hash": "sha256-selcbXCfkvKVzNClhYkssVY3CvZFH8uXzYGKhA6N63w="
},
"x86_64-darwin": {
"url": "https://github.com/metalbear-co/mirrord/releases/download/3.137.0/mirrord_mac_universal",
"hash": "sha256-PKW2K5ITt1wagtET6MVx2rTn9CcqqujKaYt0XleIyzY="
"url": "https://github.com/metalbear-co/mirrord/releases/download/3.139.1/mirrord_mac_universal",
"hash": "sha256-selcbXCfkvKVzNClhYkssVY3CvZFH8uXzYGKhA6N63w="
}
}
}

View file

@ -19,20 +19,24 @@
xmessage,
xterm,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "notion";
version = "4.0.2";
version = "4.0.3";
src = fetchFromGitHub {
owner = "raboof";
repo = "notion";
rev = finalAttrs.version;
hash = "sha256-u5KoTI+OcnQu9m8/Lmsmzr8lEk9tulSE7RRFhj1oXJM=";
tag = finalAttrs.version;
hash = "sha256-Ll4thDS8fHxkm2IuGjePPVPyPPrz7yDzpKVloFuk/yE=";
};
# error: 'PATH_MAX' undeclared
postPatch = ''
# Fix build failure due missing headers
sed -i '1i#define _POSIX_C_SOURCE 200809L' mod_notionflux/notionflux/notionflux.c
sed -i '2i#include <stdio.h>' mod_notionflux/notionflux/notionflux.c
sed -i '3i#include <string.h>' mod_notionflux/notionflux/notionflux.c
# error: 'PATH_MAX' undeclared
sed 1i'#include <linux/limits.h>' -i mod_notionflux/notionflux/notionflux.c
'';
@ -92,6 +96,7 @@ stdenv.mkDerivation (finalAttrs: {
maintainers = with lib.maintainers; [
jfb
raboof
NotAShelf
];
platforms = lib.platforms.linux;
};

View file

@ -5,7 +5,7 @@
makeBinaryWrapper,
makeDesktopItem,
copyDesktopItems,
nodejs_18,
nodejs_20,
electron,
python3,
nix-update-script,
@ -29,7 +29,7 @@ buildNpmPackage rec {
npmDepsHash = "sha256-UqjYNXdNoQmirIgU9DRgkp14SIrawfrfi9mD2h6ACyU=";
nodejs = nodejs_18;
nodejs = nodejs_20;
nativeBuildInputs = [
copyDesktopItems
@ -97,5 +97,7 @@ buildNpmPackage rec {
maintainers = [ ];
platforms = platforms.linux;
mainProgram = "open-stage-control";
# Depends on nodejs_18 that has been removed.
broken = true;
};
}

View file

@ -3,19 +3,18 @@
stdenv,
perlPackages,
fetchFromGitHub,
fetchpatch,
shortenPerlShebang,
}:
perlPackages.buildPerlPackage rec {
pname = "pgformatter";
version = "5.5";
version = "5.6";
src = fetchFromGitHub {
owner = "darold";
repo = "pgFormatter";
rev = "v${version}";
hash = "sha256-4KtrsckO9Q9H0yIM0877YvWaDW02CQVAQiOKD919e9w=";
hash = "sha256-EJLAP1uBmWxWEsdLJYTuViMv4o0iEi2fqy79ixyRijU=";
};
outputs = [ "out" ];
@ -25,14 +24,6 @@ perlPackages.buildPerlPackage rec {
# Avoid creating perllocal.pod, which contains a timestamp
installTargets = [ "pure_install" ];
patches = [
# Fix an uninitialized variable error. Remove with the next release.
(fetchpatch {
url = "https://github.com/darold/pgFormatter/commit/c2622c47d48cee47effecbf58a588c3cd3a7bf1a.patch";
sha256 = "sha256-WnQIOvfuzL2HrwtL0HaaYObrBxhXDu82jxGcqggQVhc=";
})
];
# Makefile.PL only accepts DESTDIR and INSTALLDIRS, but we need to set more to make this work for NixOS.
patchPhase = ''
substituteInPlace pg_format \

View file

@ -8,7 +8,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "quantlib";
version = "1.37";
version = "1.38";
outputs = [
"out"
@ -19,7 +19,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "lballabio";
repo = "QuantLib";
rev = "v${finalAttrs.version}";
hash = "sha256-Q8Bz94yd4A0VCDldtiichFKgiZMN4dHHJJep/tcE/z0=";
hash = "sha256-4a86sGUOz/B5IQHE41r5+OTvR9es4FgXeufy3bKRWAc=";
};
nativeBuildInputs = [ cmake ];

View file

@ -7,11 +7,11 @@
appimageTools.wrapType2 rec {
pname = "quiet";
version = "4.0.3";
version = "4.1.2";
src = fetchurl {
url = "https://github.com/TryQuiet/quiet/releases/download/@quiet/desktop@${version}/Quiet-${version}.AppImage";
hash = "sha256-BeN0O/Q95M42+2iRtYoko0mM4rLFVlzeRPXdls+5zOs=";
hash = "sha256-oYN+oXUvSeAR+gaRxEuBZHHV6lKTS7OrYVW4MMGoUO0=";
};
meta = {

View file

@ -7,17 +7,17 @@
rustPlatform.buildRustPackage rec {
pname = "rcp";
version = "0.15.0";
version = "0.16.0";
src = fetchFromGitHub {
owner = "wykurz";
repo = "rcp";
rev = "v${version}";
hash = "sha256-gFkrUqG3GXPAg9Zqv7Wr3axQ30axYGXw8bo+P1kmSJM=";
hash = "sha256-mMSO5twpuxiA6pMG/bNMn3WJjs3ZwuoOk62M0WIrRBk=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-izJRaxJhLvk064JB3hlzN50V7ZWmv/X1pbL0lRCZV60=";
cargoHash = "sha256-uVBWPxGxNgiahywA78QjN8msNx3gZ6vOyX7AkOdK2EM=";
RUSTFLAGS = "--cfg tokio_unstable";
@ -33,7 +33,8 @@ rustPlatform.buildRustPackage rec {
license = with licenses; [ mit ];
mainProgram = "rcp";
maintainers = with maintainers; [ wykurz ];
# = note: Undefined symbols for architecture x86_64: "_utimensat"
broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64;
# Building procfs on an for a unsupported platform. Currently only linux and android are supported
# (Your current target_os is macos)
broken = stdenv.hostPlatform.isDarwin;
};
}

View file

@ -0,0 +1,30 @@
{
lib,
rustPlatform,
fetchFromGitHub,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "regname";
version = "0.1.0";
src = fetchFromGitHub {
owner = "linkdd";
repo = "regname";
tag = "v${finalAttrs.version}";
hash = "sha256-zKsWEjFMTFibzfZ2dEc+RN74Ih1jr9vJhOUU0gY1rYE=";
};
cargoHash = "sha256-6iRDUOXPDzlD11JEL4at+z3aWkhn/dECtl7y2/vGMwo=";
passthru.updateScript = nix-update-script { };
meta = {
description = "Mass renamer TUI written in Rust";
homepage = "https://github.com/linkdd/regname";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.ilarvne ];
mainProgram = "regname";
};
})

View file

@ -9,11 +9,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "texturepacker";
version = "7.6.1";
version = "7.6.2";
src = fetchurl {
url = "https://www.codeandweb.com/download/texturepacker/${finalAttrs.version}/TexturePacker-${finalAttrs.version}.deb";
hash = "sha256-e824tHi9vTxhGbIxg5BPWgb3nBt5ZA2XgtkM7g3Y5Rw=";
hash = "sha256-CJtUWxjleojjK+LljDbdhSH2FNQfVGMkif/XDRW1Y/k=";
};
nativeBuildInputs = [

View file

@ -15,6 +15,11 @@ stdenv.mkDerivation rec {
sha256 = "1n2mkawfl2bpd4pwy3mdzxwlqjjvb5bdrr2x2gldlyqdwbk7qjhd";
};
postPatch = ''
substituteInPlace Makefile \
--replace "ar -rcs" "${stdenv.cc.targetPrefix}ar -rcs"
'';
preConfigure = "patchShebangs ./scripts/mk_bits_lut";
doCheck = true;

View file

@ -5,12 +5,12 @@
}:
mkYaziPlugin {
pname = "glow.yazi";
version = "0-unstable-2025-04-14";
version = "0-unstable-2025-04-15";
src = fetchFromGitHub {
owner = "Reledia";
repo = "glow.yazi";
rev = "a1711f10e815f7f7b6e529e0814342b8518d9ee6";
rev = "2da96e3ffd9cd9d4dd53e0b2636f83ff69fe9af0";
hash = "sha256-4krck4U/KWmnl32HWRsblYW/biuqzDPysrEn76buRck=";
};

View file

@ -5,13 +5,13 @@
}:
mkYaziPlugin {
pname = "relative-motions.yazi";
version = "25.2.7-unstable-2025-04-07";
version = "25.4.8-unstable-2025-04-16";
src = fetchFromGitHub {
owner = "dedukun";
repo = "relative-motions.yazi";
rev = "61ae7950daeea3e1d960aa777b7a07cde4539b29";
hash = "sha256-L5B5X762rBoxgKrUi0uRLDmAOJ/jPALc2bP9MYLiGYw=";
rev = "ce2e890227269cc15cdc71d23b35a58fae6d2c27";
hash = "sha256-Ijz1wYt+L+24Fb/rzHcDR8JBv84z2UxdCIPqTdzbD14=";
};
meta = {

View file

@ -7,15 +7,15 @@
buildNpmPackage rec {
pname = "zwave-js-ui";
version = "10.1.5";
version = "10.3.0";
src = fetchFromGitHub {
owner = "zwave-js";
repo = "zwave-js-ui";
tag = "v${version}";
hash = "sha256-z0uLX8tVL5g9Vnneu4r35iucRi3mDOJXC3mx9Xwz5So=";
hash = "sha256-RfjjGpQhjpRV/+Uqh/uki9GRQQ3IrkyPkYY9hWUGWoA=";
};
npmDepsHash = "sha256-mO+PJFbhj8n/HRpBc9YyJHnvcXHnC3gT4pQM91PbL3M=";
npmDepsHash = "sha256-vjHqL3t5FiBWlh2lEeRr31Ynyu4peHyMC82zHsBbQ8E=";
passthru.tests.zwave-js-ui = nixosTests.zwave-js-ui;

View file

@ -0,0 +1,61 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
# build-system
setuptools,
#dependencies
colcon,
pyaml,
# tests
pytestCheckHook,
pytest-cov-stub,
pytest-repeat,
pytest-rerunfailures,
scspell,
writableTmpDirAsHomeHook,
}:
buildPythonPackage rec {
pname = "colcon-defaults";
version = "0.2.9";
pyproject = true;
src = fetchFromGitHub {
owner = "colcon";
repo = "colcon-defaults";
tag = version;
hash = "sha256-Nb6D9jpbCvUnCNgRLBgWQFybNx0hyWVLSKj6gmTWjVs=";
};
build-system = [
setuptools
];
dependencies = [
colcon
pyaml
];
nativeCheckInputs = [
pytestCheckHook
pytest-cov-stub
pytest-repeat
pytest-rerunfailures
scspell
writableTmpDirAsHomeHook
];
disabledTestPaths = [
# Skip formatting checks to prevent depending on flake8
"test/test_flake8.py"
];
pythonImportsCheck = [ "colcon_defaults" ];
meta = {
description = "Extension for colcon to read defaults from a config file";
homepage = "https://github.com/colcon/colcon-defaults";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ guelakais ];
};
}

View file

@ -0,0 +1,51 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
colcon,
notify2,
pytestCheckHook,
scspell,
setuptools,
writableTmpDirAsHomeHook,
}:
buildPythonPackage rec {
pname = "colcon-notification";
version = "0.3.0";
pyproject = true;
src = fetchFromGitHub {
owner = "colcon";
repo = "colcon-notification";
tag = version;
hash = "sha256-78LruNk3KlHFgwujSbnbkjC24IN6jGnfRN+qdjvZh+k=";
};
build-system = [ setuptools ];
dependencies = [
colcon
notify2
];
nativeCheckInputs = [
pytestCheckHook
scspell
writableTmpDirAsHomeHook
];
pythonImportsCheck = [
"colcon_notification"
];
disabledTestPaths = [
# Linting/formatting tests are not relevant and would require extra dependencies
"test/test_flake8.py"
];
meta = {
description = "Extension for colcon-core to provide status notifications";
homepage = "https://github.com/colcon/colcon-notification";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ guelakais ];
};
}

View file

@ -23,14 +23,14 @@
let
self = buildPythonPackage rec {
pname = "jaxtyping";
version = "0.3.1";
version = "0.3.2";
pyproject = true;
src = fetchFromGitHub {
owner = "google";
repo = "jaxtyping";
tag = "v${version}";
hash = "sha256-rEKZ04R6PwDTk76KSjPprn58RUIQ+U8WVlxgrAwktLI=";
hash = "sha256-zRuTOt9PqFGDZbSGvkzxIWIi3z+vU0FmAEecPRcGy2w=";
};
build-system = [ hatchling ];

View file

@ -1,20 +1,24 @@
{
lib,
bibtexparser,
buildPythonPackage,
fetchPypi,
fetchFromGitHub,
# build-system
setuptools,
# dependencies
bibtexparser,
cdcs,
datamodeldict,
fetchPypi,
habanero,
ipywidgets,
lxml,
matplotlib,
numpy,
pandas,
pythonOlder,
requests,
scipy,
setuptools,
unidecode,
xmltodict,
yabadaba,
@ -25,11 +29,11 @@ buildPythonPackage rec {
version = "0.4.0";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-7ujcfFa/cweUtCY2MrEh3bTkwAVzvbF+5AJ4fs5o6bE=";
src = fetchFromGitHub {
owner = "usnistgov";
repo = "potentials";
tag = "v${version}";
hash = "sha256-VDA3dQ34kvrs3XMfC0j3T63KrXlmOa/hPvOni/UkgP4=";
};
build-system = [ setuptools ];
@ -56,11 +60,11 @@ buildPythonPackage rec {
pythonImportsCheck = [ "potentials" ];
meta = with lib; {
meta = {
description = "Python API database tools for accessing the NIST Interatomic Potentials Repository";
homepage = "https://github.com/usnistgov/potentials";
changelog = "https://github.com/usnistgov/potentials/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
};
}

View file

@ -9,13 +9,13 @@
buildPythonPackage rec {
pname = "pytest-check";
version = "2.5.2";
version = "2.5.3";
pyproject = true;
src = fetchPypi {
pname = "pytest_check";
inherit version;
hash = "sha256-Ex+letLw4h45iG4FJVFCu1hOYYgaXkWE/QaxSq5j7l0=";
hash = "sha256-I1fX33fDldMMDElXck/fzhp16ovJ6yMIwP/lb2KscMo=";
};
build-system = [ hatchling ];

View file

@ -1,32 +1,37 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
# build-system
setuptools,
# dependencies
cdcs,
datamodeldict,
fetchFromGitHub,
ipython,
lxml,
numpy,
pandas,
pillow,
pymongo,
pytestCheckHook,
pythonOlder,
setuptools,
tqdm,
# tests
pytestCheckHook,
writableTmpDirAsHomeHook,
}:
buildPythonPackage rec {
pname = "yabadaba";
version = "0.2.2";
version = "0.3.1";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "usnistgov";
repo = "yabadaba";
tag = "v${version}";
hash = "sha256-NfvnUrTnOeNfiTMrcRtWU3a/Wb6qsDeQlk5jwZ1OpgI=";
hash = "sha256-DpkJvi4w0aoD7RC2IFORy8uZ12TuLdcJxfLaSGyATac=";
};
build-system = [ setuptools ];
@ -38,23 +43,23 @@ buildPythonPackage rec {
lxml
numpy
pandas
pillow
pymongo
tqdm
];
nativeCheckInputs = [ pytestCheckHook ];
nativeCheckInputs = [
pytestCheckHook
writableTmpDirAsHomeHook
];
pythonImportsCheck = [ "yabadaba" ];
preCheck = ''
export HOME=$(mktemp -d);
'';
meta = with lib; {
meta = {
description = "Abstraction layer allowing for common interactions with databases and records";
homepage = "https://github.com/usnistgov/yabadaba";
changelog = "https://github.com/usnistgov/yabadaba/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
};
}

View file

@ -1,138 +0,0 @@
From 4b83f714c821d6d4d2306673ee3a87907cfec80e Mon Sep 17 00:00:00 2001
From: Ivan Trubach <mr.trubach@icloud.com>
Date: Fri, 19 Jul 2024 10:45:13 +0300
Subject: [PATCH] build: support setting an emulator from configure script
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
V8s JIT infrastructure requires binaries such as mksnapshot to be run
during the build. However, these binaries must have the same bit-width
as the host platform (e.g. a x86_64 build platform targeting ARMv6 needs
to produce a 32-bit binary).
To work around this issue, allow building the binaries for the host
platform and running them on the build platform with an emulator.
Based on Buildroots nodejs-src 0001-add-qemu-wrapper-support.patch.
https://gitlab.com/buildroot.org/buildroot/-/blob/c1d5eada4d4db9eeaa1c44dd1dea95a67c8a70ca/package/nodejs/nodejs-src/0001-add-qemu-wrapper-support.patch
Upstream: https://github.com/nodejs/node/pull/53899
---
common.gypi | 1 +
configure.py | 14 ++++++++++++++
node.gyp | 3 +++
tools/v8_gypfiles/v8.gyp | 4 ++++
4 files changed, 22 insertions(+)
diff --git a/common.gypi b/common.gypi
index ec92c9df4c..6474495ab6 100644
--- a/common.gypi
+++ b/common.gypi
@@ -13,6 +13,7 @@
'enable_pgo_generate%': '0',
'enable_pgo_use%': '0',
'python%': 'python',
+ 'emulator%': [],
'node_shared%': 'false',
'force_dynamic_crt%': 0,
diff --git a/configure.py b/configure.py
index 82916748fd..10dc0becbb 100755
--- a/configure.py
+++ b/configure.py
@@ -112,6 +112,12 @@ parser.add_argument('--dest-cpu',
choices=valid_arch,
help=f"CPU architecture to build for ({', '.join(valid_arch)})")
+parser.add_argument('--emulator',
+ action='store',
+ dest='emulator',
+ default=None,
+ help='emulator command that can run executables built for the target system')
+
parser.add_argument('--cross-compiling',
action='store_true',
dest='cross_compiling',
@@ -2160,6 +2166,14 @@ write('config.mk', do_not_edit + config_str)
gyp_args = ['--no-parallel', '-Dconfiguring_node=1']
gyp_args += ['-Dbuild_type=' + config['BUILDTYPE']]
+if options.emulator is not None:
+ if not options.cross_compiling:
+ # Note that emulator is a list so we have to quote the variable.
+ gyp_args += ['-Demulator=' + shlex.quote(options.emulator)]
+ else:
+ # TODO: perhaps use emulator for tests?
+ warn('The `--emulator` option has no effect when cross-compiling.')
+
if options.use_ninja:
gyp_args += ['-f', 'ninja-' + flavor]
elif flavor == 'win' and sys.platform != 'msys':
diff --git a/node.gyp b/node.gyp
index 08cb3f38e8..515b305933 100644
--- a/node.gyp
+++ b/node.gyp
@@ -332,6 +332,7 @@
'<(SHARED_INTERMEDIATE_DIR)/node_snapshot.cc',
],
'action': [
+ '<@(emulator)',
'<(node_mksnapshot_exec)',
'--build-snapshot',
'<(node_snapshot_main)',
@@ -351,6 +352,7 @@
'<(SHARED_INTERMEDIATE_DIR)/node_snapshot.cc',
],
'action': [
+ '<@(emulator)',
'<@(_inputs)',
'<@(_outputs)',
],
@@ -1520,6 +1522,7 @@
'<(PRODUCT_DIR)/<(node_core_target_name).def',
],
'action': [
+ '<@(emulator)',
'<(PRODUCT_DIR)/gen_node_def.exe',
'<@(_inputs)',
'<@(_outputs)',
diff --git a/tools/v8_gypfiles/v8.gyp b/tools/v8_gypfiles/v8.gyp
index ba8b161f0f..d5c90dad50 100644
--- a/tools/v8_gypfiles/v8.gyp
+++ b/tools/v8_gypfiles/v8.gyp
@@ -99,6 +99,7 @@
'<@(torque_outputs_inc)',
],
'action': [
+ '<@(emulator)',
'<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)torque<(EXECUTABLE_SUFFIX)',
'-o', '<(SHARED_INTERMEDIATE_DIR)/torque-generated',
'-v8-root', '<(V8_ROOT)',
@@ -219,6 +220,7 @@
'action': [
'<(python)',
'<(V8_ROOT)/tools/run.py',
+ '<@(emulator)',
'<@(_inputs)',
'<@(_outputs)',
],
@@ -442,6 +444,7 @@
}],
],
'action': [
+ '<@(emulator)',
'>@(_inputs)',
'>@(mksnapshot_flags)',
],
@@ -1577,6 +1580,7 @@
'action': [
'<(python)',
'<(V8_ROOT)/tools/run.py',
+ '<@(emulator)',
'<@(_inputs)',
'<@(_outputs)',
],
--
2.44.1

View file

@ -1,16 +0,0 @@
Disable v8 system instrumentation on Darwin
On Darwin, the v8 system instrumentation requires the header "os/signpost.h"
which is available since apple_sdk 11+. See: https://github.com/nodejs/node/issues/39584
--- old/tools/v8_gypfiles/features.gypi
+++ new/tools/v8_gypfiles/features.gypi
@@ -62,7 +62,7 @@
}, {
'is_component_build': 0,
}],
- ['OS == "win" or OS == "mac"', {
+ ['OS == "win"', {
# Sets -DSYSTEM_INSTRUMENTATION. Enables OS-dependent event tracing
'v8_enable_system_instrumentation': 1,
}, {

View file

@ -1,13 +0,0 @@
Fixes cross compilation to aarch64-linux by reverting
https://github.com/nodejs/node/pull/43200
--- old/configure.py
+++ new/configure.py
@@ -1236,7 +1236,6 @@
# Enable branch protection for arm64
if target_arch == 'arm64':
- o['cflags']+=['-msign-return-address=all']
o['variables']['arm_fpu'] = options.arm_fpu or 'neon'
if options.node_snapshot_main is not None:

View file

@ -1,76 +0,0 @@
Backport V8_TRAP_HANDLER_SUPPORTED conditional compilation for trap
handler implementation.
See https://github.com/v8/v8/commit/e7bef8d4cc4f38cc3d5a532fbcc445dc62adc08f
E.g. when cross-compiling from aarch64-linux for x86_64-linux target,
handler-inside-posix.cc is built on aarch64-linux even though it is not
supported; see src/trap-handler/trap-handler.h in v8 for (host, target)
combinations where trap handler is supported.
Note that handler-inside-posix.cc fails to build in the case above.
diff --git a/deps/v8/src/trap-handler/handler-inside-posix.cc b/deps/v8/src/trap-handler/handler-inside-posix.cc
index e4454c378f..17af3d75dc 100644
--- a/deps/v8/src/trap-handler/handler-inside-posix.cc
+++ b/deps/v8/src/trap-handler/handler-inside-posix.cc
@@ -47,6 +47,8 @@ namespace v8 {
namespace internal {
namespace trap_handler {
+#if V8_TRAP_HANDLER_SUPPORTED
+
#if V8_OS_LINUX
#define CONTEXT_REG(reg, REG) &uc->uc_mcontext.gregs[REG_##REG]
#elif V8_OS_DARWIN
@@ -181,6 +183,8 @@ void HandleSignal(int signum, siginfo_t* info, void* context) {
// TryHandleSignal modifies context to change where we return to.
}
+#endif
+
} // namespace trap_handler
} // namespace internal
} // namespace v8
diff --git a/deps/v8/src/trap-handler/handler-inside-win.cc b/deps/v8/src/trap-handler/handler-inside-win.cc
index fcccc78ee5..3d7a2c416a 100644
--- a/deps/v8/src/trap-handler/handler-inside-win.cc
+++ b/deps/v8/src/trap-handler/handler-inside-win.cc
@@ -38,6 +38,8 @@ namespace v8 {
namespace internal {
namespace trap_handler {
+#if V8_TRAP_HANDLER_SUPPORTED
+
// The below struct needed to access the offset in the Thread Environment Block
// to see if the thread local storage for the thread has been allocated yet.
//
@@ -129,6 +131,8 @@ LONG HandleWasmTrap(EXCEPTION_POINTERS* exception) {
return EXCEPTION_CONTINUE_SEARCH;
}
+#endif
+
} // namespace trap_handler
} // namespace internal
} // namespace v8
diff --git a/deps/v8/src/trap-handler/handler-outside-simulator.cc b/deps/v8/src/trap-handler/handler-outside-simulator.cc
index 179eab0659..5e58719e7f 100644
--- a/deps/v8/src/trap-handler/handler-outside-simulator.cc
+++ b/deps/v8/src/trap-handler/handler-outside-simulator.cc
@@ -4,6 +4,9 @@
#include "include/v8config.h"
#include "src/trap-handler/trap-handler-simulator.h"
+#include "src/trap-handler/trap-handler.h"
+
+#if V8_TRAP_HANDLER_SUPPORTED
#if V8_OS_DARWIN
#define SYMBOL(name) "_" #name
@@ -35,3 +38,5 @@ asm(
SYMBOL(v8_probe_memory_continuation) ": \n"
// If the trap handler continues here, it wrote the landing pad in %rax.
" ret \n");
+
+#endif

View file

@ -1,86 +0,0 @@
{
callPackage,
lib,
openssl,
python311,
fetchpatch2,
icu75,
enableNpm ? true,
}:
let
buildNodejs = callPackage ./nodejs.nix {
inherit openssl;
python = python311;
icu = icu75; # does not build with newer
};
gypPatches = callPackage ./gyp-patches.nix { } ++ [
./gyp-patches-pre-v22-import-sys.patch
];
in
buildNodejs {
inherit enableNpm;
version = "18.20.8";
sha256 = "36a7bf1a76d62ce4badd881ee5974a323c70e1d8d19165732684e145632460d9";
patches = [
./configure-emulator-node18.patch
./configure-armv6-vfpv2.patch
./disable-darwin-v8-system-instrumentation.patch
./bypass-darwin-xcrun-node16.patch
./revert-arm64-pointer-auth.patch
./node-npm-build-npm-package-logic.patch
./trap-handler-backport.patch
./use-correct-env-in-tests.patch
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/534c122de166cb6464b489f3e6a9a544ceb1c913.patch";
hash = "sha256-4q4LFsq4yU1xRwNsM1sJoNVphJCnxaVe2IyL6AeHJ/I=";
})
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/87598d4b63ef2c827a2bebdfa0f1540c35718519.patch";
hash = "sha256-JJi8z9aaWnu/y3nZGOSUfeNzNSCYzD9dzoHXaGkeaEA=";
includes = [ "test/common/assertSnapshot.js" ];
})
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/d0a6b605fba6cd69a82e6f12ff0363eef8fe1ee9.patch";
hash = "sha256-TfYal/PikRZHL6zpAlC3SmkYXCe+/8Gs83dLX/X/P/k=";
})
# Remove unused `fdopen` in vendored zlib, which causes compilation failures with clang 18 on Darwin.
(fetchpatch2 {
url = "https://github.com/madler/zlib/commit/4bd9a71f3539b5ce47f0c67ab5e01f3196dc8ef9.patch?full_index=1";
extraPrefix = "deps/v8/third_party/zlib/";
stripLen = 1;
hash = "sha256-WVxsoEcJu0WBTyelNrVQFTZxJhnekQb1GrueeRBRdnY=";
})
# Backport V8 fixes for LLVM 19.
(fetchpatch2 {
url = "https://chromium.googlesource.com/v8/v8/+/182d9c05e78b1ddb1cb8242cd3628a7855a0336f%5E%21/?format=TEXT";
decode = "base64 -d";
extraPrefix = "deps/v8/";
stripLen = 1;
hash = "sha256-bDTwFbATPn5W4VifWz/SqaiigXYDWHq785C64VezuUE=";
})
(fetchpatch2 {
url = "https://chromium.googlesource.com/v8/v8/+/1a3ecc2483b2dba6ab9f7e9f8f4b60dbfef504b7%5E%21/?format=TEXT";
decode = "base64 -d";
extraPrefix = "deps/v8/";
stripLen = 1;
hash = "sha256-6y3aEqxNC4iTQEv1oewodJrhOHxjp5xZMq1P1QL94Rg=";
})
# Fix for https://github.com/NixOS/nixpkgs/issues/355919
# FIXME: remove after a minor point release
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/a094a8166cd772f89e92b5deef168e5e599fa815.patch?full_index=1";
hash = "sha256-5FZfozYWRa1ZI/f+e+xpdn974Jg2DbiHbua13XUQP5E=";
})
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/f270462c09ddfd770291a7c8a2cd204b2c63d730.patch?full_index=1";
hash = "sha256-Err0i5g7WtXcnhykKgrS3ocX7/3oV9UrT0SNeRtMZNU=";
})
# fix test failure on macos 15.4
(fetchpatch2 {
url = "https://github.com/nodejs/node/commit/33f6e1ea296cd20366ab94e666b03899a081af94.patch?full_index=1";
hash = "sha256-aVBMcQlhQeviUQpMIfC988jjDB2BgYzlMYsq+w16mzU=";
})
] ++ gypPatches;
}

View file

@ -865,16 +865,18 @@ if [ -z "$rollback" ]; then
set = if builtins.isFunction value then value {} else value;
in set.${attr:+$attr.}config.system.build.images.$imageVariant.v.passthru.filePath" \
"${extraBuildFlags[@]}"
| jq -r .
)"
elif [[ -z $flake ]]; then
imageName="$(
runCmd nix-instantiate --eval --strict --json --expr \
"with import <nixpkgs/nixos> {}; config.system.build.images.$imageVariant.passthru.filePath" \
"${extraBuildFlags[@]}"
| jq -r .
)"
else
imageName="$(
runCmd nix "${flakeFlags[@]}" eval --json \
runCmd nix "${flakeFlags[@]}" eval --raw \
"$flake#$flakeAttr.config.system.build.images.$imageVariant.passthru.filePath" \
"${evalArgs[@]}" "${extraBuildFlags[@]}"
)"

View file

@ -1,31 +1,31 @@
{ fetchurl, fetchzip }:
{
x86_64-darwin = fetchzip {
sha256 = "sha256-wNDPmB/RyTc3ZZWx7glhDx3aeWFrvcsiNv7hvsnWWu4=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.57/AdGuardHome_darwin_amd64.zip";
sha256 = "sha256-/xwRH9+qJQ91z2alo2sBdnLs2Z2wXUMHqJvxagptx5U=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_darwin_amd64.zip";
};
aarch64-darwin = fetchzip {
sha256 = "sha256-gm9QHJFrCbKyEK6RsSKCeIQY2eYJIXO1n4vAkA3yatY=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.57/AdGuardHome_darwin_arm64.zip";
sha256 = "sha256-60uD8dH4Dqbey21HGx/PIzWBcN/00V1/oS1ubrucayY=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_darwin_arm64.zip";
};
i686-linux = fetchurl {
sha256 = "sha256-2TVrjG4C4uLsBUJoya4YxiOlTJlcmzPG6lUWcCj/PYE=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.57/AdGuardHome_linux_386.tar.gz";
sha256 = "sha256-RJeU+n46IMncX5MXDedw/7DSe6pISsTJEyfI5B1pEcY=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_linux_386.tar.gz";
};
x86_64-linux = fetchurl {
sha256 = "sha256-E2bzQIYsRpijlJnjD+V3lh5a1nauD5aMVoI/9tHfrRM=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.57/AdGuardHome_linux_amd64.tar.gz";
sha256 = "sha256-jZV/U4DUw70J1xmZLM5+gqAgpUP7fdyw46Neq8fQxT0=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_linux_amd64.tar.gz";
};
aarch64-linux = fetchurl {
sha256 = "sha256-0yedCjUkpye2Rly87a5Qdyfy8/kgrEOrHKpbZ0YhruM=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.57/AdGuardHome_linux_arm64.tar.gz";
sha256 = "sha256-TtD8KR92Mv3Z3nCz4xIT+FcuxwqgDTq3C1lGIELrEQU=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_linux_arm64.tar.gz";
};
armv6l-linux = fetchurl {
sha256 = "sha256-RhPXB3G9iDmijTCsljXedJxqLr8Zna5IzU18KITU0m0=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.57/AdGuardHome_linux_armv6.tar.gz";
sha256 = "sha256-MosFBi72sgdZshUzAxi/ht56VpeHMguRQawU3DI5Va8=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_linux_armv6.tar.gz";
};
armv7l-linux = fetchurl {
sha256 = "sha256-tAtuMWgy+HMUIMbKLQZOMVO7z65UuPIZnHpJr1IYpJw=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.57/AdGuardHome_linux_armv7.tar.gz";
sha256 = "sha256-7YFzd6z9eCGBHlyYgDiwE+cpQzEuQIHDYfbCopapYrw=";
url = "https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_linux_armv7.tar.gz";
};
}

View file

@ -13,7 +13,7 @@ in
stdenv.mkDerivation rec {
pname = "adguardhome";
version = "0.107.57";
version = "0.107.61";
src = sources.${system} or (throw "Source for ${pname} is not available for ${system}");
installPhase = ''

View file

@ -36,7 +36,7 @@ for asset in $(curl --silent https://api.github.com/repos/AdguardTeam/AdGuardHom
if [ -n "$adg_system" ]; then
fetch="$(grep '\.zip$' <<< "$url" > /dev/null && echo fetchzip || echo fetchurl)"
nix_system=${systems[$adg_system]}
nix_src="$(nix-prefetch -s --output nix $fetch --url $url)"
nix_src="$(nix-prefetch --option extra-experimental-features flakes -s --output nix $fetch --url $url)"
echo "$nix_system = $fetch $nix_src;" >> $bins
fi
done

View file

@ -9,13 +9,13 @@
stdenvNoCC.mkDerivation rec {
pname = "icingaweb2";
version = "2.12.3";
version = "2.12.4";
src = fetchFromGitHub {
owner = "Icinga";
repo = "icingaweb2";
rev = "v${version}";
hash = "sha256-PWP5fECKjdXhdX1E5hYaGv/fqb1KIKfclcPiCY/MMZM=";
hash = "sha256-Ds1SxNQ3WAhY79SWl1ZIQUl2Pb8bZlHISRaSEe+Phos=";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -4,7 +4,7 @@
pkgs,
lib,
node-pre-gyp,
nodejs_18,
nodejs_20,
pkg-config,
libjpeg,
pixman,
@ -15,7 +15,7 @@
}:
let
nodejs = nodejs_18;
nodejs = nodejs_20;
version = "0.1.1";
@ -72,7 +72,8 @@ myNodePackages.package.override {
maintainers = [ ];
platforms = platforms.unix;
# never built on aarch64-darwin since first introduction in nixpkgs
broken = stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64;
# Depends on nodejs_18 that has been removed.
broken = true;
mainProgram = "mx-puppet-discord";
};
}

View file

@ -5,7 +5,7 @@
inherit system;
},
system ? builtins.currentSystem,
nodejs ? pkgs."nodejs_18",
nodejs ? pkgs."nodejs_20",
}:
let

View file

@ -259,6 +259,8 @@ stdenv.mkDerivation (finalAttrs: {
"x86_64-darwin"
"aarch64-darwin"
];
# Depends on nodejs_18 that has been removed.
broken = true;
mainProgram = "openvscode-server";
};
})

View file

@ -118,10 +118,16 @@ let
prePatch = ''
sed -i 's,[^"]*/var/log,/var/log,g' storage/mroonga/vendor/groonga/CMakeLists.txt
'';
env = lib.optionalAttrs (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isGnu) {
# MariaDB uses non-POSIX fopen64, which musl only conditionally defines.
NIX_CFLAGS_COMPILE = "-D_LARGEFILE64_SOURCE";
};
patches =
[
./patch/cmake-includedir.patch
# patch for musl compatibility
./patch/include-cstdint-full.patch
]
# Fixes a build issue as documented on
# https://jira.mariadb.org/browse/MDEV-26769?focusedCommentId=206073&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-206073

View file

@ -0,0 +1,48 @@
diff --git a/storage/rocksdb/rocksdb/table/block_based/data_block_hash_index.h b/storage/rocksdb/rocksdb/table/block_based/data_block_hash_index.h
index f356395..3215221 100644
--- a/storage/rocksdb/rocksdb/table/block_based/data_block_hash_index.h
+++ b/storage/rocksdb/rocksdb/table/block_based/data_block_hash_index.h
@@ -5,6 +5,7 @@
#pragma once
+#include <cstdint>
#include <string>
#include <vector>
diff --git a/storage/rocksdb/rocksdb/util/string_util.h b/storage/rocksdb/rocksdb/util/string_util.h
index a761be6..064d059 100644
--- a/storage/rocksdb/rocksdb/util/string_util.h
+++ b/storage/rocksdb/rocksdb/util/string_util.h
@@ -6,6 +6,7 @@
#pragma once
+#include <cstdint>
#include <sstream>
#include <string>
#include <unordered_map>
diff --git a/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h b/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h
index c7f93b4..3c2ab80 100644
--- a/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h
+++ b/storage/rocksdb/rocksdb/include/rocksdb/utilities/checkpoint.h
@@ -8,6 +8,7 @@
#pragma once
#ifndef ROCKSDB_LITE
+#include <cstdint>
#include <string>
#include <vector>
#include "rocksdb/status.h"
diff --git a/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h b/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h
index 963c1d8..8d70309 100644
--- a/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h
+++ b/storage/rocksdb/rocksdb/db/compaction/compaction_iteration_stats.h
@@ -6,6 +6,7 @@
#pragma once
#include "rocksdb/rocksdb_namespace.h"
+#include <cstdint>
struct CompactionIterationStats {
// Compaction statistics

View file

@ -0,0 +1,53 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
octodns,
pytestCheckHook,
setuptools,
requests,
}:
buildPythonPackage rec {
pname = "octodns-ddns";
version = "0.2.1";
pyproject = true;
src = fetchFromGitHub {
owner = "octodns";
repo = "octodns-ddns";
tag = "v${version}";
hash = "sha256-n4dTkJT5UmmEqtN5x2zkJe7NQtjXz3gPwwFnOmMIfIs=";
};
build-system = [
setuptools
];
dependencies = [
octodns
requests
];
postPatch = ''
substituteInPlace tests/test_octodns_source_ddns.py \
--replace-fail "assertEquals" "assertEqual"
'';
env.OCTODNS_RELEASE = 1;
pythonImportsCheck = [
"octodns_ddns"
];
nativeCheckInputs = [
pytestCheckHook
];
meta = {
description = "Simple Dynamic DNS source for octoDNS";
homepage = "https://github.com/octodns/octodns-ddns";
changelog = "https://github.com/octodns/octodns-ddns/blob/${src.tag}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.provokateurin ];
};
}

View file

@ -1,25 +0,0 @@
# Original: https://github.com/netdata/netdata/pull/17240
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f37cbd18a..6db4c9f52 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -134,6 +134,7 @@ mark_as_advanced(DEFAULT_FEATURE_STATE)
# High-level features
option(ENABLE_ACLK "Enable Netdata Cloud support (ACLK)" ${DEFAULT_FEATURE_STATE})
option(ENABLE_CLOUD "Enable Netdata Cloud by default at runtime" ${DEFAULT_FEATURE_STATE})
+option(ENABLE_DASHBOARD_V2 "enable dashboard v2" True)
option(ENABLE_ML "Enable machine learning features" ${DEFAULT_FEATURE_STATE})
option(ENABLE_DBENGINE "Enable dbengine metrics storage" True)
@@ -2946,7 +2947,9 @@ endif()
#
include(src/web/gui/v1/dashboard_v1.cmake)
-include(src/web/gui/v2/dashboard_v2.cmake)
+if(ENABLE_DASHBOARD_V2)
+ include(src/web/gui/v2/dashboard_v2.cmake)
+endif()
include(src/web/gui/gui.cmake)
function(cat IN_FILE OUT_FILE)

View file

@ -0,0 +1,35 @@
diff --git a/packaging/cmake/Modules/NetdataDashboard.cmake b/packaging/cmake/Modules/NetdataDashboard.cmake
index 098eaffcf..e52375bd0 100644
--- a/packaging/cmake/Modules/NetdataDashboard.cmake
+++ b/packaging/cmake/Modules/NetdataDashboard.cmake
@@ -26,29 +26,12 @@ function(bundle_dashboard)
set(dashboard_src_dir "${CMAKE_BINARY_DIR}/dashboard-src")
set(dashboard_src_prefix "${dashboard_src_dir}/dist/agent")
set(dashboard_bin_dir "${CMAKE_BINARY_DIR}/dashboard-bin")
- set(DASHBOARD_URL "https://app.netdata.cloud/agent.tar.gz" CACHE STRING
- "URL used to fetch the local agent dashboard code")
message(STATUS "Preparing local agent dashboard code")
- message(STATUS " Fetching ${DASHBOARD_URL}")
- file(DOWNLOAD
- "${DASHBOARD_URL}"
- "${CMAKE_BINARY_DIR}/dashboard.tar.gz"
- TIMEOUT 180
- STATUS fetch_status)
-
- list(GET fetch_status 0 result)
-
- if(result)
- message(FATAL_ERROR "Failed to fetch dashboard code")
- else()
- message(STATUS " Fetching ${DASHBOARD_URL} -- Done")
- endif()
-
message(STATUS " Extracting dashboard code")
extract_gzipped_tarball(
- "${CMAKE_BINARY_DIR}/dashboard.tar.gz"
+ "@dashboardTarball@"
"${dashboard_src_dir}"
)
message(STATUS " Extracting dashboard code -- Done")

View file

@ -1,18 +1,22 @@
{
lib,
stdenv,
fetchFromGitHub,
bash,
bison,
buildGoModule,
cmake,
cups,
curl,
dlib,
fetchFromGitHub,
fetchurl,
flex,
freeipmi,
go,
google-cloud-cpp,
grpc,
jemalloc,
json_c,
lib,
libbacktrace,
libbpf,
libcap,
libelf,
@ -30,57 +34,52 @@
openssl,
pkg-config,
protobuf,
replaceVars,
snappy,
stdenv,
systemd,
withCloud ? false,
zlib,
withCloudUi ? false,
withConnPrometheus ? false,
withConnPubSub ? false,
withCups ? false,
withDBengine ? true,
withDBengine ? false,
withDebug ? false,
withEbpf ? false,
withIpmi ? (stdenv.hostPlatform.isLinux),
withLibbacktrace ? true,
withNdsudo ? false,
withNetfilter ? (stdenv.hostPlatform.isLinux),
withNetworkViewer ? (stdenv.hostPlatform.isLinux),
withSsl ? true,
withSystemdJournal ? (stdenv.hostPlatform.isLinux),
zlib,
withNdsudo ? false,
withML ? true,
}:
stdenv.mkDerivation (finalAttrs: {
version = "1.47.5";
version = "2.4.0";
pname = "netdata";
src = fetchFromGitHub {
owner = "netdata";
repo = "netdata";
rev = "v${finalAttrs.version}";
hash =
if withCloudUi then
"sha256-+cPYwjxg/+A5bNa517zg9xKEjUa8uPM9WD67tToPH5o="
# we delete the v2 GUI after fetching
else
"sha256-0aiBUkDymmdIT/u1y2PG30QYAvb8Zc4i8ZgjOtlzt+A=";
hash = "sha256-egHsWmhnrl8D59gr7uD5hBnleCOI8gVEBGwdO5GSnOg=";
fetchSubmodules = true;
# Remove v2 dashboard distributed under NCUL1. Make sure an empty
# Makefile.am exists, as autoreconf will get confused otherwise.
postFetch = lib.optionalString (!withCloudUi) ''
rm -rf $out/src/web/gui/v2/*
touch $out/src/web/gui/v2/Makefile.am
'';
};
strictDeps = true;
nativeBuildInputs = [
bison
cmake
pkg-config
makeWrapper
flex
go
makeWrapper
ninja
pkg-config
] ++ lib.optionals withCups [ cups.dev ];
# bash is only used to rewrite shebangs
buildInputs =
[
@ -89,8 +88,10 @@ stdenv.mkDerivation (finalAttrs: {
jemalloc
json_c
libuv
zlib
libyaml
lz4
protobuf
zlib
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
libossp_uuid
@ -101,34 +102,44 @@ stdenv.mkDerivation (finalAttrs: {
libuuid
lm_sensors
]
++ lib.optionals withCups [ cups ]
++ lib.optionals withDBengine [ lz4 ]
++ lib.optionals withIpmi [ freeipmi ]
++ lib.optionals withNetfilter [
libmnl
libnetfilter_acct
]
++ lib.optionals withConnPrometheus [ snappy ]
++ lib.optionals withConnPubSub [
google-cloud-cpp
grpc
]
++ lib.optionals withConnPrometheus [ snappy ]
++ lib.optionals withCups [ cups ]
++ lib.optionals withEbpf [
libelf
libbpf
libelf
]
++ lib.optionals (withCloud || withConnPrometheus) [ protobuf ]
++ lib.optionals withSystemdJournal [ systemd ]
++ lib.optionals withSsl [ openssl ];
++ lib.optionals withIpmi [ freeipmi ]
++ lib.optionals withLibbacktrace [ libbacktrace ]
++ lib.optionals withNetfilter [
libmnl
libnetfilter_acct
]
++ lib.optionals withSsl [ openssl ]
++ lib.optionals withSystemdJournal [ systemd ];
patches = [
# Allow ndsudo to use non-hardcoded `PATH`
# See https://github.com/netdata/netdata/pull/17377#issuecomment-2183017868
# https://github.com/netdata/netdata/security/advisories/GHSA-pmhq-4cxq-wj93
./ndsudo-fix-path.patch
# Allow building without non-free v2 dashboard.
./dashboard-v2-removal.patch
];
patches =
[
# Allow ndsudo to use non-hardcoded `PATH`
# See https://github.com/netdata/netdata/pull/17377#issuecomment-2183017868
# https://github.com/netdata/netdata/security/advisories/GHSA-pmhq-4cxq-wj93
./ndsudo-fix-path.patch
./use-local-libbacktrace.patch
]
++ lib.optional withCloudUi (
replaceVars ./dashboard-v3-add.patch {
# FIXME web.archive.org link can be replace once https://github.com/netdata/netdata-cloud/issues/1081 resolved
# last update 03/16/2025 23:56:24
dashboardTarball = fetchurl {
url = "https://web.archive.org/web/20250316235624/https://app.netdata.cloud/agent.tar.gz";
hash = "sha256-Vtw+CbBgqGRenkis0ZR2/TLsoM83NjNA6mbndb95EK8=";
};
}
);
# Guard against unused build-time development inputs in closure. Without
# the ./skip-CONFIGURE_COMMAND.patch patch the closure retains inputs up
@ -137,7 +148,7 @@ stdenv.mkDerivation (finalAttrs: {
# We pick zlib.dev as a simple canary package with pkg-config input.
disallowedReferences = lib.optional (!withDebug) zlib.dev;
donStrip = withDebug;
donStrip = withDebug || withLibbacktrace;
env.NIX_CFLAGS_COMPILE = lib.optionalString withDebug "-O1 -ggdb -DNETDATA_INTERNAL_CHECKS=1";
postInstall =
@ -169,10 +180,6 @@ stdenv.mkDerivation (finalAttrs: {
mv $out/libexec/netdata/plugins.d/network-viewer.plugin \
$out/libexec/netdata/plugins.d/network-viewer.plugin.org
''}
${lib.optionalString (!withCloudUi) ''
rm -rf $out/share/netdata/web/index.html
cp $out/share/netdata/web/v1/index.html $out/share/netdata/web/index.html
''}
${lib.optionalString withNdsudo ''
mv $out/libexec/netdata/plugins.d/ndsudo \
$out/libexec/netdata/plugins.d/ndsudo.org
@ -206,27 +213,29 @@ stdenv.mkDerivation (finalAttrs: {
--replace-fail 'set(libconfigdir_POST "''${NETDATA_RUNTIME_PREFIX}/usr/lib/netdata/conf.d")' 'set(libconfigdir_POST "${placeholder "out"}/share/netdata/conf.d")' \
--replace-fail 'set(cachedir_POST "''${NETDATA_RUNTIME_PREFIX}/var/cache/netdata")' 'set(libconfigdir_POST "/var/cache/netdata")' \
--replace-fail 'set(registrydir_POST "''${NETDATA_RUNTIME_PREFIX}/var/lib/netdata/registry")' 'set(registrydir_POST "/var/lib/netdata/registry")' \
--replace-fail 'set(varlibdir_POST "''${NETDATA_RUNTIME_PREFIX}/var/lib/netdata")' 'set(varlibdir_POST "/var/lib/netdata")'
--replace-fail 'set(varlibdir_POST "''${NETDATA_RUNTIME_PREFIX}/var/lib/netdata")' 'set(varlibdir_POST "/var/lib/netdata")' \
--replace-fail 'set(BUILD_INFO_CMAKE_CACHE_ARCHIVE_PATH "usr/share/netdata")' 'set(BUILD_INFO_CMAKE_CACHE_ARCHIVE_PATH "${placeholder "out"}/share/netdata")'
'';
cmakeFlags = [
"-DWEB_DIR=share/netdata/web"
(lib.cmakeBool "ENABLE_CLOUD" withCloud)
# ACLK is agent cloud link.
(lib.cmakeBool "ENABLE_ACLK" withCloud)
(lib.cmakeBool "ENABLE_DASHBOARD_V2" withCloudUi)
(lib.cmakeBool "ENABLE_DBENGINE" withDBengine)
(lib.cmakeBool "ENABLE_PLUGIN_FREEIPMI" withIpmi)
(lib.cmakeBool "ENABLE_PLUGIN_SYSTEMD_JOURNAL" withSystemdJournal)
(lib.cmakeBool "ENABLE_PLUGIN_NETWORK_VIEWER" withNetworkViewer)
(lib.cmakeBool "ENABLE_PLUGIN_EBPF" withEbpf)
(lib.cmakeBool "ENABLE_PLUGIN_XENSTAT" false)
(lib.cmakeBool "ENABLE_PLUGIN_CUPS" withCups)
(lib.cmakeBool "ENABLE_DASHBOARD" withCloudUi)
# FIXME uncomment when https://github.com/netdata/netdata/issues/19901#issuecomment-2819701451 resolved
(lib.cmakeBool "ENABLE_DBENGINE" true)
# (lib.cmakeBool "ENABLE_DBENGINE" withDBengine)
(lib.cmakeBool "ENABLE_EXPORTER_PROMETHEUS_REMOTE_WRITE" withConnPrometheus)
(lib.cmakeBool "ENABLE_JEMALLOC" true)
(lib.cmakeBool "ENABLE_LIBBACKTRACE" withLibbacktrace)
(lib.cmakeBool "ENABLE_PLUGIN_CUPS" withCups)
(lib.cmakeBool "ENABLE_PLUGIN_EBPF" withEbpf)
(lib.cmakeBool "ENABLE_PLUGIN_FREEIPMI" withIpmi)
(lib.cmakeBool "ENABLE_PLUGIN_NETWORK_VIEWER" withNetworkViewer)
(lib.cmakeBool "ENABLE_PLUGIN_SYSTEMD_JOURNAL" withSystemdJournal)
(lib.cmakeBool "ENABLE_PLUGIN_XENSTAT" false)
(lib.cmakeBool "ENABLE_ML" withML)
# Suggested by upstream.
"-G Ninja"
];
] ++ lib.optional withML "-DNETDATA_DLIB_SOURCE_PATH=${dlib.src}";
postFixup = ''
wrapProgram $out/bin/netdata-claim.sh --prefix PATH : ${lib.makeBinPath [ openssl ]}
@ -251,7 +260,7 @@ stdenv.mkDerivation (finalAttrs: {
sourceRoot = "${finalAttrs.src.name}/src/go/plugin/go.d";
vendorHash = "sha256-NZ1tg+lvXNgypqmjjb5f7dHH6DIA9VOa4PMM4eq11n0=";
vendorHash = "sha256-PgQs3+++iD9Lg8psTBVzF4b+kGJzhV5yNQBkw/+Dqks=";
doCheck = false;
proxyVendor = true;
@ -282,6 +291,7 @@ stdenv.mkDerivation (finalAttrs: {
platforms = platforms.unix;
maintainers = with maintainers; [
mkg20001
rhoriguchi
];
};
})

View file

@ -1,10 +1,10 @@
# See https://github.com/netdata/netdata/pull/17377#issuecomment-2183017868
# https://github.com/netdata/netdata/security/advisories/GHSA-pmhq-4cxq-wj93
diff --git a/src/collectors/plugins.d/ndsudo.c b/src/collectors/plugins.d/ndsudo.c
diff --git a/src/collectors/utils/ndsudo.c b/src/collectors/utils/ndsudo.c
index d53ca9f28..b42a121bf 100644
--- a/src/collectors/plugins.d/ndsudo.c
+++ b/src/collectors/plugins.d/ndsudo.c
--- a/src/collectors/utils/ndsudo.c
+++ b/src/collectors/utils/ndsudo.c
@@ -357,9 +357,9 @@ int main(int argc, char *argv[]) {
return 3;
}

View file

@ -0,0 +1,34 @@
--- a/CMakeLists.txt 2025-03-29 00:48:23.397111607 +0100
+++ b/CMakeLists.txt 2025-03-29 00:45:42.296199537 +0100
@@ -501,10 +501,6 @@
message(STATUS "Added compiler and linker flags for better stack trace support")
endif()
-if(ENABLE_LIBBACKTRACE)
- netdata_bundle_libbacktrace()
-endif()
-
#
# check source compilation
#
@@ -2183,8 +2179,10 @@
"$<$<BOOL:${LINK_LIBM}>:m>"
"${SYSTEMD_LDFLAGS}")
-if(HAVE_LIBBACKTRACE)
- netdata_add_libbacktrace_to_target(libnetdata)
+if(ENABLE_LIBBACKTRACE AND HAVE_LIBBACKTRACE)
+ target_link_libraries(libnetdata ${LIBBACKTRACE_LIBRARIES})
+ target_include_directories(libnetdata PUBLIC ${LIBBACKTRACE_INCLUDE_DIRS})
+ target_compile_options(libnetdata PUBLIC ${LIBBACKTRACE_CFLAGS_OTHER})
endif()
if(OS_WINDOWS)
--- /dev/null
+++ b/pkgs/tools/system/netdata/use-local-libbacktrace.patch
@@ -0,0 +1,5 @@
+FIND_PATH(LIBBACKTRACE_INCLUDE_DIR NAMES backtrace.h)
+FIND_LIBRARY(LIBBACKTRACE_LIBRARIES NAMES libbacktrace)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBBACKTRACE DEFAULT_MSG LIBBACKTRACE_LIBRARIES LIBBACKTRACE_INCLUDE_DIR)

View file

@ -509,6 +509,10 @@ mapAliases {
dibbler = throw "dibbler was removed because it is not maintained anymore"; # Added 2024-05-14
dillong = throw "'dillong' has been removed, as upstream is abandoned since 2021-12-13. Use either 'dillo' or 'dillo-plus'. The latter integrates features from dillong."; # Added 2024-10-07
diskonaut = throw "'diskonaut' was removed due to lack of upstream maintenance"; # Added 2025-01-25
dleyna-core = dleyna; # Added 2025-04-19
dleyna-connector-dbus = dleyna; # Added 2025-04-19
dleyna-renderer = dleyna; # Added 2025-04-19
dleyna-server = dleyna; # Added 2025-04-19
dnnl = throw "'dnnl' has been renamed to/replaced by 'oneDNN'"; # Converted to throw 2024-10-17
dnscrypt-wrapper = throw "dnscrypt-wrapper was removed because it has been effectively unmaintained since 2018. Use DNSCcrypt support in dnsdist instead"; # Added 2024-09-14
docear = throw "Docear was removed because it was unmaintained upstream. JabRef, Zotero, or Mendeley are potential replacements."; # Added 2024-11-02
@ -1284,6 +1288,9 @@ mapAliases {
nixosTest = testers.nixosTest; # Added 2022-05-05
nmap-unfree = throw "'nmap-unfree' has been renamed to/replaced by 'nmap'"; # Converted to throw 2024-10-17
nodejs_18 = throw "Node.js 18.x has reached End-Of-Life and has been removed"; # Added 2025-04-23
nodejs-slim_18 = nodejs_18; # Added 2025-04-23
corepack_18 = nodejs_18; # Added 2025-04-23
nodejs-18_x = nodejs_18; # Added 2022-11-06
nodejs-slim-18_x = nodejs-slim_18; # Added 2022-11-06
nomad_1_4 = throw "nomad_1_4 is no longer supported upstream. You can switch to using a newer version of the nomad package, or revert to older nixpkgs if you cannot upgrade"; # Added 2025-02-02

View file

@ -427,6 +427,7 @@ with pkgs;
hetzner = python3Packages.callPackage ../tools/networking/octodns/providers/hetzner { };
powerdns = python3Packages.callPackage ../tools/networking/octodns/providers/powerdns { };
cloudflare = python3Packages.callPackage ../tools/networking/octodns/providers/cloudflare { };
ddns = python3Packages.callPackage ../tools/networking/octodns/providers/ddns { };
};
oletools = with python3.pkgs; toPythonApplication oletools;
@ -3852,7 +3853,6 @@ with pkgs;
protobuf = protobuf_21;
};
netdataCloud = netdata.override {
withCloud = true;
withCloudUi = true;
};
@ -3877,10 +3877,6 @@ with pkgs;
nodejs-slim = nodejs-slim_22;
corepack = hiPrio corepack_22;
nodejs_18 = callPackage ../development/web/nodejs/v18.nix { };
nodejs-slim_18 = callPackage ../development/web/nodejs/v18.nix { enableNpm = false; };
corepack_18 = hiPrio (callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_18; });
nodejs_20 = callPackage ../development/web/nodejs/v20.nix { };
nodejs-slim_20 = callPackage ../development/web/nodejs/v20.nix { enableNpm = false; };
corepack_20 = hiPrio (callPackage ../development/web/nodejs/corepack.nix { nodejs = nodejs_20; });
@ -11083,7 +11079,7 @@ with pkgs;
lemmy-server = callPackage ../servers/web-apps/lemmy/server.nix { };
lemmy-ui = callPackage ../servers/web-apps/lemmy/ui.nix {
nodejs = nodejs_18;
nodejs = nodejs_20;
};
mailmanPackages = callPackage ../servers/mail/mailman { };
@ -15118,9 +15114,7 @@ with pkgs;
vdirsyncer = with python3Packages; toPythonApplication vdirsyncer;
vengi-tools = callPackage ../applications/graphics/vengi-tools {
inherit (darwin.apple_sdk_11_0.frameworks) CoreServices;
};
vengi-tools = callPackage ../applications/graphics/vengi-tools { };
veusz = libsForQt5.callPackage ../applications/graphics/veusz { };
@ -15274,7 +15268,7 @@ with pkgs;
};
openvscode-server = callPackage ../servers/openvscode-server {
nodejs = nodejs_18;
nodejs = nodejs_20;
};
code-server = callPackage ../servers/code-server {

View file

@ -2659,6 +2659,10 @@ self: super: with self; {
colcon-argcomplete = callPackage ../development/python-modules/colcon-argcomplete { };
colcon-defaults = callPackage ../development/python-modules/colcon-defaults { };
colcon-notification = callPackage ../development/python-modules/colcon-notification { };
collections-extended = callPackage ../development/python-modules/collections-extended { };
collidoscope = callPackage ../development/python-modules/collidoscope { };