update
This commit is contained in:
68
modules/home/stephen/terminal/default.nix
Normal file
68
modules/home/stephen/terminal/default.nix
Normal file
@@ -0,0 +1,68 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
|
||||
imports = [
|
||||
./starship/default.nix
|
||||
];
|
||||
|
||||
# Some user-level dotfiles
|
||||
home.file = {
|
||||
# Configure ssh
|
||||
".ssh/config".text = ''
|
||||
Host *
|
||||
IdentityAgent "~/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock"
|
||||
'';
|
||||
|
||||
# Configure git
|
||||
".gitconfig".text = ''
|
||||
[user]
|
||||
name = swaphb
|
||||
email = s@swaphb.com
|
||||
signingkey = ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJx0WMlfx+AwcROXFO+/all/WkLvBKpEkjwRY15tjSiB
|
||||
|
||||
[gpg]
|
||||
format = ssh
|
||||
|
||||
[gpg "ssh"]
|
||||
program = "/Applications/1Password.app/Contents/MacOS/op-ssh-sign"
|
||||
|
||||
[commit]
|
||||
gpgSign = true
|
||||
'';
|
||||
|
||||
# Configure 1password agent.toml
|
||||
".config/1Password/ssh/agent.toml".text = ''
|
||||
# Examples can be found here:
|
||||
# https://developer.1password.com/docs/ssh/agent/config
|
||||
|
||||
[[ssh-keys]]
|
||||
item = "github-auth-key"
|
||||
vault = "Private"
|
||||
|
||||
[[ssh-keys]]
|
||||
item = "github-sign-key"
|
||||
vault = "Private"
|
||||
|
||||
[[ssh-keys]]
|
||||
item = "Github-swaphb"
|
||||
vault = "Private"
|
||||
|
||||
[[ssh-keys]]
|
||||
vault = "Employee"
|
||||
'';
|
||||
|
||||
# Configure zsh
|
||||
".zshrc".text = ''
|
||||
eval "$(starship init zsh)"
|
||||
export PATH="''${KREW_ROOT:-/Users/${config.home.username}/.krew}/bin:$PATH"
|
||||
'';
|
||||
|
||||
# Configure ghostty
|
||||
".config/ghostty/config".text = ''
|
||||
background-opacity = 0.9
|
||||
theme = "dracula"
|
||||
'';
|
||||
|
||||
};
|
||||
}
|
||||
185
modules/home/stephen/terminal/starship/default.nix
Normal file
185
modules/home/stephen/terminal/starship/default.nix
Normal file
@@ -0,0 +1,185 @@
|
||||
{
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
settings = {
|
||||
add_newline = false;
|
||||
scan_timeout = 10;
|
||||
format = "$all";
|
||||
|
||||
character = {
|
||||
success_symbol = "[>](bold green)";
|
||||
error_symbol = "[x](bold red)";
|
||||
vimcmd_symbol = "[<](bold green)";
|
||||
};
|
||||
|
||||
cmd_duration = {
|
||||
min_time = 500;
|
||||
format = "took [$duration](bold yellow)";
|
||||
};
|
||||
|
||||
git_commit = {
|
||||
tag_symbol = " tag ";
|
||||
};
|
||||
|
||||
git_status = {
|
||||
ahead = ">";
|
||||
behind = "<";
|
||||
diverged = "<>";
|
||||
renamed = "r";
|
||||
deleted = "x";
|
||||
};
|
||||
|
||||
aws = {
|
||||
symbol = "aws ";
|
||||
};
|
||||
|
||||
azure = {
|
||||
symbol = "az ";
|
||||
};
|
||||
|
||||
bun = {
|
||||
symbol = "bun ";
|
||||
};
|
||||
|
||||
cmake = {
|
||||
symbol = "cmake ";
|
||||
};
|
||||
|
||||
deno = {
|
||||
symbol = "deno ";
|
||||
};
|
||||
|
||||
directory = {
|
||||
read_only = " ro";
|
||||
};
|
||||
|
||||
docker_context = {
|
||||
symbol = "docker ";
|
||||
};
|
||||
|
||||
git_branch = {
|
||||
symbol = "git ";
|
||||
};
|
||||
|
||||
golang = {
|
||||
symbol = "go ";
|
||||
};
|
||||
|
||||
hostname = {
|
||||
ssh_only = false;
|
||||
format = " on [$hostname](bold #FFA500)\n";
|
||||
disabled = false;
|
||||
};
|
||||
|
||||
lua = {
|
||||
symbol = "lua ";
|
||||
};
|
||||
|
||||
nodejs = {
|
||||
symbol = "nodejs ";
|
||||
};
|
||||
|
||||
memory_usage = {
|
||||
symbol = "memory ";
|
||||
};
|
||||
|
||||
nim = {
|
||||
symbol = "nim ";
|
||||
};
|
||||
|
||||
nix_shell = {
|
||||
symbol = "nix ";
|
||||
};
|
||||
|
||||
os = {
|
||||
format = "[$symbol]($style) "; # Display the OS symbol
|
||||
disabled = false; # Enable the OS module
|
||||
style = "bold green"; # Style for the OS symbol
|
||||
};
|
||||
|
||||
os.symbols = {
|
||||
Alpaquita = "alq ";
|
||||
Alpine = "alp ";
|
||||
Amazon = "amz ";
|
||||
Android = "andr ";
|
||||
Arch = "rch ";
|
||||
Artix = "atx ";
|
||||
CentOS = "cent ";
|
||||
Debian = "deb ";
|
||||
DragonFly = "dfbsd ";
|
||||
Emscripten = "emsc ";
|
||||
EndeavourOS = "ndev ";
|
||||
Fedora = "fed ";
|
||||
FreeBSD = "fbsd ";
|
||||
Garuda = "garu ";
|
||||
Gentoo = "gent ";
|
||||
HardenedBSD = "hbsd ";
|
||||
Illumos = "lum ";
|
||||
Linux = "lnx ";
|
||||
Mabox = "mbox ";
|
||||
Macos = " ";
|
||||
Manjaro = "mjo ";
|
||||
Mariner = "mrn ";
|
||||
MidnightBSD = "mid ";
|
||||
Mint = "mint ";
|
||||
NetBSD = "nbsd ";
|
||||
NixOS = "nix ";
|
||||
OpenBSD = "obsd ";
|
||||
OpenCloudOS = "ocos ";
|
||||
openEuler = "oeul ";
|
||||
openSUSE = "osuse ";
|
||||
OracleLinux = "orac ";
|
||||
Pop = "pop ";
|
||||
Raspbian = "rasp ";
|
||||
Redhat = "rhl ";
|
||||
RedHatEnterprise = "rhel ";
|
||||
Redox = "redox ";
|
||||
Solus = "sol ";
|
||||
SUSE = "suse ";
|
||||
Ubuntu = "ubnt ";
|
||||
Unknown = "unk ";
|
||||
Windows = "win ";
|
||||
};
|
||||
|
||||
package = {
|
||||
symbol = "pkg ";
|
||||
};
|
||||
|
||||
purescript = {
|
||||
symbol = "purs ";
|
||||
};
|
||||
|
||||
python = {
|
||||
symbol = "py ";
|
||||
};
|
||||
|
||||
rust = {
|
||||
symbol = "rs ";
|
||||
};
|
||||
|
||||
status = {
|
||||
symbol = "[x](bold red) ";
|
||||
};
|
||||
|
||||
sudo = {
|
||||
symbol = "sudo ";
|
||||
};
|
||||
|
||||
terraform = {
|
||||
symbol = "terraform ";
|
||||
};
|
||||
|
||||
username = {
|
||||
style_user = "blue bold";
|
||||
style_root = "orange bold";
|
||||
format = "[$user]($style)";
|
||||
disabled = false;
|
||||
show_always = true;
|
||||
};
|
||||
|
||||
zig = {
|
||||
symbol = "zig ";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user