update
This commit is contained in:
parent
cde17b7dc9
commit
ea76cc9ef2
7 changed files with 208 additions and 173 deletions
23
README.md
23
README.md
|
|
@ -16,6 +16,7 @@ or Nushell.
|
|||
- Load environment setup that is portable at login, such as Cargo's `env` file.
|
||||
- Provide common aliases and small interactive functions that are useful
|
||||
across supported Bourne-family shells.
|
||||
- Isolate Arch Linux commands from otherwise portable shell configuration.
|
||||
|
||||
## Boundaries
|
||||
|
||||
|
|
@ -23,7 +24,7 @@ The `profile` file must remain quiet, idempotent and safe for a POSIX shell to
|
|||
source during login. It must not print an alias catalogue, configure a prompt,
|
||||
perform interactive terminal operations or start background work.
|
||||
|
||||
Interactive shells should source `aliases.sh` from their own RC file. The
|
||||
Interactive shells should source `interactive.sh` from their own RC file. The
|
||||
login profile deliberately does not source it, because login profiles may also
|
||||
run in non-interactive sessions.
|
||||
|
||||
|
|
@ -34,18 +35,26 @@ belong in the separate `systemd` repository.
|
|||
## Files
|
||||
|
||||
- `profile`: portable login environment and PATH construction.
|
||||
- `aliases.sh`: common interactive aliases and helper functions.
|
||||
- `commands.tsv`: curated command descriptions and startup visibility.
|
||||
- `interactive.sh`: POSIX loader and manually curated alias reminder.
|
||||
- `aliases.sh`: common POSIX interactive aliases and helper functions.
|
||||
- `commands.sh`: command-catalogue display and validation functions.
|
||||
- `hosts.sh`: SSH destination listing function.
|
||||
- `platform/arch.sh`: Arch Linux applications, GNU options and Pacman/systemd
|
||||
integration, written with POSIX shell syntax.
|
||||
- `commands.tsv`: curated command descriptions and reminder visibility.
|
||||
- `commands.README.md`: format and maintenance instructions for `commands.tsv`.
|
||||
- `install.sh`: installs the `~/.profile` symlink.
|
||||
|
||||
## Alias portability
|
||||
|
||||
`aliases.sh` is intended to become POSIX-compatible for Bourne-family shells,
|
||||
but it currently contains some Bash-oriented constructs. Before another shell
|
||||
sources it, replace or isolate uses of `source`, `disown`, `local`, `echo -e`,
|
||||
Bash-style `cd --`, and the transitional `debug.log` alias name.
|
||||
The shared interactive files use POSIX shell syntax. Bash-only compatibility
|
||||
aliases—including names that are deliberately being retired—live in the Bash
|
||||
repository's `aliases.bash` instead.
|
||||
|
||||
External commands remain platform-specific by design: aliases for Pacman,
|
||||
systemd, GNU utilities and local applications target this Arch Linux setup.
|
||||
Syntax portability does not imply operating-system portability.
|
||||
|
||||
The Arch `update` function runs the local `archnews_wrap` Pacman workflow and,
|
||||
after a successful upgrade, requests a non-blocking refresh from the systemd
|
||||
user service `package-status-refresh.service`.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue