{ pkgs, lib, ... }: { targets.genericLinux.enable = lib.mkIf pkgs.stdenv.isLinux true; home.language.base = "en_US.UTF-8"; # Tell nix what version it is. nix.package = pkgs.nix; nix = { # Enable flakes. settings.experimental-features = [ "nix-command" "flakes" ]; # Disable that annoying "git tree is dirty" warning. extraOptions = '' warn-dirty = false ''; # Garbage collection. gc.automatic = true; }; xdg.configFile."nixpkgs/config.nix".text = # nix '' { allowUnfree = true; } ''; # Autostart wanted systemd services. systemd.user.startServices = true; imports = [ ./appearance ./languages ./profile ./programs ./services ./xorg ]; # This value determines the Home Manager release that your configuration is # compatible with. This helps avoid breakage when a new Home Manager release # introduces backwards incompatible changes. # # You should not change this value, even if you update Home Manager. If you do # want to update the value, then make sure to first check the Home Manager # release notes. # home.stateVersion = "24.05"; # Please read the comment before changing. # ((this is set in flake.nix but I wanted to keep the explanation here.)) # Let home Manager install and manage itself. programs.home-manager.enable = true; }