A very simple, yet elegant greeter for your terminal. Built with Go and lipgloss.
Dowload the latest release and the sha256sum:
curl -L -O "https://github.com/g5ostXa/ghostshell/releases/download/v0.1.1/ghostshell-v0.1.1-linux-amd64"
curl -L -O "https://github.com/g5ostXa/ghostshell/releases/download/v0.1.1/sha256sum.txt"Verify your download with sha256sum:
sha256sum -c sha256sum.txtYou should get something like this:
ghostshell-v0.1.1-linux-amd64: OK
Make sure the binary is executable:
chmod +x ghostshell-v0.1.1-linux-amd64Move the binary in your $GOBIN as ghostshell:
mv ./ghostshell-v0.1.1-linux-amd64 "$GOBIN/ghostshell"Clone the the latest git:
git clone https://github.com/g5ostXa/ghostshell.gitBuild the binary:
cd /path/to/ghostshell
make installThe binary will be installed to $GOBIN (or $HOME/go/bin by default).
Run the greeter:
ghostshellghostshell [options]--title string- Main title to display (default: "ghostshell")--version string- Version to display (default: "0.0-1")--version-file string- Path to file containing version (overrides --version). Supports~for home directory.--tree-title string- Tree root title (default: "○ Version")-h, --help- Show help message
# Custom title
ghostshell --title "MyApp"
# Custom version
ghostshell --version "1.2.3"
# Load version from file
ghostshell --version-file ~/.myapp/version.txt
# Custom title and version file
ghostshell --title "MyApp" --version-file ~/.myapp/version.txt
# Show help
ghostshell -hTo customize colors and styling, edit the definitions in main.go:
var (
white = lipgloss.Color("#FFFFFF")
green = lipgloss.Color("#0de572")
mauve = lipgloss.Color("#7b0dea")
)Modify the style definitions to change appearance:
var headerStyle = lipgloss.NewStyle().
Bold(true).
Align(lipgloss.Center).
Foreground((white)).
BorderStyle(lipgloss.RoundedBorder()).
BorderForeground((mauve))Create a version file at ~/.myapp/version.txt:
mkdir -p ~/.myapp
echo "1.0.0" > ~/.myapp/version.txtThen use it:
ghostshell --title "MyApp" --version-file ~/.myapp/version.txtBuild locally:
make buildRun after building:
make runClean build artifacts:
make clean