dotfiles-mirror/etc/nixos/configuration.nix
2025-09-30 17:01:29 +03:30

128 lines
2.8 KiB
Nix

{ config, pkgs, ... }:
{
imports =
[
./hardware-configuration.nix
];
boot.loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
boot.plymouth = {
enable = true;
theme = "blahaj";
themePackages = [ pkgs.plymouth-blahaj-theme ];
};
boot.kernelPackages = pkgs.linuxPackages_xanmod_latest;
networking.hostName = "core";
networking.networkmanager.enable = true;
networking.enableIPv6 = false;
time.timeZone = "Asia/Tehran";
i18n.defaultLocale = "en_US.UTF-8";
services.xserver.enable = true;
services.displayManager.ly.enable = true;
services.xserver.xkb = {
layout = "us";
variant = "";
};
services.printing.enable = false;
services.pipewire = {
enable = false;
alsa.enable = false;
pulse.enable = false;
jack.enable = false;
wireplumber.enable = false;
};
services.pulseaudio.enable = true;
services.libinput.enable = true;
programs.nano.enable = false;
security.sudo.enable = false;
security.doas = {
enable = true;
extraRules = [{ users = [ "coast" ]; keepEnv = true; persist = true; }];
};
programs.zsh.enable = true;
programs.zsh.syntaxHighlighting.enable = true;
users.users.coast = {
isNormalUser = true;
description = "coast";
extraGroups = [ "networkmanager" "wheel" "video" "audio" ];
shell = pkgs.zsh;
};
hardware.bluetooth.enable = true;
hardware.bluetooth.powerOnBoot = true;
services.flatpak.enable = true;
services.jellyfin.enable = true;
programs.steam.enable = true;
programs.sway.enable = true;
hardware.graphics.enable = true;
services.xserver.videoDrivers = ["nvidia"];
hardware.nvidia = {
modesetting.enable = true;
powerManagement.enable = false;
open = false;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.beta;
};
boot.kernelParams = [ "nvidia_drm.modeset=0" ];
boot.blacklistedKernelModules = [ "nouveau" ];
nixpkgs.config.allowUnfree = true;
environment.systemPackages = with pkgs; [
pcmanfm wayland-utils
wl-clipboard git
neovim wget nekoray alsa-utils nerd-fonts.ubuntu
(pkgs.runCommand "vim-wrapper" { } ''
mkdir -p $out/bin
ln -s ${pkgs.neovim}/bin/nvim $out/bin/vim
'')
];
fonts.packages = with pkgs; [
ubuntu-sans
ubuntu_font_family
nerd-fonts._0xproto
nerd-fonts.droid-sans-mono
];
programs.nekoray = {
enable = true;
tunMode.enable = true;
};
# 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;
# };
services.openssh.enable = true;
networking.firewall.enable = false;
nix.settings.experimental-features = [ "nix-command" "flakes" ];
system.stateVersion = "25.05";
}