dotfiles/nixos/boxes/foureighty/default.nix

85 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 ]);
};
}