home refactor

This commit is contained in:
Ivan Dimitrov 2023-11-18 09:23:16 +02:00
parent 0646af1fae
commit e1dde23e3d
5 changed files with 87 additions and 79 deletions

View File

@ -28,6 +28,13 @@
my-overlay = self: super: { my-overlay = self: super: {
scripts = (super.buildEnv { name = "scripts"; paths = [ ./. ]; }); scripts = (super.buildEnv { name = "scripts"; paths = [ ./. ]; });
}; };
home = import ./home/default.nix
{
inherit system nixpkgs my-overlay home-manager ide;
modules = import ./modules {
inherit system nixpkgs ide my-overlay;
};
};
in in
{ {
nixosConfigurations = { nixosConfigurations = {
@ -42,32 +49,8 @@
}; };
}; };
homeConfigurations = { homeConfigurations = {
ivand = home-manager.lib.homeManagerConfiguration { ivand = home.ivand;
modules = [ vid = home.vid;
./home/ivand
./modules/programs
./modules/packages
(
import ./modules/programs/neovim
{
nvim = ide.homeManagerModules.${system}.nvim;
}
)
];
pkgs = import nixpkgs {
inherit system;
overlays = [ my-overlay ];
};
};
vid = home-manager.lib.homeManagerConfiguration {
modules = [
./home/vid
./modules/programs
];
pkgs = import nixpkgs {
inherit system;
};
};
}; };
}; };
} }

23
home/default.nix Normal file
View File

@ -0,0 +1,23 @@
{ system, nixpkgs, my-overlay, home-manager, modules, ... }: {
ivand = home-manager.lib.homeManagerConfiguration {
modules = [
./ivand
modules.programs
modules.packages
modules.nvim
];
pkgs = import nixpkgs {
inherit system;
overlays = [ my-overlay ];
};
};
vid = home-manager.lib.homeManagerConfiguration {
modules = [
./home/vid
modules.programs
];
pkgs = import nixpkgs {
inherit system;
};
};
}

View File

@ -46,11 +46,6 @@
}; };
}; };
programs = {
shell.enable = true;
common.enable = true;
};
xdg.configFile = { xdg.configFile = {
"user-dirs.dirs" = { "user-dirs.dirs" = {
text = '' text = ''

13
modules/default.nix Normal file
View File

@ -0,0 +1,13 @@
{ system, nixpkgs, ide, my-overlay, ... }:
let
pkgs = import nixpkgs { inherit system; overlays = [ my-overlay ]; };
in
{
gaming = import ./gaming { };
dnscrypt = import ./dnscrypt { };
packages = import ./packages { inherit pkgs; };
programs = import ./programs { inherit pkgs; };
nvim = import ./programs/neovim {
nvim = ide.homeManagerModules.${system}.nvim;
};
}

View File

@ -1,59 +1,53 @@
{ pkgs, lib, config, ... }: { pkgs, ... }:
let let
cfg = config.programs.common; lib = pkgs.lib;
in in
{ {
imports = [ ./sway ./tmux.nix ./zsh.nix ./lf ]; imports = [ ./sway ./tmux.nix ./zsh.nix ./lf ];
options.programs.common = { programs = {
enable = lib.mkEnableOption "common"; thunderbird = {
}; enable = true;
profiles = { ivan = { isDefault = true; }; };
config = lib.mkIf cfg.enable { };
programs = { chromium = {
thunderbird = { enable = true;
enable = true; package = pkgs.ungoogled-chromium;
profiles = { ivan = { isDefault = true; }; }; };
swaylock = {
enable = true;
settings = {
color = "000000";
line-color = "ffffff";
show-failed-attempts = true;
}; };
chromium = { };
enable = true; obs-studio = {
package = pkgs.ungoogled-chromium; enable = true;
plugins = with pkgs.obs-studio-plugins; [ wlrobs ];
};
kitty = {
enable = true;
settings = {
enable_tab_bar = false;
background_opacity = "0.96";
cursor_shape = "beam";
}; };
swaylock = { };
enable = true; git = {
settings = { enable = true;
color = "000000"; userName = "Ivan Dimitrov";
line-color = "ffffff"; userEmail = "ivan@idimitrov.dev";
show-failed-attempts = true; extraConfig = {
}; color.ui = "auto";
}; pull.rebase = true;
obs-studio = {
enable = true;
plugins = with pkgs.obs-studio-plugins; [ wlrobs ];
};
kitty = {
enable = true;
settings = {
enable_tab_bar = false;
background_opacity = "0.96";
cursor_shape = "beam";
};
};
git = {
enable = true;
userName = "Ivan Dimitrov";
userEmail = "ivan@idimitrov.dev";
extraConfig = {
color.ui = "auto";
pull.rebase = true;
};
};
browserpass.enable = true;
newsboat = {
enable = true;
autoReload = true;
reloadTime = 1;
}; };
}; };
browserpass.enable = true;
newsboat = {
enable = true;
autoReload = true;
reloadTime = 1;
};
}; };
} }