trying
This commit is contained in:
parent
8717dabd46
commit
a0ed04b554
1 changed files with 60 additions and 0 deletions
60
setup
Executable file
60
setup
Executable file
|
@ -0,0 +1,60 @@
|
|||
#!/bin/bash
|
||||
|
||||
COMPILER=$2
|
||||
SSL=$3
|
||||
|
||||
DISTRO=$(grep -E '^NAME=' /etc/os-release |
|
||||
cut -d'=' -f2 |
|
||||
tr -d '"')
|
||||
|
||||
# Installs a package using the native OS's package manager.
|
||||
install_pkg() {
|
||||
case $DISTRO in
|
||||
"Ubuntu")
|
||||
"Debian GNU/Linux" )
|
||||
apt install -y $1
|
||||
;;
|
||||
"Arch Linux" )
|
||||
pacman -Syu --noconfirm $1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
install_compiler() {
|
||||
echo '::group::Setting up a compiler'
|
||||
case $DISTRO in
|
||||
"Ubuntu" )
|
||||
"Debian GNU/Linux" )
|
||||
install_pkg build-essential
|
||||
[ $COMPILER = 'clang' ] && install_pkg clang
|
||||
|
||||
CC=gcc
|
||||
[ $COMPILER = 'clang' ] && CC=clang
|
||||
;;
|
||||
"Arch Linux" )
|
||||
install_pkg $COMPILER make
|
||||
CC=gcc
|
||||
[ $COMPILER = 'clang' ] && CC=clang
|
||||
esac
|
||||
echo '::endgroup::'
|
||||
}
|
||||
install_ssl() {
|
||||
echo '::group::Setting up SSL'
|
||||
case $DISTRO in
|
||||
"Ubuntu" )
|
||||
"Debian GNU/Linux" )
|
||||
# Doesn't seem like Debian got LibreSSL
|
||||
[ $SSL = 'libressl' ] && echo "::error ::LibreSSL is not on Debian"
|
||||
install_pkg openssl
|
||||
;;
|
||||
"Arch Linux" )
|
||||
install_pkg $SSL
|
||||
esac
|
||||
echo '::endgroup::'
|
||||
}
|
||||
|
||||
# Install the compiler and SSL
|
||||
install_compiler
|
||||
install_ssl
|
||||
|
||||
echo "compiler=$CC" >> "$GITHUB_OUTPUT"
|
Loading…
Reference in a new issue