Repository navigation
feat(macos): one install for the fl command and the Finder menu, with clearer output - #27
Merged
Merged
Conversation
… clearer output The installer now links fl and flashlink in ~/.local/bin to the standalone binary the Quick Actions run, so one install gives Terminal and Finder the same fl with no Node dependency. It never overwrites an fl it did not create, reports when ~/.local/bin is not on PATH (with the line to add) or another fl comes first, and records the terminal's fl/node folders only when there is no standalone binary. Output is grouped into steps with colors on a terminal (NO_COLOR respected) and ends with tailored next steps. Uninstall removes only links that point at the binary. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Christian Catalan <crcatala@gmail.com>
… setup to development Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Christian Catalan <crcatala@gmail.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.
Summary
On a Mac, the curl installer is now the install: it gives you the
flcommand in Terminal and the Finder menu, from the same standalone binary. Before, it installed only the Finder side and keptfloffPATHon purpose (it assumed you hadflfrom npm), so after installing, typingflfound nothing.Changes
macos/install.sh~/.local/bin/fland~/.local/bin/flashlinkto~/.local/share/flashlink/bin/fl(the binary the Quick Actions already run). One copy, so Terminal and Finder are always the same version, and nothing depends on Node (a Node upgrade can't break it).fl/flashlinkit didn't create (reports "left alone"); refreshes its own links, including on a re-run without options, so re-running fixes a 0.0.2 install.flthe terminal will run: ✓ this one /~/.local/binisn't onPATH(prints the exact line for~/.zshrcor~/.bash_profile) / anotherflcomes first (names it and its version, suggestsnpm uninstall -g flashlink).fl/nodefolders (quick-action-path) only when there is no standalone binary (the clone/dev setup); the binary needs none of it.==> The fl command,==> Finder integration),✓/!lines with~/paths, colors only on a terminal (NO_COLORandTERM=dumbrespected), and a Next steps list that includesfl initonly while no endpoint is set and spells out the full path toflif it isn't onPATHyet. Problems go to stderr.flashlinkalias next to the binary (removed on upgrade).macos/uninstall.sh: also removes the two links, but only when they point at the binary.Docs:
docs/MACOS.mdrestructured around the one-command install (what goes where, after installing,fl: command not found, coexisting with npmfl, update/uninstall); the own-fl+ login-shell lookup moved to "From a clone (development)". README step 2 anddocs/CLI.mdnow lead with the Mac installer and keep npm for Linux. ARCHITECTURE and CHANGELOG (Unreleased) updated.macos/qa.shupdated for the new layout.Example output (on a terminal it's colored)
Testing
pnpm verifypasses (488 tests). New installer tests: onPATH; not onPATH(zsh and bash hints); anotherflfirst; foreign~/.local/bin/flfiles/links left alone by install and uninstall; re-run over the 0.0.2 layout; next steps with and without an endpoint; no color codes in piped output.bash --posix(macOS/bin/sh) and dash; under a pseudo-terminal: colors on,NO_COLOR=1: off.shellcheckclean on install, uninstall and qa.sh macos/install.sh --binary …or, after release, the curl command, plussh macos/qa.sh.🤖 Generated with Claude Code