Files
nixos-config/hosts/Bellerophon/duo-configuration.nix
2024-10-24 11:25:12 -03:00

54 lines
1.6 KiB
Nix

{pkgs, ...}: let
# Clone the repository
duoRepo = builtins.fetchGit {
url = "https://github.com/alesya-h/zenbook-duo-2024-ux8406ma-linux";
# Specify a specific commit or branch if needed
rev = "2b8be1840f38f92e6626da7a442245b74ed0715f"; # Uncomment this line to specify a branch or commit
};
# Path to the duo script
duoScript = "${duoRepo}/duo";
# Modify the shebang and create a new script
modifiedDuoScript = pkgs.writeShellScript "modified-duo" ''
#!${pkgs.bash}/bin/bash
cd "$(dirname "$(realpath "$0")")"
${builtins.readFile duoScript}
'';
in {
systemd.services.watchBacklight = {
description = "synchronize screen brightness";
wantedBy = ["default.target"];
path = [pkgs.inotify-tools pkgs.sudo];
serviceConfig = {
ExecStart = "${modifiedDuoScript} watch-backlight";
Restart = "always";
RestartSec = 5;
};
};
systemd.user.services.watchDisplays = {
description = "set screens on keyboard event";
wantedBy = ["default.target"];
after = ["graphical-session.target"];
path = [pkgs.gnome-monitor-config pkgs.usbutils pkgs.inotify-tools];
serviceConfig = {
ExecStart = "${modifiedDuoScript} watch-displays";
Restart = "always";
RestartSec = 5;
};
};
systemd.user.services.watchRotation = {
description = "rotate screens";
wantedBy = ["default.target"];
after = ["graphical-session.target"];
path = [pkgs.gnome-monitor-config pkgs.iio-sensor-proxy];
serviceConfig = {
ExecStart = "${modifiedDuoScript} watch-rotation";
Restart = "always";
RestartSec = 5;
};
};
}