{ inputs, self, ... }: { flake.nixosModules.global = { pkgs, config, lib, ... }: { options = { info.rootPath = lib.mkOption { type = lib.types.str; default = "/home/grey/nixos"; }; }; config = { nix.settings.experimental-features = [ "nix-command" "flakes" ]; nix.gc = { automatic = true; persistent = true; dates = "Sun 05:00"; }; boot.loader.efi.canTouchEfiVariables = true; networking.networkmanager.enable = true; time.timeZone = "Europe/London"; i18n.defaultLocale = "en_GB.UTF-8"; i18n.extraLocaleSettings = { LC_ADDRESS = "en_GB.UTF-8"; LC_IDENTIFICATION = "en_GB.UTF-8"; LC_MEASUREMENT = "en_GB.UTF-8"; LC_MONETARY = "en_GB.UTF-8"; LC_NAME = "en_GB.UTF-8"; LC_NUMERIC = "en_GB.UTF-8"; LC_PAPER = "en_GB.UTF-8"; LC_TELEPHONE = "en_GB.UTF-8"; LC_TIME = "en_GB.UTF-8"; }; services.xserver.xkb = { layout = "gb"; variant = ""; }; console.keyMap = "uk"; users.users."grey" = { isNormalUser = true; description = "grey"; extraGroups = [ "networkmanager" "wheel" ]; }; nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ git fzf jq busybox ethtool wayland-utils mesa-demos vulkan-tools hyperfine ]; fonts.packages = with pkgs; [ iosevka-comfy.comfy nerd-fonts.jetbrains-mono ]; programs.nano = { enable = true; nanorc = '' set nowrap set tabstospaces set tabsize 2 ''; }; hardware.bluetooth = { enable = true; powerOnBoot = false; }; programs.gnupg.agent = { enable = true; }; }; }; flake.homeModules.global = { config, pkgs, ... }: { nix.gc = { automatic = true; persistent = true; dates = "Sun 05:00"; }; home.packages = with pkgs; [ bibata-cursors x264 speedtest-go gparted vlc ]; programs.git = { enable = true; lfs.enable = true; settings = { user.name = "Grey Jones"; user.email = "grey@greyweather.dev"; }; signing = { format = "openpgp"; key = "CC7388DF8E1890729921BCFF7C67C51C2FF524D9"; signByDefault = true; }; }; programs.gpg = { enable = true; }; programs.ssh = { enable = true; enableDefaultConfig = false; settings = { "git.greyweather.dev" = { HostName = "git.greyweather.dev"; Port = "222"; User = "git"; IdentityFile = "~/.ssh/id_gitea"; }; "github.com" = { HostName = "github.com"; Port = 22; User = "git"; IdentityFile = "~/.ssh/id_github"; }; }; }; home.shell.enableBashIntegration = true; }; }