dotfiles/nixos/boxes/foureighty/default.nix

88 lines
2 KiB
Nix

{
config,
pkgs,
inputs,
lib,
nixpkgs-nixos-unstable-and-unfree,
...
}: {
networking.hostName = "foureighty";
imports = [
inputs.nixos-hardware.nixosModules.lenovo-thinkpad-t480
./hardware-configuration.nix
./thermal.nix
../../backups.nix
../../boot.nix
../../gfx-intel-dri2.nix
../../git
../../gnome
../../gui
../../libvirt.nix
../../mercurial
../../vim
../../sdr.nix
];
fileSystems."/" = {options = ["compress=zstd"];};
boot.binfmt.emulatedSystems = ["aarch64-linux"];
boot.plymouth = {
enable = true;
logo = ./boot.png;
};
zramSwap = {
enable = true;
algorithm = "zstd";
memoryPercent = 75;
};
time.timeZone = "Europe/London";
virtualisation.kvmgt = {
enable = true;
device = "0000:00:02.0";
};
hardware.trackpoint.enable = true;
services.hardware.bolt.enable = true;
services.xserver = {
libinput = {
enable = true;
touchpad = {
tapping = true;
naturalScrolling = false;
middleEmulation = false;
disableWhileTyping = true;
buttonMapping = "1 0 3 4 5 6 7 8 9 10";
};
mouse = {
middleEmulation = false;
buttonMapping = "1 0 3 4 5 6 7 8 9 10";
};
};
};
services.fprintd = {enable = true;};
programs.ccache.enable = true;
hardware.opengl.extraPackages = with pkgs; [libva];
programs.steam.enable = true;
nixpkgs.config.allowUnfreePredicate = pkg:
builtins.elem (lib.getName pkg) [
"spotify"
"steam"
"steam-original"
"steam-runtime"
"steam-run"
"vscode-with-extensions"
"vscode"
];
home-manager.users.cyryl = {...}: {
imports = [../../home-manager/programs/alacritty.nix ../../gui/vscode.nix];
home.packages = with inputs.nixpkgs-nixos-unstable.legacyPackages."x86_64-linux";
[bisq-desktop]
++ (with pkgs; [lutris])
++ (with inputs.endless-sky.legacyPackages."x86_64-linux"; [endless-sky]);
};
}