11 Commits
Author SHA1 Message Date
Florian WaltherandClaude Opus 5.5 b602e17622 add non-interactive mode: -c, script files and commands from stdin
- gosh -c 'command' runs the command and exits, so gosh works as login
  shell for ssh host command, scp and rsync
- gosh script runs a script file, lines starting with # are skipped
- without a terminal, commands are read from stdin (byte by byte, so
  started commands can read the rest of stdin)
- the exit status is the one of the last command (127 not found,
  126 not executable, 128+n killed by signal n)
- -i forces interactive mode, -l/--login is accepted

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 19:45:00 +02:00
Florian WaltherandClaude Opus 5.5 f51680f83c show version with branch and commit in help and -version
- add -version flag (besides --version and -V)
- help output includes the version
- commit and branch are set via ldflags by goreleaser; plain go build
  falls back to the VCS revision embedded by Go

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 19:38:48 +02:00
Florian WaltherandClaude Opus 5.5 2b8f06ea6d make prompt colors configurable via GOSH_COLORS
- GOSH_COLORS='user=..:root=..:path=..' with ANSI SGR codes,
  empty value disables the color for that part
- only digits and ';' are accepted, invalid entries are ignored
- read before every prompt, so 'set GOSH_COLORS=...' takes effect immediately
- document in help and README, including example color schemes

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 17:47:49 +02:00
Florian WaltherandClaude Opus 5.5 7afcecd053 add colored prompt
- user@host in bold green (bold red for root), directory in bold blue
- colors are disabled with NO_COLOR, TERM=dumb or when stdout is not a terminal
- parts are sanitized before adding the color codes
- only replace the home directory with ~ on a path boundary

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 17:31:09 +02:00
Florian WaltherandClaude Opus 5.5 37d6802815 add goreleaser configuration for binaries and deb/rpm packages
- build static binaries for linux, darwin and freebsd
- create deb and rpm packages that register gosh in /etc/shells
- publish releases to Gitea
- add --version flag, set at build time via ldflags

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 16:58:50 +02:00
Florian Walther d5c3d03a21 fixing bugs, update README,Help; adding .gitignore 2026-10-03 16:51:55 +02:00
Florian.Walther f1e20856c8 fehlendes Leerzeichen eingefügt 2026-09-23 20:39:31 +02:00
Florian Walther cc18208925 update README-md 2026-09-23 20:38:53 +02:00
Florian Walther ffe4547a86 update reademe 2026-09-23 20:36:52 +02:00
Florian Walther c44da98a1c update README 2026-09-23 20:33:19 +02:00
Florian Walther e1ef97de71 adding README 2026-09-23 20:32:21 +02:00