# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page, on # https://search.nixos.org/options and in the NixOS manual (`nixos-help`). { config, lib, pkgs, ... }: { imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix ]; # Use the systemd-boot EFI boot loader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; boot.loader.grub.device = "nodev"; environment.systemPackages = with pkgs; [ neovim tmux wget ]; hardware.bluetooth.enable = true; # enables support for Bluetooth hardware.bluetooth.powerOnBoot = true; # powers up the default Bluetooth controller on boot home-manager.useGlobalPkgs = true; home-manager.users.eliribble = { config, pkgs, ... }: { imports = [ ]; home.homeDirectory = "/home/eliribble"; home.stateVersion = "24.11"; home.username = "eliribble"; programs.fish = { enable = true; interactiveShellInit = '' set fish_greeting # Disable greeting ''; }; programs.git = { enable = true; userName = "Eli Ribble"; userEmail = "eli@theribbles.org"; }; # Prevent automatic screen locking programs.plasma = { enable = true; kscreenlocker = { autoLock = false; lockOnResume = false; passwordRequired = false; timeout = 0; }; }; }; # Select internationalisation properties. i18n.defaultLocale = "en_US.UTF-8"; i18n.extraLocaleSettings = { LC_ADDRESS = "en_US.UTF-8"; LC_IDENTIFICATION = "en_US.UTF-8"; LC_MEASUREMENT = "en_US.UTF-8"; LC_MONETARY = "en_US.UTF-8"; LC_NAME = "en_US.UTF-8"; LC_NUMERIC = "en_US.UTF-8"; LC_PAPER = "en_US.UTF-8"; LC_TELEPHONE = "en_US.UTF-8"; LC_TIME = "en_US.UTF-8"; }; networking.hostName = "veles"; # Define your hostname. networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. # Set neovim as the default editor programs.neovim.enable = true; programs.neovim.defaultEditor = true; # Enable the KDE Plasma Desktop Environment. services.displayManager.sddm.enable = true; services.desktopManager.plasma6.enable = true; # Enable Wayland for desktop environment services.displayManager.sddm.wayland.enable = true; services.displayManager.autoLogin = { enable = true; user = "eliribble"; }; # For running Moonlight services.flatpak.enable = true; # Enable the OpenSSH daemon. services.openssh.enable = true; systemd.network.enable = true; systemd.network.wait-online.enable = false; # Set your time zone. time.timeZone = "America/Phoenix"; # Define a user account. Don't forget to set a password with ‘passwd’. users.users.eliribble = { extraGroups = [ "networkmanager" "wheel" ]; description = "Eli Ribble"; isNormalUser = true; packages = with pkgs; [ firefox tree ]; }; xdg.autostart.enable = true; # This option defines the first version of NixOS you have installed on this particular machine, # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions. # # Most users should NEVER change this value after the initial install, for any reason, # even if you've upgraded your system to a new NixOS release. # # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how # to actually do that. # # This value being lower than the current NixOS release does NOT mean your system is # out of date, out of support, or vulnerable. # # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, # and migrated your data accordingly. # # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . system.stateVersion = "24.05"; # Did you read the comment? }