{ config, pkgs, ... }: { home.username = "youwen"; home.homeDirectory = "/home/youwen"; # link the configuration file in current directory to the specified location in home directory # home.file.".config/i3/wallpaper.jpg".source = ./wallpaper.jpg; # link all files in `./scripts` to `~/.config/i3/scripts` # home.file.".config/i3/scripts" = { # source = ./scripts; # recursive = true; # link recursively # executable = true; # make all files executable # }; # encode the file content in nix configuration file directly # home.file.".xxx".text = '' # xxx # ''; home.file.".config/neofetch/config.conf".source = ./config/neofetch.conf; home.file.".wallpapers" = { source = ./wallpapers; recursive = true; }; # Packages that should be installed to the user profile. home.packages = with pkgs; [ neofetch # archives zip xz unzip p7zip # utils nurl # helps fetch git data for nixpkgs # nix related # # it provides the command `nom` works just like `nix` # with more details log output nix-output-monitor # system tools pciutils # lspci usbutils # lsusb # desktop utils wl-clipboard grim slurp swappy pavucontrol swww waypaper # desktop apps dolphin bitwarden-desktop thunderbird spotify vesktop signal-desktop modrinth-app lutris wine # dev tools nodePackages_latest.pnpm rustfmt rust-analyzer # desktop ricing bibata-cursors libsForQt5.qtstyleplugin-kvantum libsForQt5.qt5ct papirus-icon-theme libsForQt5.qt5ct ]; # This value determines the home Manager release that your # configuration is compatible with. This helps avoid breakage # when a new home Manager release introduces backwards # incompatible changes. home.stateVersion = "24.05"; # # You can update home Manager without changing this value. See # the home Manager release notes for a list of state version # changes in each release. # Let home Manager install and manage itself. programs.home-manager.enable = true; }