summaryrefslogtreecommitdiff
path: root/users/bee/default.nix
blob: a7feb461f13aeebe05d125a2a44402ca4f488a52 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
{
  systemState,
  user,
}:
{
  pkgs,
  lib,
  inputs,
  config,
  ...
}:
{
  imports = with inputs.self.homeModules; [
    ../common.nix
    beeMods
    programs
    inputs.noctalia.homeModules.default
    inputs.beevim.homeModules.default
  ];

  wrappers.neovim.enable = true;

  programs.noctalia-shell = {
    enable = true;
    user-templates = {
      config = { };
      templates = {
        nvim = {
          input_path = "~/.config/matugen/templates/neovim.lua";
          output_path = "~/.config/nvim/colors/matugen.lua";
        };
        neovim = {
          input_path = "~/.config/matugen/templates/neovim.json";
          output_path = "~/.config/nvim/colors.json";
        };
        equibop = {
          input_path = "~/.config/matugen/templates/discord.css";
          output_path = "~/.config/equibop/themes/matugen-sys24.css";
        };
        xresources = {
          input_path = "~/.config/matugen/templates/colors-xresources";
          output_path = "~/.config/x11/matugen.Xresources";
        };
        seq = lib.mkIf (config.beeMods.terminal.default == "foot") {
          input_path = "~/.config/matugen/templates/sequences";
          output_path = "~/.config/sequences";
          post_hook = "sh '${config.home.homeDirectory}/.config/sequences'";
        };
      };
    };
  };

  beeMods = {
    windowManagers = {
      dwm.enable = true;
      hyprland.enable = true;
      mango.enable = false;
      eyeCandy = {
        animations.enable = true;
        window = {
          blur.enable = true;
          blur.radius = 12;
          blur.passes = 3;
          shadows.enable = true;
        };
      };
    };
    matugen.enable = true;
    emacs.enable = false;
    terminal = {
      alacritty = true;
      default = "alacritty";
      font.family = "IosevkaInput";
      font.size = 11.0;
    };
  };

  home.username = user;
  home.homeDirectory = "/home/${user}";

  home.sessionVariables = {
    EDITOR = "vim";
    TERMINAL = config.beeMods.terminal.default;
    TERM = config.beeMods.terminal.default;
  };

  programs.home-manager.enable = true;

  home.stateVersion = systemState; # check flake.nix
}