diff --git a/machines/thonkpad/default.nix b/machines/thonkpad/default.nix index 05f4b81..1354a80 100644 --- a/machines/thonkpad/default.nix +++ b/machines/thonkpad/default.nix @@ -5,12 +5,18 @@ { config, pkgs, ... }: { - imports = - [ # Include the results of the hardware scan. - ./hardware-configuration.nix - ]; + imports = [ + # Include the results of the hardware scan. + ./hardware-configuration.nix + # KDE Plasma configuration + ../../config/plasma.nix + # Shared/common configurations + ../../config/common.nix + # Packages + ../../config/packages.nix + ]; - # who up thonking they + # who up thunking they networking.hostName = "thonkpad"; # Bootloader. @@ -18,20 +24,11 @@ boot.loader.efi.canTouchEfiVariables = true; # use linux-cachy from the nyx repo. - # is this actually required? no, not really. but i can have it, so why not? + # is this actually "required"? no, not really. but i can have it, so why not? # see nyx: https://www.nyx.chaotic.cx/ # see cachyos: https://github.com/CachyOS/linux-cachyos boot.kernelPackages = pkgs.linuxPackages_cachyos; - # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. - - # Configure network proxy if necessary - # networking.proxy.default = "http://user:password@proxy:port/"; - # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; - - # Enable networking - networking.networkmanager.enable = true; - # Set your time zone. time.timeZone = "America/Chicago"; @@ -50,95 +47,6 @@ LC_TIME = "en_US.UTF-8"; }; - # so, funny thing i learned - "xserver" is basically the blanket term for all gui stuff in nixos. - # this kind of confuses me, but i try to keep a lot of xorg stuff disabled and only the wayland stuff - # enabled. see: https://www.reddit.com/r/NixOS/comments/17ia1g8/i_dont_understand_nixoss_wayland_setup/ - - # Enable the X11 windowing system. - services.xserver.enable = true; - - # Enable the KDE Plasma Desktop Environment. - services.xserver.displayManager.sddm.enable = true; - services.xserver.desktopManager.plasma5.enable = true; - - # Configure keymap in X11 - services.xserver = { - layout = "us"; - xkbVariant = ""; - }; - - # Enable CUPS to print documents. - services.printing.enable = true; - - # Enable sound with pipewire. - sound.enable = true; - hardware.pulseaudio.enable = false; - security.rtkit.enable = true; - services.pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - # If you want to use JACK applications, uncomment this - #jack.enable = true; - - # use the example session manager (no others are packaged yet so this is enabled by default, - # no need to redefine it in your config for now) - #media-session.enable = true; - }; - - # Enable touchpad support (enabled default in most desktopManager). - # services.xserver.libinput.enable = true; - - # Define a user account. Don't forget to set a password with ‘passwd’. - users.users.ruben = { - isNormalUser = true; - description = "Ruben"; - extraGroups = [ "networkmanager" "wheel" ]; - packages = with pkgs; [ - firefox - kate - # thunderbird - ]; - }; - - # Allow unfree packages - nixpkgs.config.allowUnfree = true; - - # List packages installed in system profile. To search, run: - # $ nix search wget - # - # enable flakes - nix.settings.experimental-features = [ "nix-command" "flakes" ]; - environment.systemPackages = with pkgs; [ - # git is required for flakes, and either way i use it - git - neovim - wget - curl - ]; - # set the default editor to neovim - environment.variables.EDITOR = "nvim"; - - # Some programs need SUID wrappers, can be configured further or are - # started in user sessions. - # programs.mtr.enable = true; - # programs.gnupg.agent = { - # enable = true; - # enableSSHSupport = true; - # }; - - # List services that you want to enable: - - # Enable the OpenSSH daemon. - # services.openssh.enable = true; - - # Open ports in the firewall. - # networking.firewall.allowedTCPPorts = [ ... ]; - # networking.firewall.allowedUDPPorts = [ ... ]; - # Or disable the firewall altogether. - # networking.firewall.enable = false; - # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It‘s perfectly fine and recommended to leave @@ -146,5 +54,4 @@ # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). system.stateVersion = "23.11"; # Did you read the comment? - }