diff options
Diffstat (limited to 'home-config/nix-home-manager/home.nix')
-rw-r--r-- | home-config/nix-home-manager/home.nix | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/home-config/nix-home-manager/home.nix b/home-config/nix-home-manager/home.nix new file mode 100644 index 0000000..39a8c0e --- /dev/null +++ b/home-config/nix-home-manager/home.nix | |||
@@ -0,0 +1,83 @@ | |||
1 | { config, pkgs, ... }: | ||
2 | |||
3 | { | ||
4 | # Home Manager needs a bit of information about you and the paths it should | ||
5 | # manage. | ||
6 | home.username = "ryan"; | ||
7 | home.homeDirectory = "/home/ryan"; | ||
8 | |||
9 | # This value determines the Home Manager release that your configuration is | ||
10 | # compatible with. This helps avoid breakage when a new Home Manager release | ||
11 | # introduces backwards incompatible changes. | ||
12 | # | ||
13 | # You should not change this value, even if you update Home Manager. If you do | ||
14 | # want to update the value, then make sure to first check the Home Manager | ||
15 | # release notes. | ||
16 | home.stateVersion = "22.11"; # Please read the comment before changing. | ||
17 | |||
18 | # This value will set some environment variables to allow home-manager to | ||
19 | # function better outside of NixOS | ||
20 | nixpkgs.config.allowUnfree = true; | ||
21 | targets.genericLinux.enable = true; | ||
22 | fonts.fontconfig.enable = true; | ||
23 | |||
24 | # The home.packages option allows you to install Nix packages into your | ||
25 | # environment. | ||
26 | home.packages = with pkgs; [ | ||
27 | # # Adds the 'hello' command to your environment. It prints a friendly | ||
28 | # # "Hello, world!" when run. | ||
29 | # pkgs.hello | ||
30 | firefox | ||
31 | dejavu_fonts | ||
32 | cantarell-fonts | ||
33 | liberation_ttf | ||
34 | noto-fonts | ||
35 | noto-fonts-cjk | ||
36 | noto-fonts-emoji | ||
37 | |||
38 | # # It is sometimes useful to fine-tune packages, for example, by applying | ||
39 | # # overrides. You can do that directly here, just don't forget the | ||
40 | # # parentheses. Maybe you want to install Nerd Fonts with a limited number of | ||
41 | # # fonts? | ||
42 | # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; }) | ||
43 | |||
44 | # # You can also create simple shell scripts directly inside your | ||
45 | # # configuration. For example, this adds a command 'my-hello' to your | ||
46 | # # environment: | ||
47 | # (pkgs.writeShellScriptBin "my-hello" '' | ||
48 | # echo "Hello, ${config.home.username}!" | ||
49 | # '') | ||
50 | ]; | ||
51 | |||
52 | # Home Manager is pretty good at managing dotfiles. The primary way to manage | ||
53 | # plain files is through 'home.file'. | ||
54 | home.file = { | ||
55 | # # Building this configuration will create a copy of 'dotfiles/screenrc' in | ||
56 | # # the Nix store. Activating the configuration will then make '~/.screenrc' a | ||
57 | # # symlink to the Nix store copy. | ||
58 | # ".screenrc".source = dotfiles/screenrc; | ||
59 | |||
60 | # # You can also set the file content immediately. | ||
61 | # ".gradle/gradle.properties".text = '' | ||
62 | # org.gradle.console=verbose | ||
63 | # org.gradle.daemon.idletimeout=3600000 | ||
64 | # ''; | ||
65 | }; | ||
66 | |||
67 | # You can also manage environment variables but you will have to manually | ||
68 | # source | ||
69 | # | ||
70 | # ~/.nix-profile/etc/profile.d/hm-session-vars.sh | ||
71 | # | ||
72 | # or | ||
73 | # | ||
74 | # /etc/profiles/per-user/ryan/etc/profile.d/hm-session-vars.sh | ||
75 | # | ||
76 | # if you don't want to manage your shell through Home Manager. | ||
77 | home.sessionVariables = { | ||
78 | # EDITOR = "emacs"; | ||
79 | }; | ||
80 | |||
81 | # Let Home Manager install and manage itself. | ||
82 | programs.home-manager.enable = true; | ||
83 | } | ||