diff options
Diffstat (limited to 'nixos/modules/services/x11/desktop-managers/surf-display.nix')
-rw-r--r-- | nixos/modules/services/x11/desktop-managers/surf-display.nix | 128 |
1 files changed, 0 insertions, 128 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/surf-display.nix b/nixos/modules/services/x11/desktop-managers/surf-display.nix deleted file mode 100644 index 10c4a1d21b0a..000000000000 --- a/nixos/modules/services/x11/desktop-managers/surf-display.nix +++ /dev/null @@ -1,128 +0,0 @@ -{ config, lib, pkgs, ... }: - -with lib; - -let - cfg = config.services.xserver.desktopManager.surf-display; - - surfDisplayConf = '' - # Surf Kiosk Display: Wrap around surf browser and turn your - # system into a browser screen in KIOSK-mode. - - # default download URI for all display screens if not configured individually - DEFAULT_WWW_URI="${cfg.defaultWwwUri}" - - # Enforce fixed resolution for all displays (default: not set): - #DEFAULT_RESOLUTION="1920x1080" - - # HTTP proxy URL, if needed (default: not set). - #HTTP_PROXY_URL="http://webcache:3128" - - # Setting for internal inactivity timer to restart surf-display - # if the user goes inactive/idle. - INACTIVITY_INTERVAL="${builtins.toString cfg.inactivityInterval}" - - # log to syslog instead of .xsession-errors - LOG_TO_SYSLOG="yes" - - # Launch pulseaudio daemon if not already running. - WITH_PULSEAUDIO="yes" - - # screensaver settings, see "man 1 xset" for possible options - SCREENSAVER_SETTINGS="${cfg.screensaverSettings}" - - # disable right and middle pointer device click in browser sessions while keeping - # scrolling wheels' functionality intact... (consider "pointer" subcommand on - # xmodmap man page for details). - POINTER_BUTTON_MAP="${cfg.pointerButtonMap}" - - # Hide idle mouse pointer. - HIDE_IDLE_POINTER="${cfg.hideIdlePointer}" - - ${cfg.extraConfig} - ''; - -in { - options = { - services.xserver.desktopManager.surf-display = { - enable = mkEnableOption "surf-display as a kiosk browser session"; - - defaultWwwUri = mkOption { - type = types.str; - default = "${pkgs.surf-display}/share/surf-display/empty-page.html"; - defaultText = literalExpression ''"''${pkgs.surf-display}/share/surf-display/empty-page.html"''; - example = "https://www.example.com/"; - description = "Default URI to display."; - }; - - inactivityInterval = mkOption { - type = types.int; - default = 300; - example = 0; - description = '' - Setting for internal inactivity timer to restart surf-display if the - user goes inactive/idle to get a fresh session for the next user of - the kiosk. - - If this value is set to zero, the whole feature of restarting due to - inactivity is disabled. - ''; - }; - - screensaverSettings = mkOption { - type = types.separatedString " "; - default = ""; - description = '' - Screensaver settings, see `man 1 xset` for possible options. - ''; - }; - - pointerButtonMap = mkOption { - type = types.str; - default = "1 0 0 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0"; - description = '' - Disable right and middle pointer device click in browser sessions - while keeping scrolling wheels' functionality intact. See pointer - subcommand on `man xmodmap` for details. - ''; - }; - - hideIdlePointer = mkOption { - type = types.str; - default = "yes"; - example = "no"; - description = "Hide idle mouse pointer."; - }; - - extraConfig = mkOption { - type = types.lines; - default = ""; - example = '' - # Enforce fixed resolution for all displays (default: not set): - DEFAULT_RESOLUTION="1920x1080" - - # HTTP proxy URL, if needed (default: not set). - HTTP_PROXY_URL="http://webcache:3128" - - # Configure individual display screens with host specific parameters: - DISPLAYS['display-host-0']="www_uri=https://www.displayserver.comany.net/display-1/index.html" - DISPLAYS['display-host-1']="www_uri=https://www.displayserver.comany.net/display-2/index.html" - DISPLAYS['display-host-2']="www_uri=https://www.displayserver.comany.net/display-3/index.html|res=1920x1280" - DISPLAYS['display-host-3']="www_uri=https://www.displayserver.comany.net/display-4/index.html"|res=1280x1024" - DISPLAYS['display-host-local-file']="www_uri=file:///usr/share/doc/surf-display/empty-page.html" - ''; - description = '' - Extra configuration options to append to `/etc/default/surf-display`. - ''; - }; - }; - }; - - config = mkIf cfg.enable { - services.displayManager.sessionPackages = [ - pkgs.surf-display - ]; - - environment.etc."default/surf-display".text = surfDisplayConf; - }; -} |