stylix: allow choosing testbed desktop (#1222)

Allow choosing the testbed desktop, ideally as a temporary solution
until migrating to the cage environment.

Link: https://github.com/nix-community/stylix/pull/1222

Reviewed-by: Flameopathic <64027365+Flameopathic@users.noreply.github.com>
Reviewed-by: awwpotato <awwpotato@voidq.com>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
This commit is contained in:
Mateus Auler 2025-07-16 10:43:02 -03:00 committed by GitHub
parent 436ad797df
commit 8c854fe383
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
13 changed files with 167 additions and 65 deletions

View file

@ -1,17 +1,13 @@
{ lib, pkgs, ... }:
{ pkgs, ... }:
{
services.xserver = {
enable = true;
windowManager.bspwm.enable = true;
};
stylix.testbed.ui = {
graphicalEnvironment = "bspwm";
home-manager.sharedModules = lib.singleton {
xsession.windowManager.bspwm = {
enable = true;
# We need something to open a window so that we can check the window borders
startupPrograms = [ "${lib.getExe pkgs.kitty}" ];
# We need something to open a window so that we can check the window borders
application = {
name = "kitty";
package = pkgs.kitty;
};
};
}

View file

@ -1,6 +1,3 @@
{
services = {
desktopManager.gnome.enable = true;
displayManager.gdm.enable = true;
};
stylix.testbed.ui.graphicalEnvironment = "gnome";
}

View file

@ -1,15 +1,13 @@
{ lib, pkgs, ... }:
{ pkgs, ... }:
{
environment.loginShellInit = lib.getExe pkgs.hyprland;
programs.hyprland.enable = true;
stylix.testbed.ui = {
graphicalEnvironment = "hyprland";
home-manager.sharedModules = lib.singleton {
wayland.windowManager.hyprland = {
enable = true;
# We need something to open a window so that we can check the window borders
settings.bind = [ "ALT, RETURN, exec, ${lib.getExe pkgs.foot}" ];
# We need something to open a window so that we can check the window borders
application = {
name = "kitty";
package = pkgs.kitty;
};
};
}

View file

@ -1,7 +1,10 @@
{
services = {
displayManager.sddm.enable = true;
desktopManager.plasma6.enable = true;
lib,
...
}:
{
config = {
stylix.testbed.ui.graphicalEnvironment = "kde";
services.displayManager.autoLogin.enable = lib.mkForce false;
};
}

View file

@ -1,25 +1,23 @@
{ lib, pkgs, ... }:
{
# We use Hyprland because Gnome has its own notification daemon
environment.loginShellInit = lib.getExe pkgs.hyprland;
programs.hyprland.enable = true;
stylix.testbed.ui = {
# We use Hyprland because Gnome has its own notification daemon
graphicalEnvironment = "hyprland";
command.text =
# Run as a single command to ensure the same order between executions
lib.concatMapStringsSep " && "
(
urgency: "${lib.getExe pkgs.libnotify} --urgency ${urgency} ${urgency} urgency"
)
[
"low"
"normal"
"critical"
];
};
home-manager.sharedModules = lib.singleton {
services.mako.enable = true;
wayland.windowManager.hyprland = {
enable = true;
settings.exec-once =
# Run as a single command to ensure the same order between executions
lib.concatMapStringsSep " && "
(
urgency: "${lib.getExe pkgs.libnotify} --urgency ${urgency} ${urgency} urgency"
)
[
"low"
"normal"
"critical"
];
};
};
}