river: rename to river-classic

Changed files
+49 -35
nixos
doc
manual
modules
programs
wayland
tests
pkgs
by-name
ri
river
river-bedload
river-classic
rivercarro
top-level
+1 -1
nixos/doc/manual/release-notes/rl-2311.section.md
···
[services.frp](#opt-services.frp.enable).
- [river](https://github.com/riverwm/river), A dynamic tiling wayland
-
compositor. Available as [programs.river](#opt-programs.river.enable).
+
compositor. Available as `programs.river`.
- [wayfire](https://wayfire.org), a modular and extensible wayland compositor.
Available as [programs.wayfire](#opt-programs.wayfire.enable).
+2
nixos/doc/manual/release-notes/rl-2511.section.md
···
- NixOS display manager modules now strictly use tty1, where many of them previously used tty7. Options to configure display managers' VT have been dropped. A configuration with a display manager enabled will not start `getty@tty1.service`, even if the system is forced to boot into `multi-user.target` instead of `graphical.target`.
+
- `river` 0.3.x has been renamed to `river-classic` upstream, and the package renamed accordingly. `programs.river` has been renamed to `programs.river-classic`.
+
- `command-not-found` package is now disabled by default; it works only for nix-channels based systems, and requires setup for it to work.
- The systemd target `kbrequest.target` is now unset by default, instead of being forcibly symlinked to `rescue.target`. In case you were relying on this behavior (Alt + ArrowUp on the tty causing the current target to be changed to `rescue.target`), you can restore it by setting `systemd.targets.rescue.aliases = [ "kbrequest.target" ];` in your configuration.
+20 -4
nixos/modules/programs/wayland/river.nix
···
}:
let
-
cfg = config.programs.river;
+
cfg = config.programs.river-classic;
wayland-lib = import ./lib.nix { inherit lib; };
in
{
-
options.programs.river = {
-
enable = lib.mkEnableOption "river, a dynamic tiling Wayland compositor";
+
options.programs.river-classic = {
+
enable = lib.mkEnableOption "river-classic, a dynamic tiling Wayland compositor";
package =
-
lib.mkPackageOption pkgs "river" {
+
lib.mkPackageOption pkgs "river-classic" {
nullable = true;
extraDescription = ''
If the package is not overridable with `xwaylandSupport`, then the module option
···
'';
};
};
+
+
imports = [
+
(lib.mkRenamedOptionModule [ "programs" "river" "enable" ] [ "programs" "river-classic" "enable" ])
+
(lib.mkRenamedOptionModule
+
[ "programs" "river" "package" ]
+
[ "programs" "river-classic" "package" ]
+
)
+
(lib.mkRenamedOptionModule
+
[ "programs" "river" "xwayland" "enable" ]
+
[ "programs" "river-classic" "xwayland" "enable" ]
+
)
+
(lib.mkRenamedOptionModule
+
[ "programs" "river" "extraPackages" ]
+
[ "programs" "river-classic" "extraPackages" ]
+
)
+
];
config = lib.mkIf cfg.enable (
lib.mkMerge [
+1 -1
nixos/tests/lemurs/lemurs-wayland.nix
···
services.displayManager.lemurs.enable = true;
-
programs.river.enable = true;
+
programs.river-classic.enable = true;
};
testScript = ''
+2 -2
pkgs/by-name/ri/river-bedload/package.nix
···
lib,
pkg-config,
stdenv,
-
river,
+
river-classic,
wayland,
wayland-protocols,
wayland-scanner,
···
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ adamcstephens ];
mainProgram = "river-bedload";
-
inherit (river.meta) platforms;
+
inherit (river-classic.meta) platforms;
};
})
+12
pkgs/by-name/ri/river-classic/update.sh
···
+
#!/usr/bin/env nix-shell
+
#!nix-shell -i bash -p bash common-updater-scripts gnused zon2nix
+
+
latest_tag=$(list-git-tags --url=https://codeberg.org/river/river-classic | sed 's/^v//' | sort --version-sort | tail --lines=1)
+
+
update-source-version river-classic "$latest_tag"
+
+
wget "https://codeberg.org/river/river-classic/raw/tag/v${latest_tag}/build.zig.zon"
+
zon2nix build.zig.zon >pkgs/by-name/ri/river-classic/build.zig.zon.nix
+
nixfmt pkgs/by-name/ri/river-classic/build.zig.zon.nix
+
+
rm -f build.zig.zon build.zig.zon.nix
pkgs/by-name/ri/river/build.zig.zon.nix pkgs/by-name/ri/river-classic/build.zig.zon.nix
+8 -13
pkgs/by-name/ri/river/package.nix pkgs/by-name/ri/river-classic/package.nix
···
}:
stdenv.mkDerivation (finalAttrs: {
-
pname = "river";
+
pname = "river-classic";
version = "0.3.11";
outputs = [ "out" ] ++ lib.optionals withManpages [ "man" ];
···
src = fetchFromGitea {
domain = "codeberg.org";
owner = "river";
-
repo = "river";
+
repo = "river-classic";
hash = "sha256-7LC5nxan9jmjjt29afkps9H/sfhfIqpvBxvCKb0zvNM=";
tag = "v${finalAttrs.version}";
};
···
};
meta = {
-
homepage = "https://codeberg.org/river/river";
+
homepage = "https://codeberg.org/river/river-classic";
description = "Dynamic tiling wayland compositor";
longDescription = ''
-
River is a dynamic tiling Wayland compositor with flexible runtime
+
river-classic is a dynamic tiling Wayland compositor with flexible runtime
configuration.
-
Its design goals are:
-
- Simple and predictable behavior, river should be easy to use and have a
-
low cognitive load.
-
- Window management based on a stack of views and tags.
-
- Dynamic layouts generated by external, user-written executables. A
-
default rivertile layout generator is provided.
-
- Scriptable configuration and control through a custom Wayland protocol
-
and separate riverctl binary implementing it.
+
It is a fork of river 0.3 intended for users that are happy with how river 0.3
+
works and do not wish to deal with the majorly breaking changes planned for
+
the river 0.4.0 release.
'';
-
changelog = "https://codeberg.org/river/river/releases/tag/v${finalAttrs.version}";
+
changelog = "https://codeberg.org/river/river-classic/releases/tag/v${finalAttrs.version}";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
adamcstephens
-12
pkgs/by-name/ri/river/update.sh
···
-
#!/usr/bin/env nix-shell
-
#!nix-shell -i bash -p bash common-updater-scripts gnused zon2nix
-
-
latest_tag=$(list-git-tags --url=https://codeberg.org/river/river | sed 's/^v//' | sort --version-sort | tail --lines=1)
-
-
update-source-version river "$latest_tag"
-
-
wget "https://codeberg.org/river/river/raw/tag/v${latest_tag}/build.zig.zon"
-
zon2nix build.zig.zon >pkgs/by-name/ri/river/build.zig.zon.nix
-
nixfmt pkgs/by-name/ri/river/build.zig.zon.nix
-
-
rm -f build.zig.zon build.zig.zon.nix
+2 -2
pkgs/by-name/ri/rivercarro/package.nix
···
callPackage,
fetchFromSourcehut,
pkg-config,
-
river,
+
river-classic,
wayland,
wayland-protocols,
wayland-scanner,
···
nativeBuildInputs = [
pkg-config
-
river
+
river-classic
wayland
wayland-protocols
wayland-scanner
+1
pkgs/top-level/aliases.nix
···
riko4 = throw "'riko4' has been removed as it was unmaintained, failed to build and dependend on outdated libraries"; # Added 2025-05-18
rippled = throw "rippled has been removed as it was broken and had not been updated since 2022"; # Added 2024-11-25
rippled-validator-keys-tool = throw "rippled-validator-keys-tool has been removed as it was broken and had not been updated since 2022"; # Added 2024-11-25
+
river = throw "'river' has been renamed to/replaced by 'river-classic'"; # Added 2025-08-30
rke2_1_29 = throw "'rke2_1_29' has been removed from nixpkgs as it has reached end of life"; # Added 2025-05-05
rke2_testing = throw "'rke2_testing' has been removed from nixpkgs as the RKE2 testing channel no longer serves releases"; # Added 2025-06-02
rl_json = tclPackages.rl_json; # Added 2025-05-03