split bash from ghostty

This commit is contained in:
Evan Reichard 2025-09-22 19:05:18 -04:00
parent fbb274a50a
commit bf4148dab0
7 changed files with 97 additions and 107 deletions

View File

@ -1,4 +1,4 @@
{ pkgs, lib, config, namespace, ... }: { lib, config, namespace, ... }:
let let
inherit (lib.${namespace}) enabled; inherit (lib.${namespace}) enabled;
in in
@ -13,23 +13,11 @@ in
services = { services = {
ssh-agent = enabled; ssh-agent = enabled;
fusuma = enabled;
swww = enabled;
}; };
programs = { programs = {
graphical = {
wms.hyprland = enabled;
ghostty = enabled;
ghidra = enabled;
browsers.firefox = {
enable = true;
gpuAcceleration = true;
hardwareDecoding = true;
};
};
terminal = { terminal = {
bash = enabled;
btop = enabled; btop = enabled;
direnv = enabled; direnv = enabled;
git = enabled; git = enabled;
@ -39,24 +27,6 @@ in
}; };
}; };
dconf = {
settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
cursor-theme = "catppuccin-macchiato-mauve-cursors";
cursor-size = 24;
};
};
};
home.pointerCursor = {
gtk.enable = true;
name = "catppuccin-macchiato-mauve-cursors";
package = pkgs.catppuccin-cursors.macchiatoMauve;
size = 24;
};
# SQLite Configuration # SQLite Configuration
home.file.".sqliterc".text = '' home.file.".sqliterc".text = ''
.headers on .headers on

View File

@ -10,68 +10,14 @@ in
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.bash = { # Enable Bash
enable = true; ${namespace}.programs.terminal.bash.enable = true;
shellAliases = {
grep = "grep --color";
ssh = "TERM=xterm-256color ssh";
flush_dns = "sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder";
hs = "kubectl exec -n headscale $(kubectl get pod -n headscale -o name) -- headscale";
};
profileExtra = ''
# Source Nix daemon
# if [ -e '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh' ]; then
# . '/nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh'
# fi
SHELL="$BASH"
PATH=~/.bin:$PATH
bind "set show-mode-in-prompt on"
set -o vi || true
VISUAL=vim
EDITOR="$VISUAL"
fastfetch
eval "$(thefuck --alias)"
'';
};
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; [
thefuck
fastfetch
bashInteractive
nerd-fonts.meslo-lg
] ++ optionals isLinux [
# Pending Darwin @ https://github.com/NixOS/nixpkgs/pull/369788 # Pending Darwin @ https://github.com/NixOS/nixpkgs/pull/369788
home.packages = with pkgs; optionals isLinux [
ghostty ghostty
]; ];
home.file.".config/fastfetch/config.jsonc".text = builtins.readFile ./config/fastfetch.jsonc;
home.file.".config/ghostty/config".text = home.file.".config/ghostty/config".text =
let let
bashPath = "${pkgs.bashInteractive}/bin/bash"; bashPath = "${pkgs.bashInteractive}/bin/bash";

View File

@ -0,0 +1,3 @@
_scratch
.direnv
.envrc

View File

@ -0,0 +1,65 @@
{ pkgs, lib, config, namespace, ... }:
let
inherit (lib) mkIf;
cfg = config.${namespace}.programs.terminal.bash;
in
{
options.${namespace}.programs.terminal.bash = {
enable = lib.mkEnableOption "bash";
};
config = mkIf cfg.enable {
programs.bash = {
enable = true;
shellAliases = {
grep = "grep --color";
ssh = "TERM=xterm-256color ssh";
};
profileExtra = ''
SHELL="$BASH"
PATH=~/.bin:$PATH
bind "set show-mode-in-prompt on"
set -o vi || true
VISUAL=vim
EDITOR="$VISUAL"
fastfetch
eval "$(thefuck --alias)"
'';
};
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; [
thefuck
fastfetch
bashInteractive
nerd-fonts.meslo-lg
];
home.file.".config/fastfetch/config.jsonc".text = builtins.readFile ./config/fastfetch.jsonc;
};
}

View File

@ -0,0 +1,20 @@
{ config, lib, namespace, ... }:
let
inherit (lib) mkIf mkEnableOption;
inherit (lib.${namespace}) mkBoolOpt;
cfg = config.${namespace}.services.sunshine;
in
{
options.${namespace}.services.sunshine = {
enable = mkEnableOption "enable sunshine service";
openFirewall = mkBoolOpt true "open firewall";
};
config = mkIf cfg.enable {
services.sunshine = {
enable = true;
openFirewall = cfg.openFirewall;
};
};
}

View File

@ -1,4 +1,4 @@
{ namespace, lib, ... }: { namespace, pkgs, lib, ... }:
let let
inherit (lib.${namespace}) enabled; inherit (lib.${namespace}) enabled;
in in
@ -24,34 +24,20 @@ in
enable = true; enable = true;
useStatic = { useStatic = {
interface = "enX0"; interface = "enX0";
address = "10.0.50.240"; address = "10.0.50.30";
defaultGateway = "10.0.50.254"; defaultGateway = "10.0.50.254";
nameservers = [ "10.0.50.254" ]; nameservers = [ "10.0.50.254" ];
}; };
}; };
}; };
hardware = {
opengl = {
enable = true;
enable32Bit = true;
enableIntel = true;
};
};
services = { services = {
openssh = enabled;
avahi = enabled; avahi = enabled;
ydotool = enabled;
}; };
virtualisation = { virtualisation = {
podman = enabled; podman = enabled;
}; };
programs = {
graphical = {
wms.hyprland = enabled;
};
};
}; };
} }