Repository navigation
feat: curl installer at hdtilt.com/install.sh - #21
Merged
Merged
Conversation
House rule: every product answers `curl -fsSL https://<domain>/install.sh | sh`. web/public/install.sh installs the `hdtilt` CLI with bun if present, or npm with Node >= 22.6, falling back to ~/.local rather than sudo. With bun and no node it writes a shim that runs the bin under bun. On a Linux desktop session (or with --desktop) it also installs the AppImage into ~/.local/share/hdtilt with a menu entry; --cli-only skips that. Re-running upgrades. The server serves .sh as text/x-sh; a server test covers /install.sh. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Merged
ralyodio
added a commit
that referenced
this pull request
Oct 13, 2026
Adds install.sh, generated from the W3BS npm CLI installer template, so `curl -fsSL https://hdtilt.com/install.sh | sh` installs the hdtilt command into ~/.local with no root. It uses the machine's Node if new enough, otherwise fetches an official Node build (checksum verified) into ~/.local/share/hdtilt, and writes uninstall.sh + manifest.json there for the W3BS catalog. The README install section now leads with the curl line. The site copy (web/public/install.sh) replaces the bun/npm -g installer from #21: that one stopped with "needs bun or Node" on a machine without Node, and had no uninstall. The desktop AppImage is no longer installed by the script; the README points to the releases page for it. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Every product serves
curl -fsSL https://<domain>/install.sh | sh(standing rule, 2026-10-12). hdtilt had no installer, so this adds one.web/public/install.sh(POSIX sh, never asks for root, re-running upgrades):CLI: installs with bun if present, otherwise with npm, which needs Node >= 22.6 to match
engines. When the npm global prefix is not writable, it installs into~/.local. Then it checks that the bin is on PATH.#!/usr/bin/env nodebin cannot start, so the script replaces it with a small shim that runshdtilt.jsunder bun.~/.bun/install/global/package.jsonwhen missing. Without that file,bun add -gwalks up and adds hdtilt to the firstpackage.jsonabove it. That happened to me in testing.Desktop: on a Linux desktop session (
DISPLAY,WAYLAND_DISPLAYorXDG_CURRENT_DESKTOP), or with--desktop, the script:hdtilt-<ver>.AppImagefor the latest release into~/.local/share/hdtilt/~/.local/bin/hdtilt-desktop~/.local/share/applications/hdtilt.desktopand an icon--cli-onlyskips this. On macOS it points to the release page for the dmg.src/server/server.js:.shis served astext/x-sh.test/server.test.js: checks that/install.shreturns 200, has typetext/x-sh, and starts with#!/bin/sh.README: the Install section leads with the curl line.
Tested on dev2:
sh -nanddash -npass.~/.local/bin. bun with no node installed the shim.--desktopdownloaded a 134 MB AppImage, created the menu entry and linkedhdtilt-desktop. In every casehdtilt --versionand--helpran.bun run lint,bun run buildandbun testpass (58 pass, 0 fail).Note: the published npm
hdtilt@0.2.11reports--versionas0.2.10. #17 fixedsrc/version.jsafter that publish, so the next release corrects it.🤖 Generated with Claude Code