120 lines
2.1 KiB
Nix
120 lines
2.1 KiB
Nix
{ lib, inputs, config, pkgs, ... }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
cfg = config.programs.atuin;
|
|
in
|
|
{
|
|
options.terminal = {
|
|
nixUpdateLocation = mkOption {
|
|
type = types.str;
|
|
};
|
|
flakeUpdateLocation = mkOption {
|
|
type = types.str;
|
|
};
|
|
};
|
|
|
|
config = {
|
|
home.packages = with pkgs;[
|
|
blesh
|
|
nerd-fonts.space-mono
|
|
];
|
|
|
|
programs = {
|
|
bash = {
|
|
enable = true;
|
|
bashrcExtra = ''
|
|
source $(blesh-share)/ble.sh
|
|
bleopt canvas_winch_action=redraw-prev
|
|
'';
|
|
};
|
|
|
|
starship.enable = true;
|
|
|
|
atuin.enable = true;
|
|
|
|
zellij = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
settings = {
|
|
theme = "dracula";
|
|
};
|
|
};
|
|
|
|
direnv = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
|
|
git = {
|
|
enable = true;
|
|
delta.enable = true;
|
|
};
|
|
|
|
gitui = {
|
|
enable = true;
|
|
};
|
|
|
|
helix.enable = true;
|
|
|
|
bat = {
|
|
enable = true;
|
|
};
|
|
|
|
eza = {
|
|
enable = true;
|
|
enableBashIntegration = true;
|
|
git = true;
|
|
extraOptions = [
|
|
"--color=auto"
|
|
"--icons=always"
|
|
"--group-directories-first"
|
|
"--header"
|
|
];
|
|
};
|
|
|
|
bottom = {
|
|
enable = true;
|
|
};
|
|
|
|
fd = {
|
|
enable = true;
|
|
};
|
|
|
|
ripgrep = {
|
|
enable = true;
|
|
};
|
|
|
|
topgrade = {
|
|
enable = true;
|
|
settings = {
|
|
misc = {
|
|
assume_yes = true;
|
|
};
|
|
linux = {
|
|
nix_arguments = "--flake ${config.terminal.nixUpdateLocation}";
|
|
};
|
|
pre_commands = {
|
|
nix-flake-update = "sudo nix flake update --flake ${config.terminal.flakeUpdateLocation}";
|
|
};
|
|
};
|
|
};
|
|
|
|
alacritty = {
|
|
enable = true;
|
|
settings = {
|
|
font = {
|
|
normal = {
|
|
family = "SpaceMono Nerd Font";
|
|
style = "Regular";
|
|
};
|
|
size = 14;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|