From 4a8274bd59714f22648e26a9adf7db295dcfe503 Mon Sep 17 00:00:00 2001 From: mrfluffy Date: Thu, 11 Dec 2025 12:14:43 +0000 Subject: [PATCH] setting up the cumsole --- configuration.nix | 96 +++++++++++++++++++++++++++++++------- dots/hyprland.nix | 18 ++++--- dots/zsh.nix | 4 +- flake.lock | 6 +-- hardware-configuration.nix | 58 ++++++++++++++--------- home/homePkgs.nix | 1 + system/boot.nix | 24 ++++++---- system/hardware.nix | 22 ++++----- system/nixOSPkgs.nix | 3 +- system/services.nix | 67 ++++++++++++++++++-------- 10 files changed, 203 insertions(+), 96 deletions(-) diff --git a/configuration.nix b/configuration.nix index fa5e5ca..c9a334f 100755 --- a/configuration.nix +++ b/configuration.nix @@ -23,7 +23,6 @@ in { imports = [ ./hardware-configuration.nix - ./system/hardware.nix ./system/boot.nix ./system/network.nix ./system/inputMethods.nix @@ -147,8 +146,74 @@ in system.stateVersion = "24.11"; # Did you read the comment? specialisation = { - steam = { + "01-steam" = { configuration = { + # ── HDMI-CEC: Turn on TV when Steam specialisation starts ───────────────────── + services.udev.packages = [ pkgs.libcec ]; # ensures cec-utils is in PATH + + # A user service that runs once the graphical session (Steam/GameScope) is ready + systemd.user.services.cec-tv-on = { + description = "Turn on TV via HDMI-CEC when entering Steam specialisation"; + wantedBy = [ "graphical-session.target" ]; + after = [ "graphical-session.target" ]; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + ExecStart = toString ( + pkgs.writeShellScript "cec-tv-on.sh" '' + # Wait a moment for the HDMI link to settle + sleep 3 + + # Turn on the TV and set it as active source (most TVs understand this) + ${pkgs.libcec}/bin/cec-client -s -d 1 <