Skip to content

02. Compatibility Details

Mikhail Patricio Ortiz-Lunyov edited this page Aug 18, 2023 · 7 revisions

Shell Compatibility

The script is executed using the OS' default shell (See Technical Details page for more information).

Although this script is written with the intention of maximizing compatibility between different UNIX systems, across different environments, this script is unfortunately not compatible with absolutely every UNIX system.

Among other things, the primary issue is Shell compatibility (due to different Syntaxes), despite being created with as much portability and potential POSIX compliance as possible (See Technical Details page for more information).

Compatible shells

As listed on the README file, compatible and tested shells include:

  • BASH
  • SH
  • ZSH
  • KSH
  • ASH
  • DASH

This makes the program compatible with most modern UNIX systems, including Linux, BSD, and even MacOS.

IN-Compatible shells

But this leaves out older, potentially more exotic UNICES.

Additionally, this denies compatibility with non-UNIX systems, most notably Microsoft Windows (although this script might work with Windows Subsystem for Linux, but as of March 10th 2023 this has not yet been tested).

  • POWERSHELL
    • This is especially important to know, since Powershell can be installed on Linux and MacOS (but not BSD).
    • A Powershell edition of Update_Full-UNIX is currently planned for development.
  • CSH
  • TCSH
    • Above points are useful, considering that TCSH is an enhanced version of the C Shell.
  • FISH
  • Other, more unusual/niche shells
    • Although different editions of Update_Full might be developed in the future, they are NOT a priority (no intention of devaluing the developers of those projects).

Dependencies

This script does not have many dependencies, and any that exist usually comes pre-installed in most UNIX systems. Nevertheless, here is the list of external programs (beyond the package managers) that the script may call when working (which themselves may have their own dependencies):

  • iputils
    • Used for ping
  • coreutils or busybox
    • Used for cat, cut and rm (among other things)
  • curl or wget
    • Used for Checksum-Checker function
    • As of version 1.5.4 (August 17th, 2023), there is a dependency checker that checks that either CURl or WGET is installed. If neither are present, than the script will shut down, and request that either CURL or WGET is installed.
Clone this wiki locally