Files
nixos-config/nixos/custom.nix
T
2025-11-19 03:06:02 +03:00

98 lines
2.4 KiB
Nix

{ config, pkgs, lib, ... }:
{
nix.settings.experimental-features = [ "nix-command" "flakes" ];
nix.gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 14d";
};
networking.nameservers = [ "8.8.8.8" "1.1.1.1" ];
networking.networkmanager.insertNameservers = [ "1.1.1.1" "8.8.8.8" ];
networking.firewall.enable = false;
programs.firefox.enable = true;
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [ kitty amnezia-vpn lenovo-legion ];
# TODO: Добавить настройку вентиляторов
security.sudo.extraRules = [{
users = [ "ALL" ];
commands = [{
command = "/run/current-system/sw/bin/AmneziaVPN-service";
options = [ "NOPASSWD" ];
}];
}]; # TODO: fix amnezia-service loading on startup
programs.neovim = {
enable = true;
defaultEditor = true;
configure = {
customRC = ''
set runtimepath^=${pkgs.vimPlugins.jellybeans-vim}
colorscheme jellybeans
set number
set cc=80
set list
set listchars=tab:→\ ,space:·,nbsp:␣,trail:•,eol:¶,precedes:«,extends:»
if &diff
colorscheme blue
endif
'';
packages.myVimPackage = with pkgs.vimPlugins; { start = [ ctrlp ]; };
};
};
# fonts.packages = builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
fonts.packages = with pkgs; [
nerd-fonts.jetbrains-mono
# from example
nerd-fonts.fira-code
nerd-fonts.droid-sans-mono
noto-fonts
noto-fonts-cjk-sans
noto-fonts-color-emoji
liberation_ttf
fira-code
fira-code-symbols
mplus-outline-fonts.githubRelease
dina-font
proggyfonts
];
fonts.enableDefaultPackages = true;
programs.zsh.enable = true;
boot = {
plymouth = {
enable = true;
theme = "lone";
themePackages = with pkgs;
[
(adi1090x-plymouth-themes.override { selected_themes = [ "lone" ]; })
];
};
consoleLogLevel = 3;
initrd.verbose = false;
kernelModules =
[ "tun" "lenovo-legion-module" ]; # check if tun really needed
kernelPackages = pkgs.linuxPackages_latest;
extraModulePackages = with config.boot.kernelPackages;
[ lenovo-legion-module ];
kernelParams = [
"quiet"
"splash"
"boot.shell_on_fail"
"udev.log_priority=3"
"rd.systemd.show_status=auto"
];
loader.timeout = 0;
};
}