Last active
May 28, 2025 17:06
-
-
Save pythoninthegrass/5267c624b782165d4836503fdcafd28a to your computer and use it in GitHub Desktop.
Ghosty config (i.e., $HOME/.config/ghostty/config )
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
title = " " | |
maximize = true | |
working-directory = "home" | |
# TODO: fix `command` / `initial-command` error | |
# shell-integration = "bash" | |
# initial-command = "~/.config/ghostty/startup.sh bash" | |
# command = "bash $HOME/.config/ghostty/startup.sh" | |
quit-after-last-window-closed = true | |
quick-terminal-screen = mouse | |
quick-terminal-autohide = true | |
scrollback-limit = 524288000 | |
clipboard-read = allow | |
clipboard-write = allow | |
clipboard-paste-protection = false | |
clipboard-paste-bracketed-safe = true | |
copy-on-select = clipboard | |
window-inherit-working-directory = false | |
window-save-state = "always" | |
window-padding-x = 10 | |
window-padding-y = 10 | |
window-height = 40 | |
window-width = 150 | |
theme = "AdventureTime" | |
font-size = 14 | |
font-family = "Hack Nerd Font Mono" | |
keybind = global:cmd+grave_accent=toggle_quick_terminal | |
keybind = global:cmd+shift+enter=toggle_fullscreen | |
mouse-hide-while-typing = true | |
app-notifications = no-clipboard-copy | |
macos-titlebar-proxy-icon = "hidden" | |
# TODO: alt doesn't work to move to the right tab or word boundaries in zellij | |
# ! https://github.com/ghostty-org/ghostty/discussions/3483 | |
# command = "/bin/bash -c /opt/homebrew/bin/zellij" | |
# macos-option-as-alt = true | |
# keybind = alt+left=unbind | |
# keybind = alt+right=unbind | |
copy-on-select = clipboard | |
app-notifications = no-clipboard-copy | |
window-save-state = "always" | |
scrollback-limit = 524288000 | |
quick-terminal-position = "top" | |
quick-terminal-screen = "main" | |
quick-terminal-autohide = true | |
window-width = 150 | |
window-height = 40 | |
window-padding-x = 10 | |
window-padding-y = 10 | |
auto-update = "check" | |
auto-update-channel = "tip" | |
macos-icon = "custom-style" | |
macos-icon-frame = "beige" | |
macos-icon-screen-color = 1f1d45 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json", | |
"logo": { | |
"padding": { | |
"top": 5, | |
"right": 6 | |
} | |
}, | |
"modules": [ | |
"break", | |
{ | |
"type": "custom", | |
"format": "\u001b[90m┌──────────────────────Hardware──────────────────────┐" | |
}, | |
{ | |
"type": "host", | |
"key": " PC", | |
"keyColor": "green" | |
}, | |
{ | |
"type": "cpu", | |
"key": "│ ├", | |
"showPeCoreCount": true, | |
"keyColor": "green" | |
}, | |
{ | |
"type": "gpu", | |
"key": "│ ├", | |
"detectionMethod": "pci", | |
"keyColor": "green" | |
}, | |
{ | |
"type": "display", | |
"key": "│ ├", | |
"keyColor": "green" | |
}, | |
{ | |
"type": "disk", | |
"key": "│ ├", | |
"keyColor": "green" | |
}, | |
{ | |
"type": "memory", | |
"key": "│ ├", | |
"keyColor": "green" | |
}, | |
{ | |
"type": "swap", | |
"key": "└ └ ", | |
"keyColor": "green", | |
}, | |
{ | |
"type": "custom", | |
"format": "\u001b[90m└────────────────────────────────────────────────────┘" | |
}, | |
"break", | |
{ | |
"type": "custom", | |
"format": "\u001b[90m┌──────────────────────Software──────────────────────┐" | |
}, | |
{ | |
"type": "os", | |
"key": " OS", | |
"keyColor": "yellow" | |
}, | |
{ | |
"type": "kernel", | |
"key": "│ ├", | |
"keyColor": "yellow" | |
}, | |
{ | |
"type": "packages", | |
"key": "│ ├", | |
"keyColor": "yellow" | |
}, | |
{ | |
"type": "shell", | |
"key": "└ └", | |
"keyColor": "yellow" | |
}, | |
"break", | |
{ | |
"type": "de", | |
"key": " DE", | |
"keyColor": "blue" | |
}, | |
{ | |
"type": "wm", | |
"key": "│ ├", | |
"keyColor": "blue" | |
}, | |
{ | |
"type": "wmtheme", | |
"key": "│ ├", | |
"keyColor": "blue" | |
}, | |
{ | |
"type": "icons", | |
"key": "│ ├", | |
"keyColor": "blue", | |
}, | |
{ | |
"type": "cursor", | |
"key": "│ ├", | |
"keyColor": "blue", | |
}, | |
{ | |
"type": "terminalfont", | |
"key": "│ ├", | |
"keyColor": "blue", | |
}, | |
{ | |
"type": "terminal", | |
"key": "└ └", | |
"keyColor": "blue" | |
}, | |
{ | |
"type": "custom", | |
"format": "\u001b[90m└────────────────────────────────────────────────────┘" | |
}, | |
"break", | |
{ | |
"type": "custom", | |
"format": "\u001b[90m┌────────────────────Uptime / Age────────────────────┐" | |
}, | |
{ | |
"type": "command", | |
"key": " OS Age ", | |
"keyColor": "magenta", | |
"text": "birth_install=$(stat -c %W /); current=$(date +%s); time_progression=$((current - birth_install)); days_difference=$((time_progression / 86400)); echo $days_difference days" | |
}, | |
{ | |
"type": "uptime", | |
"key": " Uptime ", | |
"keyColor": "magenta" | |
}, | |
{ | |
"type": "custom", | |
"format": "\u001b[90m└────────────────────────────────────────────────────┘" | |
}, | |
"break", | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
# shellcheck disable=SC1091 | |
set -euo pipefail | |
shopt -s nullglob | |
# $USER | |
if [[ "$(uname)" = 'Darwin' ]]; then | |
logged_in_user=$(echo "show State:/Users/ConsoleUser" | scutil | awk '/Name :/ && ! /loginwindow/ {print $3}') | |
elif [[ "$(uname)" = 'Linux' ]]; then | |
[[ -n $(logname >/dev/null 2>&1) ]] && logged_in_user=$(logname) || logged_in_user=$(whoami) | |
else | |
echo "Unknown OS: $(uname). Exiting..." | |
exit 1 | |
fi | |
# $UID | |
# logged_in_uid=$(id -u "${logged_in_user}") | |
# $HOME | |
logged_in_home=$(eval echo "~${logged_in_user}") | |
# Source ~/.bashrc | |
. "${logged_in_home}/.bashrc" | |
if [[ $TERM == "xterm-ghostty" ]] || [[ $TERM = "xterm-256color" ]]; then | |
exec "$SHELL" -li -c "bash" "fastfetch -c ${logged_in_home}/.config/fastfetch.jsonc" | |
fi |
mkdir -p ~/.config/ghostty
git clone [email protected]:5267c624b782165d4836503fdcafd28a.git ghostty_config && cd $_
ln -s $(pwd)/config ~/.config/ghostty/config
ln -s $(pwd)/startup.sh ~/.config/ghostty/startup.sh
ln -s $(pwd)/fastfetch.jsonc ~/.config/fastfetch.jsonc
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
cf. https://ghostty.org/docs/config