modular programs
This commit is contained in:
parent
a9976ba2b6
commit
95deda78ac
@ -14,7 +14,6 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, home-manager, hosts, ide, ... }:
|
||||
let
|
||||
system = "x86_64-linux";
|
||||
@ -43,5 +42,6 @@
|
||||
ivand = home.ivand;
|
||||
vid = home.vid;
|
||||
};
|
||||
modules = modules;
|
||||
};
|
||||
}
|
||||
|
@ -3,16 +3,23 @@
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
./ivand
|
||||
modules.programs
|
||||
modules.packages
|
||||
modules.nvim
|
||||
modules.programs.nvim
|
||||
modules.programs.zsh
|
||||
modules.programs.tmux
|
||||
modules.programs.git
|
||||
modules.programs.chromium
|
||||
modules.programs.kitty
|
||||
modules.programs.lf
|
||||
modules.programs.obs-studio
|
||||
modules.programs.sway
|
||||
modules.programs.swaylock
|
||||
];
|
||||
};
|
||||
vid = home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
modules = [
|
||||
./home/vid
|
||||
modules.programs
|
||||
];
|
||||
};
|
||||
}
|
||||
|
@ -1,10 +1,7 @@
|
||||
{ system, nixpkgs, pkgs, ide, my-overlay, ... }:
|
||||
{ system, nixpkgs, pkgs, ide, ... }:
|
||||
{
|
||||
gaming = import ./gaming { inherit nixpkgs; };
|
||||
dnscrypt = import ./dnscrypt;
|
||||
packages = import ./packages { inherit pkgs; };
|
||||
programs = import ./programs { inherit pkgs; };
|
||||
nvim = import ./programs/neovim {
|
||||
nvim = ide.homeManagerModules.${system}.nvim;
|
||||
};
|
||||
programs = import ./programs { inherit system pkgs ide; };
|
||||
}
|
||||
|
6
modules/programs/chromium/default.nix
Normal file
6
modules/programs/chromium/default.nix
Normal file
@ -0,0 +1,6 @@
|
||||
{ pkgs }: {
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
package = pkgs.ungoogled-chromium;
|
||||
};
|
||||
}
|
@ -1,53 +1,15 @@
|
||||
{ pkgs, ... }:
|
||||
let
|
||||
lib = pkgs.lib;
|
||||
in
|
||||
{
|
||||
imports = [ ./sway ./tmux.nix ./zsh.nix ./lf ];
|
||||
{ system, pkgs, ide, ... }: {
|
||||
|
||||
programs = {
|
||||
thunderbird = {
|
||||
enable = true;
|
||||
profiles = { ivan = { isDefault = true; }; };
|
||||
};
|
||||
chromium = {
|
||||
enable = true;
|
||||
package = pkgs.ungoogled-chromium;
|
||||
};
|
||||
swaylock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
color = "000000";
|
||||
line-color = "ffffff";
|
||||
show-failed-attempts = 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;
|
||||
};
|
||||
nvim = import ./neovim {
|
||||
nvim = ide.homeManagerModules.${system}.nvim;
|
||||
};
|
||||
git = import ./git;
|
||||
chromium = import ./chromium { inherit pkgs; };
|
||||
kitty = import ./kitty;
|
||||
lf = import ./lf;
|
||||
obs-studio = import ./obs-studio { inherit pkgs; };
|
||||
swaylock = import ./swaylock;
|
||||
tmux = import ./tmux { inherit pkgs; };
|
||||
zsh = import ./zsh { inherit pkgs; };
|
||||
sway = import ./sway { inherit pkgs; };
|
||||
}
|
||||
|
11
modules/programs/git/default.nix
Normal file
11
modules/programs/git/default.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "Ivan Dimitrov";
|
||||
userEmail = "ivan@idimitrov.dev";
|
||||
extraConfig = {
|
||||
color.ui = "auto";
|
||||
pull.rebase = true;
|
||||
};
|
||||
};
|
||||
}
|
10
modules/programs/kitty/default.nix
Normal file
10
modules/programs/kitty/default.nix
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
enable_tab_bar = false;
|
||||
background_opacity = "0.96";
|
||||
cursor_shape = "beam";
|
||||
};
|
||||
};
|
||||
}
|
@ -1,14 +1,12 @@
|
||||
{ pkgs, ... }: {
|
||||
programs = {
|
||||
lf = {
|
||||
enable = true;
|
||||
extraConfig = builtins.readFile ./lfrc;
|
||||
keybindings = {
|
||||
D = "trash";
|
||||
T = "touch";
|
||||
M = "mkdir";
|
||||
R = "mv";
|
||||
};
|
||||
{
|
||||
programs.lf = {
|
||||
enable = true;
|
||||
extraConfig = builtins.readFile ./lfrc;
|
||||
keybindings = {
|
||||
D = "trash";
|
||||
T = "touch";
|
||||
M = "mkdir";
|
||||
R = "mv";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
6
modules/programs/obs-studio/default.nix
Normal file
6
modules/programs/obs-studio/default.nix
Normal file
@ -0,0 +1,6 @@
|
||||
{ pkgs }: {
|
||||
programs.obs-studio = {
|
||||
enable = true;
|
||||
plugins = with pkgs.obs-studio-plugins; [ wlrobs ];
|
||||
};
|
||||
}
|
@ -1,9 +1,7 @@
|
||||
{ pkgs, lib, ... }: {
|
||||
wayland = {
|
||||
windowManager.sway = {
|
||||
enable = true;
|
||||
config = null;
|
||||
extraConfig = builtins.readFile ./config;
|
||||
};
|
||||
{ pkgs, ... }: {
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
config = null;
|
||||
extraConfig = builtins.readFile ./config;
|
||||
};
|
||||
}
|
||||
|
10
modules/programs/swaylock/default.nix
Normal file
10
modules/programs/swaylock/default.nix
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
programs.swaylock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
color = "000000";
|
||||
line-color = "ffffff";
|
||||
show-failed-attempts = true;
|
||||
};
|
||||
};
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
{ pkgs, lib, ... }: {
|
||||
{ pkgs, ... }: {
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
clock24 = true;
|
Loading…
Reference in New Issue
Block a user