Skip to content

Commit

Permalink
Merge staging-next into staging
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] authored Apr 12, 2024
2 parents 9d6bc81 + 35713de commit c824ea3
Show file tree
Hide file tree
Showing 119 changed files with 2,269 additions and 1,907 deletions.
1 change: 1 addition & 0 deletions maintainers/team-list.nix
Original file line number Diff line number Diff line change
Expand Up @@ -451,6 +451,7 @@ with lib.maintainers; {
# Verify additions to this team with at least one already existing member of the team.
members = [
das_j
conni2461
];
scope = "Group registration for packages maintained by Helsinki Systems";
shortName = "Helsinki Systems employees";
Expand Down
2 changes: 2 additions & 0 deletions nixos/doc/manual/release-notes/rl-2405.section.md
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m

- `services.neo4j.allowUpgrade` was removed and no longer has any effect. Neo4j 5 supports automatic rolling upgrades.

- `unifiLTS`, `unifi5` and `unifi6` have been removed, as they require MongoDB versions which are end-of-life. All these versions can be upgraded to `unifi7` directly.

- `nitter` requires a `guest_accounts.jsonl` to be provided as a path or loaded into the default location at `/var/lib/nitter/guest_accounts.jsonl`. See [Guest Account Branch Deployment](https://github.com/zedeus/nitter/wiki/Guest-Account-Branch-Deployment) for details.

- `boot.supportedFilesystems` and `boot.initrd.supportedFilesystems` are now attribute sets instead of lists. Assignment from lists as done previously is still supported, but checking whether a filesystem is enabled must now by done using `supportedFilesystems.fs or false` instead of using `lib.elem "fs" supportedFilesystems` as was done previously.
Expand Down
5 changes: 3 additions & 2 deletions nixos/modules/services/databases/redis.nix
Original file line number Diff line number Diff line change
Expand Up @@ -338,7 +338,7 @@ in {
after = [ "network.target" ];

serviceConfig = {
ExecStart = "${cfg.package}/bin/redis-server /var/lib/${redisName name}/redis.conf ${escapeShellArgs conf.extraParams}";
ExecStart = "${cfg.package}/bin/${cfg.package.serverBin or "redis-server"} /var/lib/${redisName name}/redis.conf ${escapeShellArgs conf.extraParams}";
ExecStartPre = "+"+pkgs.writeShellScript "${redisName name}-prep-conf" (let
redisConfVar = "/var/lib/${redisName name}/redis.conf";
redisConfRun = "/run/${redisName name}/nixos.conf";
Expand Down Expand Up @@ -391,7 +391,8 @@ in {
RestrictAddressFamilies = [ "AF_INET" "AF_INET6" "AF_UNIX" ];
RestrictNamespaces = true;
LockPersonality = true;
MemoryDenyWriteExecute = true;
# we need to disable MemoryDenyWriteExecute for keydb
MemoryDenyWriteExecute = cfg.package.pname != "keydb";
RestrictRealtime = true;
RestrictSUIDSGID = true;
PrivateMounts = true;
Expand Down
117 changes: 80 additions & 37 deletions nixos/tests/redis.nix
Original file line number Diff line number Diff line change
@@ -1,44 +1,87 @@
import ./make-test-python.nix ({ pkgs, lib, ... }:
{
name = "redis";
meta.maintainers = with lib.maintainers; [ flokli ];

nodes = {
machine =
{ pkgs, lib, ... }:

{
services.redis.servers."".enable = true;
services.redis.servers."test".enable = true;

users.users = lib.listToAttrs (map (suffix: lib.nameValuePair "member${suffix}" {
createHome = false;
description = "A member of the redis${suffix} group";
isNormalUser = true;
extraGroups = [ "redis${suffix}" ];
}) ["" "-test"]);
};
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../../.. { inherit system config; },

lib ? pkgs.lib,
}:
let
makeTest = import ./make-test-python.nix;
mkTestName =
pkg: "${pkg.pname}_${builtins.replaceStrings [ "." ] [ "" ] (lib.versions.majorMinor pkg.version)}";
redisPackages = {
inherit (pkgs) redis keydb;
};
makeRedisTest =
{
package,
name ? mkTestName package,
}:
makeTest {
inherit name;
meta.maintainers = [
lib.maintainers.flokli
lib.teams.helsinki-systems.members
];

nodes = {
machine =
{ lib, ... }:

{
services = {
redis = {
inherit package;
servers."".enable = true;
servers."test".enable = true;
};
};

users.users = lib.listToAttrs (
map
(
suffix:
lib.nameValuePair "member${suffix}" {
createHome = false;
description = "A member of the redis${suffix} group";
isNormalUser = true;
extraGroups = [ "redis${suffix}" ];
}
)
[
""
"-test"
]
);
};
};

testScript = { nodes, ... }: let
inherit (nodes.machine.config.services) redis;
in ''
start_all()
machine.wait_for_unit("redis")
machine.wait_for_unit("redis-test")
testScript =
{ nodes, ... }:
let
inherit (nodes.machine.services) redis;
in
''
start_all()
machine.wait_for_unit("redis")
machine.wait_for_unit("redis-test")
# The unnamed Redis server still opens a port for backward-compatibility
machine.wait_for_open_port(6379)
# The unnamed Redis server still opens a port for backward-compatibility
machine.wait_for_open_port(6379)
machine.wait_for_file("${redis.servers."".unixSocket}")
machine.wait_for_file("${redis.servers."test".unixSocket}")
machine.wait_for_file("${redis.servers."".unixSocket}")
machine.wait_for_file("${redis.servers."test".unixSocket}")
# The unix socket is accessible to the redis group
machine.succeed('su member -c "redis-cli ping | grep PONG"')
machine.succeed('su member-test -c "redis-cli ping | grep PONG"')
# The unix socket is accessible to the redis group
machine.succeed('su member -c "${pkgs.redis}/bin/redis-cli ping | grep PONG"')
machine.succeed('su member-test -c "${pkgs.redis}/bin/redis-cli ping | grep PONG"')
machine.succeed("redis-cli ping | grep PONG")
machine.succeed("redis-cli -s ${redis.servers."".unixSocket} ping | grep PONG")
machine.succeed("redis-cli -s ${redis.servers."test".unixSocket} ping | grep PONG")
'';
})
machine.succeed("${pkgs.redis}/bin/redis-cli ping | grep PONG")
machine.succeed("${pkgs.redis}/bin/redis-cli -s ${redis.servers."".unixSocket} ping | grep PONG")
machine.succeed("${pkgs.redis}/bin/redis-cli -s ${
redis.servers."test".unixSocket
} ping | grep PONG")
'';
};
in
lib.mapAttrs (_: package: makeRedisTest { inherit package; }) redisPackages
4 changes: 1 addition & 3 deletions nixos/tests/unifi.nix
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@ let
'';
};
in with pkgs; {
unifiLTS = makeAppTest unifiLTS;
unifi5 = makeAppTest unifi5;
unifi6 = makeAppTest unifi6;
unifi7 = makeAppTest unifi7;
unifi8 = makeAppTest unifi8;
}
4 changes: 2 additions & 2 deletions pkgs/applications/audio/cardinal/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,11 @@

stdenv.mkDerivation rec {
pname = "cardinal";
version = "23.10";
version = "24.04";

src = fetchurl {
url = "https://github.com/DISTRHO/Cardinal/releases/download/${version}/cardinal+deps-${version}.tar.xz";
hash = "sha256-6Wt2sC7vdrz2Fkl08bNLfnGu+pAV7b5lZUmsx1wtJRE=";
hash = "sha256-vowDdHAXVZ+HSMoQsvJdzghsJzH+OrSpx6MxPRAgtJA=";
};

prePatch = ''
Expand Down
6 changes: 3 additions & 3 deletions pkgs/applications/blockchains/optimism/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,19 @@

buildGoModule rec {
pname = "optimism";
version = "1.7.2";
version = "1.7.3";

src = fetchFromGitHub {
owner = "ethereum-optimism";
repo = "optimism";
rev = "op-node/v${version}";
hash = "sha256-p3dbyszUeknAXrI1WqN9WS6AkEYQdVfMP90Kk/L41vM=";
hash = "sha256-KKCVjGBQeO5K6wq3GV3f7qaGY1uXNPI27w4DEC31pzU=";
fetchSubmodules = true;
};

subPackages = [ "op-node/cmd" "op-proposer/cmd" "op-batcher/cmd" ];

vendorHash = "sha256-24zj480UU9SYqr2mV6rCJ46gwLgzilLuhqrkNKHVR28=";
vendorHash = "sha256-pQhNXOYohBoV5QsBnNpNjFg+Vvk5jK1zvSKkolp4yiQ=";

buildInputs = [
libpcap
Expand Down
23 changes: 23 additions & 0 deletions pkgs/applications/editors/android-studio/common.nix
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,21 @@
, gzip
, fontconfig
, freetype
, libbsd
, libpulseaudio
, libGL
, libdrm
, libpng
, libuuid
, libX11
, libxcb
, libxkbcommon
, xcbutilwm
, xcbutilrenderutil
, xcbutilkeysyms
, xcbutilimage
, xcbutilcursor
, libxkbfile
, libXcomposite
, libXcursor
, libXdamage
Expand All @@ -51,6 +61,7 @@
, which
, runCommand
, xkeyboard_config
, xorg
, zlib
, makeDesktopItem
, tiling_wm # if we are using a tiling wm, need to set _JAVA_AWT_WM_NONREPARENTING in wrapper
Expand Down Expand Up @@ -136,15 +147,27 @@ let
alsa-lib
dbus
expat
libbsd
libpulseaudio
libuuid
libX11
libxcb
libxkbcommon
xcbutilwm
xcbutilrenderutil
xcbutilkeysyms
xcbutilimage
xcbutilcursor
xorg.libICE
xorg.libSM
libxkbfile
libXcomposite
libXcursor
libXdamage
libXfixes
libGL
libdrm
libpng
nspr
nss_latest
systemd
Expand Down
21 changes: 21 additions & 0 deletions pkgs/applications/editors/vscode/extensions/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -4099,6 +4099,27 @@ let

sumneko.lua = callPackage ./sumneko.lua { };

supermaven.supermaven = buildVscodeMarketplaceExtension {
mktplcRef = {
hash = "sha256-O3AN8fy28ZSun+k6MJnJdFcmwDDE21ib+I9HtDE0JwU=";
name = "supermaven";
publisher = "supermaven";
version = "0.1.42";
};
meta = {
changelog = "https://marketplace.visualstudio.com/items/supermaven.supermaven/changelog";
description = "A Visual Studio Code extension for code completion suggestions";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=supermaven.supermaven";
homepage = "https://supermaven.com/";
license = lib.licenses.unfree;
longDescription = ''
Supermaven uses a 300,000 token context window to provide you the best code completion suggestions and the lowest latency.
With our extension you will get the fastest and best completions of any tool on the market.
'';
maintainers = [ lib.maintainers.msanft ];
};
};

svelte.svelte-vscode = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "svelte-vscode";
Expand Down
32 changes: 32 additions & 0 deletions pkgs/applications/emulators/dosbox-x/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
, fluidsynth
, freetype
, glib
, libicns
, libpcap
, libpng
, libslirp
Expand All @@ -18,6 +19,7 @@
, makeWrapper
, ncurses
, pkg-config
, python3
, SDL2
, SDL2_net
, testers
Expand All @@ -36,12 +38,29 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-EcAp7KyqXdBACEbPgkM1INoKeGVo7hMDUx97y2RcX+k=";
};

# sips is unavailable in sandbox, replacing with imagemagick breaks build due to wrong Foundation propagation(?) so don't generate resolution variants
# iconutil is unavailable, replace with png2icns from libicns
# Patch bad hardcoded compiler
# Don't mess with codesign, doesn't seem to work?
postPatch = ''
substituteInPlace Makefile.am \
--replace-fail 'sips' '## sips' \
--replace-fail 'iconutil -c icns -o contrib/macos/dosbox.icns src/dosbox.iconset' 'png2icns contrib/macos/dosbox.icns contrib/macos/dosbox-x.png' \
--replace-fail 'g++' "$CXX" \
--replace-fail 'codesign' '## codesign'
'' + lib.optionalString stdenv.hostPlatform.isDarwin ''
patchShebangs appbundledeps.py
'';

strictDeps = true;

nativeBuildInputs = [
autoreconfHook
makeWrapper
pkg-config
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
libicns
python3
];

buildInputs = [
Expand Down Expand Up @@ -75,9 +94,22 @@ stdenv.mkDerivation (finalAttrs: {

hardeningDisable = [ "format" ]; # https://github.com/joncampbell123/dosbox-x/issues/4436

# Build optional App Bundle target, which needs at least one arch-suffixed binary
postBuild = lib.optionalString stdenv.hostPlatform.isDarwin ''
cp src/dosbox-x src/dosbox-x-$(uname -m)
make dosbox-x.app
'';

postInstall = lib.optionalString stdenv.hostPlatform.isLinux ''
wrapProgram $out/bin/dosbox-x \
--prefix PATH : ${lib.makeBinPath [ yad ]}
''
# Install App Bundle, wrap regular binary into bundle's binary to get the icon working
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir $out/Applications
mv dosbox-x.app $out/Applications/
mv $out/bin/dosbox-x $out/Applications/dosbox-x.app/Contents/MacOS/dosbox-x
makeWrapper $out/Applications/dosbox-x.app/Contents/MacOS/dosbox-x $out/bin/dosbox-x
'';

passthru.tests.version = testers.testVersion {
Expand Down
10 changes: 5 additions & 5 deletions pkgs/applications/misc/josm/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@
}:
let
pname = "josm";
version = "19017";
version = "19039";
srcs = {
jar = fetchurl {
url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
hash = "sha256-+PSsvauVe+e+qB7sz9AFmC/dZhWHFHe0zWYPEhgvRIQ=";
hash = "sha256-iH6g18lJrvfAvtkAaVPSK7vhgdU6oI7X10GkFcwpsBs=";
};
macosx = fetchurl {
url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java17.zip";
hash = "sha256-QYvAC+W7gHC5unwfcbQ0sz5U1VkMwIIUkDWQK9vDe2A=";
url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java21.zip";
hash = "sha256-yA+Qf76MbouiLdH9o1Ri8ptbG70YZoI13pBA9Ki61/0=";
};
pkg = fetchsvn {
url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested";
rev = version;
sha256 = "sha256-Pb4EAyvERz6kP3EmkgmUy/58KQHhBJmZJvpAj72GCIk=";
sha256 = "sha256-L7P6FtqKLB4e+ezPzXePM33qj5esNoRlTFXi0/GhdsA=";
};
};

Expand Down
Loading

0 comments on commit c824ea3

Please sign in to comment.