hosts/hosts/Disco.nix

153 lines
3.8 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ config, lib, pkgs, ... }:
let
definedInPersonalDotNix = lib.mkDefault (throw "Configuration option missing from personal.nix");
in
{
imports = [
./development.nix
./gnome.nix
./x270.nix
./scanner.nix
./printer.nix
];
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
console.keyMap = "de";
services.xserver.layout = "de-x270";
i18n.defaultLocale = "de_DE.UTF-8";
networking.hostName = "Disco";
networking.networkmanager.enable = true;
services.avahi.enable = true;
networking.firewall.allowedTCPPorts = [ 22 ];
programs.gnupg.agent = {
enable = true;
# enableSSHSupport = true;
};
environment.systemPackages = with pkgs; [
ntfsprogs
direnv nix-direnv
tmux zellij
helix
picocom
wget
texlive.combined.scheme-full
xsel
rsync
ranger nnn w3m
hexyl
git
gnupg
ripgrep
fd
ncdu
rink
htop
ncmpcpp
usbutils # lsusb etc.
file
binwalk
shellcheck
wineWowPackages.stable
winePackages.fonts
pavucontrol
xsensors
kitty
kitty-themes
firefox
ungoogled-chromium
thunderbird
zathura
inkscape
vlc
gthumb
gimp
tenacity
openscad
freecad
solvespace
vscodium
marktext
tor-browser-bundle-bin
libreoffice-fresh
tdesktop
horizon-eda
cura
pulseview
nextcloud-client
];
programs.evolution = {
enable = true;
plugins = [ pkgs.evolution-ews ];
};
system.extraDependencies = with pkgs; [
# For various development environments
gcc-arm-embedded
gnumake
];
services.burp.client = {
enable = true;
password = definedInPersonalDotNix;
server = "rupert";
sslKeyPassword = definedInPersonalDotNix;
includes = [ "/etc/nixos" "/home" ];
extraConfig = ''
working_dir_recovery_method = resume
max_resume_attempts = 5
exclude_regex = /home/.*/\.cache
exclude_regex = /home/.*/\.mozilla
exclude_regex = /home/.*/\.local
exclude_regex = /home/.*/\.cargo
exclude_regex = /home/.*/\.texlive.*
exclude_regex = /home/.*/\.vscode.*
exclude_regex = sync_[0-9a-f]+\.db
'';
};
programs.steam = {
enable = true;
# remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
# dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
};
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
"steam"
"steam-original"
"steam-runtime"
"steam-run"
];
fileSystems."/windows" = {
device = "/dev/disk/by-uuid/C61C2B5E1C2B492F";
fsType = "ntfs";
options = [
"defaults"
"gid=1010"
"umask=002"
];
};
users.extraGroups = {
windows = {
gid = 1010;
members = [ "fruchti" ];
};
};
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave
# this value at the release version of the first install of this system.
# Before changing this value read the documentation for this option
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
system.stateVersion = "22.05"; # Did you read the comment?
}