Skip to content

Commit e06158e

Browse files
committed
staging-next 2025-05-07 (#404858)
2 parents 78db512 + f5ff6a9 commit e06158e

File tree

355 files changed

+5714
-2870
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

355 files changed

+5714
-2870
lines changed

doc/languages-frameworks/haskell.section.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -779,7 +779,7 @@ that depend on that library, you may want to use:
779779
780780
```nix
781781
haskellPackages.haskell-ci.overrideScope (self: super: {
782-
Cabal = self.Cabal_3_14_1_1;
782+
Cabal = self.Cabal_3_14_2_0;
783783
})
784784
```
785785

doc/stdenv/stdenv.chapter.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1141,12 +1141,15 @@ They cannot be overridden without rebuilding the package.
11411141

11421142
If dependencies should be resolved at runtime, use `--suffix` to append fallback values to `PATH`.
11431143

1144-
There’s many more kinds of arguments, they are documented in `nixpkgs/pkgs/build-support/setup-hooks/make-wrapper.sh` for the `makeWrapper` implementation and in `nixpkgs/pkgs/build-support/setup-hooks/make-binary-wrapper/make-binary-wrapper.sh` for the `makeBinaryWrapper` implementation.
1144+
There’s many more kinds of arguments, they are documented in `nixpkgs/pkgs/build-support/setup-hooks/make-wrapper.sh` for the `makeWrapper` implementation and in `nixpkgs/pkgs/by-name/ma/makeBinaryWrapper/make-binary-wrapper.sh` for the `makeBinaryWrapper` implementation.
11451145

11461146
`wrapProgram` is a convenience function you probably want to use most of the time, implemented by both `makeWrapper` and `makeBinaryWrapper`.
11471147

11481148
Using the `makeBinaryWrapper` implementation is usually preferred, as it creates a tiny _compiled_ wrapper executable, that can be used as a shebang interpreter. This is needed mostly on Darwin, where shebangs cannot point to scripts, [due to a limitation with the `execve`-syscall](https://stackoverflow.com/questions/67100831/macos-shebang-with-absolute-path-not-working). Compiled wrappers generated by `makeBinaryWrapper` can be inspected with `less <path-to-wrapper>` - by scrolling past the binary data you should be able to see the shell command that generated the executable and there see the environment variables that were injected into the wrapper.
11491149

1150+
However, `makeWrapper` is more flexible and implements more arguments.
1151+
Use `makeWrapper` if you need the wrapper to use shell features (e.g. look up environment variables) at runtime.
1152+
11501153
### `remove-references-to -t` \<storepath\> [ `-t` \<storepath\> ... ] \<file\> ... {#fun-remove-references-to}
11511154

11521155
Removes the references of the specified files to the specified store files. This is done without changing the size of the file by replacing the hash by `eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee`, and should work on compiled executables. This is meant to be used to remove the dependency of the output on inputs that are known to be unnecessary at runtime. Of course, reckless usage will break the patched programs.

maintainers/scripts/luarocks-packages.csv

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,6 @@ luazip,,,,,,
106106
lusc_luv,,,,,,
107107
lush.nvim,,,https://luarocks.org/dev,,,teto
108108
luuid,,,,20120509-2,,
109-
luv,,,,1.48.0-2,,
110109
lyaml,,,,,,lblasc
111110
lz.n,,,,,,mrcjkb
112111
lze,,,,,,birdee

nixos/doc/manual/release-notes/rl-2505.section.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,16 @@
2222

2323
- OpenSSH has been updated from 9.9p2 to 10.0p2, dropping support for DSA keys and adding a new `ssh-auth` binary to handle user authentication in a different address space from unauthenticated sessions. Additionally, we now enable a configure option by default that attempts to lock sshd into RAM to prevent it from being swapped out, which may improve performance if the system is under memory pressure. See the [full changelog](https://www.openwall.com/lists/oss-security/2025/04/09/1) for more details.
2424

25+
- GNOME has been updated to version 48.
26+
27+
- `decibels` music player is now installed by default. You can disable it using [](#opt-environment.gnome.excludePackages).
28+
- `gnome-shell-extensions` extension collection (which included GNOME Classic extensions, Apps Menu, and User Themes, among others) are no longer installed by default. You can install them again with [](#opt-services.xserver.desktopManager.gnome.sessionPath).
29+
- Option [](#opt-services.gnome.core-developer-tools.enable) now also installs `sysprof` and `d-spy`.
30+
- Option `services.gnome.core-utilities.enable` has been renamed to [](#opt-services.gnome.core-apps.enable).
31+
- `cantarell-fonts`, `source-code-pro` and `source-sans` fonts are no longer installed by default. They have been replaced by `adwaita-fonts`.
32+
33+
Refer to the [GNOME release notes](https://release.gnome.org/48/) for more details.
34+
2535
- The `intel` video driver for X.org (from the xf86-video-intel package, which was previously removed because it was non-functional) has been fixed and the driver has been re-introduced.
2636

2737
- The Mattermost module ([`services.mattermost`](#opt-services.mattermost.enable)) and packages (`mattermost` and `mmctl`) have been substantially updated:

nixos/modules/services/accessibility/speechd.nix

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
let
88
cfg = config.services.speechd;
99
inherit (lib)
10-
getExe
1110
mkEnableOption
1211
mkIf
1312
mkPackageOption
@@ -21,12 +20,12 @@ in
2120
package = mkPackageOption pkgs "speechd" { };
2221
};
2322

24-
# FIXME: speechd 0.12 (or whatever the next version is)
25-
# will support socket activation, so switch to that once it's out.
2623
config = mkIf cfg.enable {
2724
environment = {
2825
systemPackages = [ cfg.package ];
29-
sessionVariables.SPEECHD_CMD = getExe cfg.package;
3026
};
27+
systemd.packages = [ cfg.package ];
28+
# have to set `wantedBy` since `systemd.packages` ignores `[Install]`
29+
systemd.user.sockets.speech-dispatcher.wantedBy = [ "sockets.target" ];
3130
};
3231
}

nixos/modules/services/x11/desktop-managers/gnome.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,15 @@ To enable the GNOME desktop use:
1919
While it is not strictly necessary to use GDM as the display manager with GNOME, it is recommended, as some features such as screen lock [might not work](#sec-gnome-faq-can-i-use-lightdm-with-gnome) without it.
2020
:::
2121

22-
The default applications used in NixOS are very minimal, inspired by the defaults used in [gnome-build-meta](https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/40.0/elements/core/meta-gnome-core-utilities.bst).
22+
The default applications used in NixOS are very minimal, inspired by the defaults used in [gnome-build-meta](https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/48.0/elements/core/meta-gnome-core-apps.bst).
2323

2424
### GNOME without the apps {#sec-gnome-without-the-apps}
2525

2626
If you’d like to only use the GNOME desktop and not the apps, you can disable them with:
2727

2828
```nix
2929
{
30-
services.gnome.core-utilities.enable = false;
30+
services.gnome.core-apps.enable = false;
3131
}
3232
```
3333

nixos/modules/services/x11/desktop-managers/gnome.nix

Lines changed: 22 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,19 @@ in
8484
maintainers = lib.teams.gnome.members;
8585
};
8686

87+
imports = [
88+
(lib.mkRenamedOptionModule
89+
[ "services" "gnome" "core-utilities" "enable" ]
90+
[ "services" "gnome" "core-apps" "enable" ]
91+
)
92+
];
93+
8794
options = {
8895

8996
services.gnome = {
9097
core-os-services.enable = mkEnableOption "essential services for GNOME3";
9198
core-shell.enable = mkEnableOption "GNOME Shell services";
92-
core-utilities.enable = mkEnableOption "GNOME core utilities";
99+
core-apps.enable = mkEnableOption "GNOME core apps";
93100
core-developer-tools.enable = mkEnableOption "GNOME core developer tools";
94101
games.enable = mkEnableOption "GNOME games";
95102
};
@@ -213,7 +220,7 @@ in
213220

214221
services.gnome.core-os-services.enable = true;
215222
services.gnome.core-shell.enable = true;
216-
services.gnome.core-utilities.enable = mkDefault true;
223+
services.gnome.core-apps.enable = mkDefault true;
217224

218225
services.displayManager.sessionPackages = [ pkgs.gnome-session.sessions ];
219226

@@ -326,17 +333,9 @@ in
326333
})
327334

328335
(lib.mkIf serviceCfg.core-shell.enable {
329-
services.xserver.desktopManager.gnome.sessionPath =
330-
let
331-
mandatoryPackages = [
332-
pkgs.gnome-shell
333-
];
334-
optionalPackages = [
335-
pkgs.gnome-shell-extensions
336-
];
337-
in
338-
mandatoryPackages
339-
++ utils.removePackagesByName optionalPackages config.environment.gnome.excludePackages;
336+
services.xserver.desktopManager.gnome.sessionPath = [
337+
pkgs.gnome-shell
338+
];
340339

341340
services.colord.enable = mkDefault true;
342341
services.gnome.glib-networking.enable = true;
@@ -380,14 +379,11 @@ in
380379

381380
services.orca.enable = notExcluded pkgs.orca;
382381

383-
fonts.packages = with pkgs; [
384-
cantarell-fonts
385-
dejavu_fonts
386-
source-code-pro # Default monospace font in 3.32
387-
source-sans
388-
];
382+
fonts.packages = utils.removePackagesByName [
383+
pkgs.adwaita-fonts
384+
] config.environment.gnome.excludePackages;
389385

390-
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-38/elements/core/meta-gnome-core-shell.bst
386+
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-48/elements/core/meta-gnome-core-shell.bst
391387
environment.systemPackages =
392388
let
393389
mandatoryPackages = [
@@ -400,7 +396,6 @@ in
400396
pkgs.gnome-bluetooth
401397
pkgs.gnome-color-manager
402398
pkgs.gnome-control-center
403-
pkgs.gnome-shell-extensions
404399
pkgs.gnome-tour # GNOME Shell detects the .desktop file on first log-in.
405400
pkgs.gnome-user-docs
406401
pkgs.glib # for gsettings program
@@ -414,11 +409,12 @@ in
414409
++ utils.removePackagesByName optionalPackages config.environment.gnome.excludePackages;
415410
})
416411

417-
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/-/blob/gnome-45/elements/core/meta-gnome-core-utilities.bst
418-
(lib.mkIf serviceCfg.core-utilities.enable {
412+
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/-/blob/gnome-48/elements/core/meta-gnome-core-apps.bst
413+
(lib.mkIf serviceCfg.core-apps.enable {
419414
environment.systemPackages = utils.removePackagesByName (
420415
[
421416
pkgs.baobab
417+
pkgs.decibels
422418
pkgs.epiphany
423419
pkgs.gnome-text-editor
424420
pkgs.gnome-calculator
@@ -500,17 +496,19 @@ in
500496
] config.environment.gnome.excludePackages;
501497
})
502498

503-
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/-/blob/3.38.0/elements/core/meta-gnome-core-developer-tools.bst
499+
# Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/-/blob/gnome-48/elements/core/meta-gnome-core-developer-tools.bst
504500
(lib.mkIf serviceCfg.core-developer-tools.enable {
505501
environment.systemPackages = utils.removePackagesByName [
506502
pkgs.dconf-editor
507503
pkgs.devhelp
504+
pkgs.d-spy
508505
pkgs.gnome-builder
509506
# boxes would make sense in this option, however
510507
# it doesn't function well enough to be included
511508
# in default configurations.
512509
# https://github.com/NixOS/nixpkgs/issues/60908
513510
# pkgs.gnome-boxes
511+
pkgs.sysprof
514512
] config.environment.gnome.excludePackages;
515513

516514
services.sysprof.enable = notExcluded pkgs.sysprof;

nixos/modules/services/x11/display-managers/gdm.nix

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,10 @@ in
211211
pkgs.gnome-session
212212
pkgs.gnome-shell
213213
];
214-
environment.systemPackages = [ pkgs.adwaita-icon-theme ];
214+
environment.systemPackages = [
215+
pkgs.adwaita-icon-theme
216+
pkgs.gdm # For polkit rules
217+
];
215218

216219
# We dont use the upstream gdm service
217220
# it has to be disabled since the gdm package has it

nixos/modules/system/boot/systemd/initrd.nix

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -132,13 +132,20 @@ let
132132
initialRamdisk = pkgs.makeInitrdNG {
133133
name = "initrd-${kernel-name}";
134134
inherit (config.boot.initrd) compressor compressorArgs prepend;
135-
inherit (cfg) strip;
136135

137136
contents = lib.filter ({ source, ... }: !lib.elem source cfg.suppressedStorePaths) cfg.storePaths;
138137
};
139138

140139
in
141140
{
141+
imports = [
142+
(lib.mkRemovedOptionModule [ "boot" "initrd" "systemd" "strip" ] ''
143+
The option to strip ELF files in initrd has been removed.
144+
It only saved ~1MiB of initramfs size, but caused a few issues
145+
like unloadable kernel modules.
146+
'')
147+
];
148+
142149
options.boot.initrd.systemd = {
143150
enable = mkEnableOption "systemd in initrd" // {
144151
description = ''
@@ -208,19 +215,6 @@ in
208215
default = [ ];
209216
};
210217

211-
strip = mkOption {
212-
description = ''
213-
Whether to completely strip executables and libraries copied to the initramfs.
214-
215-
Setting this to false may save on the order of 30MiB on the
216-
machine building the system (by avoiding a binutils
217-
reference), at the cost of ~1MiB of initramfs size. This puts
218-
this option firmly in the territory of micro-optimisation.
219-
'';
220-
type = types.bool;
221-
default = true;
222-
};
223-
224218
extraBin = mkOption {
225219
description = ''
226220
Tools to add to /bin

pkgs/applications/editors/eclipse/build-eclipse.nix

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
libXtst,
1515
libsecret,
1616
gsettings-desktop-schemas,
17-
webkitgtk_4_0,
17+
webkitgtk_4_1,
1818
makeWrapper,
1919
perl,
2020
...
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
5757
libXtst
5858
libsecret
5959
zlib
60-
] ++ lib.optional (webkitgtk_4_0 != null) webkitgtk_4_0;
60+
] ++ lib.optional (webkitgtk_4_1 != null) webkitgtk_4_1;
6161

6262
buildCommand = ''
6363
# Unpack tarball.
@@ -93,7 +93,7 @@ stdenv.mkDerivation rec {
9393
libXtst
9494
libsecret
9595
]
96-
++ lib.optional (webkitgtk_4_0 != null) webkitgtk_4_0
96+
++ lib.optional (webkitgtk_4_1 != null) webkitgtk_4_1
9797
)
9898
} \
9999
--prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules" \

0 commit comments

Comments
 (0)