{ config, inputs, lib, pkgs, ... }: { imports = [ ./users/thiago/default.nix ]; boot.loader.systemd-boot.enable = true; nixpkgs.overlays = [ (final: prev: { libnitrokey = prev.libnitrokey.overrideAttrs (old: { cmakeFlags = (old.cmakeFlags or [ ]) ++ [ "-DCMAKE_POLICY_VERSION_MINIMUM=3.5" ]; }); }) ]; environment = { shells = with pkgs; [ zsh ]; etc = lib.mapAttrs' (name: value: { name = "nix/path/${name}"; value.source = value.flake; }) config.nix.registry; systemPackages = with pkgs; [ ccid exfat file fuse3 gcsfuse git gnupg hidapi home-manager keymapp libnitrokey libusb1 nix-ld opensc pciutils pcsc-safenet pcsclite pcsctools pkcs11helper podman-compose rclone sops wget zsa-udev-rules ]; }; hardware.keyboard.zsa.enable = true; networking.networkmanager.enable = true; nix = { registry = (lib.mapAttrs (_: flake: { inherit flake; })) ( (lib.filterAttrs (_: lib.isType "flake")) inputs ); nixPath = [ "/etc/nix/path" ]; settings = { download-buffer-size = "512M"; experimental-features = "nix-command flakes"; auto-optimise-store = true; }; }; nixpkgs.config.allowUnfree = true; programs = { gnupg = { agent = { enableSSHSupport = true; enable = true; pinentryPackage = pkgs.pinentry-tty; }; }; nix-ld = { enable = true; libraries = with pkgs; [ glibc zlib ]; }; zsh.enable = true; }; services = { pcscd.enable = true; # xserver.displayManager.sessionCommands = # "${pkgs.xorg.xmodmap}/bin/xmodmap -e 'keycode 64 = Alt_L'"; udev.packages = [ pkgs.libwacom pkgs.nitrokey-udev-rules ]; }; users.groups.scard = { }; time.timeZone = "America/Sao_Paulo"; users.defaultUserShell = pkgs.zsh; }