docs(readme): replace process substitution with pipe syntax in install commands
- swap `sudo bash <(curl …)` for `curl … | sudo bash -s -- setup` to fix `/dev/fd/63` errors under sudo - add callout explaining why process substitution fails with `sudo bash` - update one-shot command to `curl … | bash` and clarify auto-elevation behavior - fix version-reporting note to reflect pipe mode instead of process substitution
This commit is contained in:
@@ -5,15 +5,17 @@ Linux multi-tool — a Bash menu and CLI for installing common server apps and r
|
|||||||
## Quick install
|
## Quick install
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo bash <(curl -fsSL https://git.hyko.cx/hykocx/lxs/raw/branch/main/lxs.sh) setup
|
curl -fsSL https://git.hyko.cx/hykocx/lxs/raw/branch/main/lxs.sh | sudo bash -s -- setup
|
||||||
```
|
```
|
||||||
|
|
||||||
This downloads the repo tarball, installs every file to `/usr/local/share/lxs/`, and creates the symlink `/usr/local/bin/lxs`. After install, sub-scripts run from disk — no network calls per command.
|
This downloads the repo tarball, installs every file to `/usr/local/share/lxs/`, and creates the symlink `/usr/local/bin/lxs`. After install, sub-scripts run from disk — no network calls per command.
|
||||||
|
|
||||||
Or run once without installing:
|
> Avoid `sudo bash <(curl …)` — process substitution opens `/dev/fd/63` in your shell, which the root `bash` spawned by `sudo` cannot read (`bash: /dev/fd/63: No such file or directory`). Pipe through `sudo bash -s --` instead.
|
||||||
|
|
||||||
|
Or run once without installing (no `sudo` needed for the entrypoint — sub-scripts auto-elevate when they need root):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
bash <(curl -fsSL https://git.hyko.cx/hykocx/lxs/raw/branch/main/lxs.sh)
|
curl -fsSL https://git.hyko.cx/hykocx/lxs/raw/branch/main/lxs.sh | bash
|
||||||
```
|
```
|
||||||
|
|
||||||
When a new version is published in this repo, the interactive menu shows a *"Nouvelle version disponible"* banner; run `lxs update` to pull all updated files.
|
When a new version is published in this repo, the interactive menu shows a *"Nouvelle version disponible"* banner; run `lxs update` to pull all updated files.
|
||||||
@@ -73,7 +75,7 @@ After `lxs setup`, the full tree lives in `/usr/local/share/lxs/` and sub-script
|
|||||||
|
|
||||||
### Releasing a new version
|
### Releasing a new version
|
||||||
|
|
||||||
Bump only the [VERSION](VERSION) file — `lxs.sh` reads it at startup. Installed clients also fetch this file (cached 24 h in `~/.cache/lxs/`) to detect updates. In one-shot mode (`bash <(curl …lxs.sh)`) the file isn't readable from the process substitution, so `lxs version` reports `dev`.
|
Bump only the [VERSION](VERSION) file — `lxs.sh` reads it at startup. Installed clients also fetch this file (cached 24 h in `~/.cache/lxs/`) to detect updates. In one-shot mode (`curl … | bash`) the file isn't on disk next to the script, so `lxs version` reports `dev`.
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user