work in progress
This commit is contained in:
parent
2c19940ebb
commit
cab9290bb9
83
install.sh
83
install.sh
|
@ -3,58 +3,84 @@
|
||||||
# Version: 0.3
|
# Version: 0.3
|
||||||
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
||||||
########################################################################
|
########################################################################
|
||||||
{
|
{MY_PATH="`dirname \"$0\"`" # relative
|
||||||
|
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
||||||
|
ME="${0##*/}"
|
||||||
|
|
||||||
[ $(id -u) -eq 0 ] && echo "LANCEMENT root INTERDIT. Utilisez un simple utilisateur du groupe \"sudo\" SVP" && exit 1
|
[ $(id -u) -eq 0 ] && echo "LANCEMENT root INTERDIT. Utilisez un simple utilisateur du groupe \"sudo\" SVP" && exit 1
|
||||||
|
|
||||||
# MAIN #
|
# MAIN # SI AUCUNE CLEF DE STATION...
|
||||||
if [[ ! -f ~/.zen/secret.june ]];
|
if [[ ! -f ~/.zen/secret.june ]];
|
||||||
then
|
then
|
||||||
|
|
||||||
# Check requirements
|
# Check requirements
|
||||||
echo "AstrXbian installateur pour distributions DEBIAN et dérivées : LinuxMint (https://www.linuxmint.com/) ou XBIAN (https://xbian.org) recommandé"
|
echo "AstrXbian installateur pour distributions DEBIAN et dérivées : LinuxMint (https://www.linuxmint.com/) ou XBIAN (https://xbian.org) recommandées"
|
||||||
echo "Appuyez sur ENTRER pour commencer."; read TEST; [[ "$TEST" != "" ]] && echo "SORTIE"; exit 0 ## Ajouter confirmation à chaque nouvelle étape (+explications)
|
echo "Appuyez sur ENTRER pour commencer."; read TEST; [[ "$TEST" != "" ]] && echo "SORTIE"; exit 0 ## Ajouter confirmation à chaque nouvelle étape (+explications)
|
||||||
|
echo ; echo "Mise à jour des dépots de votre distribution..."
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
#sudo apt-get install git fail2ban inotify-tools curl net-tools libsodium* python3-dev python3-pip python3-setuptools python3-wheel python3-dotenv mpack libssl-dev libffi-dev -y
|
|
||||||
|
[[ "$USER" != "xbian" ]] &&\
|
||||||
|
for i in x11-utils xclip zenity handbrake*; do\
|
||||||
|
[ $(dpkg-query -W -f='${Status}' $i 2>/dev/null | grep -c "ok installed") -eq 0 ] &&\
|
||||||
|
echo ">>> Installation $i <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<";\
|
||||||
|
sudo apt install -y $i;
|
||||||
|
done
|
||||||
|
|
||||||
for i in git fail2ban inotify-tools curl net-tools libsodium* python3-dev python3-pip python3-setuptools python3-wheel python3-dotenv mpack libssl-dev libffi-dev; do
|
for i in git fail2ban inotify-tools curl net-tools libsodium* python3-dev python3-pip python3-setuptools python3-wheel python3-dotenv mpack libssl-dev libffi-dev; do
|
||||||
if [ $(dpkg-query -W -f='${Status}' $i 2>/dev/null | grep -c "ok installed") -eq 0 ]; then
|
if [ $(dpkg-query -W -f='${Status}' $i 2>/dev/null | grep -c "ok installed") -eq 0 ]; then
|
||||||
|
echo ">>> Installation $i <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"
|
||||||
sudo apt install -y $i
|
sudo apt install -y $i
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
#sudo apt-get install build-essential qrencode jq bc gawk ffmpeg sqlite dnsutils v4l-utils vlc mp3info musl-dev openssl* cargo detox httrack html2text ssmtp sudo -y
|
|
||||||
for i in build-essential qrencode jq bc file gawk yt-dlp ffmpeg sqlite dnsutils v4l-utils vlc mp3info musl-dev openssl* cargo detox nmap httrack html2text ssmtp imagemagick ttf-mscorefonts-installer libcurl4-openssl-dev; do
|
for i in build-essential qrencode jq bc file gawk yt-dlp ffmpeg sqlite dnsutils v4l-utils vlc mp3info musl-dev openssl* cargo detox nmap httrack html2text ssmtp imagemagick ttf-mscorefonts-installer libcurl4-openssl-dev; do
|
||||||
if [ $(dpkg-query -W -f='${Status}' $i 2>/dev/null | grep -c "ok installed") -eq 0 ]; then
|
if [ $(dpkg-query -W -f='${Status}' $i 2>/dev/null | grep -c "ok installed") -eq 0 ]; then
|
||||||
|
echo ">>> Installation $i <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"
|
||||||
sudo apt install -y $i
|
sudo apt install -y $i
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
|
[[ ! $(which kodi) && "$USER" != "xbian" ]] &&\
|
||||||
|
echo ">>> Installation Kodi + Vstream = VOTRE VIDEOTHEQUE ! <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<";\
|
||||||
|
sudo apt-get install kodi -y;\
|
||||||
|
${MY_PATH}/.install/kodi_uqload_downloader.sh
|
||||||
|
|
||||||
|
echo "## INSTALLATION OpenCV = 'IA Amicale' "
|
||||||
|
sudo apt-get install python3-opencv -y
|
||||||
|
|
||||||
## Correct PDF restrictions for imagemagick
|
## Correct PDF restrictions for imagemagick
|
||||||
|
echo "# Correction des droits export PDF imagemagick"
|
||||||
if [[ $(cat /etc/ImageMagick-6/policy.xml | grep PDF) ]]; then
|
if [[ $(cat /etc/ImageMagick-6/policy.xml | grep PDF) ]]; then
|
||||||
cat /etc/ImageMagick-6/policy.xml | grep -Ev PDF > /tmp/policy.xml
|
cat /etc/ImageMagick-6/policy.xml | grep -Ev PDF > /tmp/policy.xml
|
||||||
sudo cp /tmp/policy.xml /etc/ImageMagick-6/policy.xml
|
sudo cp /tmp/policy.xml /etc/ImageMagick-6/policy.xml
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[[ ! $(which kodi) && "$USER" != "xbian" ]] && sudo apt-get install kodi -y
|
|
||||||
sudo apt-get install python3-opencv -y ## INSTALLATION IA par reconnaissance d'images
|
|
||||||
[[ "$USER" != "xbian" ]] && sudo apt-get install x11-utils xclip zenity handbrake* -y
|
|
||||||
if [[ ! $(which apache2) ]]; then
|
if [[ ! $(which apache2) ]]; then
|
||||||
########################################################################
|
echo "########################################################################"
|
||||||
## INSTALL nginx + php + mariadb + ...
|
echo "## INSTALL PASSERELLE HTTP(S) #######################################"; echo ;
|
||||||
# sudo apt-get install mariadb-server nginx python3-certbot-nginx certbot ssl-cert php-imap php-cli php-curl php-sqlite3 php-gd php-json php-xml php-mbstring php-gettext php-mysql php-fpm -y
|
|
||||||
for i in mariadb-server nginx python3-certbot-nginx certbot ssl-cert php-imap php-cli php-curl php-sqlite3 php-gd php-json php-xml php-mbstring php-gettext php-mysql php-fpm; do
|
for i in mariadb-server nginx python3-certbot-nginx certbot ssl-cert php-imap php-cli php-curl php-sqlite3 php-gd php-json php-xml php-mbstring php-gettext php-mysql php-fpm; do
|
||||||
if [ $(dpkg-query -W -f='${Status}' $i 2>/dev/null | grep -c "ok installed") -eq 0 ]; then
|
if [ $(dpkg-query -W -f='${Status}' $i 2>/dev/null | grep -c "ok installed") -eq 0 ]; then
|
||||||
|
echo ">>> Installation $i <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"
|
||||||
sudo apt install -y $i
|
sudo apt install -y $i
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
else
|
||||||
|
echo ">>> WARNING <<< Apache détecté - Vous devrez réaliser la configuration de votre passerelle par vous même..."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
## INSTALL PYTHON CRYPTO LAYER
|
## GIVE ACCESS TO www-data group
|
||||||
echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.bashrc && source ~/.bashrc
|
sudo usermod -aG www-data $USER
|
||||||
|
|
||||||
|
echo "###########################"
|
||||||
|
echo "## INSTALL PYTHON CRYPTO LAYER "
|
||||||
|
echo "###########################"
|
||||||
|
echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.bashrc && source ~/.bashrc; echo ">>> PATH=$PATH"
|
||||||
python3 -m pip install -U pip
|
python3 -m pip install -U pip
|
||||||
python3 -m pip install -U setuptools wheel
|
python3 -m pip install -U setuptools wheel
|
||||||
python3 -m pip install -U cryptography Ed25519 base58 google protobuf duniterpy
|
python3 -m pip install -U cryptography Ed25519 base58 google protobuf duniterpy
|
||||||
if [[ "$USER" == "pi" ]]; then ## PROPOSE QR_CODE PRINTER
|
|
||||||
echo "SOUHAITEZ VOUS AJOUTER UNE IMPRIMANTE A QR CODE? saisissez OUI, sinon tapez sur ENTREE"
|
if [[ "$USER" == "pi" ]]; then ## PROPOSE QR_CODE PRINTER SUR RPI
|
||||||
|
echo "Ambassade? Souhaitez vous ajouter imprimante 'brother_ql'? Saisissez OUI, sinon laissez vide et tapez sur ENTRER"
|
||||||
read saisie
|
read saisie
|
||||||
if [[ $saisie != "" ]]; then
|
if [[ $saisie != "" ]]; then
|
||||||
sudo apt install printer-driver-all cups -y
|
sudo apt install printer-driver-all cups -y
|
||||||
|
@ -64,33 +90,32 @@ if [[ "$USER" == "pi" ]]; then ## PROPOSE QR_CODE PRINTER
|
||||||
sudo usermod -a -G gammu pi
|
sudo usermod -a -G gammu pi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# python3 -m pip install -U silkaj
|
# python3 -m pip install -U silkaj
|
||||||
## python -> python3 link
|
## python -> python3 link
|
||||||
sudo ln -f -s /usr/bin/python3 /usr/bin/python
|
sudo ln -f -s /usr/bin/python3 /usr/bin/python
|
||||||
## GIVE ACCESS TO www-data group
|
|
||||||
sudo usermod -aG www-data $USER
|
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
echo "Clonage git astrXbian depuis https://git.p2p.legal"
|
echo "=== Clonage git CODE astrXbian depuis https://git.p2p.legal"
|
||||||
mkdir -p ~/.zen
|
mkdir -p ~/.zen
|
||||||
cd ~/.zen
|
cd ~/.zen
|
||||||
git clone https://git.p2p.legal/axiom-team/astrXbian.git
|
git clone https://git.p2p.legal/axiom-team/astrXbian.git
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
echo "IMPORT configuration ASTROPORT dans ~/.kodi"
|
echo "=== IMPORT configuration ASTROPORT dans ~/.kodi"
|
||||||
cp -Rf ~/.zen/astrXbian/.install/.kodi ~/
|
cp -Rf ~/.zen/astrXbian/.install/.kodi ~/
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
echo "Installation de IPFS https://ipfs.io"
|
[[ ! $(which ipfs) ]] && echo "=== Installation de IPFS https://ipfs.io"; ~/.zen/astrXbian/.install/ipfs_alone.sh
|
||||||
~/.zen/astrXbian/.install/ipfs_alone.sh
|
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
echo "Configuration jaklis: Centre de communication CESIUM+ GCHANGE+ & MONNAIE LIBRE (gva protocole)"
|
echo "=== Configuration jaklis: Centre de communication CESIUM+ GCHANGE+"
|
||||||
cd ~/.zen/astrXbian/zen/jaklis
|
cd ~/.zen/astrXbian/zen/jaklis
|
||||||
./setup.sh
|
./setup.sh
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
echo "Sécurisation DEFCON SUDOERS FAIL2BAN"
|
echo "=== Sécurisation DEFCON SUDOERS FAIL2BAN"
|
||||||
## XBIAN fail2ban ERROR correction ##
|
## XBIAN fail2ban ERROR correction ##
|
||||||
#[....] Starting authentication failure monitor: fail2ban No file(s) found for glob /var/log/auth.log
|
#[....] Starting authentication failure monitor: fail2ban No file(s) found for glob /var/log/auth.log
|
||||||
[[ "$USER" == "xbian" ]] && sudo sed -i "s/auth.log/faillog/g" /etc/fail2ban/paths-common.conf
|
[[ "$USER" == "xbian" ]] && sudo sed -i "s/auth.log/faillog/g" /etc/fail2ban/paths-common.conf
|
||||||
|
@ -131,18 +156,20 @@ sudo chown -R $USER:$wwwuser ~/astroport/www
|
||||||
sudo chmod -R g+rw ~/astroport/www
|
sudo chmod -R g+rw ~/astroport/www
|
||||||
|
|
||||||
#######################################################################
|
#######################################################################
|
||||||
## CREATE symlinks for ~/.zen/www/swarm & me
|
## CREATE symlinks for ~/.zen/www/swarm & me ## OLD PHP METHOD ## TO REMOVE...
|
||||||
sudo chown -R $USER:www-data ~/.zen/astrXbian/www/boris
|
sudo chown -R $USER:www-data ~/.zen/astrXbian/www/boris
|
||||||
sudo chmod -R g+rw ~/.zen/astrXbian/www/boris
|
sudo chmod -R g+rw ~/.zen/astrXbian/www/boris
|
||||||
ln -s /home/$USER/.zen/ipfs_swarm ~/.zen/astrXbian/www/boris/swarm
|
ln -s /home/$USER/.zen/ipfs_swarm ~/.zen/astrXbian/www/boris/swarm
|
||||||
ln -s /home/$USER/.zen/ipfs ~/.zen/astrXbian/www/boris/me
|
ln -s /home/$USER/.zen/ipfs ~/.zen/astrXbian/www/boris/me
|
||||||
|
|
||||||
## INSTALL open_with_linux.py
|
echo "## INSTALL open_with_linux.py ##
|
||||||
## https://darktrojan.github.io/openwith/webextension.html
|
## https://darktrojan.github.io/openwith/webextension.html"
|
||||||
# https://addons.mozilla.org/firefox/addon/open-with/
|
|
||||||
# https://chrome.google.com/webstore/detail/open-with/cogjlncmljjnjpbgppagklanlcbchlno
|
|
||||||
~/.zen/astrXbian/open_with_linux.py install
|
~/.zen/astrXbian/open_with_linux.py install
|
||||||
|
|
||||||
|
echo ">>> INFO : Ajoutez l'extension 'OpenWith' à votre navigateur !!
|
||||||
|
# https://addons.mozilla.org/firefox/addon/open-with/
|
||||||
|
# https://chrome.google.com/webstore/detail/open-with/cogjlncmljjnjpbgppagklanlcbchlno"
|
||||||
|
|
||||||
if [[ "$USER" != "xbian" ]]
|
if [[ "$USER" != "xbian" ]]
|
||||||
then
|
then
|
||||||
## Desktop install
|
## Desktop install
|
||||||
|
|
Loading…
Reference in New Issue