home.nix (view raw)
1{ config
2, pkgs
3, self
4, host
5, lib
6, ...
7}:
8
9let
10 mkTuple = lib.hm.gvariant.mkTuple;
11in
12{
13
14 imports = [
15 ./programs
16 ./services
17 ];
18
19 fonts.fontconfig.enable = true;
20 manual.manpages.enable = false;
21
22 home.stateVersion = "23.11";
23 home.username = "icy";
24 home.homeDirectory = "/home/icy";
25 home.extraOutputsToInstall = [ "man" ];
26
27 home.packages = with pkgs; [
28
29 git
30 unzip
31 curl
32 tmux
33 ripgrep
34 imagemagick
35 ffmpeg
36 wget
37 tree
38 mpv
39 noto-fonts-cjk
40 noto-fonts-emoji
41 jq
42 yq-go
43 fzy
44 nixpkgs-fmt
45 libnotify
46 signal-desktop
47 calibre
48 pinentry
49 libreoffice
50 go
51 dconf
52 chromium
53 evolution
54 nix-your-shell
55 pass
56
57 gnome3.gnome-tweaks
58 gnome3.gnome-shell-extensions
59 gnomeExtensions.appindicator
60 gnomeExtensions.dash-to-dock
61 gnomeExtensions.unite
62 gnomeExtensions.search-light
63
64 ] ++ (import ./bin { inherit pkgs host; });
65
66 dconf.settings = {
67 "org/gnome/mutter" = {
68 experimental-features = [ "scale-monitor-framebuffer" ];
69 };
70 "org/gnome/desktop/input-sources" = {
71 show-all-sources = true;
72 sources = [ (mkTuple [ "xkb" "us+workman" ]) (mkTuple [ "xkb" "us" ]) ];
73 xkb-options = [ "terminate:ctrl_alt_bksp" ];
74 };
75 };
76
77 xdg = {
78 userDirs = {
79 enable = true;
80 desktop = "\$HOME/desktop";
81 documents = "\$HOME/docs";
82 download = "\$HOME/downloads";
83 pictures = "\$HOME/pics";
84 videos = "\$HOME/vids";
85 };
86 };
87
88}
89