The latest stable release, OSCAR v1.7.1, is officially supported on Windows, macOS, and Linux (Debian, Ubuntu, Fedora). If you are using a different operating system, we do not provide support and cannot guarantee compatibility. However, if you still wish to try installing OSCAR, you will need:
It is possible to install OSCAR and its cornerstones only once on your system,
and to let several people use this installation. For that, the following bash scripts can be used.
oscar_systemwide_install),
adjust the paths for the variables julia_for_oscar and central_depot,
and then run the script in a terminal (with administrator rights).
#!/bin/bash
set -e
# Specify the intended version of Julia.
julia_for_oscar=/usr/local/bin/julia
# Specify the intended location of the central OSCAR installation.
central_depot=/opt/oscar/depot
# Set the Julia variables that control the location of packages.
# (Do not admit the current user's own depot path.)
export JULIA_DEPOT_PATH=${central_depot}:
# Clean the environment, such that the already centrally installed packages
# get replaced by newer versions if necessary.
# (This is safer than calling `Pkg.update()` in Julia.)
# Then let Julia install and precompile the packages.
# You can customize the list below to install additional Julia packages for all users.
${julia_for_oscar} \
--project=@v#.#-oscar \
--startup-file=no \
-e 'using Pkg;
rm("'${central_depot}'/environments/v$(VERSION.major).$(VERSION.minor)/Project.toml", force=true)
Pkg.update()
Pkg.add("Oscar")
Pkg.add("Hecke")
Pkg.add("GAP")
Pkg.add("Singular")
Pkg.add("Polymake")
Pkg.add("Nemo")
Pkg.add("AbstractAlgebra")
Pkg.instantiate()
exit()
'oscar in their terminal.
oscar),
adjust the paths for the variables julia_for_oscar and central_depot,
and then put that file into a directory on your `PATH`. Make sure it is
executable (invoke `chmod` as needed)
#!/bin/sh
set -e
# Specify the intended version of Julia.
julia_for_oscar=/usr/local/bin/julia
# Specify the intended location of the central OSCAR installation.
central_depot=/opt/oscar/depot
# Admit the path with the central installation.
export JULIA_DEPOT_PATH=:${central_depot}
export JULIA_LOAD_PATH=":@v#.#-oscar"
#
echo "+------------------------------------------------+"
echo "| To complete loading OSCAR, enter 'using Oscar' |"
echo "| into the following julia> prompt. |"
echo "| |"
echo "| You can also only load GAP, Nemo, Hecke, etc. |"
echo "+------------------------------------------------+"
# Call Julia.
exec ${julia_for_oscar} "$@"