{ config, pkgs, ... }: let # Create a customized version of logseq logseq-patch = pkgs.logseq.overrideAttrs (oldAttrs: { electron_27 = pkgs.electron_38; }); in { system.activationScripts.ciscoPreHook = { text = '' echo "Prefetching Cisco Packet Tracer dependencies..." ${pkgs.nix}/bin/nix-prefetch-url --type sha256 file:///etc/nixos/local-pkgs/CiscoPacketTracer822_amd64_signed.deb ''; deps = []; }; # Set your time zone. time.timeZone = "Europe/Berlin"; # Select internationalisation properties. i18n.defaultLocale = "en_GB.UTF-8"; i18n.extraLocaleSettings = { LC_ADDRESS = "de_DE.UTF-8"; LC_IDENTIFICATION = "de_DE.UTF-8"; LC_MEASUREMENT = "de_DE.UTF-8"; LC_MONETARY = "de_DE.UTF-8"; LC_NAME = "de_DE.UTF-8"; LC_NUMERIC = "de_DE.UTF-8"; LC_PAPER = "de_DE.UTF-8"; LC_TELEPHONE = "de_DE.UTF-8"; LC_TIME = "de_DE.UTF-8"; }; networking = { networkmanager.enable = true; }; programs.wireshark = { enable = true; usbmon.enable = true; # Allow USB monitoring dumpcap.enable = true; # Allow network capture }; # Add zsh programs.zsh = { enable = true; enableCompletion = true; autosuggestions.enable = true; syntaxHighlighting.enable = true; shellAliases = { ll = "ls -l"; }; }; programs.git = { enable = true; lfs.enable = true; }; # Allow dynamicly linked executables programs.nix-ld.enable = true; # Libvirt programs.virt-manager.enable = true; virtualisation.libvirtd = { enable = true; qemu = { package = pkgs.qemu_kvm; runAsRoot = true; swtpm.enable = true; ovmf = { enable = true; packages = [(pkgs.OVMF.override { secureBoot = true; tpmSupport = true; }).fd]; }; }; }; virtualisation.spiceUSBRedirection.enable = true; systemd.tmpfiles.rules = [ "L+ /var/lib/qemu/firmware - - - - ${pkgs.qemu}/share/qemu/firmware" ]; # printing # Enable CUPS to print documents. services.printing = { enable = true; drivers = [ pkgs.cnijfilter2 ]; }; services.avahi = { enable = true; nssmdns4 = true; openFirewall = true; }; environment.systemPackages = with pkgs; [ starship virtiofsd fzf jq bc vim wget git librewolf rnote vscode nextcloud-client ciscoPacketTracer8 gimp3 logseq-patch libreoffice hunspell hunspellDicts.en_US hunspellDicts.de_DE cnijfilter2 # Canon printer driver wireshark ]; }