ctucx.git: nixfiles

ctucx' nixfiles

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 
91 
92 
93 
94 
95 
96 
97 
98 
99 
100 
101 
102 
103 
104 
{ config, lib, pkgs, home-manager, ... }:

{

  imports = [
    ctucxConfig.configure.mobileDevice
    ctucxConfig.configure.thunderbolt
    ctucxConfig.configure.fonts
    ctucxConfig.configure.bluetooth

    ctucxConfig.services.swaylock
    ctucxConfig.services.pipewire
    ctucxConfig.services.syncthing

    ctucxConfig.programs.ddcutil
    ctucxConfig.programs.ausweisapp
    ctucxConfig.programs.thunar
    ctucxConfig.programs.gpg
  ];

  users.users.katja.extraGroups = [ "dialout" ];

  nixpkgs.config.allowUnfree = true;

  hardware.opengl = {
    enable        = true;
    driSupport    = true;
    extraPackages = with pkgs; [
      vaapiIntel
      vaapiVdpau
      libvdpau-va-gl
      intel-media-driver
    ];
  };

  programs.dconf.enable = true;

  services = {
    nscd.enable         = true;
    getty.autologinUser = "katja";
    dbus.packages       = [ pkgs.dconf ];
  };

  home-manager.users.katja = {
    manual.html.enable = true;

    services.gnome-keyring.enable = true;

    imports = [
      ctucxConfig.homeManager.configure.xdg

      ctucxConfig.homeManager.services.waybar
      ctucxConfig.homeManager.services.mako
      ctucxConfig.homeManager.services.wlsunset
      ctucxConfig.homeManager.services.easyeffects

      ctucxConfig.homeManager.programs.alacritty
      ctucxConfig.homeManager.programs.git
      ctucxConfig.homeManager.programs.ssh

      ctucxConfig.homeManager.programs.firefox
      ctucxConfig.homeManager.programs.thunderbird
      ctucxConfig.homeManager.programs.fractal
      ctucxConfig.homeManager.programs.tuba
      ctucxConfig.homeManager.programs.paper-plane

      ctucxConfig.homeManager.programs.libreoffice

      ctucxConfig.homeManager.programs.zathura
      ctucxConfig.homeManager.programs.imv
      ctucxConfig.homeManager.programs.mpv

      ctucxConfig.homeManager.programs.bitwarden-cli
    ];

    home.sessionVariables = {
      QT_QPA_PLATFORMTHEME = "gnome";
    };

    home.packages = with pkgs; [
      pkgs.qgnomeplatform
    ];

    gtk = {
      enable = true;

      iconTheme = {
        name    = "Adwaita";
        package = pkgs.gnome3.adwaita-icon-theme;
      };

      font   = {
        name    = "Dejavu Sans";
        package = pkgs.dejavu_fonts;
      };

      gtk3.extraConfig  = {
        gtk-application-prefer-dark-theme = true;
        gtk-recent-files-limit            = 10;
      };
    };
  };

}