{ pkgs, lib, config, ... }: { networking = { hostName = config.frogeye.name; domain = "geoffrey.frogeye.fr"; }; time.timeZone = "Europe/Amsterdam"; boot.tmp.cleanOnBoot = true; # TODO qwerty-fr for console # Enable CUPS to print documents services.printing.enable = true; # Enable passwordless sudo # TODO execWheelOnly? sudo-rs? security.sudo.extraRules = [ { groups = [ "wheel" ]; commands = [ { command = "ALL"; options = [ "NOPASSWD" ]; } ]; } ]; # UPST disko --root-mountpoint doesn't work when using flake, workaround: disko.rootMountPoint = "/mnt/nixos"; environment.systemPackages = with pkgs; [ wget kexec-tools neovim # So we have a working editor in rescue mode git # Needed for all the fetchFromGit in this repo on nixos-rebuild ]; i18n = { defaultLocale = "en_GB.UTF-8"; extraLocaleSettings = { LC_TIME = "en_DK.UTF-8"; # Should give YYYY-MM-DD but doesn't work for browser & Thunderbird :( }; }; nix = { package = pkgs.lix; settings = { experimental-features = [ "nix-command" "flakes" ]; warn-dirty = false; }; }; programs = { adb.enable = true; # Enable compilation cache ccache.enable = true; # TODO Not enough, see https://nixos.wiki/wiki/CCache. # Might want to see if it's worth using on NixOS less.lessopen = null; # Don't use lessopen # Let users mount disks udevil.enable = true; }; services = { # Enable the OpenSSH daemon openssh.enable = true; # Time sychronisation chrony = { enable = true; servers = map (n: "${toString n}.europe.pool.ntp.org") (lib.lists.range 0 3); }; # Prevent power button from shutting down the computer. # On Pinebook it's too easy to hit, # on others I sometimes turn it off when unsuspending. logind.extraConfig = "HandlePowerKey=ignore"; udev.extraRules = '' # DYMO LabelPOINT 350 ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0922", ATTRS{idProduct}=="0015", MODE="0666" ''; }; # TODO Hibernation? # Use defaults from system.stateVersion = "24.05"; }