diff --git a/configuration-b85.nix b/configuration-b85.nix index 326de68..6fb4a69 100644 --- a/configuration-b85.nix +++ b/configuration-b85.nix @@ -1,17 +1,54 @@ -# Edit this configuration file to define what should be installed on -# your system. Help is available in the configuration.nix(5) man page, on -# https://search.nixos.org/options and in the NixOS manual (`nixos-help`). - { config, lib, pkgs, ... }: { imports = - [ # Include the results of the hardware scan. + [ ./hardware-configuration.nix ]; + nixpkgs.config.allowUnfree = true; + environment.systemPackages = with pkgs; [ + tdesktop + google-chrome + vscode + bluez + vlc + #obs-studio + + + wget + git + neofetch + tcping-go + btop + busybox + xclip + (neovim.override { + vimAlias = true; + configure = { + customRC='' + set mouse=a + set tabstop=4 + set nu + set autoindent + + ''; + packages.myPlugins = with pkgs.vimPlugins; { + start = [ vim-lastplace vim-nix ]; + opt = []; + }; + }; + }) + + ]; + programs.clash-verge.enable=true; + programs.clash-verge.tunMode=true; + programs.clash-verge.autoStart=true; + environment.shellAliases = { + nrs = ''sudo nixos-rebuild switch --option substituter "https://mirrors.ustc.edu.cn/nix-channels/store"''; + conf = "sudo vim /etc/nixos/configuration.nix"; + }; - # Use the GRUB 2 boot loader. boot.loader.grub.enable = true; boot.loader.grub.efiSupport = true; boot.loader.grub.efiInstallAsRemovable = true; @@ -19,40 +56,21 @@ # Define on which hard drive you want to install Grub. boot.loader.grub.device = "nodev"; # or "nodev" for efi only - # AMD Graphics card driver hardware.opengl.extraPackages = with pkgs; [ rocm-opencl-icd rocm-opencl-runtime pkgs.amdvlk ]; + networking.hostName = "b85"; + networking.networkmanager.enable = true; - networking.hostName = "b85"; # Define your hostname. - # Pick only one of the below networking options. - # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. - networking.networkmanager.enable = true; # Easiest to use and most distros use this by default. - - # Set your time zone. + networking.proxy.default = "http://127.0.0.1:7890/"; + networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; + time.timeZone = "Asia/Shanghai"; - - # Configure network proxy if necessary - # networking.proxy.default = "http://user:password@proxy:port/"; - # 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"; - # useXkbConfig = true; # use xkb.options in tty. - # }; - - # Enable the X11 windowing system. services.xserver.enable = true; - - - # Enable the Plasma 5 Desktop Environment. services.xserver.displayManager.sddm.enable = true; services.xserver.desktopManager.plasma5.enable = true; @@ -61,91 +79,42 @@ # services.xserver.xkb.layout = "us"; # services.xserver.xkb.options = "eurosign:e,caps:escape"; - # Enable CUPS to print documents. services.printing.enable = true; - - # Enable sound. sound.enable = true; hardware.pulseaudio.enable = true; - - # Bluetooth hardware.bluetooth.enable = true; hardware.bluetooth.powerOnBoot = true; - # Enable touchpad support (enabled default in most desktopManager). # services.xserver.libinput.enable = true; - programs.zsh.enable = true; security.sudo.wheelNeedsPassword = false; - # Define a user account. Don't forget to set a password with ‘passwd’. users.users.lzc256 = { isNormalUser = true; - shell = pkgs.zsh; - extraGroups = [ "wheel" ]; # Enable ‘sudo’ for the user. + extraGroups = [ "wheel" ]; }; - # List packages installed in system profile. To search, run: - # $ nix search wget - environment.systemPackages = with pkgs; [ - (neovim.override { - vimAlias = true; - configure = { - customRC='' - set tabstop=4 - set autoindient - ''; - packages.myPlugins = with pkgs.vimPlugins; { - start = [ vim-lastplace vim-nix ]; - opt = []; - }; - }; - } - ) - wget - git - neofetch - btop - vlc - bluez - - - clash-verge - tdesktop - google-chrome - vscode - obs-studio - vlc - ]; boot.supportedFilesystems = [ "ntfs" ]; - # 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; - # }; + 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; # Copy the NixOS configuration file and link it from the resulting system # (/run/current-system/configuration.nix). This is useful in case you # accidentally delete configuration.nix. # system.copySystemConfiguration = true; - fonts.fonts = with pkgs; [ + fonts.packages = with pkgs; [ noto-fonts noto-fonts-cjk noto-fonts-emoji @@ -157,35 +126,21 @@ console = { font = "hack"; keyMap = "us"; - }; - i18n.inputMethod.enabled = "fcitx5"; - i18n.inputMethod.fcitx5.addons = with pkgs; [ fcitx5-chinese-addons nur.repos.xddxdd.rime-moegirl nur.repos.xddxdd.rime-zhwiki nur.repos.xddxdd.fcitx5-breeze ]; + }; + i18n.inputMethod.enabled = "ibus"; + i18n.inputMethod.ibus.engines = with pkgs.ibus-engines; [ + libpinyin + ]; - # This option defines the first version of NixOS you have installed on this particular machine, - # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions. - # - # Most users should NEVER change this value after the initial install, for any reason, - # even if you've upgraded your system to a new NixOS release. - # - # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, - # so changing it will NOT upgrade your system. - # - # This value being lower than the current NixOS release does NOT mean your system is - # out of date, out of support, or vulnerable. - # - # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, - # and migrated your data accordingly. - # # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . system.stateVersion = "23.11"; # Did you read the comment? - - nixpkgs.config.allowUnfree = true; nix.settings.substituters = [ "https://mirrors.ustc.edu.cn/nix-channels/store" ]; nixpkgs.config.packageOverrides = pkgs: { - nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") { - inherit pkgs; - }; +# nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") { +# inherit pkgs; +# }; }; } +