Compare commits

...

2 Commits

Author SHA1 Message Date
fcb903bb75 streamcontroller: move to own module
All checks were successful
Run nix flake check / flake-check (push) Successful in 2m13s
2026-01-30 19:49:49 +01:00
bdb776376b hyprland: remove lockMonitorNames option 2026-01-30 19:45:39 +01:00
3 changed files with 49 additions and 50 deletions

View File

@@ -26,6 +26,7 @@
../../programs/kitty ../../programs/kitty
../../programs/obs-studio ../../programs/obs-studio
../../programs/rofi ../../programs/rofi
../../programs/streamcontroller
../../programs/tmux ../../programs/tmux
../../programs/vscode ../../programs/vscode
../../scripts ../../scripts
@@ -54,8 +55,8 @@
"WLR_NO_HARDWARE_CURSORS,1" "WLR_NO_HARDWARE_CURSORS,1"
]; ];
hyprland.enableStreamController = true;
hyprland.enableGrimblast = true; hyprland.enableGrimblast = true;
streamcontroller.enable = true;
hyprland.enableWacom = true; hyprland.enableWacom = true;
hyprland.cursorNoHardware = true; hyprland.cursorNoHardware = true;
@@ -79,13 +80,6 @@
"$mon_right" = "desc:Samsung Electric Company LS27A600U HNMT502390"; "$mon_right" = "desc:Samsung Electric Company LS27A600U HNMT502390";
}; };
hyprland.lockMonitorNames = [
"BNQ G2420HDBL T2B04424SL000"
"Samsung Electric Company LS27A600U HNMT502389"
"Acer Technologies XB271HU #ASPVEKfgZ8Dd"
"Samsung Electric Company LS27A600U HNMT502390"
];
hyprland.extraKeybinds = [ hyprland.extraKeybinds = [
"$mainMod,Print,exec,grimblast save active ~/tmp/$(date -Iseconds).png" "$mainMod,Print,exec,grimblast save active ~/tmp/$(date -Iseconds).png"
"$shiftMainMod,Print,exec,grimblast copy area" "$shiftMainMod,Print,exec,grimblast copy area"

View File

@@ -29,8 +29,6 @@ in
description = "Extra environment variables for Hyprland"; description = "Extra environment variables for Hyprland";
}; };
enableStreamController = mkEnableOption "streamcontroller service";
enableGrimblast = mkEnableOption "grimblast screenshot keybinds"; enableGrimblast = mkEnableOption "grimblast screenshot keybinds";
enableWacom = mkEnableOption "Wacom tablet device configuration"; enableWacom = mkEnableOption "Wacom tablet device configuration";
@@ -44,16 +42,6 @@ in
description = "Extra keybinds for Hyprland"; description = "Extra keybinds for Hyprland";
}; };
lockMonitorNames = mkOption {
type = types.listOf (types.nullOr types.str);
default = [ null ];
example = [
"desc:BNQ G2420HDBL T2B04424SL000"
"desc:Samsung Electric Company LS27A600U HNMT502389"
];
description = "Monitor names for hyprlock backgrounds (null for all monitors)";
};
extraWorkspaces = mkOption { extraWorkspaces = mkOption {
type = types.listOf types.str; type = types.listOf types.str;
default = [ ]; default = [ ];
@@ -120,8 +108,9 @@ in
programs.hyprlock = { programs.hyprlock = {
enable = true; enable = true;
settings = { settings = {
background = map (mon: { background = [
monitor = if mon == null then "" else "desc:${mon}"; {
monitor = "";
path = "screenshot"; path = "screenshot";
color = "rgba(17, 17, 17, 1.0)"; color = "rgba(17, 17, 17, 1.0)";
blur_passes = 3; blur_passes = 3;
@@ -129,7 +118,8 @@ in
brightness = 0.8172; brightness = 0.8172;
vibrancy = 0.1696; vibrancy = 0.1696;
vibrancy_darkness = 0.0; vibrancy_darkness = 0.0;
}) cfg.lockMonitorNames; }
];
general = { general = {
grace = 0; grace = 0;
@@ -169,26 +159,6 @@ in
}; };
}; };
systemd.user.services = mkIf cfg.enableStreamController {
streamcontroller = {
Unit = {
Description = "Streamcontroller service";
PartOf = [ "graphical-session.target" ];
After = [ "graphical-session.target" ];
Requisite = [ "graphical-session.target" ];
};
Service = {
ExecStart = "${pkgs.streamcontroller}/bin/streamcontroller -b";
Restart = "on-failure";
};
Install = {
WantedBy = [ "graphical-session.target" ];
};
};
};
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
package = pkgs.hyprland; package = pkgs.hyprland;

View File

@@ -0,0 +1,35 @@
{
pkgs,
lib,
config,
...
}:
with lib;
let
cfg = config.streamcontroller;
in
{
options.streamcontroller = {
enable = mkEnableOption "streamcontroller service";
};
config = mkIf cfg.enable {
systemd.user.services.streamcontroller = {
Unit = {
Description = "Streamcontroller service";
PartOf = [ "graphical-session.target" ];
After = [ "graphical-session.target" ];
Requisite = [ "graphical-session.target" ];
};
Service = {
ExecStart = "${pkgs.streamcontroller}/bin/streamcontroller -b";
Restart = "on-failure";
};
Install = {
WantedBy = [ "graphical-session.target" ];
};
};
};
}