Attention les versions de bash présentées ici sont fonctionnelles mais restent tout de même perfectibles !
Exemple pour "installer" Arduino-1.6.5, pour créer un installeur pour Fritzing, il suffit de prendre modèle sur les codes suivants :
Écrire un lanceur [arduino_model.desktop] :
Code :
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.5
StartupNotify=true
Type=Application
Name=Arduino IDE
Name[fr]=IDE Arduino
Encoding=UTF-8
GenericName=Integrated Development Environment
GenericName[fr]=Environnement de développement intégré
Comment=An IDE for Arduino-compatible electronics prototyping platforms
Comment[fr]=IDE pour plateformes de prototypage électroniques compatibles Arduino
Exec=FULL_PATH/arduino
Path=FULL_PATH/
Icon=FULL_PATH/lib/arduino.png
Terminal=false
Categories=Development;IDE;Electronics;
MimeType=text/x-arduino
Keywords=embedded electronics;electronics;avr;microcontroller;arduino;electronique;
Écrire un bash pour l'installation des lanceurs sous Opensuse [install_intl_opensuse.sh] :
Code :
#!/bin/sh
# Procedure de création de lanceurs sous la distribution Opensuse
# Sur le bureau
# Dans le menu / Developpement / Environnement de développement / IDE Arduino
CURDIR=$(pwd)
if [ ! -f $CURDIR/arduino_model.desktop ]
then
echo "file arduino_model.desktop is missing."
echo "installation aborted."
exit
fi
DESKTOPDIR=$(sudo cat /home/$USER/.config/user-dirs.dirs | grep DESKTOP | awk -F\" '{ print $2 }' | awk -F\/ '{ print $2 }')
cp arduino_model.desktop arduino.desktop-bak
cat arduino.desktop-bak | awk -v thedir="$CURDIR" '{ gsub(/FULL_PATH/, thedir, $0); print $0 }' > arduino.desktop
rm arduino.desktop-bak
#Pour intégrer au menu / visible par tous les utilisateurs
#if sudo bash -c '[[ -d /usr/share/applications ]]'
#then
# sudo cp arduino.desktop /usr/share/applications/arduino.desktop
#fi
#Pour intégrer au menu / visible par l'utilisateur qui installe l'application
#if sudo bash -c '[[ -d /home/$USER/.local/share/applications ]]'
#then
sudo cp arduino.desktop /home/$USER/.local/share/applications/arduino.desktop
#fi
#Pour intégrer le raccourci au bureau de l'utilisateur qui installe l'application
if [ -d /home/$USER/$DESKTOPDIR ]; then
cp arduino.desktop /home/$USER/$DESKTOPDIR/arduino.desktop
fi
rm arduino.desktop
echo "Installed Arduino IDE icons on menu and desktop !"
Écrire un bash pour l'installation des lanceurs sous Mint ou autre distribution [install_intl_mint.sh] :
Code :
#!/bin/sh
# Procedure de création de lanceurs sous la distribution Mint
# Sur le bureau
# Dans le menu / Developpement / Environnement de développement / IDE Arduino
CURDIR=$(pwd)
if [ ! -f $CURDIR/arduino_model.desktop ]
then
echo "file arduino_model.desktop is missing."
echo "installation aborted."
exit
fi
DESKTOPDIR=$(sudo cat /home/$USER/.config/user-dirs.dirs | grep DESKTOP | cut -d\" -f 2 | cut -d\/ -f 2-)
cp arduino_model.desktop arduino.desktop-bak
cat arduino.desktop-bak | awk -v thedir="$CURDIR" '{ gsub(/FULL_PATH/, thedir, $0); print $0 }' > arduino.desktop
rm arduino.desktop-bak
#Pour intégrer au menu / visible par tous les utilisateurs
#if sudo bash -c '[[ -d /usr/share/applications ]]'
#then
sudo cp arduino.desktop /usr/share/applications/arduino.desktop
#fi
#Pour intégrer au menu / visible par l'utilisateur qui installe l'application
#if sudo bash -c '[[ -d /home/$USER/.local/share/applications ]]'
#then
#sudo cp arduino.desktop /home/$USER/.local/share/applications/arduino.desktop
#fi
#Pour intégrer le raccourci au bureau de l'utilisateur qui installe l'application
if [ -d /home/$USER/$DESKTOPDIR ]; then
cp arduino.desktop /home/$USER/$DESKTOPDIR/arduino.desktop
fi
rm arduino.desktop
echo "Installed Arduino IDE icons on menu and desktop !"
Écrire un bash pour supprimer des lanceurs [remove_intl.sh] :
Code :
#!/bin/sh
# Procedure de suppression des lanceurs
# Sur le bureau
# Dans le menu / Developpement / Environnement de développement / IDE Arduino
DESKTOPDIR=$(sudo cat /home/$USER/.config/user-dirs.dirs | grep DESKTOP | awk -F\" '{ print $2 }' | awk -F\/ '{ print $2 }')
#if sudo bash -c '[[ -f /usr/share/applications/arduino.desktop ]]'
#then
sudo rm /usr/share/applications/arduino.desktop
#fi
#if sudo bash -c '[[ -f /home/$USER/.local/share/applications/arduino.desktop ]]'
#then
sudo rm /home/$USER/.local/share/applications/arduino.desktop
#fi
if [ -f /home/$USER/$DESKTOPDIR/arduino.desktop ]
then
rm /home/$USER/$DESKTOPDIR/arduino.desktop
fi
echo "Arduino IDE icons on menu and desktop are removed !"