default.nix 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. { outputs, config, ... }:
  2. {
  3. imports = [
  4. outputs.modules.global.nix-config
  5. ./kanata.nix
  6. ./nix-builder.nix
  7. ./system.nix
  8. ./software.nix
  9. ]
  10. ++ (builtins.attrValues outputs.modules.darwin);
  11. # NOTE: this seems to be needed to make nix work in fish
  12. programs.fish = {
  13. enable = true;
  14. vendor = {
  15. completions.enable = true;
  16. config.enable = true;
  17. functions.enable = true;
  18. };
  19. };
  20. environment.shells = [
  21. config.programs.fish.package
  22. ];
  23. # TODO: move into module:
  24. # system.activationScripts.extraActivation.text = lib.mkAfter ''
  25. # # disable spotlight
  26. # echo "disable spotlight..." >&2
  27. # mdutil -i off /
  28. # '';
  29. # TODO:
  30. # - Proton Mail Bridge
  31. # - Proton Drive set up home folders
  32. programs = {
  33. nix-index.enable = true;
  34. gnupg.agent.enable = true;
  35. };
  36. users.users.thomas.home = "/Users/thomas";
  37. users.users.thomas.shell = config.programs.fish.package;
  38. users.groups.nix-users.members = [ "thomas" ];
  39. ids.gids.nixbld = 350;
  40. nix.settings.trusted-users = [ "thomas" ];
  41. networking = {
  42. hostName = "meili";
  43. remote-login = true;
  44. };
  45. time.timeZone = "Europe/Vienna";
  46. system.stateVersion = 4;
  47. }