hm
This commit is contained in:
parent
e354c4e194
commit
4e82b684e5
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
programs.btop = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.file.".config/btop/btop.conf".text =
|
|
||||||
builtins.readFile ./config/btop.conf;
|
|
||||||
home.file.".config/btop/themes/catppuccin_mocha.theme".text =
|
|
||||||
builtins.readFile ./config/catppuccin_mocha.theme;
|
|
||||||
}
|
|
@ -1,71 +1,29 @@
|
|||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
|
||||||
inherit (pkgs.lib) optionals mkForce;
|
|
||||||
inherit (pkgs.stdenv) isLinux isDarwin;
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
imports = [
|
|
||||||
./btop
|
|
||||||
./direnv
|
|
||||||
./powerline
|
|
||||||
./readline
|
|
||||||
./hyprland
|
|
||||||
./waybar
|
|
||||||
];
|
|
||||||
|
|
||||||
reichardnix = {
|
reichardnix = {
|
||||||
programs.nvim.enable = true;
|
programs.btop.enable = true;
|
||||||
|
programs.direnv.enable = true;
|
||||||
programs.ghostty.enable = true;
|
programs.ghostty.enable = true;
|
||||||
programs.git.enable = true;
|
programs.git.enable = true;
|
||||||
|
programs.k9s.enable = true;
|
||||||
|
programs.nvim.enable = true;
|
||||||
|
|
||||||
|
programs.hyprland.enable = false;
|
||||||
|
programs.aws.enable = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Home Manager Config
|
|
||||||
home.stateVersion = "24.11";
|
|
||||||
home.username = "evanreichard";
|
|
||||||
home.homeDirectory = mkForce (if isLinux then "/home/evanreichard" else "/Users/evanreichard");
|
|
||||||
programs.home-manager.enable = true;
|
|
||||||
|
|
||||||
# Global Packages
|
# Global Packages
|
||||||
|
programs.jq.enable = true;
|
||||||
|
programs.pandoc.enable = true;
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# --- Android Dev ---
|
|
||||||
android-tools
|
android-tools
|
||||||
|
|
||||||
# --- AWS ---
|
|
||||||
cw
|
|
||||||
awscli2
|
|
||||||
ssm-session-manager-plugin
|
|
||||||
|
|
||||||
# --- Kubernetes ---
|
|
||||||
kubectl
|
|
||||||
kubernetes-helm
|
|
||||||
|
|
||||||
# --- Uncategorized ---
|
|
||||||
imagemagick
|
imagemagick
|
||||||
mosh
|
mosh
|
||||||
python311
|
python311
|
||||||
texliveSmall # Pandoc PDF Dep
|
texliveSmall # Pandoc PDF Dep
|
||||||
google-cloud-sdk
|
google-cloud-sdk
|
||||||
tldr
|
tldr
|
||||||
]
|
];
|
||||||
++ optionals isLinux [
|
|
||||||
ghostty
|
|
||||||
hyprpaper
|
|
||||||
firefox
|
|
||||||
]
|
|
||||||
++ optionals isDarwin [ ];
|
|
||||||
|
|
||||||
# Misc Programs
|
|
||||||
programs.jq.enable = true;
|
|
||||||
programs.k9s.enable = true;
|
|
||||||
programs.pandoc.enable = true;
|
|
||||||
|
|
||||||
# Enable Flakes & Commands
|
|
||||||
nix = {
|
|
||||||
package = mkForce pkgs.nix;
|
|
||||||
settings = {
|
|
||||||
experimental-features = "nix-command flakes";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# SQLite Configuration
|
# SQLite Configuration
|
||||||
home.file.".sqliterc".text = ''
|
home.file.".sqliterc".text = ''
|
||||||
@ -73,6 +31,7 @@ in
|
|||||||
.mode column
|
.mode column
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# Darwin Spotlight Indexing Hack
|
# Enable Home Manager & Self Manage
|
||||||
disabledModules = [ "targets/darwin/linkapps.nix" ];
|
home.stateVersion = "24.11";
|
||||||
|
programs.home-manager.enable = true;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +0,0 @@
|
|||||||
{
|
|
||||||
programs.direnv = {
|
|
||||||
enable = true;
|
|
||||||
nix-direnv.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
{ pkgs, lib, ... }:
|
|
||||||
|
|
||||||
lib.mkIf pkgs.stdenv.isLinux {
|
|
||||||
wayland.windowManager.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
extraConfig = builtins.readFile ./config/hyprland.conf;
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
programs.powerline-go = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
git-mode = "compact";
|
|
||||||
theme = "gruvbox";
|
|
||||||
};
|
|
||||||
modules = [
|
|
||||||
"host"
|
|
||||||
"cwd"
|
|
||||||
"git"
|
|
||||||
"docker"
|
|
||||||
"venv"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
programs.readline = {
|
|
||||||
enable = true;
|
|
||||||
extraConfig = ''
|
|
||||||
# Approximate VIM Dracula Colors
|
|
||||||
set vi-ins-mode-string \1\e[01;38;5;23;48;5;231m\2 I \1\e[38;5;231;48;5;238m\2\1\e[0m\2
|
|
||||||
set vi-cmd-mode-string \1\e[01;38;5;22;48;5;148m\2 C \1\e[38;5;148;48;5;238m\2\1\e[0m\2
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
@ -1,114 +0,0 @@
|
|||||||
{ lib, pkgs, ... }:
|
|
||||||
lib.mkIf pkgs.stdenv.isLinux {
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
style = builtins.readFile ./config/style.css;
|
|
||||||
settings = [{
|
|
||||||
layer = "top";
|
|
||||||
position = "top";
|
|
||||||
mod = "dock";
|
|
||||||
exclusive = true;
|
|
||||||
passtrough = false;
|
|
||||||
gtk-layer-shell = true;
|
|
||||||
height = 0;
|
|
||||||
modules-left = [
|
|
||||||
"hyprland/workspaces"
|
|
||||||
"custom/divider"
|
|
||||||
"custom/divider"
|
|
||||||
"cpu"
|
|
||||||
"custom/divider"
|
|
||||||
"memory"
|
|
||||||
];
|
|
||||||
modules-center = [ "hyprland/window" ];
|
|
||||||
modules-right = [
|
|
||||||
"tray"
|
|
||||||
"network"
|
|
||||||
"custom/divider"
|
|
||||||
"backlight"
|
|
||||||
"custom/divider"
|
|
||||||
"pulseaudio"
|
|
||||||
"custom/divider"
|
|
||||||
"battery"
|
|
||||||
"custom/divider"
|
|
||||||
"clock"
|
|
||||||
];
|
|
||||||
"hyprland/window" = { format = "{}"; };
|
|
||||||
"wlr/workspaces" = {
|
|
||||||
on-scroll-up = "hyprctl dispatch workspace e+1";
|
|
||||||
on-scroll-down = "hyprctl dispatch workspace e-1";
|
|
||||||
all-outputs = true;
|
|
||||||
on-click = "activate";
|
|
||||||
};
|
|
||||||
battery = { format = " {}%"; };
|
|
||||||
cpu = {
|
|
||||||
interval = 10;
|
|
||||||
format = " {}%";
|
|
||||||
max-length = 10;
|
|
||||||
on-click = "";
|
|
||||||
};
|
|
||||||
memory = {
|
|
||||||
interval = 30;
|
|
||||||
format = " {}%";
|
|
||||||
format-alt = " {used:0.1f}G";
|
|
||||||
max-length = 10;
|
|
||||||
};
|
|
||||||
backlight = {
|
|
||||||
format = " {}";
|
|
||||||
device = "acpi_video0";
|
|
||||||
};
|
|
||||||
tray = {
|
|
||||||
icon-size = 13;
|
|
||||||
tooltip = false;
|
|
||||||
spacing = 10;
|
|
||||||
};
|
|
||||||
network = {
|
|
||||||
format = " {essid}";
|
|
||||||
format-disconnected = " disconnected";
|
|
||||||
};
|
|
||||||
clock = {
|
|
||||||
format = " {:%I:%M %p %m/%d} ";
|
|
||||||
tooltip-format = ''
|
|
||||||
<big>{:%Y %B}</big>
|
|
||||||
<tt><small>{calendar}</small></tt>'';
|
|
||||||
};
|
|
||||||
pulseaudio = {
|
|
||||||
format = "{icon} {volume}%";
|
|
||||||
tooltip = false;
|
|
||||||
format-muted = " Muted";
|
|
||||||
on-click = "pamixer -t";
|
|
||||||
on-scroll-up = "pamixer -i 5";
|
|
||||||
on-scroll-down = "pamixer -d 5";
|
|
||||||
scroll-step = 5;
|
|
||||||
format-icons = {
|
|
||||||
headphone = "";
|
|
||||||
hands-free = "";
|
|
||||||
headset = "";
|
|
||||||
phone = "";
|
|
||||||
portable = "";
|
|
||||||
car = "";
|
|
||||||
default = [ "" "" "" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"pulseaudio#microphone" = {
|
|
||||||
format = "{format_source}";
|
|
||||||
tooltip = false;
|
|
||||||
format-source = " {volume}%";
|
|
||||||
format-source-muted = " Muted";
|
|
||||||
on-click = "pamixer --default-source -t";
|
|
||||||
on-scroll-up = "pamixer --default-source -i 5";
|
|
||||||
on-scroll-down = "pamixer --default-source -d 5";
|
|
||||||
scroll-step = 5;
|
|
||||||
};
|
|
||||||
"custom/divider" = {
|
|
||||||
format = " | ";
|
|
||||||
interval = "once";
|
|
||||||
tooltip = false;
|
|
||||||
};
|
|
||||||
"custom/endright" = {
|
|
||||||
format = "_";
|
|
||||||
interval = "once";
|
|
||||||
tooltip = false;
|
|
||||||
};
|
|
||||||
}];
|
|
||||||
};
|
|
||||||
}
|
|
18
modules/home/programs/aws/default.nix
Normal file
18
modules/home/programs/aws/default.nix
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
{ lib, pkgs, config, namespace, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
cfg = config.${namespace}.programs.aws;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.${namespace}.programs.aws = {
|
||||||
|
enable = lib.mkEnableOption "AWS";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
cw
|
||||||
|
awscli2
|
||||||
|
ssm-session-manager-plugin
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
19
modules/home/programs/btop/default.nix
Normal file
19
modules/home/programs/btop/default.nix
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{ lib, config, namespace, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
cfg = config.${namespace}.programs.btop;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.${namespace}.programs.btop = {
|
||||||
|
enable = lib.mkEnableOption "btop";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
programs.btop.enable = true;
|
||||||
|
|
||||||
|
home.file.".config/btop/btop.conf".text =
|
||||||
|
builtins.readFile ./config/btop.conf;
|
||||||
|
home.file.".config/btop/themes/catppuccin_mocha.theme".text =
|
||||||
|
builtins.readFile ./config/catppuccin_mocha.theme;
|
||||||
|
};
|
||||||
|
}
|
17
modules/home/programs/direnv/default.nix
Normal file
17
modules/home/programs/direnv/default.nix
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{ lib, config, namespace, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
cfg = config.${namespace}.programs.direnv;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.${namespace}.programs.direnv = {
|
||||||
|
enable = lib.mkEnableOption "direnv";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
programs.direnv = {
|
||||||
|
enable = true;
|
||||||
|
nix-direnv.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
@ -26,6 +26,30 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
programs.powerline-go = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
git-mode = "compact";
|
||||||
|
theme = "gruvbox";
|
||||||
|
};
|
||||||
|
modules = [
|
||||||
|
"host"
|
||||||
|
"cwd"
|
||||||
|
"git"
|
||||||
|
"docker"
|
||||||
|
"venv"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.readline = {
|
||||||
|
enable = true;
|
||||||
|
extraConfig = ''
|
||||||
|
# Approximate VIM Dracula Colors
|
||||||
|
set vi-ins-mode-string \1\e[01;38;5;23;48;5;231m\2 I \1\e[38;5;231;48;5;238m\2\1\e[0m\2
|
||||||
|
set vi-cmd-mode-string \1\e[01;38;5;22;48;5;148m\2 C \1\e[38;5;148;48;5;238m\2\1\e[0m\2
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
# Pending Darwin @ https://github.com/NixOS/nixpkgs/pull/369788
|
# Pending Darwin @ https://github.com/NixOS/nixpkgs/pull/369788
|
||||||
# ghostty
|
# ghostty
|
||||||
|
129
modules/home/programs/hyprland/default.nix
Normal file
129
modules/home/programs/hyprland/default.nix
Normal file
@ -0,0 +1,129 @@
|
|||||||
|
{ lib, config, namespace, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
cfg = config.${namespace}.programs.hyprland;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.${namespace}.programs.hyprland = {
|
||||||
|
enable = lib.mkEnableOption "Hyprland";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
wayland.windowManager.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
extraConfig = builtins.readFile ./config/hyprland.conf;
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
style = builtins.readFile ./config/waybar-style.css;
|
||||||
|
settings = [{
|
||||||
|
layer = "top";
|
||||||
|
position = "top";
|
||||||
|
mod = "dock";
|
||||||
|
exclusive = true;
|
||||||
|
passtrough = false;
|
||||||
|
gtk-layer-shell = true;
|
||||||
|
height = 0;
|
||||||
|
modules-left = [
|
||||||
|
"hyprland/workspaces"
|
||||||
|
"custom/divider"
|
||||||
|
"custom/divider"
|
||||||
|
"cpu"
|
||||||
|
"custom/divider"
|
||||||
|
"memory"
|
||||||
|
];
|
||||||
|
modules-center = [ "hyprland/window" ];
|
||||||
|
modules-right = [
|
||||||
|
"tray"
|
||||||
|
"network"
|
||||||
|
"custom/divider"
|
||||||
|
"backlight"
|
||||||
|
"custom/divider"
|
||||||
|
"pulseaudio"
|
||||||
|
"custom/divider"
|
||||||
|
"battery"
|
||||||
|
"custom/divider"
|
||||||
|
"clock"
|
||||||
|
];
|
||||||
|
"hyprland/window" = { format = "{}"; };
|
||||||
|
"wlr/workspaces" = {
|
||||||
|
on-scroll-up = "hyprctl dispatch workspace e+1";
|
||||||
|
on-scroll-down = "hyprctl dispatch workspace e-1";
|
||||||
|
all-outputs = true;
|
||||||
|
on-click = "activate";
|
||||||
|
};
|
||||||
|
battery = { format = " {}%"; };
|
||||||
|
cpu = {
|
||||||
|
interval = 10;
|
||||||
|
format = " {}%";
|
||||||
|
max-length = 10;
|
||||||
|
on-click = "";
|
||||||
|
};
|
||||||
|
memory = {
|
||||||
|
interval = 30;
|
||||||
|
format = " {}%";
|
||||||
|
format-alt = " {used:0.1f}G";
|
||||||
|
max-length = 10;
|
||||||
|
};
|
||||||
|
backlight = {
|
||||||
|
format = " {}";
|
||||||
|
device = "acpi_video0";
|
||||||
|
};
|
||||||
|
tray = {
|
||||||
|
icon-size = 13;
|
||||||
|
tooltip = false;
|
||||||
|
spacing = 10;
|
||||||
|
};
|
||||||
|
network = {
|
||||||
|
format = " {essid}";
|
||||||
|
format-disconnected = " disconnected";
|
||||||
|
};
|
||||||
|
clock = {
|
||||||
|
format = " {:%I:%M %p %m/%d} ";
|
||||||
|
tooltip-format = ''
|
||||||
|
<big>{:%Y %B}</big>
|
||||||
|
<tt><small>{calendar}</small></tt>'';
|
||||||
|
};
|
||||||
|
pulseaudio = {
|
||||||
|
format = "{icon} {volume}%";
|
||||||
|
tooltip = false;
|
||||||
|
format-muted = " Muted";
|
||||||
|
on-click = "pamixer -t";
|
||||||
|
on-scroll-up = "pamixer -i 5";
|
||||||
|
on-scroll-down = "pamixer -d 5";
|
||||||
|
scroll-step = 5;
|
||||||
|
format-icons = {
|
||||||
|
headphone = "";
|
||||||
|
hands-free = "";
|
||||||
|
headset = "";
|
||||||
|
phone = "";
|
||||||
|
portable = "";
|
||||||
|
car = "";
|
||||||
|
default = [ "" "" "" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"pulseaudio#microphone" = {
|
||||||
|
format = "{format_source}";
|
||||||
|
tooltip = false;
|
||||||
|
format-source = " {volume}%";
|
||||||
|
format-source-muted = " Muted";
|
||||||
|
on-click = "pamixer --default-source -t";
|
||||||
|
on-scroll-up = "pamixer --default-source -i 5";
|
||||||
|
on-scroll-down = "pamixer --default-source -d 5";
|
||||||
|
scroll-step = 5;
|
||||||
|
};
|
||||||
|
"custom/divider" = {
|
||||||
|
format = " | ";
|
||||||
|
interval = "once";
|
||||||
|
tooltip = false;
|
||||||
|
};
|
||||||
|
"custom/endright" = {
|
||||||
|
format = "_";
|
||||||
|
interval = "once";
|
||||||
|
tooltip = false;
|
||||||
|
};
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
19
modules/home/programs/k9s/default.nix
Normal file
19
modules/home/programs/k9s/default.nix
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
{ lib, pkgs, config, namespace, ... }:
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
cfg = config.${namespace}.programs.k9s;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.${namespace}.programs.k9s = {
|
||||||
|
enable = lib.mkEnableOption "k9s";
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
programs.k9s.enable = true;
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
kubectl
|
||||||
|
kubernetes-helm
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user