ubuntuusers.de

Firefox Installer

Status: Gelöst | Ubuntu-Version: Ubuntu 7.10 (Gutsy Gibbon)
Antworten |

mrnobody1994

Anmeldungsdatum:
15. Dezember 2007

Beiträge: 46

Hallo alle zusammen!
Heute hab ich das erste mal ohne hilfe ein Bash-script erstellt.
und zwar hab ich einen installer/deinstaller für firefox 3.0beta2 geschrieben.

1. wie kann ich im script sagen dass ich eine Verknüpfung auf den Desktop haben will?( habs schon mit ln -s versucht, hat funktioniert, hatte aber kein schönen firefox-bildschen,
sondern einfach eine verknüpfung auf die datei (mit rechtsklick auf Desktop / Starter erstellen hats funktioniert, ich hätte es aber gern im script integriert.

2. Was sagt ihr zu dem Script (ich bin für lob( ♥ ) und kritik( 👿 ) offen): 😀

#! /bin/bash
# Mozilla Firefox 3.0 Beta 2 installer.


echo "Willst du nun Mozilla Firefox 3.0 Beta 2 auf deinem"
echo "Rechner installieren oder deinstallieren?(i/d)"
echo "Hinweis: Drücke eine andere Taste zum Beenden!"
read TASTE                                                                  
clear                                                                       

case "$TASTE" in
     i)
            STATUS=installiert
            echo "Das Programm wird nun installiert!"
            sleep 1
            sudo mkdir /usr/lib/firefox3b2
            sudo mv ./firefox /usr/lib/firefox3b2
            cd $HOME
            sudo ln -s /usr/lib/firefox3b2/firefox/firefox ./Desktop
            mv ./Desktop/firefox ./Desktop/Firefox
            
              ;;
     d)     STATUS=deinstalliert
            echo "Das Programm wird nun deinstalliert!"
            sleep 1
            sudo rm -r /usr/lib/firefox3b2
            cd $HOME
            rm ./Desktop/Firefox
            

              ;;
     *) 
            echo  "Programm wird nun beendet"
            sleep 1
            clear
            exit
              ;;
esac


sleep 1

echo "Mozilla Firefox 3.0 Beta 2 wurde nun $STATUS !"
sleep 2
exit 

Danke im vorraus für die Antwort(en)!!!!!!!!!!!!! ♥

audax

Avatar von audax

Anmeldungsdatum:
15. September 2006

Beiträge: 1253

mrnobody1994 hat geschrieben:

1. wie kann ich im script sagen dass ich eine Verknüpfung auf den Desktop haben will?( habs schon mit ln -s versucht, hat funktioniert, hatte aber kein schönen firefox-bildschen,
sondern einfach eine verknüpfung auf die datei (mit rechtsklick auf Desktop / Starter erstellen hats funktioniert, ich hätte es aber gern im script integriert.

Das auf dem Desktop sind '.desktop' Dateien nach dem freedesktop.org Standard.
Schau dir also einfach mal eine an, zu denen gibts nicht viel zu sagen, sind
simple INI-Files.

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17625

Wohnort: Berlin

Meine Dialoge mit solchen Programmen sehen dann so aus:

case "$TASTE" in
     i)
            STATUS=installiert
            echo "Das Programm wird nun installiert!"
# Das sagst Du!           

     d)     STATUS=deinstalliert
            echo "Das Programm wird nun deinstalliert!"
# Red nicht - mach hinne!           

     *)
            echo  "Programm wird nun beendet"
# Es könnte längst beendet sein, wenn nicht ständig solche Botschaften ...
esac


sleep 1

echo "Mozilla Firefox 3.0 Beta 2 wurde nun $STATUS !"
# Schön, daß wir das noch erfahren durften!


Es ist gut gemeint, aber widerspricht der Unix-Philosophie: no news are good news.

Eine bessere Begründung als diese: http://www.catb.org/~esr/writings/taoup/html/ch01s06.html#id2878450 habe ich selbst nicht.

Hello_World

Anmeldungsdatum:
13. Juni 2006

Beiträge: 3620

Interaktive Shell-Scripte sind ziemlicher Unfug. Man sollte das Script mit ein paar Parametern aufrufen und der Rest sollte automatisch gehen. Außerdem prüfst Du viel zu wenig. Du musst die Rückgabewerte der Programme prüfen, um zu sehen, ob es Fehler gab (der Rückgabewert des letzten Programms wird in der Variable $? gespeichert).
Und wieso gehst Du eigentlich davon aus, dass im aktuellen Verzeichnis bereits ein firefox-Verzeichnis existiert, das Du nach /usr/lib/firefox3b2 verschieben kannst? Abgsehen davon, dass das sowieso der falsche Ort ist (so etwas gehört nach /usr/local/lib), solltest Du die Datei gleich herunterladen, dafür gibt es wget.
z. B. so:
wget ftp://ftp.mozilla.org/pub/firefox/releases/3.0b2/linux-i686/de/firefox-3.0b2.tar.bz2 -O - | tar -xj
Das entpackt die Datei noch gleich. Idealerweise gibt es dann noch einen Parameter, mit dem man die Sprache festlegen kann.

Außerdem: was soll denn das hier:

sudo ln -s /usr/lib/firefox3b2/firefox/firefox ./Desktop 
mv ./Desktop/firefox ./Desktop/Firefox 


Das ist gleich doppelt schlecht: erstens gibt es zum erstellen von Desktop-Icons das Tool xdg-desktop-icon, zweitens ist es umständlich: man braucht für diese Operation keine root-Rechte, und es geht einfacher mit ln -s /usr/lib/firefox3b2/firefox/firefox ~/Desktop/Firefox. Natürlich müsstest Du eigentlich noch überprüfen, ob Du in dem Ordner Schreibrechte hast, ob es die Datei schon gibt usw. usf. Auch ist es gemeingefährlich, einfach ohne Rücksicht auf Verluste die ~/Desktop/Firefox zu löschen. Erstens gibt es dafür wieder xdg-desktop-icon, zweitens prüfst Du nirgends, ob die Datei überhaupt diejenige ist, die Du bei der Installation angelegt hast.

Insgesamt ist das Script also noch sehr unausgereift. Und um ehrlich zu sein wüsste ich auch sowieso nicht, wozu es gut sein soll. Das bisschen herunterladen und entspacken schafft man auch noch von Hand...

Antworten |