-
Notifications
You must be signed in to change notification settings - Fork 2
Small shell script to install and update Gauche Scheme easily
License
practical-scheme/get-gauche
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
NAME get-gauche.sh - Ensure Gauche availability SYNOPSIS get-gauche.sh [--system|--home|--current|--prefix PREFIX|--update] [--auto][--version VERSION][--check-only][--force][--list] [--skip-tests][--configure-args ARGS][--destdir DIR] [--uninstall] DESCRIPTION The `get-gauche.sh` script is a convenient way to ensure Gauche installed on the running platform. By default, it checks if the desired version of Gauche is already installed, and if not, download the tarball and install it. It can also be used with distributing Gauche applications. In the application's build or installation script, you can call get-gauche.sh, so that the user won't need to install Gauche separately. If --check-only option is given, the script only checks if Gauche has already installed but does not attempt to download and install. The installation location can be specified by --prefix, --system, --home, --update or --current option. These options are mutually exclusive. When none of these options is given, get-gauche.sh prompts the user to enter the location. (The location must be specified with --auto option.) If --force options is given, the script always downloads and installs Gauche, regardless of whether Gauche is already installed or not. By default, installed Gauche is searched in $PATH as well as the specified location. So, for example, if Gauche is installed under /usr and 'get-gauche.sh --home' is run, and if it finds /usr/bin/gosh and the version requirement is satisfied, it won't attempt to install Gauche unless --force option is given. If you want to ensure that desired Gauche is always installed under specified location, use --fixed-path option. If you don't have the write permission in the install destination, get-gauche.sh asks you if it can use sudo to install Gauche. You can use --sudo option to omit its asking. OPTIONS --auto When get-gauche.sh finds Gauche needs to be installed, it proceed to download and install without asking the user. By default, the user is asked before download begins. --check-only detect Gauche and report result, but not to attempt download and install. --configure-args ARGS Pass ARGS to `configure' script of Gauche. ARGS are passed as is. --current install Gauche under the current directory (e.g. ./bin/gosh for executable, ./{lib,share}/gauche-x.x/ for libraries, etc.) Equivalent to --prefix `pwd`. --destdir DIR set DESIDIR to DIR when run `male install'. This can be used to prepare a binary tarball. --fixed-path detect Gauche only under prefix (specified by --prefix, --system, --home or --current option). By default, get-gauche.sh also checks under directories in PATH. --force regardless of the result of version check, always download and install the specified version of Gauche. --home install Gauche under the user's home directory (e.g. $HOME/bin/gosh for executable, $HOME/{lib,share}/gauche-x.x/ for libraries, etc.) Equivalent to --preifx $HOME. --keep-builddir Do not remove build directory after installation. Useful for troubleshooting. Build directory is created under the current directory with a name 'build-YYYYMMDD_hhmmss.xxxxxx' where 'YYYYMMDD_hhmmss' is the timestamp and 'xxxxxx' is a random string. --list show valid Gauche versions for --version option and exit. No other operations are performed. --prefix PREFIX install Gauche under PREFIX. The gosh executable is in PREFIX/bin, binary libraries are in PREFIX/{lib,share}, etc. --skip-tests Skip running self-tests before installing, in the emergency case when you have to do so. DO NOT USE THIS, unless you know what you're doing. --sudo invoke 'make install' via sudo. Needed if you want to install Gauche where you don't have write permissions. You may be asked to type your password by sudo. --uninstall uninstall the version of Gauche which would've been installed if this option weren't given. The other versions of Gauche remains, if they exist. Note: This operation removes all the files of the specified version, but may keep empty directories created by installation. --update install Gauche under the same directory as the currently installed one. If no previous installation is found, get-gauche.sh prompts the user to type the directory. --system install Gauche under system directory. Equivalent to --prefix /usr. --version VERSION specify the desired version of Gauche. VERSION can be a version string (e.g. '0.9.5'), or either one of the following: * 'latest' : The latest official release * 'snapshot' : The latest "snapshot" release, usually suffixed with '-p1' or -p2', if it's newer than the latest release. Otherwise, the latest release. * 'bleeding' : The latest "bleeding-edge" sources, which is created daily automatically. Note that it may be unstable or even doesn't build. By default, 'latest' is assumed. EXAMPLES 1. The simplest way to install the latest release. The user will be asked install location. If there's already another Gauche installed, its prefix is presented as the default install location. $ get-gauche.sh 2. You want to have the latest release of Gauche. If the system already has it, you can use it. Otherwise, install under your home directory. $ get-gauche.sh --home 3. You want to update installed Gauche to the latest snapshot. The existing Gauche is installed in the system directory so you need to use sudo to install. $ get-gauche.sh --update --sudo --version snapshot 4. You distribute a Gauche application, and always want to use Gauche 0.9.4 under application-specific directory. You can run get-gauche.sh during the build or installation process of your application as follows: $ get-gauche.sh --version 0.9.4 --prefix /app/dir/gauche \ --fixed-path --auto The --fixed-path option ignores other Gauches installed under PATH but only checks /app/dir/gauche. If there's already 0.9.4 or later Gauche under that directory, you'll use it. Otherwise that version is downloaded and installed there.
About
Small shell script to install and update Gauche Scheme easily
Topics
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published