This commit is contained in:
Hadi 2024-07-08 07:45:56 +00:00
parent a73a50aa1f
commit ddddd3b4a4
2 changed files with 63 additions and 21 deletions

View File

@ -9,6 +9,7 @@ feel free to contribute <3 ([CONTRIBUTING.md](CONTRIBUTING.md))
- [ ] macOS theme - [ ] macOS theme
- [ ] Tofi (Wofi, but terminal based) - [ ] Tofi (Wofi, but terminal based)
- [ ] Add Vim Keybindings to KEYBINDINGS.md - [ ] Add Vim Keybindings to KEYBINDINGS.md
- [ ] Remove git warnings
- [ ] Qutebrowser - [ ] Qutebrowser
- [ ] !!! Bitwarden integration (I need this.) - [ ] !!! Bitwarden integration (I need this.)

View File

@ -6,121 +6,162 @@
default = "nixy"; default = "nixy";
description = "Hostname"; description = "Hostname";
}; };
username = lib.mkOption { username = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "user"; default = "user";
description = "Username"; description = "Username";
}; };
homeDirectory = lib.mkOption { homeDirectory = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "/home/user"; default = "/home/user";
description = "Home directory (/home/user)"; description = "Home directory (/home/user)";
}; };
configDirectory = lib.mkOption { configDirectory = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "/home/user/.config/nixos"; default = "/home/user/.config/nixos";
description = "NixOS config directory (/home/user/.config/nixos)"; description = "NixOS config directory (/home/user/.config/nixos)";
}; };
keyboardLayout = lib.mkOption { keyboardLayout = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "en"; default = "en";
description = "Keyboard layout (en/fr/...)"; description = "Keyboard layout (en/fr/...)";
}; };
timeZone = lib.mkOption { timeZone = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "America/New_York"; default = "America/New_York";
description = "Time Zone"; description = "Time Zone";
}; };
defaultLocale = lib.mkOption { defaultLocale = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "en_US.UTF-8"; default = "en_US.UTF-8";
description = "Default Locale"; description = "Default Locale";
}; };
extraLocale = lib.mkOption { extraLocale = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "fr_FR.UTF-8"; default = "fr_FR.UTF-8";
description = "Extra Locale"; description = "Extra Locale";
}; };
stateVersion = lib.mkOption { stateVersion = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "24.05"; default = "24.05";
description = "State Version: Shouldn't be changed once set."; description = "State Version: Shouldn't be changed once set.";
}; };
autoUpgrade = lib.mkOption { autoUpgrade = lib.mkOption {
type = lib.types.bool; type = lib.types.bool;
default = false; default = false;
description = "Enable auto upgrades"; description = "Enable auto upgrades";
}; };
autoGarbageCollector = lib.mkOption { autoGarbageCollector = lib.mkOption {
type = lib.types.bool; type = lib.types.bool;
default = false; default = false;
description = "Enable garbage collector"; description = "Enable garbage collector";
}; };
sops = lib.mkOption { sops = lib.mkOption {
type = lib.types.bool; type = lib.types.bool;
default = false; default = false;
description = description =
"Enable sops (You should set up sops for your own config)"; "Enable sops (You should set up sops for your own config)";
}; };
obsidian = lib.mkOption { obsidian = lib.mkOption {
type = lib.types.bool; type = lib.types.bool;
default = false; default = false;
description = description =
"Enable obsidian.nvim (You should set up obsidian.nvim for your own config)"; "Enable obsidian.nvim (You should set up obsidian.nvim for your own config)";
}; };
tailscale = lib.mkOption { tailscale = lib.mkOption {
type = lib.types.bool; type = lib.types.bool;
default = false; default = false;
description = "Enable tailscale"; description = "Enable tailscale";
}; };
git = { git = {
username = lib.mkOption { username = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "user"; default = "user";
description = "Git Username"; description = "Git Username";
}; };
email = lib.mkOption { email = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "youremail@gmail.com"; default = "youremail@gmail.com";
description = "Git Email"; description = "Git Email";
}; };
}; };
theme = { theme = {
wallpaper = lib.mkOption { wallpaper = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "magma.png"; default = "magma.png";
description = "Wallpaper (Should be in /home/user/wallpapers)"; description = "Wallpaper (Should be in /home/$USER/wallpapers)";
}; };
font = lib.mkOption { font = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "SFProDisplay Nerd Font"; default = "SFProDisplay Nerd Font";
description = "Font"; description = "Font";
}; };
font-mono = lib.mkOption { font-mono = lib.mkOption {
type = lib.types.string; type = lib.types.string;
default = "FiraCode Nerd Font Mono"; default = "FiraCode Nerd Font Mono";
description = "Monospace Font"; description = "Monospace Font";
}; };
font-size = lib.mkOption {
type = lib.types.int;
default = 14;
description = "Font Size";
};
rounding = lib.mkOption {
type = lib.types.int;
default = 8;
description = "Border radius";
};
gaps-in = lib.mkOption {
type = lib.types.int;
default = 8;
description = "Gaps In";
};
gaps-out = lib.mkOption {
type = lib.types.int;
default = 16;
description = "Gaps Out";
};
border-size = lib.mkOption {
type = lib.types.int;
default = 2;
description = "Border Size";
};
animation-speed = lib.mkOption {
type = lib.types.string;
default = "medium";
description = "Animation Speed (slow/medium/fast)";
};
fetch = lib.mkOption {
type = lib.types.string;
default = "neofetch";
description = "Fetch (neofetch/nerdfetch/pfetch/none)";
};
waybar = {
transparent = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Transparent Bar";
};
float = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Floating Bar";
};
position = lib.mkOption {
type = lib.types.string;
default = "top";
description = "Bar's Position";
};
font-size = lib.mkOption {
type = lib.types.int;
default = 16;
description = "Waybar text font size";
};
};
colors = {
# TODO
};
}; };
}; };
}; };
} }