basic.nix 2.6 KB

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