2023-12-16 22:47:32 +00:00
|
|
|
|
{ config, lib, pkgs, ... }: {
|
2023-11-12 14:13:03 +00:00
|
|
|
|
stylix.targets = {
|
|
|
|
|
avizo.enable = true;
|
|
|
|
|
fzf.enable = true;
|
|
|
|
|
mako.enable = true;
|
2023-12-18 08:34:16 +00:00
|
|
|
|
rofi.enable = true;
|
2023-11-12 14:13:03 +00:00
|
|
|
|
xresources.enable = true;
|
2023-12-18 08:34:16 +00:00
|
|
|
|
zellij.enable = true;
|
2023-11-12 14:13:03 +00:00
|
|
|
|
};
|
|
|
|
|
xdg.configFile = {
|
|
|
|
|
"style.css".text = with config.lib.stylix.colors.withHashtag; ''
|
|
|
|
|
@define-color base00 ${base00};
|
|
|
|
|
@define-color base01 ${base01};
|
|
|
|
|
@define-color base02 ${base02};
|
|
|
|
|
@define-color base03 ${base03};
|
|
|
|
|
@define-color base04 ${base04};
|
|
|
|
|
@define-color base05 ${base05};
|
|
|
|
|
@define-color base06 ${base06};
|
|
|
|
|
@define-color base07 ${base07};
|
|
|
|
|
@define-color base08 ${base08};
|
|
|
|
|
@define-color base09 ${base09};
|
|
|
|
|
@define-color base0A ${base0A};
|
|
|
|
|
@define-color base0B ${base0B};
|
|
|
|
|
@define-color base0C ${base0C};
|
|
|
|
|
@define-color base0D ${base0D};
|
|
|
|
|
@define-color base0E ${base0E};
|
|
|
|
|
@define-color base0F ${base0F};
|
|
|
|
|
'';
|
2023-12-18 08:15:18 +00:00
|
|
|
|
"bat/themes/Catppuccin-mocha.tmTheme".source = ./Catppuccin-mocha.tmTheme;
|
2023-11-12 14:13:03 +00:00
|
|
|
|
};
|
2023-12-18 08:15:18 +00:00
|
|
|
|
programs = rec {
|
2023-09-20 09:00:22 +01:00
|
|
|
|
bash.enable = true;
|
2023-12-05 06:19:51 +00:00
|
|
|
|
fish.enable = true;
|
2023-12-18 08:34:16 +00:00
|
|
|
|
zellij.enable = true;
|
2023-12-04 17:47:44 +00:00
|
|
|
|
zsh.initExtra = ''
|
|
|
|
|
xdg-query-program () {
|
|
|
|
|
FILETYPE=$(xdg-mime query filetype $@)
|
|
|
|
|
DEFAULT=$(xdg-mime query default $FILETYPE)
|
|
|
|
|
echo "$FILETYPE -> $DEFAULT"
|
|
|
|
|
}
|
|
|
|
|
rsync-local-config () {
|
|
|
|
|
HOST=$1
|
2023-12-16 22:47:32 +00:00
|
|
|
|
for TARGET in bat/themes/tokyonight_night.tmTheme git/config starship.toml; do
|
2023-12-04 17:47:44 +00:00
|
|
|
|
SOURCE="${config.xdg.configHome}/$TARGET"
|
|
|
|
|
TMP_TARGET=/tmp/rsync-local-config
|
|
|
|
|
if [[ -e ${config.xdg.configHome}/$TARGET ]]; then
|
2023-12-16 22:47:32 +00:00
|
|
|
|
${pkgs.rsync}/bin/rsync -avzL $SOURCE $TMP_TARGET
|
|
|
|
|
${pkgs.coreutils}/bin/chmod u+rw -R $TMP_TARGET
|
|
|
|
|
${pkgs.gnused}/bin/sed -i 's|/nix/.*/bin/||g' $TMP_TARGET
|
|
|
|
|
${pkgs.rsync}/bin/rsync -avzL --delete $TMP_TARGET $HOST:.config/$TARGET
|
2023-12-04 17:47:44 +00:00
|
|
|
|
${pkgs.coreutils}/bin/rm -rf $TMP_SOURCE
|
|
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
}
|
|
|
|
|
'';
|
2023-12-18 08:15:18 +00:00
|
|
|
|
bat = {
|
|
|
|
|
enable = true;
|
|
|
|
|
config.theme = "Catppuccin-mocha";
|
|
|
|
|
};
|
|
|
|
|
bottom = {
|
|
|
|
|
enable = true;
|
|
|
|
|
settings.colors = {
|
|
|
|
|
table_header_color = "#f5e0dc";
|
|
|
|
|
all_cpu_color = "#f5e0dc";
|
|
|
|
|
avg_cpu_color = "#eba0ac";
|
|
|
|
|
cpu_core_colors =
|
|
|
|
|
[ "#f38ba8" "#fab387" "#f9e2af" "#a6e3a1" "#74c7ec" "#cba6f7" ];
|
|
|
|
|
ram_color = "#a6e3a1";
|
|
|
|
|
swap_color = "#fab387";
|
|
|
|
|
rx_color = "#a6e3a1";
|
|
|
|
|
tx_color = "#f38ba8";
|
|
|
|
|
widget_title_color = "#f2cdcd";
|
|
|
|
|
border_color = "#585b70";
|
|
|
|
|
highlighted_border_color = "#f5c2e7";
|
|
|
|
|
text_color = "#cdd6f4";
|
|
|
|
|
graph_color = "#a6adc8";
|
|
|
|
|
cursor_color = "#f5c2e7";
|
|
|
|
|
selected_text_color = "#11111b";
|
|
|
|
|
selected_bg_color = "#cba6f7";
|
|
|
|
|
high_battery_color = "#a6e3a1";
|
|
|
|
|
medium_battery_color = "#f9e2af";
|
|
|
|
|
low_battery_color = "#f38ba8";
|
|
|
|
|
gpu_core_colors =
|
|
|
|
|
[ "#74c7ec" "#cba6f7" "#f38ba8" "#fab387" "#f9e2af" "#a6e3a1" ];
|
|
|
|
|
arc_color = "#89dceb";
|
|
|
|
|
};
|
|
|
|
|
};
|
2023-11-29 07:17:41 +00:00
|
|
|
|
eza = {
|
|
|
|
|
enable = true;
|
|
|
|
|
git = true;
|
|
|
|
|
icons = true;
|
|
|
|
|
enableAliases = true;
|
|
|
|
|
extraOptions = [ "--octal-permissions" ];
|
|
|
|
|
};
|
2023-09-20 09:00:22 +01:00
|
|
|
|
readline = {
|
|
|
|
|
enable = true;
|
|
|
|
|
includeSystemConfig = true;
|
|
|
|
|
extraConfig = ''
|
|
|
|
|
set completion-ignore-case On
|
|
|
|
|
'';
|
|
|
|
|
};
|
|
|
|
|
direnv = {
|
|
|
|
|
enable = true;
|
|
|
|
|
nix-direnv.enable = true;
|
|
|
|
|
enableBashIntegration = true;
|
|
|
|
|
};
|
2023-10-09 11:40:25 +01:00
|
|
|
|
fzf = {
|
|
|
|
|
enable = true;
|
|
|
|
|
enableBashIntegration = true;
|
2023-12-04 17:47:44 +00:00
|
|
|
|
enableFishIntegration = true;
|
2023-10-09 11:40:25 +01:00
|
|
|
|
};
|
|
|
|
|
git = {
|
|
|
|
|
enable = true;
|
|
|
|
|
package = pkgs.gitFull;
|
|
|
|
|
userName = "Evie Litherland-Smith";
|
|
|
|
|
userEmail = lib.mkDefault "evie@xenia.me.uk";
|
|
|
|
|
delta = {
|
|
|
|
|
enable = true;
|
|
|
|
|
options = {
|
|
|
|
|
line-numbers = true;
|
2023-10-20 15:23:16 +01:00
|
|
|
|
hyprlinks = true;
|
2023-10-09 11:40:25 +01:00
|
|
|
|
navigate = true;
|
|
|
|
|
side-by-side = true;
|
2023-12-18 08:15:18 +00:00
|
|
|
|
syntax-theme = bat.config.theme;
|
2023-10-09 11:40:25 +01:00
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
extraConfig = {
|
2023-11-29 07:45:23 +00:00
|
|
|
|
github.user = "elitherl";
|
2023-12-19 14:46:38 +00:00
|
|
|
|
pull.rebase = false;
|
2023-10-09 11:40:25 +01:00
|
|
|
|
init.defaultBranch = "main";
|
2023-10-20 15:23:16 +01:00
|
|
|
|
merge.conflictstyle = "diff3";
|
|
|
|
|
diff.colorMoved = "default";
|
2023-10-09 11:40:25 +01:00
|
|
|
|
credential.helper = "${pkgs.gitFull}/bin/git-credential-libsecret";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
ssh = {
|
|
|
|
|
enable = true;
|
|
|
|
|
forwardAgent = true;
|
|
|
|
|
serverAliveInterval = 15;
|
|
|
|
|
serverAliveCountMax = 3;
|
|
|
|
|
controlMaster = "auto";
|
|
|
|
|
controlPersist = "10s";
|
|
|
|
|
extraConfig = ''
|
|
|
|
|
AddKeysToAgent=yes
|
|
|
|
|
SetEnv TERM=xterm-256color
|
|
|
|
|
'';
|
|
|
|
|
matchBlocks = {
|
2023-10-20 15:23:16 +01:00
|
|
|
|
"git*".user = "git";
|
2023-10-09 11:40:25 +01:00
|
|
|
|
"legion" = {
|
2023-12-12 06:58:43 +00:00
|
|
|
|
user = "xenia";
|
2023-10-09 11:40:25 +01:00
|
|
|
|
hostname = "192.168.1.230";
|
|
|
|
|
};
|
|
|
|
|
"ionos" = {
|
|
|
|
|
user = "root";
|
|
|
|
|
hostname = "77.68.67.133";
|
|
|
|
|
};
|
2023-10-20 15:23:16 +01:00
|
|
|
|
"freia" = {
|
2023-10-09 11:40:25 +01:00
|
|
|
|
user = "elitherl";
|
2023-10-20 15:23:16 +01:00
|
|
|
|
hostname = "freia020.hpc.l";
|
2023-10-09 11:40:25 +01:00
|
|
|
|
compression = true;
|
2023-10-20 15:23:16 +01:00
|
|
|
|
localForwards = [{
|
|
|
|
|
bind.port = 6702;
|
|
|
|
|
host = {
|
|
|
|
|
address = "127.0.0.1";
|
|
|
|
|
port = 6702;
|
|
|
|
|
};
|
|
|
|
|
}];
|
2023-10-09 11:40:25 +01:00
|
|
|
|
};
|
2023-11-02 11:04:49 +00:00
|
|
|
|
"heimdall" = {
|
|
|
|
|
user = "elitherl";
|
|
|
|
|
hostname = "heimdall003.jet.uk";
|
|
|
|
|
compression = true;
|
|
|
|
|
};
|
2023-10-09 11:40:25 +01:00
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
starship = {
|
|
|
|
|
enable = true;
|
|
|
|
|
enableBashIntegration = true;
|
2023-12-01 11:16:07 +00:00
|
|
|
|
enableFishIntegration = true;
|
2023-12-05 06:19:51 +00:00
|
|
|
|
enableTransience = true;
|
2023-10-09 11:40:25 +01:00
|
|
|
|
settings = {
|
|
|
|
|
command_timeout = 1000;
|
|
|
|
|
add_newline = true;
|
|
|
|
|
character = {
|
2023-12-05 06:19:51 +00:00
|
|
|
|
success_symbol = "[❯](bold green)";
|
|
|
|
|
error_symbol = "[❯](bold red)";
|
2023-10-09 11:40:25 +01:00
|
|
|
|
};
|
|
|
|
|
directory = {
|
|
|
|
|
truncation_length = 2;
|
|
|
|
|
fish_style_pwd_dir_length = 1;
|
|
|
|
|
read_only = " ";
|
|
|
|
|
truncate_to_repo = false;
|
|
|
|
|
};
|
|
|
|
|
line_break.disabled = false;
|
|
|
|
|
git_branch = {
|
2023-10-13 09:55:41 +01:00
|
|
|
|
symbol = " ";
|
2023-10-09 11:40:25 +01:00
|
|
|
|
only_attached = true;
|
|
|
|
|
ignore_branches = [ "master" "main" ];
|
|
|
|
|
};
|
|
|
|
|
git_commit = {
|
2023-10-15 17:02:24 +01:00
|
|
|
|
format = "[ $hash | $tag]($style) ";
|
|
|
|
|
tag_symbol = " ";
|
2023-10-09 11:40:25 +01:00
|
|
|
|
tag_disabled = false;
|
|
|
|
|
};
|
|
|
|
|
git_metrics.disabled = false;
|
|
|
|
|
hostname = {
|
|
|
|
|
ssh_only = true;
|
|
|
|
|
ssh_symbol = " ";
|
|
|
|
|
};
|
|
|
|
|
localip.disabled = false;
|
|
|
|
|
memory_usage = {
|
|
|
|
|
disabled = false;
|
|
|
|
|
symbol = " ";
|
|
|
|
|
};
|
|
|
|
|
nix_shell.symbol = " ";
|
|
|
|
|
os = {
|
|
|
|
|
disabled = false;
|
|
|
|
|
format = "on [$symbol $name ]($style)";
|
2023-10-15 12:27:16 +01:00
|
|
|
|
style = "bold blue";
|
2023-10-09 11:40:25 +01:00
|
|
|
|
symbols = {
|
|
|
|
|
Alpine = " ";
|
|
|
|
|
Android = " ";
|
|
|
|
|
Arch = " ";
|
|
|
|
|
CentOS = " ";
|
|
|
|
|
Debian = " ";
|
|
|
|
|
EndeavourOS = " ";
|
|
|
|
|
Fedora = " ";
|
|
|
|
|
FreeBSD = " ";
|
|
|
|
|
Gentoo = " ";
|
|
|
|
|
Illumos = " ";
|
|
|
|
|
Linux = " ";
|
|
|
|
|
Macos = " ";
|
|
|
|
|
Manjaro = " ";
|
|
|
|
|
Mint = " ";
|
|
|
|
|
NixOS = " ";
|
|
|
|
|
OpenBSD = " ";
|
|
|
|
|
openSUSE = " ";
|
|
|
|
|
Pop = " ";
|
|
|
|
|
Raspbian = " ";
|
|
|
|
|
Redhat = " ";
|
|
|
|
|
RedHatEnterprise = " ";
|
|
|
|
|
Solus = " ";
|
|
|
|
|
SUSE = " ";
|
|
|
|
|
Ubuntu = " ";
|
|
|
|
|
Unknown = " ";
|
|
|
|
|
Windows = " ";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
python = {
|
|
|
|
|
symbol = " ";
|
|
|
|
|
python_binary = "python3";
|
|
|
|
|
};
|
2023-10-15 17:02:24 +01:00
|
|
|
|
rust = { symbol = " "; };
|
2023-10-09 11:40:25 +01:00
|
|
|
|
shell = {
|
|
|
|
|
disabled = false;
|
|
|
|
|
format = "using [$indicator ]($style)";
|
|
|
|
|
};
|
|
|
|
|
sudo = {
|
|
|
|
|
disabled = false;
|
|
|
|
|
symbol = " ";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
2023-09-20 09:00:22 +01:00
|
|
|
|
};
|
2023-09-15 07:13:52 +01:00
|
|
|
|
}
|