2024-10-12 17:27:41 -04:00
|
|
|
# Lenovo Legion Go
|
|
|
|
{
|
|
|
|
config,
|
|
|
|
lib,
|
2024-10-13 16:30:57 -04:00
|
|
|
pkgs,
|
2024-10-12 17:27:41 -04:00
|
|
|
self,
|
|
|
|
...
|
|
|
|
}: {
|
|
|
|
imports = [
|
|
|
|
./home.nix
|
|
|
|
./secrets.nix
|
|
|
|
./stylix.nix
|
|
|
|
(import ./../../disko/luks-btrfs-subvolumes.nix {disks = ["/dev/nvme0n1"];})
|
|
|
|
self.inputs.jovian.nixosModules.default
|
|
|
|
self.nixosModules.common-base
|
|
|
|
self.nixosModules.common-locale
|
|
|
|
self.nixosModules.common-nix
|
|
|
|
self.nixosModules.common-overlays
|
|
|
|
self.nixosModules.common-pkgs
|
|
|
|
self.nixosModules.common-tailscale
|
|
|
|
self.nixosModules.common-wifi-profiles
|
2024-10-13 14:22:59 -04:00
|
|
|
self.nixosModules.hw-lenovo-legion-go
|
2024-10-12 17:27:41 -04:00
|
|
|
];
|
|
|
|
|
|
|
|
boot = {
|
2024-10-13 16:02:02 -04:00
|
|
|
initrd = {
|
|
|
|
kernelModules = ["amdgpu"];
|
|
|
|
systemd.enable = true;
|
|
|
|
};
|
2024-10-12 17:27:41 -04:00
|
|
|
|
2024-10-13 15:27:28 -04:00
|
|
|
lanzaboote = {
|
|
|
|
enable = true;
|
|
|
|
pkiBundle = "/etc/secureboot";
|
|
|
|
};
|
2024-10-12 17:27:41 -04:00
|
|
|
|
|
|
|
loader = {
|
|
|
|
efi.canTouchEfiVariables = true;
|
2024-10-13 16:02:02 -04:00
|
|
|
|
|
|
|
systemd-boot = {
|
|
|
|
enable = lib.mkForce false;
|
2024-10-13 16:03:57 -04:00
|
|
|
consoleMode = "1";
|
2024-10-13 16:02:02 -04:00
|
|
|
};
|
2024-10-12 17:27:41 -04:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
environment.variables = {
|
|
|
|
FLAKE = lib.mkForce "github:alyraffauf/nixcfg/add-pacifidlog";
|
|
|
|
GDK_SCALE = "2";
|
|
|
|
};
|
|
|
|
|
2024-10-13 14:55:35 -04:00
|
|
|
jovian.steam = {
|
|
|
|
enable = true;
|
|
|
|
autoStart = true;
|
2024-10-13 15:16:34 -04:00
|
|
|
desktopSession = "hyprland";
|
2024-10-13 14:55:35 -04:00
|
|
|
user = "aly";
|
|
|
|
};
|
2024-10-12 17:27:41 -04:00
|
|
|
|
|
|
|
jovian.decky-loader = {
|
|
|
|
enable = true;
|
2024-10-13 16:39:17 -04:00
|
|
|
user = "root";
|
|
|
|
# stateDir = "/home/aly/.local/share/decky"; # Keep scoped to user
|
2024-10-13 16:30:57 -04:00
|
|
|
package = pkgs.decky-loader;
|
|
|
|
|
|
|
|
extraPackages = with pkgs; [
|
|
|
|
# Generic packages
|
|
|
|
curl
|
|
|
|
unzip
|
|
|
|
util-linux
|
|
|
|
gnugrep
|
|
|
|
|
|
|
|
readline.out
|
|
|
|
procps
|
|
|
|
pciutils
|
|
|
|
libpulseaudio
|
|
|
|
|
|
|
|
# SimpleDeckyTDP | TODO: Remove once hhd TDP control is verified
|
|
|
|
ryzenadj # actual TDP util
|
|
|
|
kmod # modprobe for acpi_call check
|
|
|
|
];
|
|
|
|
|
|
|
|
extraPythonPackages = pythonPackages:
|
|
|
|
with pythonPackages; [
|
|
|
|
pyyaml # hhd-decky
|
|
|
|
];
|
|
|
|
|
2024-10-13 16:32:23 -04:00
|
|
|
# plugins = {
|
|
|
|
# "hhd-decky" = {
|
|
|
|
# src = fetchTarball {
|
|
|
|
# url = "https://github.com/hhd-dev/hhd-decky/releases/download/v0.1.0/hhd-decky.tar.gz";
|
|
|
|
# sha256 = "15gpll079gwnx21gjf6qivb36dzpnrx58dkbpk0xnjjx2q0bcc47";
|
|
|
|
# };
|
|
|
|
# };
|
|
|
|
# };
|
2024-10-12 17:27:41 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
networking.hostName = "pacifidlog";
|
|
|
|
|
|
|
|
nixpkgs.overlays = [
|
|
|
|
(final: prev: {
|
|
|
|
brave = prev.brave.override {commandLineArgs = "--gtk-version=4 --enable-wayland-ime";};
|
|
|
|
|
|
|
|
obsidian = prev.obsidian.overrideAttrs (old: {
|
|
|
|
installPhase =
|
|
|
|
builtins.replaceStrings ["--ozone-platform=wayland"]
|
|
|
|
["--ozone-platform=wayland --enable-wayland-ime"]
|
|
|
|
old.installPhase;
|
|
|
|
});
|
|
|
|
|
|
|
|
vscodium = prev.vscodium.override {commandLineArgs = "--enable-wayland-ime";};
|
|
|
|
|
|
|
|
webcord = prev.webcord.overrideAttrs (old: {
|
|
|
|
installPhase =
|
|
|
|
builtins.replaceStrings ["--ozone-platform-hint=auto"]
|
|
|
|
["--ozone-platform-hint=auto --enable-wayland-ime"]
|
|
|
|
old.installPhase;
|
|
|
|
});
|
|
|
|
})
|
|
|
|
];
|
|
|
|
|
2024-10-13 14:22:59 -04:00
|
|
|
services.handheld-daemon = {
|
|
|
|
enable = true;
|
|
|
|
user = "aly";
|
2024-10-12 17:27:41 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
system.stateVersion = "24.11";
|
|
|
|
|
|
|
|
ar = {
|
|
|
|
apps = {
|
|
|
|
firefox.enable = true;
|
|
|
|
steam.enable = true;
|
|
|
|
};
|
|
|
|
|
2024-10-13 15:34:52 -04:00
|
|
|
desktop.hyprland.enable = true;
|
2024-10-12 17:27:41 -04:00
|
|
|
laptopMode = true;
|
|
|
|
|
|
|
|
users.aly = {
|
|
|
|
enable = true;
|
|
|
|
password = "$y$j9T$CXjk5Z9e2PXbSsWh5CK.81$I9Hm/Oa4KcYMqPi8KMBfsEv5NzoXCgaCK5xhyGeikH7";
|
|
|
|
|
|
|
|
syncthing = {
|
|
|
|
enable = true;
|
|
|
|
certFile = config.age.secrets.syncthingCert.path;
|
|
|
|
keyFile = config.age.secrets.syncthingKey.path;
|
|
|
|
syncMusic = false;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|