74 lines
1.8 KiB
Nix
74 lines
1.8 KiB
Nix
{ pkgs, lib, config, namespace, ... }:
|
|
let
|
|
inherit (lib) mkIf;
|
|
cfg = config.${namespace}.programs.ghostty;
|
|
in
|
|
{
|
|
options.${namespace}.programs.ghostty = {
|
|
enable = lib.mkEnableOption "Ghostty";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
programs.bash = {
|
|
enable = true;
|
|
shellAliases = {
|
|
grep = "grep --color";
|
|
ssh = "TERM=xterm-256color ssh";
|
|
flush_dns = "sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder";
|
|
};
|
|
profileExtra = ''
|
|
SHELL="$BASH"
|
|
PATH=~/.bin:$PATH
|
|
eval "$(thefuck --alias)"
|
|
set -o vi
|
|
bind "set show-mode-in-prompt on"
|
|
fastfetch
|
|
'';
|
|
};
|
|
|
|
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; [
|
|
# Pending Darwin @ https://github.com/NixOS/nixpkgs/pull/369788
|
|
# ghostty
|
|
thefuck
|
|
fastfetch
|
|
bashInteractive
|
|
(nerdfonts.override { fonts = [ "Meslo" ]; })
|
|
];
|
|
|
|
home.file.".config/fastfetch/config.jsonc".text = builtins.readFile ./config/fastfetch.jsonc;
|
|
home.file.".config/ghostty/config".text =
|
|
let
|
|
bashPath = "${pkgs.bashInteractive}/bin/bash";
|
|
in
|
|
builtins.replaceStrings
|
|
[ "@BASH_PATH@" ]
|
|
[ bashPath ]
|
|
(builtins.readFile ./config/ghostty.conf);
|
|
|
|
};
|
|
}
|