default.nix 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. { config, pkgs, lib, inputs, ... }:
  2. {
  3. imports = [
  4. ./img
  5. ./shells/dankmaterialshell
  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. home.file.".config/hypr/modules/shell.lua".text = config.custom.hyprExtras.shell;
  20. xdg.userDirs = {
  21. enable = true;
  22. createDirectories = true;
  23. documents = "$HOME/Documents";
  24. download = "$HOME/Downloads";
  25. desktop = "$HOME/Desktop";
  26. music = "$HOME/Music";
  27. pictures = "$HOME/Pictures";
  28. videos = "$HOME/Videos";
  29. projects = "$HOME/Projects";
  30. };
  31. };
  32. options.custom.hyprExtras = {
  33. monitors = lib.mkOption {
  34. type = lib.types.lines;
  35. default = ''
  36. hl.monitor({ output = "", mode = "preferred", position = "auto", scale = 1 })
  37. '';
  38. description = "Host-specific monitor configuration for Hyprland";
  39. };
  40. shell = lib.mkOption {
  41. type = lib.types.lines;
  42. default = '''';
  43. };
  44. };
  45. }