{ config, lib, pkgs, inputs, ... }: { # Enable automatic system updates system.autoUpgrade = { enable = true; flake = inputs.self.outPath; flags = [ "--update-input" "nixpkgs" "-L" # print build logs ]; dates = "weekly"; randomizedDelaySec = "45min"; }; # Automate Nix garbage collection nix.gc = { automatic = true; dates = "weekly"; options = "--delete-older-than 7d"; }; # Allow non-free software (RMS will be mad at me :<) nixpkgs.config.allowUnfree = true; # Enable nix-command and flakes nix.settings.experimental-features = [ "nix-command" "flakes"]; # using piprewire cuz embrace muh modernity services.pipewire = { enable = true; pulse.enable = true; }; # Basic configuration stuff - WiFi, Xserver keyboard layout, Stylix networking.networkmanager.enable = true; time.timeZone = "America/St_Thomas"; i18n.defaultLocale = "en_US.UTF-8"; services.xserver.xkb = { layout = "us"; variant = ""; }; stylix = { enable = true; image = ./bg.jpg; }; # Zsh programs.zsh.enable = true; # Browser programs.firefox.enable = true; # Tailscale services.tailscale.enable = true; # Syncthing services.syncthing.enable = true; # GPG programs.gnupg.agent = { enable = true; enableSSHSupport = true; }; # OpenSSH services.openssh.enable = true; }