Major changes
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
{
|
||||
inputs,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = lib.flatten [
|
||||
@@ -15,11 +16,13 @@
|
||||
# ========== Hardware ==========
|
||||
#
|
||||
inputs.nixos-hardware.nixosModules.common-cpu-intel
|
||||
inputs.nixos-hardware.nixosModules.common-gpu-intel
|
||||
inputs.nixos-hardware.nixosModules.common-hidpi
|
||||
inputs.nixos-hardware.nixosModules.common-pc-laptop
|
||||
inputs.nixos-hardware.nixosModules.common-pc-laptop-ssd
|
||||
|
||||
./hardware-configuration.nix
|
||||
./duo-configuration.nix
|
||||
|
||||
#
|
||||
# ========== Disk Layout ==========
|
||||
@@ -67,9 +70,11 @@
|
||||
#"hosts/common/optional/services/openssh.nix" # allow remote SSH access
|
||||
"hosts/common/optional/services/bluetooth.nix"
|
||||
"hosts/common/optional/services/ollama.nix"
|
||||
"hosts/common/optional/services/docker.nix"
|
||||
"hosts/common/optional/audio.nix" # pipewire and cli controls
|
||||
"hosts/common/optional/kde.nix"
|
||||
"hosts/common/optional/sddm.nix"
|
||||
"hosts/common/optional/gnome.nix"
|
||||
"hosts/common/optional/gdm.nix"
|
||||
"hosts/common/optional/flatpak.nix"
|
||||
"hosts/common/optional/thermal-management.nix"
|
||||
|
||||
# Theming
|
||||
@@ -110,6 +115,9 @@
|
||||
|
||||
hardware.graphics = {
|
||||
enable = true;
|
||||
extraPackages = with pkgs; [
|
||||
vpl-gpu-rt # or intel-media-sdk for QSV
|
||||
];
|
||||
};
|
||||
# https://wiki.nixos.org/wiki/FAQ/When_do_I_update_stateVersion
|
||||
system.stateVersion = "24.11";
|
||||
|
||||
61
hosts/nixos/Bellerophon/duo-configuration.nix
Normal file
61
hosts/nixos/Bellerophon/duo-configuration.nix
Normal file
@@ -0,0 +1,61 @@
|
||||
{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";
|
||||
|
||||
# Read and modify the script content
|
||||
modifiedScriptContent =
|
||||
builtins.replaceStrings [
|
||||
"#!/usr/bin/env bash"
|
||||
"prefered_resolution=\"2880x1800@120.000\""
|
||||
] [
|
||||
"#!${pkgs.bash}/bin/bash"
|
||||
"prefered_resolution=\"2880x1800@120.000+vrr\""
|
||||
] (builtins.readFile duoScript);
|
||||
|
||||
# Write the modifications to a patched duo file
|
||||
patchedDuoScript = pkgs.writeShellScript "patched-duo" modifiedScriptContent;
|
||||
in {
|
||||
systemd.services.watchBacklight = {
|
||||
description = "synchronize screen brightness";
|
||||
wantedBy = ["default.target"];
|
||||
path = [pkgs.inotify-tools pkgs.sudo];
|
||||
serviceConfig = {
|
||||
ExecStart = "${patchedDuoScript} 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 = {
|
||||
preStart = "${patchedDuoScript} normal";
|
||||
ExecStart = "${patchedDuoScript} 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 = "${patchedDuoScript} watch-rotation";
|
||||
Restart = "always";
|
||||
RestartSec = 5;
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user