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.

155 lines
4.2 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
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/desktop.nix";
  44. nrb =
  45. "sudo nixos-rebuild boot -I nixos-config=/home/klimi/dotfiles/nix/desktop.nix";
  46. un =
  47. "NIXPKGS_ALLOW_UNFREE=1 ";
  48. };
  49. hardware.opengl.driSupport32Bit = true;
  50. hardware.opengl.extraPackages32 = with pkgs.pkgsi686Linux; [ libva ];
  51. hardware.pulseaudio.support32Bit = true;
  52. services.weechat.enable = true;
  53. programs.screen.screenrc = ''
  54. multiuser on
  55. acladd normal_user
  56. '';
  57. services.printing.enable = true;
  58. services.printing.drivers = [ pkgs.brgenml1lpr pkgs.brgenml1cupswrapper ];
  59. # TODO FIX
  60. home-manager.users.klimi = { pkgs, ... }:
  61. let
  62. unstable = import (fetchTarball
  63. "https://nixos.org/channels/nixos-unstable/nixexprs.tar.xz") { };
  64. in {
  65. accounts.email.accounts.klimi.address = "klimi@sitischu.com";
  66. accounts.email.accounts.klimi.primary = true;
  67. programs.alacritty.enable = true;
  68. home.keyboard = {
  69. layout = "gb";
  70. options = ["compose:sclk" "ctrl:nocaps"];
  71. };
  72. #############
  73. # syncthing #
  74. #############
  75. services.syncthing.enable = true;
  76. ##########
  77. # xcape #
  78. ##########
  79. services.xcape.enable = true;
  80. # Do not map Control_L because it gets mapped too late
  81. # Mapping it co caps_lock suddenly works... america please explain
  82. services.xcape.mapExpression = { Caps_Lock="Multi_key";};
  83. ###########
  84. # polybar #
  85. ###########
  86. #services.polybar.enable = true;
  87. #services.polybar.config = "${dots}/polybar.config";
  88. #services.polybar.script = "polybar top &";
  89. nixpkgs.config.allowUnfree = true;
  90. nixpkgs.config.allowBroken = true;
  91. programs.firefox.enable = true;
  92. home = {
  93. packages = [
  94. pkgs.mumble
  95. pkgs.zathura # TODO FIX
  96. pkgs.libreoffice-fresh
  97. (pkgs.steam.override { extraPkgs = pkgs: [ pkgs.mono pkgs.gtk3 pkgs.gtk3-x11 pkgs.libgdiplus pkgs.zlib ];})
  98. pkgs.youtube-dl
  99. pkgs.ffmpeg
  100. pkgs.mpv
  101. pkgs.paper-gtk-theme
  102. pkgs.paper-icon-theme
  103. pkgs.adapta-gtk-theme
  104. pkgs.moka-icon-theme
  105. pkgs.tango-icon-theme
  106. pkgs.lxappearance
  107. (pkgs.dunst.override {dunstify = true; })
  108. pkgs.transmission-gtk
  109. pkgs.unzip
  110. pkgs.ncat
  111. pkgs.lm_sensors
  112. pkgs.libnotify
  113. pkgs.bc
  114. pkgs.ranger
  115. pkgs.htop
  116. pkgs.stow # just stow for a workaround...
  117. pkgs.neofetch
  118. pkgs.rofi
  119. pkgs.xclip
  120. pkgs.maim
  121. pkgs.file
  122. pkgs.feh
  123. unstable.riot-desktop
  124. unstable.tdesktop
  125. pkgs.ghc
  126. pkgs.zile
  127. pkgs.nethogs
  128. pkgs.xcape
  129. pkgs.lemonbar-xft
  130. pkgs.xdotool
  131. pkgs.ruby
  132. pkgs.zsh
  133. pkgs.iw
  134. pkgs.xdo
  135. pkgs.emacs
  136. pkgs.tree
  137. pkgs.gotop
  138. ];
  139. #file = {
  140. # ".xinitrc".text = "exec bspwm";
  141. #};
  142. };
  143. };
  144. }