Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ubuntu tietokoneissa => Aiheen aloitti: Immo - 18.04.10 - klo:18.36
-
Eli kuinka luon sovelluksille käynnistimet valikkoon?
Esimerkkeinä TCE ja AssaultCube, jotka osaan konsolista käynnistää, mutta haluisin nuo myös pelit valikon alle ikonien kera.
Kiitos avusta.
-
Klikkaa oikealla Ubuntu/Gnome logo.
Muokkaa valikoita -> Valitse joku valikko -> +Uusi kohta.
-
Kiitos avusta.
Ei käynyt mielessäkään, että käynnistimen voi tehdä moin helposti graaffisesti...
-
Hetkeksi komento takaisin.
Miten luon käynnistimen suoritettavalle sh-tiedostolle?
Esim. Assault Cuben asennus on kotikansiossa, jolloin peli käynnistetään ensin navigoimalla cd:n avulla asennuskansioon ja sitten käskyttämällä sh assaultcube.sh
-
Tuohon on monta tapaa.
Sovellus, Sovellus päätteessä tai Sijainti.
Kannattaa katsoa jostain muusta käynnistimestä mallia. Klikkaa kuvaketta ja Ominaisuudet.
-
bash -c "cd /jonnekkin && ./pelinkomento.sh"
komennoksi
&&-merkkien tilalla voinee käyttää myös ; (=rivinvaihto skriptissä). Toinen vaihtoehto on tehdä bash-skripti, jolka sitten suoritetaan, mutta tuo toimii yhtälailla.
En tiedä, mutta uskoisin, että bashinkin voi korvata sh:lla.
EDIT: Joo sh käy myös ja lisäsin nuo ./-merkit tuonne komentoon, koska ne ovat tarpeen.
-
En saanut toimimaan kummallakaan bash-, että sh-komennoilla.
mikko@mikko-desktop:~$ sh -c "/home/mikko/.AssaultCube_v1.0.2/ && assaultcube.sh"
sh: /home/mikko/.AssaultCube_v1.0.2/: Permission denied
Tiedostoon on kaikki oikeudet, eikä sitä tarvitse ajaa sudolla.
Bash taas kertoo, että sijainti on olemassa:
mikko@mikko-desktop:~$ bash -c "/home/mikko/.AssaultCube_v1.0.2/ && assaultcube.sh"
bash: /home/mikko/.AssaultCube_v1.0.2/: is a directory
-
Unohdit cd:n (ennen hakemistopolkua):
sh -c "cd /home/mikko/.AssaultCube_v1.0.2/ && assaultcube.sh"
-
Ohhoh, niinpäs tein. Noh, silti tässä joku kusee:
:~$ sh -c "cd /home/mikko/.AssaultCube_v1.0.2 && assaultcube.sh"
sh: assaultcube.sh: not found
Sama bashilla. Polku on kirjoitettu oikein, kuten myös ajettavan tiedoston nimi. Siis ei kirjoitusvirheitä.
-
Ohhoh, niinpäs tein. Noh, silti tässä joku kusee:
:~$ sh -c "cd /home/mikko/.AssaultCube_v1.0.2 && assaultcube.sh"
sh: assaultcube.sh: not found
Sama bashilla. Polku on kirjoitettu oikein, kuten myös ajettavan tiedoston nimi. Siis ei kirjoitusvirheitä.
Jos olen ymmärtänyt oikein niin uuden käynnistmen komennoksi vain
/home/mikko/.AssaultCube_v1.0.2/assaultcube.sh
Tmä siis edellyttäen että .AssaultCube_v1.0.2 on piilokansio?
-
assaultcube ei ole piilokansio joten tuo piste on turhake tuossa. itsellä polku menee näin
/home/käyttäjätunnus/AssaultCube_v1.0.2/assaultcube.sh polun saat oikein viemällä hiiren assaulcube.sh:n päälle ja valitsemalla kopio.
-
En halua täyttää kotikansiota ns. turhalla tavaralla, joten tein AssaultCube-kansiosta piilotiedoston.
Polku tiedostoon on täsmälleen sama kuin Jakke77:llä, lukuun ottamatta piilotiedostoa.
Itselläni pelin käynnistämiseen vaaditaan tiedoston suorittaminen kyseisessä kansiossa. Ei onnistu ilman:
mikko@mikko-desktop:~$ sh ~/.AssaultCube_v1.0.2/assaultcube.sh
Your platform does not have a pre-compiled Cube client.
Please follow the following steps to build a native client:
1) Ensure you have the SDL, SDL-image, OpenAL, and OpenGL libraries installed.
2) Change directory to source/src/ and type "make install".
3) If the build succeeds, return to this directory and run this script again.
Peli käynnistyy kun käskytän:
~$ cd /home/mikko/.AssaultCube_v1.0.2/
~/.AssaultCube_v1.0.2$ sh assaultcube.sh
-
Ohhoh, niinpäs tein. Noh, silti tässä joku kusee:
:~$ sh -c "cd /home/mikko/.AssaultCube_v1.0.2 && assaultcube.sh"
sh: assaultcube.sh: not found
Sama bashilla. Polku on kirjoitettu oikein, kuten myös ajettavan tiedoston nimi. Siis ei kirjoitusvirheitä.
Komennappas sh -c "cd /home/mikko/.AssaultCube_v1.0.2 && ./assaultcube.sh"
Koska muuten tuo yrittää ajaa komentoa assaultcube.sh pathin varrella, ei tiedostoa assaultcube.sh samassa hakemistossa. Ohjeeni ei ollut aivan tarkka.
-
Ihan tavallisen ohjelman käynnistämisestäkö on kyse?
Siis Työpöydällä ->
oik.hiiren napsaus ->
valikosta 'Luo käynnistin'
Täytä menu ja hae sopiva kuvake
-
Ihan tavallisen ohjelman käynnistämisestäkö on kyse?
Ei aivan tavallisesta käynnistimestä ole kyse, sillä tiedosto pitää suorittaa sijainnissa.
Komennappas
Koodia:
sh -c "cd /home/mikko/.AssaultCube_v1.0.2 && ./assaultcube.sh"
Toimii kuin unelma. Kiitos epäTomppeli :D
tuo yrittää ajaa komentoa assaultcube.sh pathin varrella
Tarkoittaen? Mistä kansiosta tiedostoa etsitään, jos sitä ei täsmennä?
Kun olen niin tykästynyt offtopicciin, haluaisin kysyä, miten png-kuvat saa käännytettyä svg-muotoon? ;D (jos ei vaadi suurempaa aivoriihtä) Pitäisi katsos valikoihin myös ikonit saada, mutta GNOME ei hyväksy png-kuvia.
-
tuo yrittää ajaa komentoa assaultcube.sh pathin varrella
Tarkoittaen? Mistä kansiosta tiedostoa etsitään, jos sitä ei täsmennä?
Eli PATH on muuttuja, joka kertoo mistä hakemistoista jotain ohjelmaa/komentoa etsitään. Jos käytetään ./ alussa niin se meinaa, että ko. ohjelma/komento löytyy nykyisestä hakemistosta.
Itselläni PATH on seuraava:
echo $PATH # Tämä oli vasta komento jolla sen näkee
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/tomppeli/.bin
Eli tuonne olen lisännyt yhden oman hakemiston, muut ovat Ubuntun oletuksia.
http://linux.fi/wiki/PATH