diff --git a/setup.sh b/setup.sh index 8e816c4e..03ff8269 100644 --- a/setup.sh +++ b/setup.sh @@ -31,10 +31,19 @@ configure_starship() { # Function to overwrite starship.toml overwrite_starship_toml() { - if [ -f "./terminal/starship.toml" ]; then + local icon="$1" + local starship_toml_path="./terminal/starship.toml" + + if [ -f "$starship_toml_path" ]; then echo "Overwriting starship.toml..." mkdir -p ~/.config/starship - cp ./terminal/starship.toml ~/.config/starship.toml + + # Insert icon before hostname if provided + if [ -n "$icon" ]; then + sed -i "s/format = \"\"\"/format = \"\"\"\[ $icon \](fg:color_fg0)\\n/" "$starship_toml_path" + fi + + cp "$starship_toml_path" ~/.config/starship/starship.toml else echo "starship.toml not found in the repository." exit 1 @@ -46,6 +55,18 @@ install_fish set_default_fish install_starship configure_starship -overwrite_starship_toml + +# Check for the optional icon parameter +icon_param="" +while getopts ":i:" opt; then + case $opt in + i) icon_param="$OPTARG" + ;; + \?) echo "Invalid option -$OPTARG" >&2 + ;; + esac +done + +overwrite_starship_toml "$icon_param" echo "Fish shell and Starship prompt setup complete!"