# Edit this configuration file to define what should be installed on# your system. Help is available in the configuration.nix(5) man page# and in the NixOS manual (accessible by running ‘nixos-help’).
{ config, pkgs,... }:
{
imports =
[ # Include the results of the hardware scan../hardware-configuration.nix
];
# Use the systemd-boot EFI boot loader.
boot.loader.systemd-boot.enable =true;
boot.loader.efi.canTouchEfiVariables =true;
networking.hostName ="axionl"; # 设置 hostname.# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.# Set your time zone.
time.timeZone ="Asia/Shanghai"; # 设置时区# The global useDHCP flag is deprecated, therefore explicitly set to false here.# Per-interface useDHCP will be mandatory in the future, so this generated config# replicates the default behavior.
networking.useDHCP =false;
networking.interfaces.enp1s0.useDHCP =false;
networking.networkmanager.enable =true; # 启用 NetworkManager 替代默认的 DHCP# Configure network proxy if necessary
networking.proxy.default ="http://192.168.122.1:8888"; # 设置一个外部代理(可选)# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";# Select internationalisation properties.
i18n.defaultLocale ="en_US.UTF-8"; # 默认语言环境# console = {# font = "Lat2-Terminus16";# keyMap = "us";# };# Configure keymap in X11
services.xserver.layout ="us"; # 设置键盘布局# services.xserver.xkbOptions = "eurosign:e";# Enable CUPS to print documents.
services.printing.enable =false; # 启用打印服务(不需要可禁止)# Enable sound.
sound.enable =true; # 允许声音
hardware.pulseaudio.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.axionl = {
isNormalUser =true;
extraGroups = [ "wheel""networkmanager" ]; # Enable ‘sudo’ for the user.
shell = pkgs.fish; # 指定终端(默认为 bash)
};
# List packages installed in system profile. To search, run:# $ nix search wget# 在系统层面安装软件包
environment.systemPackages =with pkgs; [
htop
neofetch
fish
spice-vdagent
virglrenderer
];
# 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# this value at the release version of the first install of this system.# 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 ="20.09"; # Did you read the comment?# X Windows Server# 启动 X 显示服务
services.xserver.enable =true;
# services.qemuGuest.enable = true;# services.spice-vdagentd.enable = true;# 允许 SDDM 作为窗口管理器
services.xserver.displayManager.sddm.enable =true;
# 安装 Plasma KDE 作为桌面环境
services.xserver.desktopManager.plasma5.enable =true;
# Packages# 允许第三方闭源软件包
nixpkgs.config.allowUnfree =true;
}