Configure neovide

This commit is contained in:
DashieTM 2024-09-01 01:34:02 +02:00
parent 34d6f22b61
commit 74e9eb2c62
4 changed files with 49 additions and 14 deletions

View file

@ -20,19 +20,31 @@
vscodium vscodium
firefox firefox
kitty kitty
gnome-disk-utility
]; ];
networking = { networking = {
wireless.enable = false; wireless.enable = false;
networkmanager.enable = true; networkmanager.enable = true;
}; };
nix.settings.experimental-features = [
"nix-command"
"flakes"
];
services.greetd = { # gnome is a good default that works with every gpu and doesn't require knowledge about custom keybinds.
enable = true; services = {
settings = { xserver = {
initial_session = { enable = true;
command = "${pkgs.hyprland}/bin/Hyprland"; displayManager = {
user = "nixos"; gdm.enable = true;
}; };
desktopManager = {
gnome.enable = true;
};
};
displayManager.autoLogin = {
enable = true;
user = "nixos";
}; };
}; };

View file

@ -9,7 +9,6 @@
{ {
options.mods = { options.mods = {
base_packages = { base_packages = {
default_base_packages = {
enable = lib.mkOption { enable = lib.mkOption {
default = true; default = true;
example = false; example = false;
@ -26,16 +25,15 @@
Additional packages to install. Additional packages to install.
Note that these are installed even if base packages is disabled, e.g. you can also use this as the only packages to install. Note that these are installed even if base packages is disabled, e.g. you can also use this as the only packages to install.
''; '';
};
}; };
}; };
}; };
config = ( config = (
lib.optionalAttrs (options ? environment.systemPackages) { lib.optionalAttrs (options ? environment.systemPackages) {
environment.systemPackages = config.mods.base_packages.default_base_packages.additional_packages; environment.systemPackages = config.mods.base_packages.additional_packages;
} }
// (lib.mkIf config.mods.base_packages.default_base_packages.enable ( // (lib.mkIf config.mods.base_packages.enable (
lib.optionalAttrs (options ? environment.systemPackages) { lib.optionalAttrs (options ? environment.systemPackages) {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
adwaita-icon-theme adwaita-icon-theme

View file

@ -394,11 +394,10 @@
d-spy d-spy
tmux tmux
tmate tmate
#editors
neovide
#fallback #fallback
vscodium vscodium
]; ];
font_family = "${config.mods.stylix.fonts.monospace.name}";
in in
lib.mkIf config.mods.coding.enable ( lib.mkIf config.mods.coding.enable (
lib.optionalAttrs (options ? home.packages) { lib.optionalAttrs (options ? home.packages) {
@ -406,9 +405,35 @@
enable = true; enable = true;
colorscheme = config.mods.stylix.colorscheme; colorscheme = config.mods.stylix.colorscheme;
}; };
xdg.configFile."neovide/config.toml".source = lib.mkIf config.mods.coding.dashvim (
(pkgs.formats.toml { }).generate "neovide" {
font = {
size = 12;
normal = {
family = font_family;
style = "";
};
bold = {
family = font_family;
style = "ExtraBold";
};
italic = {
family = font_family;
style = "Italic";
};
bold_italic = {
family = font_family;
style = "Bold Italic";
};
};
}
);
home.packages = home.packages =
with pkgs; with pkgs;
[ (lib.mkIf config.mods.coding.jetbrains jetbrains-toolbox) ] [
(lib.mkIf config.mods.coding.dashvim neovide)
(lib.mkIf config.mods.coding.jetbrains jetbrains-toolbox)
]
++ config.mods.coding.additionalPackages ++ config.mods.coding.additionalPackages
++ (lib.lists.optionals config.mods.coding.useDefaultPackages basePackages) ++ (lib.lists.optionals config.mods.coding.useDefaultPackages basePackages)
++ (lib.lists.optionals config.mods.coding.languages.haskell.enable config.mods.coding.languages.haskell.packages) ++ (lib.lists.optionals config.mods.coding.languages.haskell.enable config.mods.coding.languages.haskell.packages)

2
result
View file

@ -1 +1 @@
/nix/store/9snhsj18w6vyi4f25sq93az859yigcdp-DashNix.iso /nix/store/kh29b973hk8qhkkmnswr7cld66kyyjk6-DashNix.iso