Telegram in your terminal, IRC style (BitchX / irssi): every chat in one scrollback, a window per chat, QR login, an encrypted local cache.
-
Installer script, Linux and macOS (amd64, arm64): installs the latest release into
~/.local/bin, checked against itsSHA256SUMS, no sudo.curl -fsSL https://github.com/t0d0r/lazygram/releases/latest/download/install.sh | sh -
Homebrew:
brew install t0d0r/tap/lazygram
-
Arch Linux / Omarchy:
makepkg -siinpackaging/omarchy/lazygram(docs/arch-omarchy.md). -
From source:
make install(needs Go).
Piping into sh runs the script unseen and trusts this repository's
latest release; the checksum catches a broken download, not a malicious
release. To read and check it first:
curl -fsSLO https://github.com/t0d0r/lazygram/releases/latest/download/install.sh
curl -fsSLO https://github.com/t0d0r/lazygram/releases/latest/download/SHA256SUMS
shasum -a 256 -c SHA256SUMS --ignore-missing # sha256sum on Linux
less install.sh && sh install.shReleases from v0.4.22 on are built by GitHub Actions and carry signed
SLSA build provenance. To check that a tarball came from this
repository's Release workflow, run for tag vX.Y.Z:
gh attestation verify lazygram-vX.Y.Z-linux-amd64.tar.gz --repo t0d0r/lazygram \
--signer-workflow t0d0r/lazygram/.github/workflows/release.yml \
--source-ref refs/tags/vX.Y.Z --deny-self-hosted-runnersSECURITY.md explains what that proves and how to report a vulnerability.
LAZYGRAM_VERSION=vX.Y.Z pins a release (v0.4.22 or later; earlier
releases are no longer published), LAZYGRAM_PREFIX changes the
prefix. Later: lazygram update (or brew upgrade; an Arch package
built with makepkg: git pull and makepkg -si again, or pacman -Syu
once lazygram is in pkgs.omarchy.org).
lazygram login # scan the QR code: Telegram > Settings > Devices > Link Desktop Device
lazygram # read your chats
lazygram demo # try it with invented data, no account needed- Type a message and press Ctrl-X to send; Enter runs
/commands. /helplists the commands,/keysthe shortcuts;/listpicks a chat,/win Nor Alt-N switches windows, Tab completes.- Window 0 shows what arrives from every chat; a window opens for each chat with news.
- Windows per chat,
Act:list, Tab completion, a remembered layout /sendfiles;/openpictures inside the terminal or links in the browser; bot buttons with/press- Encrypted cache and attachment vault; read receipts off unless you ask
- Search and names in Cyrillic or its Latin transliteration
- Typing indicators, mouse clicks and drag-to-copy, 12 colour themes
- One process per state directory, self-update checked against
SHA256SUMS
- docs/usage.md: every command and key, account linking, your own Telegram API id, updating
- docs/arch-omarchy.md, docs/clipboard.md, specs/
make check # gofmt, vet, golangci-lint, shellcheck, tests
make smoke # print one demo screen and exit
make help # every targetReleases: specs/release.md. License: BSD 2-Clause, see LICENSE.
