1
0

default.nix 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. { config, pkgs, lib, inputs, ... }:
  2. {
  3. imports = [
  4. ./img
  5. ./shells/caelestia
  6. ./theming/notwaita.nix
  7. ./theming/breeze-dark.nix
  8. ];
  9. config = {
  10. home.file.".config/hypr/hyprland.lua".source = ./hypr/hyprland.lua;
  11. home.file.".config/hypr/modules/autostart.lua".source = ./hypr/modules/autostart.lua;
  12. home.file.".config/hypr/modules/environment.lua".source = ./hypr/modules/environment.lua;
  13. home.file.".config/hypr/modules/look_and_feel.lua".source = ./hypr/modules/look_and_feel.lua;
  14. home.file.".config/hypr/modules/misc.lua".source = ./hypr/modules/misc.lua;
  15. home.file.".config/hypr/modules/input.lua".source = ./hypr/modules/input.lua;
  16. home.file.".config/hypr/modules/keybindings.lua".source = ./hypr/modules/keybindings.lua;
  17. home.file.".config/hypr/modules/windows_and_workspaces.lua".source = ./hypr/modules/windows_and_workspaces.lua;
  18. home.file.".config/hypr/modules/monitors.lua".text = config.custom.hyprExtras.monitors;
  19. xdg.userDirs = {
  20. enable = true;
  21. createDirectories = true;
  22. documents = "$HOME/Documents";
  23. download = "$HOME/Downloads";
  24. desktop = "$HOME/Desktop";
  25. music = "$HOME/Music";
  26. pictures = "$HOME/Pictures";
  27. videos = "$HOME/Videos";
  28. projects = "$HOME/Projects";
  29. };
  30. };
  31. options.custom.hyprExtras = {
  32. monitors = lib.mkOption {
  33. type = lib.types.lines;
  34. default = ''
  35. hl.monitor({ output = "", mode = "preferred", position = "auto", scale = 1 })
  36. '';
  37. description = "Host-specific monitor configuration for Hyprland";
  38. };
  39. };
  40. }