diff --git a/README.md b/README.md index ae37036..3c6471c 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ # compile -scripts que uso para compilar algunos programas en diferentes distros de GNU+Linux \ No newline at end of file +scripts que uso para compilar algunos programas en diferentes distros de GNU+Linux. diff --git a/dosbox-x.sh b/dosbox-x.sh new file mode 100755 index 0000000..f769784 --- /dev/null +++ b/dosbox-x.sh @@ -0,0 +1,61 @@ +#!/bin/bash +# Fanta +# Script to compile the most recent dosbox-x version on diferent GNU+Linux distros. +# Script para compilar la versión más reciente de dosbox-x en diferentes distros GNU+Linux + +d="/tmp/dosbox-x" + +if [ "$(whoami)" != "root" ]; then + echo "[+] Checking root user" + echo -e "\e[31m\e[1m[NOT OK]\e[0m Run it with root please" && exit +fi + +# Arch Linux +if [ -f "/etc/arch-release" ]; then + pacman -Syu --noconfirm ; pacman -S git base-devel autoconf sdl sdl2 libpng automake gzip gcc ncurses opusfile alsa-lib sdl_net fluidsynth --noconfirm + git clone "https://github.com/joncampbell123/dosbox-x" $d ; cd $d + bash build-debug-sdl2 ; make install; sleep 2; rm -rf $d +fi + +# Debian 10 +cat /etc/issue | grep "Debian GNU/Linux 10" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install automake git gcc g++ make libncurses-dev nasm libsdl-net1.2-dev libsdl2-net-dev libpcap-dev fluidsynth libfluidsynth-dev libavdevice58 libavformat-dev libavcodec-dev libavcodec-extra libavcodec-extra58 libswscale-dev libfreetype6-dev libxkbfile-dev libxrandr-dev -y + git clone "https://github.com/joncampbell123/dosbox-x" $d ; cd $d + bash build-debug-sdl2 ; make install ; sleep 2; rm -rf $d +fi + +# Debian 11 +cat /etc/issue | grep "Debian GNU/Linux 11" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install automake git gcc g++ make libncurses-dev nasm libsdl-net1.2-dev libsdl2-net-dev libpcap-dev fluidsynth libfluidsynth-dev libavdevice58 libavformat-dev libavcodec-dev libavcodec-extra libavcodec-extra58 libswscale-dev libfreetype6-dev libxkbfile-dev libxrandr-dev -y + git clone "https://github.com/joncampbell123/dosbox-x" $d ; cd $d + bash build-debug-sdl2 ; make install ; sleep 2; rm -rf $d +fi + +# Debian 12 +cat /etc/issue | grep "Debian GNU/Linux 12" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install automake git gcc g++ make libncurses-dev nasm libsdl-net1.2-dev libsdl2-net-dev libpcap-dev fluidsynth libfluidsynth-dev libavdevice59 libavformat-dev libavcodec-dev libavcodec-extra libavcodec-extra59 libswscale-dev libfreetype6-dev libxkbfile-dev libxrandr-dev -y + git clone "https://github.com/joncampbell123/dosbox-x" $d ; cd $d + bash build-debug-sdl2 ; make install ; sleep 2; rm -rf $d +fi + +# Ubuntu 20.04.4 LTS +cat /etc/issue | grep "Ubuntu 20.04.4 LTS" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install automake git gcc g++ make libncurses-dev nasm libsdl-net1.2-dev libsdl2-net-dev libpcap-dev fluidsynth libfluidsynth-dev libavdevice58 libavformat-dev libavcodec-dev libavcodec-extra libavcodec-extra58 libswscale-dev libfreetype6-dev libxkbfile-dev libxrandr-dev -y + git clone "https://github.com/joncampbell123/dosbox-x" $d ; cd $d + bash build-debug-sdl2 ; make install ; rm -rf $d +fi + +# Ubuntu 22.04.1 LTS +cat /etc/issue | grep "Ubuntu 22.04.1 LTS" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install automake git gcc g++ make libncurses-dev nasm libsdl-net1.2-dev libsdl2-net-dev libpcap-dev fluidsynth libfluidsynth-dev libavdevice58 libavformat-dev libavcodec-dev libavcodec-extra libavcodec-extra58 libswscale-dev libfreetype6-dev libxkbfile-dev libxrandr-dev -y + git clone "https://github.com/joncampbell123/dosbox-x" $d ; cd $d + bash build-debug-sdl2 ; make install ; rm -rf $d +fi + +# OpenSUSE Leap 15.4 +cat /etc/os-release | grep -iE "openSUSE Leap 15.4" 1>/dev/null ; if [ "$?" -ne 1 ]; then + zypper refresh ; zypper in -y git gcc gcc-c++ make nasm libncurses* libSDL2_net* fluidsynth libpcap-devel automake ncurses-devel zlib-devel + git clone "https://github.com/joncampbell123/dosbox-x" $d ; cd $d + export LDFLAGS="-Wl,--copy-dt-needed-entries" + bash build-debug-sdl2 ; make install ; rm -rf $d +fi diff --git a/love.sh b/love.sh new file mode 100755 index 0000000..f7b7dc5 --- /dev/null +++ b/love.sh @@ -0,0 +1,75 @@ +#!/bin/bash +# Fanta +# Script para compilar love2d última versión en diferentes distros GNU Linux + +d="/tmp/love2d" + +if [ "$(whoami)" != "root" ]; then + echo "[+] Checking root user" + echo -e "\e[31m\e[1m[NOT OK]\e[0m Run it with root please" && exit +fi + +rm -rf $d ; mkdir -p $d +cd $d + + +# Debian 11 +cat /etc/issue | grep "Debian GNU/Linux 11" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt install -y git gcc g++ make cmake lua5.4 libgl1-mesa-dev libfreetype6-dev libmodplug-dev libopenal-dev libsdl2-dev libtheora-dev libvorbis-dev libmpg123-dev libluajit-5.1-dev + repositorio="https://github.com/love2d/love" + git clone "$repositorio" + cd love + lastVersion=$(git tag --list --sort=-taggerdate | tail -1) + cd .. + rm -rf love + git clone $repositorio -b $lastVersion + cd love + mkdir -p build + cd build + cmake .. + make -j$(nproc) + cp -pRv love /usr/local/bin/ + chmod +x /usr/local/bin/love + love +fi + +# Debian 12 +cat /etc/issue | grep "Debian GNU/Linux 12" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt install -y git gcc g++ make cmake lua5.4 libgl1-mesa-dev libfreetype6-dev libmodplug-dev libopenal-dev libsdl2-dev libtheora-dev libvorbis-dev libmpg123-dev libluajit-5.1-dev + + repositorio="https://github.com/love2d/love" + git clone "$repositorio" + cd love + lastVersion=$(git tag --list --sort=-taggerdate | tail -1) + cd .. + rm -rf love + git clone $repositorio -b $lastVersion + cd love + mkdir -p build + cd build + cmake .. + make -j$(nproc) + cp -pRv love /usr/local/bin/ + chmod +x /usr/local/bin/love + love +fi + +# Ubuntu 22.04.2 LTS +cat /etc/issue | grep "Ubuntu 22.04.2 LTS" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt install -y git gcc g++ make cmake lua5.4 libgl1-mesa-dev libfreetype6-dev libmodplug-dev libopenal-dev libsdl2-dev libtheora-dev libvorbis-dev libmpg123-dev libluajit-5.1-dev + repositorio="https://github.com/love2d/love" + git clone "$repositorio" + cd love + lastVersion=$(git tag --list --sort=-taggerdate | tail -1) + cd .. + rm -rf love + git clone $repositorio -b $lastVersion + cd love + mkdir -p build + cd build + cmake .. + make -j$(nproc) + cp -pRv love /usr/local/bin/ + chmod +x /usr/local/bin/love + love +fi diff --git a/mednafen.sh b/mednafen.sh new file mode 100755 index 0000000..4f15ff4 --- /dev/null +++ b/mednafen.sh @@ -0,0 +1,72 @@ +#!/bin/bash +# Fanta +# Script para compilar mednafen en diferentes distros GNU Linux. + +d="/tmp/mednafen" + +if [ "$(whoami)" != "root" ]; then + echo "[+] Checking root user" + echo -e "\e[31m\e[1m[NOT OK]\e[0m Run it with root please" && exit +fi + +rm -rf $d ; mkdir -p $d + +# Debian GNU/Linux 9 +cat /etc/issue | grep "Debian GNU/Linux 9" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt install -y libasound2-dev libflac-dev libsdl2-dev gcc make zlib1g-dev build-essential pkg-config + lastVersion=$(wget -q "https://mednafen.github.io/releases" -O - | tr "<" "\n" | grep -i "tar.xz" | grep -v "server" | grep -iv "unstable" | head -1 | cut -d "\"" -f 2) + lastVersionNameFile=$(echo "$lastVersion" | cut -d "/" -f 4) + lastVersionUrl="https://mednafen.github.io$lastVersion" + wget -q "$lastVersionUrl" -O $d/$lastVersionNameFile + cd $d + tar xfvJ $lastVersionNameFile + cd mednafen + ./configure --enable-debugger + make -j$(nproc) + make install +fi + +# Debian GNU/Linux 11 +cat /etc/issue | grep "Debian GNU/Linux 11" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt install -y libasound2-dev libflac-dev libsdl2-dev gcc make zlib1g-dev build-essential pkg-config + lastVersion=$(wget -q "https://mednafen.github.io/releases" -O - | tr "<" "\n" | grep -i "tar.xz" | grep -v "server" | grep -iv "unstable" | head -1 | cut -d "\"" -f 2) + lastVersionNameFile=$(echo "$lastVersion" | cut -d "/" -f 4) + lastVersionUrl="https://mednafen.github.io$lastVersion" + wget -q "$lastVersionUrl" -O $d/$lastVersionNameFile + cd $d + tar xfvJ $lastVersionNameFile + cd mednafen + ./configure --enable-debugger + make -j$(nproc) + make install +fi + +# Debian GNU/Linux 12 +cat /etc/issue | grep "Debian GNU/Linux 12" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt install -y libasound2-dev libflac-dev libsdl2-dev gcc make zlib1g-dev build-essential pkg-config + lastVersion=$(wget -q "https://mednafen.github.io/releases" -O - | tr "<" "\n" | grep -i "tar.xz" | grep -v "server" | grep -iv "unstable" | head -1 | cut -d "\"" -f 2) + lastVersionNameFile=$(echo "$lastVersion" | cut -d "/" -f 4) + lastVersionUrl="https://mednafen.github.io$lastVersion" + wget -q "$lastVersionUrl" -O $d/$lastVersionNameFile + cd $d + tar xfvJ $lastVersionNameFile + cd mednafen + ./configure --enable-debugger + make -j$(nproc) + make install +fi + +# Ubuntu 22.04.1 LTS +cat /etc/issue | grep "Ubuntu 22.04.1 LTS" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt install -y libasound2-dev libflac-dev libsdl2-dev gcc make zlib1g-dev build-essential pkg-config + lastVersion=$(wget -q "https://mednafen.github.io/releases" -O - | tr "<" "\n" | grep -i "tar.xz" | grep -v "server" | grep -iv "unstable" | head -1 | cut -d "\"" -f 2) + lastVersionNameFile=$(echo "$lastVersion" | cut -d "/" -f 4) + lastVersionUrl="https://mednafen.github.io$lastVersion" + wget -q "$lastVersionUrl" -O $d/$lastVersionNameFile + cd $d + tar xfvJ $lastVersionNameFile + cd mednafen + ./configure --enable-debugger + make -j$(nproc) + make install +fi diff --git a/qemu.sh b/qemu.sh new file mode 100755 index 0000000..95441f5 --- /dev/null +++ b/qemu.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# Fanta +# Script to compile the most recent qemu version on diferent GNU+Linux distros. +# Script para compilar la versión más reciente de qemu en diferentes distros GNU+Linux + +d="/tmp/qemu" + +if [ "$(whoami)" != "root" ]; then + echo "[+] Checking root user" + echo -e "\e[31m\e[1m[NOT OK]\e[0m Run it with root please" && exit +fi + +# Debian 12 +cat /etc/issue | grep "Debian GNU/Linux 12" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt remove qemu* --purge -y ; apt install make git bison python3 python3-pkgconfig ninja-build gcc libvdeplug-dev libvte-2.91-dev libxen-dev liblzo2-dev pkg-config libglib2.0-dev libpixman-1-dev libdw-dev libudev-dev libfuse-dev libpmem-dev sparse libdaxctl-dev libgcrypt20-dev libgvnc-1.0-0 acpica-tools python3-sphinx python3-sphinx-rtd-theme libssh-dev sysprof libglusterfs-dev qemu-keymaps libtasn1-6-dev libcrypto++-dev nettle-dev nettle-bin libcapstone-dev libiscsi-dev libnfs-dev libtasn1-6-dev libbpf-dev libsnappy-dev libseccomp-dev libbz2-dev liblzf-dev libnuma-dev libzstd-dev libusb-dev libusb-1.0-0-dev libvirglrenderer-dev libcap-ng-dev libcurl4-openssl-dev libsdl2-dev libsdl2-image-dev libslirp-dev libpam0g-dev libsasl2-dev sndio-tools multipath-tools liburing-dev libghc-nettle-dev libcmocka-dev mingw-w64-x86-64-dev mingw-w64-common mingw-w64 cmake libfuse3-dev libu2f-host-dev libu2f-server-dev libjson-c-dev gcovr libpam-u2f libcpuinfo-dev python3-venv -y + git clone --recursive https://git.qemu.org/git/qemu.git $d ; cd $d + ./configure --target-list=x86_64-softmmu --enable-block-drv-whitelist-in-tools --enable-strip --enable-debug-tcg --enable-gcov --enable-gprof --enable-membarrier --disable-fuzzing --enable-modules --enable-qom-cast-debug --enable-lto --enable-debug + make -j$(nproc) + make install + qemu-system-x86_64 --version +fi diff --git a/scummvm.sh b/scummvm.sh new file mode 100755 index 0000000..6a7b654 --- /dev/null +++ b/scummvm.sh @@ -0,0 +1,69 @@ +#!/bin/bash +# Fanta +# Script bash para compilar la última versión de scummvm en distros GNU+Linux + +d="/tmp/scummvm" + +if [ "$(whoami)" != "root" ]; then + echo "[+] Checking root user" + echo -e "\e[31m\e[1m[NOT OK]\e[0m Run it with root please" && exit +fi + +# Ubuntu 20.04.4 LTS +cat /etc/issue | grep "Ubuntu 20.04.4 LTS" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install -y git make gcc g++ libsdl2-dev nasm libsdl2-net-dev liba52-dev libjpeg-turbo8-dev libmpeg2-4-dev libogg-dev libvorbis-dev libflac-dev libmad0-dev libpng-dev libtheora-dev libfaad-dev libfluidsynth-dev libfreetype6-dev zlib1g-dev libfribidi-dev libgif-dev libglew-dev libcurl4-openssl-dev libgtk-3-dev libspeechd-dev libsndio-dev libunity-dev + git clone -b master --depth 1 "https://github.com/scummvm/scummvm.git" $d ; cd $d + ./configure --enable-all-engines --disable-discord --enable-plugins --enable-profiling + make clean ; make -j$(nproc); make install +fi + +# Ubuntu 22.04.1 LTS +cat /etc/issue | grep "Ubuntu 22.04.1 LTS" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install -y git make gcc g++ libsdl2-dev nasm libsdl2-net-dev liba52-dev libjpeg-turbo8-dev libmpeg2-4-dev libogg-dev libvorbis-dev libflac-dev libmad0-dev libpng-dev libtheora-dev libfaad-dev libfluidsynth-dev libfreetype6-dev zlib1g-dev libfribidi-dev libgif-dev libglew-dev libcurl4-openssl-dev libgtk-3-dev libspeechd-dev libsndio-dev libunity-dev + git clone -b master --depth 1 "https://github.com/scummvm/scummvm.git" $d ; cd $d + ./configure --enable-all-engines --disable-discord --enable-plugins --enable-profiling + make clean ; make -j$(nproc); make install +fi + +# Ubuntu 22.04.2 LTS +cat /etc/issue | grep "Ubuntu 22.04.2 LTS" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install -y git make gcc g++ libsdl2-dev nasm libsdl2-net-dev liba52-dev libjpeg-turbo8-dev libmpeg2-4-dev libogg-dev libvorbis-dev libflac-dev libmad0-dev libpng-dev libtheora-dev libfaad-dev libfluidsynth-dev libfreetype6-dev zlib1g-dev libfribidi-dev libgif-dev libglew-dev libcurl4-openssl-dev libgtk-3-dev libspeechd-dev libsndio-dev libunity-dev + git clone -b master --depth 1 "https://github.com/scummvm/scummvm.git" $d ; cd $d + ./configure --enable-all-engines --disable-discord --enable-plugins --enable-profiling + make clean ; make -j$(nproc); make install +fi + +# Debian 9 +cat /etc/issue | grep "Debian GNU/Linux 9" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install -y g++ make git nasm libsdl2-dev libsdl2-net-dev liba52-dev libjpeg62-turbo-dev libmpeg2-4-dev libogg-dev libvorbis-dev libflac-dev libmad0-dev libpng-dev libtheora-dev libfaad-dev libfluidsynth-dev libfreetype6-dev zlib1g-dev libfribidi-dev libgif-dev libglew-dev libcurl4-openssl-dev libgtk-3-dev libspeechd-dev libsndio-dev + git clone -b master --depth 1 "https://github.com/scummvm/scummvm.git" $d ; cd $d + ./configure --enable-all-engines --disable-discord --enable-plugins --enable-profiling + make clean ; make -j$(nproc); make install +fi + +# Debian 10 +cat /etc/issue | grep "Debian GNU/Linux 10" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install -y g++ make git nasm libsdl2-dev libsdl2-net-dev liba52-dev libjpeg62-turbo-dev libmpeg2-4-dev libogg-dev libvorbis-dev libflac-dev libmad0-dev libpng-dev libtheora-dev libfaad-dev libfluidsynth-dev libfreetype6-dev zlib1g-dev libfribidi-dev libgif-dev libglew-dev libcurl4-openssl-dev libgtk-3-dev libspeechd-dev libsndio-dev + git clone -b master --depth 1 "https://github.com/scummvm/scummvm.git" $d ; cd $d + ./configure --enable-all-engines --disable-discord --enable-plugins --enable-profiling + make clean ; make -j$(nproc); make install +fi + +# Debian 11 +cat /etc/issue | grep "Debian GNU/Linux 11" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install -y g++ make git nasm libsdl2-dev libsdl2-net-dev liba52-dev libjpeg62-turbo-dev libmpeg2-4-dev libogg-dev libvorbis-dev libflac-dev libmad0-dev libpng-dev libtheora-dev libfaad-dev libfluidsynth-dev libfreetype6-dev zlib1g-dev libfribidi-dev libgif-dev libglew-dev libcurl4-openssl-dev libgtk-3-dev libspeechd-dev libsndio-dev + git clone -b master --depth 1 "https://github.com/scummvm/scummvm.git" $d ; cd $d + ./configure --enable-all-engines --disable-discord --enable-plugins --enable-profiling + make clean ; make -j$(nproc); make install +fi + +# Debian 12 +cat /etc/issue | grep "Debian GNU/Linux 12" 1>/dev/null ; if [ "$?" -ne 1 ]; then + apt update -y ; apt install -y g++ make git nasm libsdl2-dev libsdl2-net-dev liba52-dev libjpeg62-turbo-dev libmpeg2-4-dev libogg-dev libvorbis-dev libflac-dev libmad0-dev libpng-dev libtheora-dev libfaad-dev libfluidsynth-dev libfreetype6-dev zlib1g-dev libfribidi-dev libgif-dev libglew-dev libcurl4-openssl-dev libgtk-3-dev libspeechd-dev libsndio-dev + git clone -b master --depth 1 "https://github.com/scummvm/scummvm.git" $d ; cd $d + ./configure --enable-all-engines --disable-discord --enable-plugins --enable-profiling + make clean ; make -j$(nproc); make install +fi + + +