在 NixOS 中配置 XFCE 启动命令

在 NixOS 中配置 XFCE 启动命令

在 NixOS 中,services.xserver.desktopManager.xfce.extraSessionCommands描述“在 XFCE 启动之前执行的 Shell 命令”。那么 shell 命令对吗?XFCE启动了吗?

也就是说,我想在我的configuration.nix文件中保留我通常放入.xinitrc.这可能吗?

答案1

您应该能够将通常放入 xinitrc 的大部分应用程序也放入services.xserver.desktopManager.xfce.extraSessionCommands 重要的环境变量中,例如设置$DISPLAY和。$DBUS_SESSION_BUS_ADDRESS事实上,在大多数 xinitrc 中,窗口管理器作为最后一个进程启动。

这是一个如何实现的片段,extraSessionCommands摘自xfce.nix:

services.xserver.desktopManager.session = [{
  name = "xfce";
  bgSupport = true;
  start = ''
    ${cfg.extraSessionCommands}
    # Set GTK_PATH so that GTK+ can find the theme engines.
    export GTK_PATH="${config.system.path}/lib/gtk-2.0:${config.system.path}/lib/gtk-3.0"
    # Set GTK_DATA_PREFIX so that GTK+ can find the Xfce themes.
    export GTK_DATA_PREFIX=${config.system.path}
    ${pkgs.runtimeShell} ${pkgs.xfce.xinitrc} &
    waitPID=$!
  '';
}];

相关内容