{ config, pkgs, ... }: { nix.package = pkgs.nixVersions.latest; nix.settings = { experimental-features = [ "nix-command" "flakes" ]; extra-substituters = [ "https://nixcache.antoinevaure.fr/?priority=50" ]; extra-trusted-public-keys = [ "nixcache.antoinevaure.fr:KbcKN97zPmsDUCNAXj5g1/WWJEk2WnyMgI6CmwgX/QY=" ]; }; nixpkgs.config.allowUnfree = true; networking.networkmanager.enable = true; time.timeZone = "Europe/Paris"; i18n.defaultLocale = "en_US.UTF-8"; i18n.extraLocaleSettings = { LC_ADDRESS = "fr_FR.UTF-8"; LC_IDENTIFICATION = "fr_FR.UTF-8"; LC_MEASUREMENT = "fr_FR.UTF-8"; LC_MONETARY = "fr_FR.UTF-8"; LC_NAME = "fr_FR.UTF-8"; LC_NUMERIC = "fr_FR.UTF-8"; LC_PAPER = "fr_FR.UTF-8"; LC_TELEPHONE = "fr_FR.UTF-8"; LC_TIME = "fr_FR.UTF-8"; }; services.xserver.xkb = { layout = "fr"; variant = ""; }; console.keyMap = "fr"; programs.fish = { enable = true; interactiveShellInit = '' set -gx fish_greeting ''; }; users.defaultUserShell = pkgs.fish; environment.systemPackages = with pkgs; [ nh neovim ]; security.rtkit.enable = true; security.pam.services.swaylock = { }; security.polkit.enable = true; security.sudo.wheelNeedsPassword = false; services.udisks2.enable = true; programs.gnupg.agent.enable = true; programs.gnupg.agent.pinentryPackage = pkgs.pinentry-curses; programs.nix-ld.enable = true; }