summaryrefslogtreecommitdiff
path: root/home/desktop.nix
blob: c0286d5af41795ac8ccf2b23c47b3ec820592061 (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
{ config, lib, pkgs, ... }:
with lib; {
  config = mkIf (!config.home.isolation.active) {
    home.pointerCursor = {
      package = pkgs.gnome.adwaita-icon-theme;

      gtk.enable = true;
      name = "Adwaita";
      x11.enable = true;
    };

    programs = {
      firefox = {
        enable = true;

        package = pkgs.firefox.override {
          nativeMessagingHosts = [ pkgs.passff-host ];
        };

        profiles."main.profile" = {
          id = 0;
          name = "default";

          extensions = with pkgs.nur.repos.rycee.firefox-addons; [
            decentraleyes
            darkreader
            keepassxc-browser
            old-reddit-redirect
            passff
            privacy-badger
            ublock-origin
            umatrix
          ];
        };
      };

      i3status-rust.enable = true;

      rofi = {
        enable = true;
        theme = "DarkBlue";
      };

      tmux = {
        enable = true;
        aggressiveResize = true;
        clock24 = true;
        escapeTime = 10;
        terminal = "xterm-256color";
        keyMode = "vi";

        extraConfig = ''
          set -g mouse on
          set -ga update-environment " LIFT_PID"
          set -g set-titles on
          set -g renumber-windows on
          set -sa terminal-overrides ',xterm-termite:RGB'
          set -g status-right "#{?window_bigger,[#{window_offset_x}#,#{window_offset_y}] ,} %H:%M %d-%b-%y"
          bind-key X set-window-option synchronize-panes\; display-message "synchronize-panes is now #{?pane_synchronized,on,off}"
        '';
      };
    };

    xdg.configFile."i3/config".text = pkgs.callPackage ./i3-config.nix {
      inherit (pkgs.local) st tmux-lift;

      i3status-rust = config.programs.i3status-rust.package;
      rofi = config.programs.rofi.finalPackage;
    };

    xsession = {
      enable = true;
      # Cambiar por windowManager.i3.enable al migrar
      windowManager.command = "${pkgs.i3-gaps}/bin/i3";
    };

  };
}