1
0

basic.nix 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  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. emacs
  32. google-fonts
  33. ffmpeg_7-full
  34. libGL
  35. discord
  36. proton-vpn
  37. wireguard-tools
  38. cups-pk-helper
  39. dgop
  40. cava
  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 = "nvim";
  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. }