- Delete homeManagerConfigurations from flake. - Delete laptop nixosConfiguration. - Delete `home-manager/` and `nixos/` directories. - Switch from one general "vars" attrset for variables to using built-for-purpose attrsets for variables, each declared where it makes most sense (e.g. the "sys" attrset will be used for system-specific attributes). - Create `systems/` directory for root-level system configurations and `modules/` directory for re-usable config files. - Consolidate most app and system configuration into the `desktop-environment.nix` and `terminal-environment.nix` files. - Standardize all `.nix` files to nixos config nodes, as opposed to home-manager. May reverse this decision. - Use `${sys.username}` for the username of the primary user of the system. - Use `${usr.${sys.username}}` for attributes related to that user (e.g. realname, email).
61 lines
1.0 KiB
Nix
61 lines
1.0 KiB
Nix
{ vars, pkgs, ... }: {
|
|
environment.systemPackages = with pkgs; [
|
|
brightnessctl
|
|
mako libnotify
|
|
swww
|
|
wofi
|
|
polkit-kde-agent
|
|
];
|
|
|
|
programs.hyprland = {
|
|
enable = true;
|
|
package = pkgs.hyprland;
|
|
portalPackage = pkgs.xdg-desktop-portal-hyprland;
|
|
};
|
|
|
|
systemd.services = {
|
|
"getty@tty1".enable = false;
|
|
"autovt@tty1".enable = false;
|
|
};
|
|
|
|
# Configure displayManager
|
|
services.displayManager = {
|
|
enable = true;
|
|
autoLogin = {
|
|
enable = true;
|
|
user = "${vars.user.username}";
|
|
};
|
|
sddm = {
|
|
enable = true;
|
|
autoNumlock = true;
|
|
wayland.enable = true;
|
|
};
|
|
};
|
|
|
|
# Configure X11 server
|
|
services.xserver = {
|
|
enable = true;
|
|
videoDrivers = [ "amdgpu" ];
|
|
excludePackages = [ pkgs.xterm ];
|
|
xkb = {
|
|
layout = "us";
|
|
variant = "";
|
|
};
|
|
};
|
|
|
|
# Configure xwayland
|
|
programs.xwayland = {
|
|
enable = true;
|
|
};
|
|
|
|
# Configure XDG
|
|
xdg.portal = {
|
|
enable = true;
|
|
wlr.enable = true;
|
|
extraPortals = with pkgs; [
|
|
xdg-desktop-portal-gtk
|
|
];
|
|
};
|
|
|
|
}
|