Klimi's new dotfiles with stow.
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.

127 lines
3.2 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. # user.nix
  2. { config, pkgs, ...}:
  3. let
  4. email = "klimi@sitischu.com";
  5. in
  6. {
  7. imports = [<home-manager/nixos>];
  8. home-manager.useUserPackages = true;
  9. #
  10. #accounts.email.accounts.klimi.address # TODO FIX
  11. users.users.klimi = {
  12. isNormalUser = true;
  13. extraGroups = [ "wheel" "networkmanager" "adbusers" ];
  14. home = "/home/klimi";
  15. description = "Martin Klimeš";
  16. };
  17. # services.xserver.videoDrivers = [ "nvidiaLegacy340" ];
  18. programs.adb.enable = true;
  19. fonts.fonts = with pkgs; [
  20. noto-fonts
  21. noto-fonts-cjk
  22. noto-fonts-emoji
  23. liberation_ttf
  24. fira-code
  25. fira-code-symbols
  26. mplus-outline-fonts
  27. dina-font
  28. proggyfonts
  29. siji
  30. inconsolata
  31. ];
  32. ######## POWER MANAGMENT ######
  33. powerManagement.enable = true;
  34. # powerManagement.powertop.enable = true;
  35. #powerManagement.cpuFreqGovernor = "powersave";
  36. ## EXPERIMENTAL ##
  37. nix.buildCores = 4;
  38. # networking.networkmanager.wifi.powersave = true;
  39. # powerManagement.cpufreq.max = 933000;
  40. # compton -b --unredir-if-possible --backend xr_glx_hybrid --vsync --use-damage --glx-no-stencil
  41. programs.bash.shellAliases = {
  42. nrs =
  43. "sudo nixos-rebuild switch -I nixos-config=/home/klimi/dotfiles/nix/configuration.nix";
  44. nrb =
  45. "sudo nixos-rebuild boot -I nixos-config=/home/klimi/dotfiles/nix/configuration.nix";
  46. un =
  47. "NIXPKGS_ALLOW_UNFREE=1 ";
  48. };
  49. home-manager.users.klimi = { pkgs, ... }:
  50. let
  51. unstable = import (fetchTarball
  52. "https://nixos.org/channels/nixos-unstable/nixexprs.tar.xz") { };
  53. in {
  54. accounts.email.accounts.klimi.address = "klimi@sitischu.com";
  55. accounts.email.accounts.klimi.primary = true;
  56. programs.alacritty.enable = true;
  57. home.keyboard = {
  58. layout = "gb";
  59. options = ["compose:sclk" "ctrl:nocaps"];
  60. };
  61. #############
  62. # syncthing #
  63. #############
  64. services.syncthing.enable = true;
  65. ##########
  66. # xcape #
  67. ##########
  68. services.xcape.enable = true;
  69. # Do not map Control_L because it gets mapped too late
  70. # Mapping it co caps_lock suddenly works... america please explain
  71. services.xcape.mapExpression = { Caps_Lock="Multi_key";};
  72. ###########
  73. # polybar #
  74. ###########
  75. #services.polybar.enable = true;
  76. #services.polybar.config = "${dots}/polybar.config";
  77. #services.polybar.script = "polybar top &";
  78. programs.firefox.enable = true;
  79. home = {
  80. packages = [
  81. pkgs.ncat
  82. pkgs.lm_sensors
  83. pkgs.dunst
  84. pkgs.libnotify
  85. pkgs.bc
  86. pkgs.ranger
  87. pkgs.htop
  88. pkgs.stow # just stow for a workaround...
  89. pkgs.neofetch
  90. pkgs.rofi
  91. pkgs.xclip
  92. pkgs.maim
  93. pkgs.file
  94. pkgs.feh
  95. unstable.riot-desktop
  96. unstable.tdesktop
  97. pkgs.ghc
  98. pkgs.zile
  99. pkgs.nethogs
  100. pkgs.xcape
  101. pkgs.lemonbar-xft
  102. pkgs.xdotool
  103. pkgs.ruby
  104. pkgs.zsh
  105. pkgs.iw
  106. pkgs.xdo
  107. pkgs.emacs
  108. pkgs.tree
  109. pkgs.gotop
  110. ];
  111. #file = {
  112. # ".xinitrc".text = "exec bspwm";
  113. #};
  114. };
  115. };
  116. }