{ config, pkgs, ... }: let home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz"; in { imports = [ (import "${home-manager}/nixos") ]; home-manager.users.junikim = { # Home Manager needs a bit of information about you and the # paths it should manage. home.username = "junikim"; home.homeDirectory = "/home/junikim"; # 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. # # 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. home.stateVersion = "22.05"; # Let Home Manager install and manage itself. programs.home-manager.enable = true; programs.starship = { enable = true; }; home.packages = with pkgs; [ vim xclip neofetch tmux fff nodejs shellcheck dash wget brave cwm polybarFull kitty nitrogen dmenu picom nfs-utils gcc gnumake pulsemixer ]; programs.neovim = { enable = true; plugins = with pkgs.vimPlugins; [ coc-nvim neovim-sensible vim-airline vim-airline-themes vim-nix ]; extraConfig = builtins.readFile ./dotfiles/init.vim; }; programs.git = { enable = true; userName = "Juni Kim"; userEmail = "junikimm717@gmail.com"; }; programs.zsh = { oh-my-zsh = { enable = true; theme = "robbyrussell"; }; shellInit = builtins.readFile ./dotfiles/zshrc; }; home.file = { #".config/nvim/init.vim".source = ./dotfiles/init.vim; ".config/polybar" = { source = ./dotfiles/polybar; recursive = true; }; ".config/kitty/kitty.conf".source = ./dotfiles/kitty.conf; ".config/picom/picom.conf".source = ./dotfiles/picom.conf; ".cwmrc".source = ./dotfiles/cwmrc; "cwm.sh".source = ./dotfiles/cwm.sh; ".xinitrc".source = ./dotfiles/xinitrc; ".tmux.conf".source = ./dotfiles/tmux.conf; }; } }