-
Notifications
You must be signed in to change notification settings - Fork 0
/
home.nix
92 lines (77 loc) · 3.67 KB
/
home.nix
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
{ config, pkgs, pkgs-kdenlive, pkgs-unstable, userSettings, systemSettings, lib, ... }:
{
# Home Manager needs a bit of information about you and the paths it should
# manage.
home.username = userSettings.username;
home.homeDirectory = "/home/"+userSettings.username;
programs.home-manager.enable = true;
imports = [
# I have to add plasma5 and plasma6.nix to /user/wm/... <<<<<<<
(./. + "../../../user/wm"+("/"+userSettings.wm+"/"+userSettings.wm)+".nix") # My window manager selected from flake
../../user/shell/sh.nix # My zsh and bash config
# ../../user/shell/cli-collection.nix # Useful CLI apps
# ../../user/app/doom-emacs/doom.nix # My doom emacs config
../../user/app/ranger/ranger.nix # My ranger file manager config
../../user/app/git/git.nix # My git config
# ../../user/app/keepass/keepass.nix # My password manager
(./. + "../../../user/app/browser"+("/"+userSettings.browser)+".nix") # My default browser selected from flake
../../user/app/virtualization/virtualization.nix # Virtual machines
#../../user/app/flatpak/flatpak.nix # Flatpaks
# ../../user/style/stylix.nix # Styling and themes for my apps
# ../../user/lang/cc/cc.nix # C and C++ tools
# ../../user/lang/godot/godot.nix # Game development
#../../user/pkgs/blockbench.nix # Blockbench ## marked as insecure
../../user/hardware/bluetooth.nix # Bluetooth
];
home.stateVersion = userSettings.homeStateVersion; # Please read the comment before changing.
home.packages = userSettings.homePackages;
# Auto Upgrade Home Manager
services.home-manager.autoUpgrade = lib.mkIf (systemSettings.HomeAutoUpdate == true) {
enable = true;
frequency = systemSettings.HomeAutoUpdate_frecuency;
};
# home.file.".local/share/pixmaps/nixos-snowflake-stylix.svg".source =
# config.lib.stylix.colors {
# template = builtins.readFile ../../user/pkgs/nixos-snowflake-stylix.svg.mustache;
# extension = "svg";
# };
services.syncthing.enable = true;
xdg.enable = true;
xdg.userDirs = {
enable = true;
createDirectories = true;
music = "${config.home.homeDirectory}/Media/Music";
videos = "${config.home.homeDirectory}/Media/Videos";
pictures = "${config.home.homeDirectory}/Media/Pictures";
templates = "${config.home.homeDirectory}/Templates";
download = "${config.home.homeDirectory}/Downloads";
documents = "${config.home.homeDirectory}/Documents";
desktop = null;
publicShare = null;
extraConfig = {
XDG_DOTFILES_DIR = "${config.home.homeDirectory}/.dotfiles";
XDG_ARCHIVE_DIR = "${config.home.homeDirectory}/Archive";
# XDG_VM_DIR = "/mnt/Machines/VirtualMachines"; # it stop home-manager if the directory does not exist
XDG_ORG_DIR = "${config.home.homeDirectory}/Org";
XDG_PODCAST_DIR = "${config.home.homeDirectory}/Media/Podcasts";
XDG_BOOK_DIR = "${config.home.homeDirectory}/Media/Books";
};
};
# xdg.mime.enable = true;
# xdg.mimeApps.enable = true;
# xdg.mimeApps.associations.added = {
# # TODO fix mime associations, most of them are totally broken :(
# "application/octet-stream" = "flstudio.desktop;";
# };
home.sessionVariables = {
EDITOR = userSettings.editor;
SPAWNEDITOR = userSettings.spawnEditor;
TERM = userSettings.term;
BROWSER = userSettings.browser;
};
# news.display = "silent";
# gtk.iconTheme = {
# package = pkgs.papirus-icon-theme;
# name = if (config.stylix.polarity == "dark") then "Papirus-Dark" else "Papirus-Light";
# };
}