Lemur Pro nixos dotfiles
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

98 lines
2.7 KiB

2 years ago
  1. {config, pkgs, ...}:
  2. {
  3. # Home Manager needs a bit of information about you and the
  4. # paths it should manage.
  5. home.username = "junikim";
  6. home.homeDirectory = "/home/junikim";
  7. # This value determines the Home Manager release that your
  8. # configuration is compatible with. This helps avoid breakage
  9. # when a new Home Manager release introduces backwards
  10. # incompatible changes.
  11. #
  12. # You can update Home Manager without changing this value. See
  13. # the Home Manager release notes for a list of state version
  14. # changes in each release.
  15. home.stateVersion = "22.05";
  16. # Let Home Manager install and manage itself.
  17. programs.home-manager.enable = true;
  18. programs.starship.enable = true;
  19. home.packages = with pkgs; [
  20. xclip neofetch pfetch tmux
  21. fff
  22. nodejs shellcheck
  23. dash
  24. wget brave
  25. bspwm sxhkd polybarFull kitty nitrogen dmenu rofi picom eww
  26. nfs-utils gcc gnumake pulsemixer
  27. ncmpcpp
  28. ranger ueberzug sxiv
  29. zathura
  30. ];
  31. programs.neovim = {
  32. enable = true;
  33. viAlias = true;
  34. vimAlias = true;
  35. plugins = with pkgs.vimPlugins; [
  36. coc-nvim
  37. neovim-sensible
  38. vim-airline
  39. vim-airline-themes
  40. vim-nix
  41. ];
  42. extraConfig = builtins.readFile ./dotfiles/init.vim;
  43. };
  44. programs.git = {
  45. enable = true;
  46. userName = "Juni Kim";
  47. userEmail = "junikimm717@gmail.com";
  48. };
  49. programs.zsh = {
  50. oh-my-zsh = {
  51. enable = true;
  52. theme = "robbyrussell";
  53. };
  54. shellAliases = {
  55. "gac" = "git add . && git commit";
  56. "v" = "nvim";
  57. "c" = "clear";
  58. "s" = "ls";
  59. "e" = "exit";
  60. "sy" = "systemctl";
  61. "cp" = "cp -r";
  62. "r" = "source ranger";
  63. };
  64. };
  65. home.file = {
  66. # shell-related
  67. ".tmux.conf".source = ./dotfiles/tmux.conf;
  68. ".zshrc".source = ./dotfiles/zshrc;
  69. ".config/nixpkgs/config.nix".source = ./dotfiles/config.nix;
  70. # rice configuration
  71. ".xinitrc".source = ./dotfiles/bspwm/xinitrc;
  72. ".config/bspwm/bspwmrc".source = ./dotfiles/bspwm/bspwmrc;
  73. ".config/bspwm/kill.sh".source = ./dotfiles/bspwm/kill.sh;
  74. ".config/sxhkd/sxhkdrc".source = ./dotfiles/bspwm/sxhkdrc;
  75. ".config/polybar" = {source = ./dotfiles/bspwm/polybar; recursive = true;};
  76. ".config/picom/picom.conf".source = ./dotfiles/picom.conf;
  77. # application configuration
  78. ".config/kitty/kitty.conf".source = ./dotfiles/kitty.conf;
  79. ".config/ranger" = {source = ./dotfiles/ranger; recursive = true;};
  80. ".config/rofi" = {source = ./dotfiles/rofi; recursive = true;};
  81. ".config/eww" = {source = ./dotfiles/eww; recursive = true;};
  82. # music
  83. ".config/mpd/mpd.conf".source = ./dotfiles/mpd.conf;
  84. ".config/ncmpcpp/config".source = ./dotfiles/ncmpcpp.conf;
  85. };
  86. }