default.nix 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  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. useBabelfish = true;
  15. vendor = {
  16. completions.enable = true;
  17. config.enable = true;
  18. functions.enable = true;
  19. };
  20. };
  21. environment.shells = [
  22. config.programs.fish.package
  23. ];
  24. # TODO: move into module:
  25. # system.activationScripts.extraActivation.text = lib.mkAfter ''
  26. # # disable spotlight
  27. # echo "disable spotlight..." >&2
  28. # mdutil -i off /
  29. # '';
  30. # TODO:
  31. # - Proton Mail Bridge
  32. # - Proton Drive set up home folders
  33. programs = {
  34. nix-index.enable = true;
  35. gnupg.agent.enable = true;
  36. };
  37. users.users.thomas.home = "/Users/thomas";
  38. users.users.thomas.shell = config.programs.fish.package;
  39. users.groups.nix-users.members = [ "thomas" ];
  40. ids.gids.nixbld = 350;
  41. nix.settings.trusted-users = [ "thomas" ];
  42. networking = {
  43. hostName = "meili";
  44. remote-login = true;
  45. };
  46. time.timeZone = "Europe/Vienna";
  47. system.stateVersion = 4;
  48. }