basic.nix 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. { config, pkgs, inputs, ... }:
  2. {
  3. environment.systemPackages = let
  4. moose = inputs.moose.packages.${pkgs.system}.default;
  5. in
  6. with pkgs; [
  7. lf
  8. jq
  9. gh
  10. git
  11. wget
  12. wine
  13. curl
  14. htop
  15. unzip
  16. seatd
  17. libgcc
  18. gnumake
  19. gparted
  20. dnsmasq
  21. pciutils
  22. onefetch
  23. python315
  24. playerctl
  25. p7zip-rar
  26. fastfetch
  27. pkg-config
  28. kdePackages.qt6ct
  29. lxqt.lxqt-policykit
  30. neovim
  31. google-fonts
  32. ffmpeg_7-full
  33. libGL
  34. discord
  35. proton-vpn
  36. wireguard-tools
  37. cups-pk-helper
  38. dgop
  39. cava
  40. moose
  41. ];
  42. services.flatpak = {
  43. enable = true;
  44. packages = [
  45. "com.github.tchx84.Flatseal"
  46. "com.dec05eba.gpu_screen_recorder"
  47. "org.geogebra.GeoGebra"
  48. ];
  49. };
  50. fonts = {
  51. enableDefaultPackages = true;
  52. packages = with pkgs; [
  53. adwaita-fonts
  54. jetbrains-mono
  55. nerd-fonts.jetbrains-mono
  56. google-fonts
  57. material-symbols
  58. material-icons
  59. ];
  60. fontconfig = {
  61. enable = true;
  62. defaultFonts = {
  63. sansSerif = [ "Adwaita Sans" ];
  64. monospace = [ "JetBrains Mono" "Adwaita Mono" ];
  65. };
  66. };
  67. };
  68. #nix.gc = {
  69. # automatic = true;
  70. # dates = "weekly";
  71. # options = "--delete-older-than 7d";
  72. #};
  73. environment.variables = {
  74. QT_QPA_PLATFORMTHEME = "qt6ct";
  75. EDITOR = "moose";
  76. };
  77. services.xserver.xkb = {
  78. layout = "no";
  79. variant = "winkeys";
  80. };
  81. console.keyMap = "no";
  82. time.timeZone = "Europe/Oslo";
  83. i18n.defaultLocale = "en_US.UTF-8";
  84. i18n.extraLocaleSettings = {
  85. LC_ADDRESS = "nn_NO.UTF-8";
  86. LC_IDENTIFICATION = "nn_NO.UTF-8";
  87. LC_MEASUREMENT = "nn_NO.UTF-8";
  88. LC_MONETARY = "nn_NO.UTF-8";
  89. LC_NAME = "nn_NO.UTF-8";
  90. LC_NUMERIC = "nn_NO.UTF-8";
  91. LC_PAPER = "nn_NO.UTF-8";
  92. LC_TELEPHONE = "nn_NO.UTF-8";
  93. LC_TIME = "nn_NO.UTF-8";
  94. };
  95. security.polkit.enable = true;
  96. programs.nix-ld.enable = true;
  97. programs.firefox.enable = true;
  98. programs.noisetorch.enable = true;
  99. services.upower.enable = true;
  100. services.power-profiles-daemon.enable = true;
  101. services.accounts-daemon.enable = true;
  102. services.dbus = {
  103. enable = true;
  104. packages = with pkgs; [ cups-pk-helper ];
  105. };
  106. #programs.appimage = {
  107. # enable = true;
  108. # binfmt = true;
  109. # package = pkgs.appimage-run.override {
  110. # extraPkgs = pkgs:
  111. # [
  112. # pkgs.icu
  113. # pkgs.libxcrypt-legacy
  114. # pkgs.python312
  115. # pkgs.python312Packages.torch
  116. # pkgs.zstd
  117. # ];
  118. # };
  119. #};
  120. programs.nh = {
  121. enable = true;
  122. clean.enable = true;
  123. clean.extraArgs = "--keep-since 4d --keep 3";
  124. flake = "$HOME/nix-dots/";
  125. };
  126. hardware.graphics = {
  127. enable = true;
  128. enable32Bit = true;
  129. };
  130. services.seatd.enable = true;
  131. services.gvfs.enable = true;
  132. programs.virt-manager.enable = true;
  133. virtualisation = {
  134. libvirtd = {
  135. enable = true;
  136. qemu = {
  137. package = pkgs.qemu_kvm;
  138. vhostUserPackages = [ pkgs.virtiofsd ];
  139. };
  140. };
  141. docker = {
  142. enable = true;
  143. storageDriver = "btrfs";
  144. };
  145. };
  146. qt.enable = true;
  147. systemd.user.extraConfig = ''
  148. DefaultTimeoutStopSec=10s
  149. '';
  150. }