mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-25 08:23:09 +00:00
nixos/niri: init module (#348193)
This commit is contained in:
commit
fe8daa8bac
@ -104,6 +104,8 @@
|
||||
|
||||
- [Flood](https://flood.js.org/), a beautiful WebUI for various torrent clients. Available as [services.flood](options.html#opt-services.flood).
|
||||
|
||||
- [Niri](https://github.com/YaLTeR/niri), a scrollable-tiling Wayland compositor. Available as [programs.niri](options.html#opt-programs.niri.enable).
|
||||
|
||||
- [Firefly-iii Data Importer](https://github.com/firefly-iii/data-importer), a data importer for Firefly-III. Available as [services.firefly-iii-data-importer](options.html#opt-services.firefly-iii-data-importer)
|
||||
|
||||
- [QGroundControl], a ground station support and configuration manager for the PX4 and APM Flight Stacks. Available as [programs.qgroundcontrol](options.html#opt-programs.qgroundcontrol.enable).
|
||||
|
@ -312,6 +312,7 @@
|
||||
./programs/wayland/hyprland.nix
|
||||
./programs/wayland/labwc.nix
|
||||
./programs/wayland/miracle-wm.nix
|
||||
./programs/wayland/niri.nix
|
||||
./programs/wayland/river.nix
|
||||
./programs/wayland/sway.nix
|
||||
./programs/wayland/uwsm.nix
|
||||
|
55
nixos/modules/programs/wayland/niri.nix
Normal file
55
nixos/modules/programs/wayland/niri.nix
Normal file
@ -0,0 +1,55 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.programs.niri;
|
||||
in
|
||||
{
|
||||
options.programs.niri = {
|
||||
enable = lib.mkEnableOption "Niri, a scrollable-tiling Wayland compositor";
|
||||
|
||||
package = lib.mkPackageOption pkgs "niri" { };
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable (
|
||||
lib.mkMerge [
|
||||
{
|
||||
environment.systemPackages = [ cfg.package ];
|
||||
|
||||
services = {
|
||||
displayManager.sessionPackages = [ cfg.package ];
|
||||
|
||||
# Recommended by upstream
|
||||
# https://github.com/YaLTeR/niri/wiki/Important-Software#portals
|
||||
gnome.gnome-keyring.enable = lib.mkDefault true;
|
||||
};
|
||||
|
||||
systemd.packages = [ cfg.package ];
|
||||
|
||||
xdg.portal = {
|
||||
enable = lib.mkDefault true;
|
||||
|
||||
configPackages = [ cfg.package ];
|
||||
|
||||
# Recommended by upstream, required for screencast support
|
||||
# https://github.com/YaLTeR/niri/wiki/Important-Software#portals
|
||||
extraPortals = [ pkgs.xdg-desktop-portal-gnome ];
|
||||
};
|
||||
}
|
||||
|
||||
(import ./wayland-session.nix {
|
||||
inherit lib pkgs;
|
||||
enableWlrPortal = false;
|
||||
enableXWayland = false;
|
||||
})
|
||||
]
|
||||
);
|
||||
|
||||
meta.maintainers = with lib.maintainers; [
|
||||
getchoo
|
||||
sodiboo
|
||||
];
|
||||
}
|
Loading…
Reference in New Issue
Block a user