Quiero compartir con vosotros una solución que he creado para simplificar la instalación de Porymap en sistemas Linux. Si usas Linux como yo y has encontrado que el proceso de instalación desde el repositorio oficial no es tan claro como quisieras, ¡este script de Bash podría ser justo lo que necesitas!
Debian y derivados (Ubuntu, Linux Mint...)
Basta con guardar el script como
Debian y derivados (Ubuntu, Linux Mint...)
Bash:
#!/bin/bash
# Replace with the current version
tag="5.1.1"
qt6pkg="qt6-base-dev"
qt5pkg="qt5-default"
qt6declarativepkg="qt6-declarative-dev"
qt5declarativepkg="qtdeclarative5-dev"
# Check needed packages
checkpkg=$(dpkg-query -W -f='${Status}' build-essential 2>/dev/null | grep -c "ok installed")
if [ $checkpkg -eq 0 ];
then
echo "Installing build-essential..."
sudo apt-get install build-essential
else
echo "build-essential already installed"
fi
checkpkg=$(dpkg-query -W -f='${Status}' git 2>/dev/null | grep -c "ok installed")
if [ $checkpkg -eq 0 ];
then
echo "Installing git..."
sudo apt-get install git
else
echo "git already installed"
fi
# Check and select QT packages
qtversion=6
checkpkg=$(dpkg-query -W -f='${Status}' $qt6pkg 2>/dev/null | grep -c "ok installed")
if [ $checkpkg -eq 0 ];
then
if ! sudo apt-get -s install $qt6pkg > /dev/null 2>&1
then
qtversion=5
if ! sudo apt-get -s install $qt5pkg > /dev/null 2>&1
then
echo "Error: System not compatible."
exit 1
fi
echo "Installing QT5..."
sudo apt-get install $qt5pkg
sudo apt-get install $qt5declarativepkg
else
echo "$qt5pkg already installed"
fi
echo "Installing QT6..."
sudo apt-get install $qt6pkg
sudo apt-get install $qt6declarativepkg
else
echo "$qt6pkg already installed"
fi
# Clone the source code
cd /usr/local
if [ ! -d "/usr/local/porymap" ]
then
sudo git clone https://github.com/huderlem/porymap
fi
sudo git config --global --add safe.directory /usr/local/porymap
cd porymap
sudo git checkout "tags/$tag"
# Build the code
if [ $qtversion -eq 5 ];
then
sudo qmake
else
sudo qmake6
fi
sudo make
# Check the installation had succeeded
if [ -f "/usr/local/porymap/porymap" ]
then
echo "porymap installation ended succesfully"
else
echo "porymap installation failed"
exit 1
fi
# Create a launcher shortcut
sudo su
cd "/usr/share/applications/"
output=porymap.desktop
sudo printf "[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=/usr/local/porymap/porymap
Categories=Development
Name=porymap
Comment=Map editor for pokeemerald, pokefirered and pokeruby
Icon=/usr/local/porymap/resources/icons/porymap.icns" > $output
install-porymap.sh
y ejecutarlo en tu terminal favorita, escribiendo la contraseña cuando se te pida (hay que instalar paquetes, así que te la pedirá al menos una vez).
Código:
user@debian:~$ ./install-porymap.sh
Última edición: