work details
This commit is contained in:
parent
d390530b35
commit
de83e8a338
6 changed files with 86 additions and 84 deletions
|
|
@ -1,26 +1,31 @@
|
|||
{ config, lib, modulesPath, ... }: {
|
||||
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||||
# Do not modify this file! It was generated by ‘nixos-generate-config’
|
||||
# and may be overwritten by future invocations. Please make changes
|
||||
# to /etc/nixos/configuration.nix instead.
|
||||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
# AMD Ryzen 7 4000 series (Renoir)
|
||||
boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "sd_mod" ];
|
||||
boot.kernelModules = [ "kvm-amd" "amdgpu" ];
|
||||
boot.extraModulePackages = [];
|
||||
{
|
||||
imports =
|
||||
[ (modulesPath + "/installer/scan/not-detected.nix")
|
||||
];
|
||||
|
||||
networking.useDHCP = lib.mkDefault true;
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
hardware.cpu.amd.updateMicrocode =
|
||||
lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
|
||||
# PRIME offload: AMD iGPU renders the display, NVIDIA dGPU handles offloaded workloads.
|
||||
# Fill in the Bus IDs before building the ISO.
|
||||
# To get them: boot any live Linux on the machine and run:
|
||||
# lspci -D | grep -E '(VGA|3D|Display)'
|
||||
# Then convert the PCI address (e.g. 0000:06:00.0) to the format "PCI:6:0:0".
|
||||
hardware.nvidia.prime = {
|
||||
offload.enable = true;
|
||||
offload.enableOffloadCmd = true;
|
||||
amdgpuBusId = "PCI:FILL:IN:ME"; # TODO: AMD Radeon Vega iGPU bus ID
|
||||
nvidiaBusId = "PCI:FILL:IN:ME"; # TODO: NVIDIA GTX 1650 dGPU bus ID
|
||||
fileSystems."/" =
|
||||
{ device = "/dev/disk/by-uuid/1c2840f7-3924-477d-a8e7-707c95874441";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" =
|
||||
{ device = "/dev/disk/by-uuid/24C6-A993";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0022" "dmask=0022" ];
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,11 +4,7 @@ let
|
|||
in {
|
||||
home.packages = with pkgs; [
|
||||
firefox
|
||||
discord
|
||||
stremio-linux-shell
|
||||
obsidian
|
||||
kitty
|
||||
qbittorrent
|
||||
claude-code
|
||||
mpv
|
||||
];
|
||||
|
|
|
|||
|
|
@ -1,7 +1,4 @@
|
|||
{ config, pkgs, ... }:
|
||||
let
|
||||
wallpaper = ../../wallpapers/miku.png;
|
||||
in {
|
||||
{ config, pkgs, ... }: {
|
||||
home.sessionVariables = {
|
||||
XDG_CURRENT_DESKTOP = "niri";
|
||||
XDG_SESSION_DESKTOP = "niri";
|
||||
|
|
@ -77,8 +74,6 @@ in {
|
|||
|
||||
prefer-no-csd
|
||||
|
||||
spawn-at-startup "swww-daemon"
|
||||
spawn-at-startup "swww" "img" "${wallpaper}" "--transition-type" "none"
|
||||
spawn-at-startup "quickshell"
|
||||
|
||||
screenshot-path "${config.xdg.userDirs.pictures}/screenshots/%Y-%m-%d %H-%M-%S.png"
|
||||
|
|
@ -115,7 +110,7 @@ in {
|
|||
|
||||
// System
|
||||
Mod+Shift+E { quit; }
|
||||
Mod+L { spawn "swaylock" "-i" "${wallpaper}" "--scaling" "fill"; }
|
||||
Mod+L { spawn "swaylock"; }
|
||||
|
||||
// Volume
|
||||
XF86AudioRaiseVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%+"; }
|
||||
|
|
|
|||
|
|
@ -45,8 +45,8 @@ in {
|
|||
den.aspects.wayland
|
||||
den.aspects.niri
|
||||
den.aspects.work-specific
|
||||
den.aspects.dev
|
||||
den.aspects.secrets
|
||||
den.aspects.dev
|
||||
];
|
||||
nixos = {
|
||||
system.stateVersion = "25.11";
|
||||
|
|
|
|||
|
|
@ -19,42 +19,42 @@ in {
|
|||
tracy
|
||||
|
||||
# Infrastructure
|
||||
docker-compose
|
||||
# docker-compose
|
||||
|
||||
# IDE
|
||||
jetbrains.idea-oss
|
||||
# jetbrains.idea-oss
|
||||
|
||||
# Neovim
|
||||
vimPlugins.blink-cmp
|
||||
|
||||
# LSPs
|
||||
bash-language-server
|
||||
lua-language-server
|
||||
# lua-language-server
|
||||
nixd
|
||||
vscode-langservers-extracted
|
||||
yaml-language-server
|
||||
dockerfile-language-server
|
||||
marksman
|
||||
clang-tools
|
||||
jdt-language-server
|
||||
typescript-language-server
|
||||
pyright
|
||||
taplo
|
||||
sqls
|
||||
astro-language-server
|
||||
angular-language-server
|
||||
vue-language-server
|
||||
tailwindcss-language-server
|
||||
qt6Packages.qtdeclarative
|
||||
wgsl-analyzer
|
||||
# vscode-langservers-extracted
|
||||
# yaml-language-server
|
||||
# dockerfile-language-server
|
||||
# marksman
|
||||
# clang-tools
|
||||
# jdt-language-server
|
||||
# typescript-language-server
|
||||
# pyright
|
||||
# taplo
|
||||
# sqls
|
||||
# astro-language-server
|
||||
# angular-language-server
|
||||
# vue-language-server
|
||||
# tailwindcss-language-server
|
||||
# qt6Packages.qtdeclarative
|
||||
# wgsl-analyzer
|
||||
];
|
||||
|
||||
programs.java = {
|
||||
enable = true;
|
||||
package = pkgs-unstable.jdk17;
|
||||
};
|
||||
# programs.java = {
|
||||
# enable = true;
|
||||
# package = pkgs-unstable.jdk17;
|
||||
# };
|
||||
|
||||
virtualisation.docker.enable = true;
|
||||
users.users.${username}.extraGroups = [ "docker" ];
|
||||
# virtualisation.docker.enable = true;
|
||||
# users.users.${username}.extraGroups = [ "docker" ];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,26 +2,32 @@
|
|||
den.aspects.work-specific.nixos = { pkgs, config, ... }: {
|
||||
imports = [
|
||||
./_hardware/work-hardware.nix
|
||||
./_hardware/notebook-disko.nix
|
||||
inputs.disko.nixosModules.disko
|
||||
];
|
||||
|
||||
hardware.graphics = {
|
||||
hardware = {
|
||||
graphics = {
|
||||
enable = true;
|
||||
enable32Bit = true;
|
||||
};
|
||||
|
||||
hardware.nvidia = {
|
||||
nvidia = {
|
||||
modesetting.enable = true;
|
||||
open = false;
|
||||
nvidiaSettings = true;
|
||||
# Fine-grained power management is required for PRIME offload mode.
|
||||
powerManagement.enable = true;
|
||||
powerManagement.finegrained = true;
|
||||
package = config.boot.kernelPackages.nvidiaPackages.stable;
|
||||
# AMD iGPU drives the display; NVIDIA dGPU handles offloaded rendering.
|
||||
# Run `lspci -D | grep -E '(VGA|3D|Display)'` to verify Bus IDs.
|
||||
prime = {
|
||||
offload.enable = true;
|
||||
offload.enableOffloadCmd = true;
|
||||
amdgpuBusId = "PCI:5:0:0";
|
||||
nvidiaBusId = "PCI:1:0:0";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# amdgpu drives the display; nvidia is available for offloaded rendering.
|
||||
services.xserver.videoDrivers = [ "amdgpu" "nvidia" ];
|
||||
|
||||
environment.sessionVariables = {
|
||||
|
|
@ -37,7 +43,6 @@
|
|||
allowedUDPPorts = [];
|
||||
};
|
||||
|
||||
services.thermald.enable = true;
|
||||
powerManagement.enable = true;
|
||||
|
||||
services.tlp = {
|
||||
|
|
@ -49,7 +54,8 @@
|
|||
};
|
||||
|
||||
boot = {
|
||||
initrd.kernelModules = [ "dm-crypt" "amdgpu" ];
|
||||
initrd.kernelModules = [ "amdgpu" ];
|
||||
kernelModules = [ "kvm-amd" "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" ];
|
||||
initrd.compressor = "zstd";
|
||||
kernelParams = [ "nvidia.NVreg_PreserveVideoMemoryAllocations=1" ];
|
||||
|
||||
|
|
@ -58,10 +64,10 @@
|
|||
enable = true;
|
||||
device = "nodev";
|
||||
efiSupport = true;
|
||||
configurationLimit = 2;
|
||||
enableCryptodisk = true;
|
||||
efiInstallAsRemovable = true;
|
||||
configurationLimit = 10;
|
||||
};
|
||||
efi.canTouchEfiVariables = true;
|
||||
efi.canTouchEfiVariables = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue