Loading nixos/modules/services/desktop-managers/plasma6.nix +1 −0 Original line number Diff line number Diff line Loading @@ -252,6 +252,7 @@ in { services.xserver.displayManager.sddm = { package = kdePackages.sddm; theme = mkDefault "breeze"; wayland.compositor = "kwin"; extraPackages = with kdePackages; [ breeze-icons kirigami Loading nixos/modules/services/x11/display-managers/sddm.nix +87 −44 Original line number Diff line number Diff line { config, lib, pkgs, ... }: with lib; let xcfg = config.services.xserver; dmcfg = xcfg.displayManager; Loading @@ -14,6 +13,12 @@ let iniFmt = pkgs.formats.ini { }; inherit (lib) concatMapStrings concatStringsSep getExe attrNames getAttr optionalAttrs optionalString mkRemovedOptionModule mkRenamedOptionModule mkIf mkEnableOption mkOption mkPackageOption types ; xserverWrapper = pkgs.writeShellScript "xserver-wrapper" '' ${concatMapStrings (n: "export ${n}=\"${getAttr n xEnv}\"\n") (attrNames xEnv)} exec systemd-cat -t xserver-wrapper ${dmcfg.xserverBin} ${toString dmcfg.xserverArgs} "$@" Loading @@ -38,12 +43,21 @@ let DefaultSession = optionalString (dmcfg.defaultSession != null) "${dmcfg.defaultSession}.desktop"; DisplayServer = if cfg.wayland.enable then "wayland" else "x11"; } // optionalAttrs (cfg.wayland.compositor == "kwin") { GreeterEnvironment = concatStringsSep " " [ "LANG=C.UTF-8" "QT_WAYLAND_SHELL_INTEGRATION=layer-shell" ]; InputMethod = ""; # needed if we are using --inputmethod with kwin }; Theme = { Current = cfg.theme; ThemeDir = "/run/current-system/sw/share/sddm/themes"; FacesDir = "/run/current-system/sw/share/sddm/faces"; } // optionalAttrs (cfg.theme == "breeze") { CursorTheme = "breeze_cursors"; CursorSize = 24; }; Users = { Loading @@ -69,7 +83,7 @@ let SessionDir = "${dmcfg.sessionData.desktops}/share/wayland-sessions"; CompositorCommand = lib.optionalString cfg.wayland.enable cfg.wayland.compositorCommand; }; } // lib.optionalAttrs dmcfg.autoLogin.enable { } // optionalAttrs dmcfg.autoLogin.enable { Autologin = { User = dmcfg.autoLogin.user; Session = autoLoginSessionName; Loading @@ -83,6 +97,34 @@ let autoLoginSessionName = "${dmcfg.sessionData.autologinSession}.desktop"; compositorCmds = { kwin = concatStringsSep " " [ "${lib.getBin pkgs.kdePackages.kwin}/bin/kwin_wayland" "--no-global-shortcuts" "--no-kactivities" "--no-lockscreen" "--locale1" ]; # This is basically the upstream default, but with Weston referenced by full path # and the configuration generated from NixOS options. weston = let westonIni = (pkgs.formats.ini { }).generate "weston.ini" { libinput = { enable-tap = xcfg.libinput.mouse.tapping; left-handed = xcfg.libinput.mouse.leftHanded; }; keyboard = { keymap_model = xcfg.xkb.model; keymap_layout = xcfg.xkb.layout; keymap_variant = xcfg.xkb.variant; keymap_options = xcfg.xkb.options; }; }; in "${getExe pkgs.weston} --shell=kiosk -c ${westonIni}"; }; in { imports = [ Loading Loading @@ -206,24 +248,16 @@ in wayland = { enable = mkEnableOption "experimental Wayland support"; compositor = mkOption { description = lib.mdDoc "The compositor to use: ${lib.concatStringsSep ", " (builtins.attrNames compositorCmds)}"; type = types.enum (builtins.attrNames compositorCmds); default = "weston"; }; compositorCommand = mkOption { type = types.str; internal = true; # This is basically the upstream default, but with Weston referenced by full path # and the configuration generated from NixOS options. default = let westonIni = (pkgs.formats.ini {}).generate "weston.ini" { libinput = { enable-tap = xcfg.libinput.mouse.tapping; left-handed = xcfg.libinput.mouse.leftHanded; }; keyboard = { keymap_model = xcfg.xkb.model; keymap_layout = xcfg.xkb.layout; keymap_variant = xcfg.xkb.variant; keymap_options = xcfg.xkb.options; }; }; in "${pkgs.weston}/bin/weston --shell=kiosk -c ${westonIni}"; default = compositorCmds.${cfg.wayland.compositor}; description = lib.mdDoc "Command used to start the selected compositor"; }; }; Loading @@ -247,8 +281,6 @@ in } ]; services.xserver.displayManager.job.execCmd = "exec /run/current-system/sw/bin/sddm"; security.pam.services = { sddm.text = '' auth substack login Loading Loading @@ -293,30 +325,41 @@ in uid = config.ids.uids.sddm; }; environment.etc."sddm.conf".source = cfgFile; environment.pathsToLink = [ environment = { etc."sddm.conf".source = cfgFile; pathsToLink = [ "/share/sddm" ]; systemPackages = [ sddm ]; }; users.groups.sddm.gid = config.ids.gids.sddm; environment.systemPackages = [ sddm ]; services.dbus.packages = [ sddm ]; systemd.tmpfiles.packages = [ sddm ]; services = { dbus.packages = [ sddm ]; xserver = { displayManager.job.execCmd = "exec /run/current-system/sw/bin/sddm"; # To enable user switching, allow sddm to allocate TTYs/displays dynamically. tty = null; display = null; }; }; systemd = { tmpfiles.packages = [ sddm ]; # We're not using the upstream unit, so copy these: https://github.com/sddm/sddm/blob/develop/services/sddm.service.in systemd.services.display-manager.after = [ services.display-manager = { after = [ "systemd-user-sessions.service" "getty@tty7.service" "plymouth-quit.service" "systemd-logind.service" ]; systemd.services.display-manager.conflicts = [ conflicts = [ "getty@tty7.service" ]; # To enable user switching, allow sddm to allocate TTYs/displays dynamically. services.xserver.tty = null; services.xserver.display = null; }; }; }; } pkgs/applications/video/vdr/markad/default.nix +2 −2 Original line number Diff line number Diff line Loading @@ -19,12 +19,12 @@ }: stdenv.mkDerivation rec { pname = "vdr-markad"; version = "3.4.12"; version = "3.4.13"; src = fetchFromGitHub { repo = "vdr-plugin-markad"; owner = "kfb77"; sha256 = "sha256-yc/zWMGzsfZl3n+Qt5Se2duo3jwntCWaYq1yACsrPzM="; sha256 = "sha256-pDnziIWX6deBXuVIN7w6F6TdYDCcEO6MSaUIMB63uAg="; rev = "V${version}"; }; Loading pkgs/development/ocaml-modules/eliom/default.nix +7 −0 Original line number Diff line number Diff line { buildDunePackage , lib , fetchFromGitHub , fetchpatch , which , ocsigen_server , lwt_react Loading @@ -26,6 +27,12 @@ buildDunePackage rec { hash = "sha256-REOyxwnQqWOKywVYwN/WP22cNKZv5Nv0OpFVbNBPJN8="; }; # Compatibility with tyxml 4.6.x patches = fetchpatch { url = "https://github.com/ocsigen/eliom/commit/9a6adcce3959a37b971890999331335d07f4f732.patch"; hash = "sha256-rgsqohSAHHljvag3c+HNGEgW9qwmqPq8qfTpX6vVKtg="; }; nativeBuildInputs = [ which ]; Loading pkgs/development/ocaml-modules/lwd/tyxml-lwd.nix +7 −2 Original line number Diff line number Diff line { lib, fetchurl, buildDunePackage, js_of_ocaml, js_of_ocaml-ppx, lwd, tyxml }: { lib, fetchurl, fetchpatch, buildDunePackage, js_of_ocaml, js_of_ocaml-ppx, lwd, tyxml }: buildDunePackage { pname = "tyxml-lwd"; inherit (lwd) version src; # Compatibility with latest Tyxml (4.6.x) patches = fetchpatch { url = "https://github.com/let-def/lwd/commit/7f3364ec593b5ccf0d0294b97bcd1e28e4164691.patch"; hash = "sha256-W1HjExZxDKRwsrB9ZTkvHTMKO0K5iZl+FrNqPs6BPGU="; }; minimalOCamlVersion = "4.08"; duneVersion = "3"; buildInputs = [ js_of_ocaml-ppx ]; propagatedBuildInputs = [ js_of_ocaml lwd tyxml ]; Loading Loading
nixos/modules/services/desktop-managers/plasma6.nix +1 −0 Original line number Diff line number Diff line Loading @@ -252,6 +252,7 @@ in { services.xserver.displayManager.sddm = { package = kdePackages.sddm; theme = mkDefault "breeze"; wayland.compositor = "kwin"; extraPackages = with kdePackages; [ breeze-icons kirigami Loading
nixos/modules/services/x11/display-managers/sddm.nix +87 −44 Original line number Diff line number Diff line { config, lib, pkgs, ... }: with lib; let xcfg = config.services.xserver; dmcfg = xcfg.displayManager; Loading @@ -14,6 +13,12 @@ let iniFmt = pkgs.formats.ini { }; inherit (lib) concatMapStrings concatStringsSep getExe attrNames getAttr optionalAttrs optionalString mkRemovedOptionModule mkRenamedOptionModule mkIf mkEnableOption mkOption mkPackageOption types ; xserverWrapper = pkgs.writeShellScript "xserver-wrapper" '' ${concatMapStrings (n: "export ${n}=\"${getAttr n xEnv}\"\n") (attrNames xEnv)} exec systemd-cat -t xserver-wrapper ${dmcfg.xserverBin} ${toString dmcfg.xserverArgs} "$@" Loading @@ -38,12 +43,21 @@ let DefaultSession = optionalString (dmcfg.defaultSession != null) "${dmcfg.defaultSession}.desktop"; DisplayServer = if cfg.wayland.enable then "wayland" else "x11"; } // optionalAttrs (cfg.wayland.compositor == "kwin") { GreeterEnvironment = concatStringsSep " " [ "LANG=C.UTF-8" "QT_WAYLAND_SHELL_INTEGRATION=layer-shell" ]; InputMethod = ""; # needed if we are using --inputmethod with kwin }; Theme = { Current = cfg.theme; ThemeDir = "/run/current-system/sw/share/sddm/themes"; FacesDir = "/run/current-system/sw/share/sddm/faces"; } // optionalAttrs (cfg.theme == "breeze") { CursorTheme = "breeze_cursors"; CursorSize = 24; }; Users = { Loading @@ -69,7 +83,7 @@ let SessionDir = "${dmcfg.sessionData.desktops}/share/wayland-sessions"; CompositorCommand = lib.optionalString cfg.wayland.enable cfg.wayland.compositorCommand; }; } // lib.optionalAttrs dmcfg.autoLogin.enable { } // optionalAttrs dmcfg.autoLogin.enable { Autologin = { User = dmcfg.autoLogin.user; Session = autoLoginSessionName; Loading @@ -83,6 +97,34 @@ let autoLoginSessionName = "${dmcfg.sessionData.autologinSession}.desktop"; compositorCmds = { kwin = concatStringsSep " " [ "${lib.getBin pkgs.kdePackages.kwin}/bin/kwin_wayland" "--no-global-shortcuts" "--no-kactivities" "--no-lockscreen" "--locale1" ]; # This is basically the upstream default, but with Weston referenced by full path # and the configuration generated from NixOS options. weston = let westonIni = (pkgs.formats.ini { }).generate "weston.ini" { libinput = { enable-tap = xcfg.libinput.mouse.tapping; left-handed = xcfg.libinput.mouse.leftHanded; }; keyboard = { keymap_model = xcfg.xkb.model; keymap_layout = xcfg.xkb.layout; keymap_variant = xcfg.xkb.variant; keymap_options = xcfg.xkb.options; }; }; in "${getExe pkgs.weston} --shell=kiosk -c ${westonIni}"; }; in { imports = [ Loading Loading @@ -206,24 +248,16 @@ in wayland = { enable = mkEnableOption "experimental Wayland support"; compositor = mkOption { description = lib.mdDoc "The compositor to use: ${lib.concatStringsSep ", " (builtins.attrNames compositorCmds)}"; type = types.enum (builtins.attrNames compositorCmds); default = "weston"; }; compositorCommand = mkOption { type = types.str; internal = true; # This is basically the upstream default, but with Weston referenced by full path # and the configuration generated from NixOS options. default = let westonIni = (pkgs.formats.ini {}).generate "weston.ini" { libinput = { enable-tap = xcfg.libinput.mouse.tapping; left-handed = xcfg.libinput.mouse.leftHanded; }; keyboard = { keymap_model = xcfg.xkb.model; keymap_layout = xcfg.xkb.layout; keymap_variant = xcfg.xkb.variant; keymap_options = xcfg.xkb.options; }; }; in "${pkgs.weston}/bin/weston --shell=kiosk -c ${westonIni}"; default = compositorCmds.${cfg.wayland.compositor}; description = lib.mdDoc "Command used to start the selected compositor"; }; }; Loading @@ -247,8 +281,6 @@ in } ]; services.xserver.displayManager.job.execCmd = "exec /run/current-system/sw/bin/sddm"; security.pam.services = { sddm.text = '' auth substack login Loading Loading @@ -293,30 +325,41 @@ in uid = config.ids.uids.sddm; }; environment.etc."sddm.conf".source = cfgFile; environment.pathsToLink = [ environment = { etc."sddm.conf".source = cfgFile; pathsToLink = [ "/share/sddm" ]; systemPackages = [ sddm ]; }; users.groups.sddm.gid = config.ids.gids.sddm; environment.systemPackages = [ sddm ]; services.dbus.packages = [ sddm ]; systemd.tmpfiles.packages = [ sddm ]; services = { dbus.packages = [ sddm ]; xserver = { displayManager.job.execCmd = "exec /run/current-system/sw/bin/sddm"; # To enable user switching, allow sddm to allocate TTYs/displays dynamically. tty = null; display = null; }; }; systemd = { tmpfiles.packages = [ sddm ]; # We're not using the upstream unit, so copy these: https://github.com/sddm/sddm/blob/develop/services/sddm.service.in systemd.services.display-manager.after = [ services.display-manager = { after = [ "systemd-user-sessions.service" "getty@tty7.service" "plymouth-quit.service" "systemd-logind.service" ]; systemd.services.display-manager.conflicts = [ conflicts = [ "getty@tty7.service" ]; # To enable user switching, allow sddm to allocate TTYs/displays dynamically. services.xserver.tty = null; services.xserver.display = null; }; }; }; }
pkgs/applications/video/vdr/markad/default.nix +2 −2 Original line number Diff line number Diff line Loading @@ -19,12 +19,12 @@ }: stdenv.mkDerivation rec { pname = "vdr-markad"; version = "3.4.12"; version = "3.4.13"; src = fetchFromGitHub { repo = "vdr-plugin-markad"; owner = "kfb77"; sha256 = "sha256-yc/zWMGzsfZl3n+Qt5Se2duo3jwntCWaYq1yACsrPzM="; sha256 = "sha256-pDnziIWX6deBXuVIN7w6F6TdYDCcEO6MSaUIMB63uAg="; rev = "V${version}"; }; Loading
pkgs/development/ocaml-modules/eliom/default.nix +7 −0 Original line number Diff line number Diff line { buildDunePackage , lib , fetchFromGitHub , fetchpatch , which , ocsigen_server , lwt_react Loading @@ -26,6 +27,12 @@ buildDunePackage rec { hash = "sha256-REOyxwnQqWOKywVYwN/WP22cNKZv5Nv0OpFVbNBPJN8="; }; # Compatibility with tyxml 4.6.x patches = fetchpatch { url = "https://github.com/ocsigen/eliom/commit/9a6adcce3959a37b971890999331335d07f4f732.patch"; hash = "sha256-rgsqohSAHHljvag3c+HNGEgW9qwmqPq8qfTpX6vVKtg="; }; nativeBuildInputs = [ which ]; Loading
pkgs/development/ocaml-modules/lwd/tyxml-lwd.nix +7 −2 Original line number Diff line number Diff line { lib, fetchurl, buildDunePackage, js_of_ocaml, js_of_ocaml-ppx, lwd, tyxml }: { lib, fetchurl, fetchpatch, buildDunePackage, js_of_ocaml, js_of_ocaml-ppx, lwd, tyxml }: buildDunePackage { pname = "tyxml-lwd"; inherit (lwd) version src; # Compatibility with latest Tyxml (4.6.x) patches = fetchpatch { url = "https://github.com/let-def/lwd/commit/7f3364ec593b5ccf0d0294b97bcd1e28e4164691.patch"; hash = "sha256-W1HjExZxDKRwsrB9ZTkvHTMKO0K5iZl+FrNqPs6BPGU="; }; minimalOCamlVersion = "4.08"; duneVersion = "3"; buildInputs = [ js_of_ocaml-ppx ]; propagatedBuildInputs = [ js_of_ocaml lwd tyxml ]; Loading