{"id":32698874,"url":"https://github.com/seinfold/shellfish","last_synced_at":"2026-05-08T07:34:40.522Z","repository":{"id":320007211,"uuid":"1079890874","full_name":"seinfold/shellfish","owner":"seinfold","description":"Shellfish is a bash script installer of Ubuntu/Debian Linux terminal pack that uses Fish Terminal and custom tools, tweaks and settings for it. Perfect for full stack development, game servers, general nerding and Linux power use!","archived":false,"fork":false,"pushed_at":"2025-10-22T11:56:07.000Z","size":219,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-01T21:05:06.240Z","etag":null,"topics":["bash-script","coding","debian","fish-shell","irc","kali-linux","linux","linux-mint","poweruser","raspberry-pi-os","shell-script","shell-scripting","ubuntu","zorin-os"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/seinfold.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-20T14:43:32.000Z","updated_at":"2025-10-22T11:56:11.000Z","dependencies_parsed_at":"2025-10-21T13:20:39.836Z","dependency_job_id":"d6fbb89b-d561-4e7e-9045-a29e7485bf85","html_url":"https://github.com/seinfold/shellfish","commit_stats":null,"previous_names":["seinfold/shellfish"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/seinfold/shellfish","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seinfold%2Fshellfish","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seinfold%2Fshellfish/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seinfold%2Fshellfish/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seinfold%2Fshellfish/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seinfold","download_url":"https://codeload.github.com/seinfold/shellfish/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seinfold%2Fshellfish/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32771107,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T02:36:36.067Z","status":"ssl_error","status_checked_at":"2026-05-08T02:36:07.210Z","response_time":54,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash-script","coding","debian","fish-shell","irc","kali-linux","linux","linux-mint","poweruser","raspberry-pi-os","shell-script","shell-scripting","ubuntu","zorin-os"],"created_at":"2025-11-01T21:01:14.232Z","updated_at":"2026-05-08T07:34:40.483Z","avatar_url":"https://github.com/seinfold.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Shellfish Terminal Toolkit\n\n- **Version:** 1.1.0\n- **Author:** seinfold\n- **License:** MIT (see `LICENSE`)\n- **Credits:** Fish shell, eza, tree, fzf, neofetch, zoxide, GNU screen, irssi, GitHub CLI, JetBrainsMono Nerd Font (Nerd Fonts project), Bun completion contributors\n\nShellfish tunes your Debian/Ubuntu terminal in minutes. One guided session installs the essentials, locks in high-contrast fonts/icons, and leaves your shell tidy (with backups).\n\n![Shellfish terminal screenshot](https://github.com/seinfold/shellfish/raw/main/docs/shellfish-terminal.png \"Fish Terminal in action\")\n\n---\n\n## What Shellfish installs\n\n| Component | Purpose |\n|-----------|---------|\n| **fish shell** | Modern shell with custom modifications that you can tune to your likings |\n| **eza** | Fast, colourful replacement for `ls` with Git status and icons |\n| **tree** | Recursive directory tree view |\n| **fzf** | Fuzzy finder for history, files, and command output |\n| **neofetch** | System summary banner |\n| **zoxide** | `z` and `zi` smart directory jumping |\n| **git** | Version control CLI used by Shellfish helpers |\n| **curl** | HTTP utility used during setup and scripting |\n| **wget** | Alternate download utility for environments without curl |\n| **python3** | Runtime for gitget helper script |\n| **GNU screen** | Terminal multiplexer keeping long-running sessions alive |\n| **irssi** *(optional)* | IRC client you can run inside screen |\n| **gh** *(optional)* | GitHub CLI for quick repo listing and SSH auth checks |\n| **unzip** | Required to unpack font archives |\n| **JetBrainsMono Nerd Font Light** | Installed automatically so Fish icons render correctly (keep your terminal on this font or another Nerd Font) |\n\n\u003e Shellfish automatically installs JetBrainsMono Nerd Font Light. Switching your terminal to a non Nerd Font may hide file/folder graphic elements.\n\n---\n\n\n## Shellfish customisations\n\nQuick reminders for the helpers Shellfish installs:\n\n- **`gg` / `gitget`** – list or clone GitHub repositories.\n  ```fish\n  gg --list              # show repos as name.git\n  gg my-repo.git         # clone by name\n  gg 3                   # clone the third entry\n  ```\n\n- **`scr` / `screens`** – easy managing of GNU screen sessions.\n  ```fish\n  scr NAME               # opens screen NAME - use for game consoles / irc / development servers\n  scr NAME log           # opens screen NAME - use for game consoles / irc / development servers with logging under ~/Documents/logs\n  screens                # list all screens running that you can join with 'scr' or detach them with Ctrl-A → D\n  ```\n  \n- **`irc`** – shortcut to IRC session with Irssi on a network of your choosing.\n  ```fish\n  irc                    # opens irc server connection, use with screen to keep chats open that you can return to\n  ```\n\n- **`stay \u003ccommand\u003e`** – run a command detached from the terminal (`nohup` wrapper).\n- **`ls`** / **`treelist`** – aliased to `eza --icons` and `tree -a -I '.git'` for glyph-rich directory views.\n\n\n---\n\n## Quick start\n\n```bash\ngit clone https://github.com/seinfold/shellfish.git ~/shellfish\ncd ~/shellfish\nchmod +x shellfish.sh\n./shellfish.sh\n```\n\n### Optional installs\n\n1. **GitHub support** – guided prompts store your GitHub username for `gitget`, optionally install a sample `~/.ssh/config`, and create `~/.ssh/id_ed25519_github`; type `abort` anytime to skip and remember to run `gh auth login`.\n1. **irssi** – choose whether to install the IRC client; if enabled you can pick a default network (ircnet/libera/oftc/efnet/custom).\n1. **SSH shortcuts** – guided prompts capture alias/server/user/port (type `abort` to skip), update `~/.ssh/config`, and generate matching lowercase/uppercase Fish helpers in `~/.config/fish/functions/ssh_shortcuts.fish`.\n\n\nShellfish automatically replaces your `~/.bashrc` - but don't worry it will create backups that you can revert to by just running the script again.\n\n---\n\n## After installation\n\n1. **Add your GitHub key** (if generated):\n   ```bash\n   cat ~/.ssh/id_ed25519_github.pub\n   ```\n   Paste into GitHub → Settings → SSH and GPG keys.\n\n2. **Authenticate GitHub CLI** (if enabled):\n   ```bash\n   gh auth login --hostname github.com --git-protocol ssh --web\n   ```\n\n3. **Open a fresh Fish terminal**\n\n4. **Set a default GitHub user for gitget** (if you skipped it during setup):\n   ```bash\n   fish -c 'set -Ux GITGET_GITHUB_USER \u003cusername\u003e'\n   ```\n## Current known risks and problems\n\n1. **Bash path linkings to installed apt packages might have inconsistencies** - Under repair, this basically means that you might need to re-install some tool via apt so that they work with Fish terminal\n2. **Installer doesn't fully uninstall** - if you run the installer again to revert changes, it will still leave all installed packages. Check /documents for User Guide that has single command to run to remove all installed packages, modify it so that you wont remove anything you already had\n\n---\n\n## Optional follow-ups\n\n- Tweak the generated `~/.config/fish/functions/ssh_shortcuts.fish` entries anytime or rerun the installer to add more shortcuts.\n- Bind `Ctrl+S` to the screen list: `bind \\cs 'screens\\n'` in `config.fish`.\n\n## Backups\n\nShellfish automatically backs up any file it changes with a timestamped `.bak`. When you rerun the installer it detects those backups and offers to restore the previous state before applying new settings.\n\n---\n\nASCII art credit: based on classic “\u003e\u003c((°\u003e” fish tweaked for Shellfish.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseinfold%2Fshellfish","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseinfold%2Fshellfish","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseinfold%2Fshellfish/lists"}