Makefile for convenience (#833)
This commit is contained in:
parent
569c977408
commit
84678c6448
|
@ -0,0 +1,64 @@
|
||||||
|
# Makefile for gemini-cli
|
||||||
|
|
||||||
|
.PHONY: help install build build-sandbox build-all test lint format preflight clean start debug release run-npx create-alias
|
||||||
|
|
||||||
|
help:
|
||||||
|
@echo "Makefile for gemini-cli"
|
||||||
|
@echo ""
|
||||||
|
@echo "Usage:"
|
||||||
|
@echo " make install - Install npm dependencies"
|
||||||
|
@echo " make build - Build the entire project"
|
||||||
|
@echo " make build-sandbox - Build the sandbox container"
|
||||||
|
@echo " make build-all - Build the project and the sandbox"
|
||||||
|
@echo " make test - Run the test suite"
|
||||||
|
@echo " make lint - Lint the code"
|
||||||
|
@echo " make format - Format the code"
|
||||||
|
@echo " make preflight - Run formatting, linting, and tests"
|
||||||
|
@echo " make clean - Remove generated files"
|
||||||
|
@echo " make start - Start the Gemini CLI"
|
||||||
|
@echo " make debug - Start the Gemini CLI in debug mode"
|
||||||
|
@echo " make release - Publish a new release"
|
||||||
|
@echo " make run-npx - Run the CLI using npx (for testing the published package)"
|
||||||
|
@echo " make create-alias - Create a 'gemini' alias for your shell"
|
||||||
|
|
||||||
|
install:
|
||||||
|
npm install
|
||||||
|
|
||||||
|
build:
|
||||||
|
npm run build
|
||||||
|
|
||||||
|
build-sandbox:
|
||||||
|
npm run build:sandbox
|
||||||
|
|
||||||
|
build-all:
|
||||||
|
npm run build:all
|
||||||
|
|
||||||
|
test:
|
||||||
|
npm run test
|
||||||
|
|
||||||
|
lint:
|
||||||
|
npm run lint
|
||||||
|
|
||||||
|
format:
|
||||||
|
npm run format
|
||||||
|
|
||||||
|
preflight:
|
||||||
|
npm run preflight
|
||||||
|
|
||||||
|
clean:
|
||||||
|
npm run clean
|
||||||
|
|
||||||
|
start:
|
||||||
|
npm run start
|
||||||
|
|
||||||
|
debug:
|
||||||
|
npm run debug
|
||||||
|
|
||||||
|
release:
|
||||||
|
npm run publish:release
|
||||||
|
|
||||||
|
run-npx:
|
||||||
|
npx https://github.com/google-gemini/gemini-cli#early-access
|
||||||
|
|
||||||
|
create-alias:
|
||||||
|
scripts/create_alias.sh
|
|
@ -0,0 +1,38 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# This script creates an alias for the Gemini CLI
|
||||||
|
|
||||||
|
# Determine the project directory
|
||||||
|
PROJECT_DIR=$(cd "$(dirname "$0")/.." && pwd)
|
||||||
|
ALIAS_COMMAND="alias gemini='$PROJECT_DIR/scripts/start.sh'"
|
||||||
|
|
||||||
|
# Detect shell and set config file path
|
||||||
|
if [[ "$SHELL" == *"/bash" ]]; then
|
||||||
|
CONFIG_FILE="$HOME/.bashrc"
|
||||||
|
elif [[ "$SHELL" == *"/zsh" ]]; then
|
||||||
|
CONFIG_FILE="$HOME/.zshrc"
|
||||||
|
else
|
||||||
|
echo "Unsupported shell. Only bash and zsh are supported."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "This script will add the following alias to your shell configuration file ($CONFIG_FILE):"
|
||||||
|
echo " $ALIAS_COMMAND"
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
# Check if the alias already exists
|
||||||
|
if grep -q "alias gemini=" "$CONFIG_FILE"; then
|
||||||
|
echo "A 'gemini' alias already exists in $CONFIG_FILE. No changes were made."
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
read -p "Do you want to proceed? (y/n) " -n 1 -r
|
||||||
|
echo ""
|
||||||
|
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
||||||
|
echo "$ALIAS_COMMAND" >> "$CONFIG_FILE"
|
||||||
|
echo ""
|
||||||
|
echo "Alias added to $CONFIG_FILE."
|
||||||
|
echo "Please run 'source $CONFIG_FILE' or open a new terminal to use the 'gemini' command."
|
||||||
|
else
|
||||||
|
echo "Aborted. No changes were made."
|
||||||
|
fi
|
Loading…
Reference in New Issue