dotfiles/hosts/default/configuration.nix
2026-08-11 11:30:34 +03:00

75 lines
1.7 KiB
Nix

{ config, pkgs, inputs, hostname, username, ... }:
{
imports = [
../../modules/common/boot.nix
../../modules/common/audio.nix
../../modules/services/ssh.nix
];
# Имя хоста
networking.hostName = hostname;
# Пользователь
users.users.${username} = {
isNormalUser = true;
description = username;
extraGroups = [ "networkmanager" "wheel" "docker" "uucp" "input" "fuse" "audio" "video" ];
initialPassword = "changeme";
shell = pkgs.zsh;
};
environment.systemPackages = with pkgs; [
git htop curl wget nixpkgs-fmt
alacritty bat brightnessctl ctags fd ffmpeg fzf glow
grim highlight imagemagick jq yq kanshi less lesspipe mako
man mpv noto-fonts p7zip poppler resvg ripgrep rofi slurp
socat sway swaybg swayidle swaylock tmux tree-sitter ueberzug
waybar wget wl-clipboard wlr-randr wtype yazi ydotool zoxide
docker httpie exa zsh
];
programs.zsh = {
enable = true;
enableCompletion = true;
autosuggestions.enable = true;
syntaxHighlighting.enable = true;
};
programs.firefox.enable = true;
services.greetd = {
enable = true;
settings = {
default_session = {
command = "${pkgs.tuigreet}/bin/tuigreet --time --cmd sway";
user = "greeter";
};
};
};
programs.sway = {
enable = true;
};
environment.etc."sway/config" = {
text = ''
set $mod Mod4
set $term alacritty
bindsym $mod+Return exec $term
'';
};
networking.networkmanager.enable = true;
time.timeZone = "Europe/Moscow";
i18n.defaultLocale = "en_US.UTF-8";
services.printing.enable = true;
# Системное состояние
system.stateVersion = "26.05";
}