Modularize hardware config and remove specific nix folder

This commit is contained in:
DashieTM 2024-07-20 01:56:54 +02:00
parent a5042bb645
commit 9ac5b25036
72 changed files with 322 additions and 100 deletions

View file

@ -0,0 +1,26 @@
{
imports = [
../../modules/conf.nix
];
# variables for system
conf = {
monitor = "DP-1";
gaming = {
enable = true;
device = 1;
};
hostname = "marmo";
hyprland.monitor = [
# default
"DP-1,1920x1080@144,0x0,1"
# all others
",highrr,auto,1"
];
colorscheme = "catppuccin-mocha";
};
mods = {
amdgpu.enable = true;
kde_connect.enable = true;
xone.enable = true;
};
}

View file

@ -0,0 +1,31 @@
{
imports = [
../../modules/conf.nix
];
conf = {
monitor = "eDP-1";
scale = "2.0";
hostname = "overheating";
boot_params = [ "rtc_cmos.use_acpi_alarm=1" ];
ironbar.modules = [
{ type = "upower"; class = "memory-usage"; }
];
hyprland = {
monitor = [
# default
"eDP-1,2944x1840@90,0x0,2"
# all others
",highres,auto,1"
];
extra_autostart = [ "hyprdock --server" ];
};
colorscheme = "catppuccin-mocha";
};
mods = {
amdgpu.enable = true;
kde_connect.enable = true;
bluetooth.enable = true;
acpid.enable = true;
};
}

View file

@ -0,0 +1,20 @@
{ pkgs, ... }:
let
# credit to benley: https://github.com/benley/dotfiles/commit/325748c3a8553d55c9fab08654a77b252aa0fde7
patched_ssdt = pkgs.stdenv.mkDerivation {
name = "patched_ssdt";
src = ./.;
buildInputs = [ pkgs.libarchive ];
installPhase = ''
mkdir -p kernel/firmware/acpi
cp ${./ssdt6.aml} kernel/firmware/acpi/ssdt6.aml
mkdir -p $out
echo kernel/firmware/acpi/ssdt6.aml | bsdcpio -v -o -H newc -R 0:0 > $out/lenotrolli-ssdt.img
'';
};
in
{
boot.kernelParams = [ "mem_sleep_default=deep" ];
boot.initrd.prepend = [ "${patched_ssdt}/lenotrolli-ssdt.img" ];
}

View file

@ -0,0 +1,18 @@
{ pkgs, ... }:
{
hardware.firmware = [
(
# lenovo is such a good manufacturer!!1!11!
# credit for the binary files: https://github.com/darinpp/yoga-slim-7
pkgs.stdenv.mkDerivation {
name = "firmware-lenotrolli";
src = ./firmware;
installPhase = ''
mkdir -p $out/lib/firmware
cp ${./firmware/TAS2XXX38BB.bin} $out/lib/firmware/TAS2XXX38BB.bin
cp ${./firmware/TIAS2781RCA4.bin} $out/lib/firmware/TIAS2781RCA4.bin
'';
}
)
];
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,9 @@
{
# special hardware modules
# mostly to fix firmare and dsts
imports =
[
./dsdt.nix
./firmware.nix
];
}

Binary file not shown.

View file

@ -0,0 +1,89 @@
{ config, ... }:
let
username = config.conf.username;
in
{
imports = [
../../modules
];
# config variables
conf = {
monitor = "DP-1";
gaming = {
enable = true;
};
streamdeck.enable = true;
hostname = "spaceship";
hyprland = {
monitor = [
# default
"DP-2,2560x1440@165,0x0,1"
"DP-1,3440x1440@180,2560x0,1,vrr,1"
"HDMI-A-1,1920x1200@60,6000x0,1"
"HDMI-A-1,transform,1"
# all others
",highrr,auto,1"
];
workspace = [
# workspaces
# monitor middle
"2,monitor:DP-1, default:true"
"4,monitor:DP-1"
"6,monitor:DP-1"
"8,monitor:DP-1"
"9,monitor:DP-1"
"10,monitor:DP-1"
# monitor left
"1,monitor:DP-2, default:true"
"5,monitor:DP-2"
"7,monitor:DP-2"
# monitor right
"3,monitor:HDMI-A-1, default:true"
];
hyprpaper = ''
#load
preload = /home/${username}/Pictures/backgrounds/shinobu_2k.jpg
preload = /home/${username}/Pictures/backgrounds/shino_wide.png
preload = /home/${username}/Pictures/backgrounds/shinobu_1200.jpg
#set
wallpaper = DP-2,/home/${username}/Pictures/backgrounds/shinobu_2k.jpg
wallpaper = DP-1,/home/${username}/Pictures/backgrounds/shino_wide.png
wallpaper = HDMI-A-1,/home/${username}/Pictures/backgrounds/shinobu_1200.jpg
splash = true
'';
extra_autostart = [ "streamdeck -n" ];
};
colorscheme = "catppuccin-mocha";
};
mods = {
extraDrives = [
{
name = "drive2";
drive =
{
device = "/dev/disk/by-label/DRIVE2";
fsType = "ext4";
options = [
"noatime"
"nodiratime"
"discard"
];
};
}
];
virtualbox.enable = true;
kde_connect.enable = true;
xone.enable = true;
amdgpu.enable = true;
vapi = {
enable = true;
rocm.enable = true;
};
};
}