diff --git a/nixos/doc/manual/release-notes/rl-2511.section.md b/nixos/doc/manual/release-notes/rl-2511.section.md index 4fc6e12d04d6..d1285109a0ce 100644 --- a/nixos/doc/manual/release-notes/rl-2511.section.md +++ b/nixos/doc/manual/release-notes/rl-2511.section.md @@ -33,6 +33,8 @@ - [gtklock](https://github.com/jovanlanik/gtklock), a GTK-based lockscreen for Wayland. Available as [programs.gtklock](#opt-programs.gtklock.enable). - [Chrysalis](https://github.com/keyboardio/Chrysalis), a graphical configurator for Kaleidoscope-powered keyboards. Available as [programs.chrysalis](#opt-programs.chrysalis.enable). +- [wayvnc](https://github.com/any1/wayvnc), VNC server for wlroots based Wayland compositors. Available as [programs.wayvnc](#opt-programs.wayvnc.enable). + - [Pi-hole](https://pi-hole.net/), a DNS sinkhole for advertisements based on Dnsmasq. Available as [services.pihole-ftl](#opt-services.pihole-ftl.enable), and [services.pihole-web](#opt-services.pihole-web.enable) for the web GUI and API. - [Fediwall](https://fediwall.social), a web application for live displaying toots from mastodon, inspired by mastowall. Available as [services.fediwall](#opt-services.fediwall.enable). diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 520e7ad094dd..2b98c1cc23e1 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -352,6 +352,7 @@ ./programs/wayland/uwsm.nix ./programs/wayland/waybar.nix ./programs/wayland/wayfire.nix + ./programs/wayland/wayvnc.nix ./programs/weylus.nix ./programs/winbox.nix ./programs/wireshark.nix diff --git a/nixos/modules/programs/wayland/wayvnc.nix b/nixos/modules/programs/wayland/wayvnc.nix new file mode 100644 index 000000000000..0a19541c098d --- /dev/null +++ b/nixos/modules/programs/wayland/wayvnc.nix @@ -0,0 +1,25 @@ +{ + lib, + pkgs, + config, + ... +}: + +let + cfg = config.programs.wayvnc; +in +{ + options.programs.wayvnc = { + enable = lib.mkEnableOption "wayvnc, VNC server for wlroots based Wayland compositors"; + package = lib.mkPackageOption pkgs "wayvnc" { }; + }; + + config = lib.mkIf cfg.enable { + environment.systemPackages = [ cfg.package ]; + + # https://github.com/any1/wayvnc/blob/master/src/pam_auth.c + security.pam.services.wayvnc = { }; + }; + + meta.maintainers = with lib.maintainers; [ qusic ]; +}