dotfiles/root-conf/nixos/shared-conf.nix

125 lines
2.5 KiB
Nix

{ 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
];
}