Fórum Root.cz
		Hlavní témata => Desktop => Téma založeno: Archiso  27. 08. 2018, 13:47:48
		
			
			- 
				Dobrý den,
potřeboval bych spouštět vždy při lognutí do LXDE aplikaci, která je "spustitelného typu" (nikoliv .exe). Potřeboval bych aby se otevřela v terminálu Xterm. 
Zkoušel jsem jí spouštět přes "aplikace spouštěné při přihlášení" ale nezobrazuje se mi při lognutí. 
v "~/.config/autostart" mám soubor s parametry:
[Desktop Entry]
Type=Application
Exec=./home/archiso/Plocha/BOT/MFBot_Konsole_x86_64
X-GNOME-Autostart-enabled=true
NoDisplay=false
Hidden=false
Name[cs_CZ]=MFBOT
Comment[cs_CZ]=No description
X-GNOME-Autostart-Delay=10
Aplikace funguje pouze v terminálu Xterm. V Gnome nikoliv. Spustit lze přes ./nazev
Ve vlastnostech souboru k ni neni defaultně přiřazen žádný program, ve kterem by se měla otevřít. Zkoušel jsem nastavit Xterm, ale změna není zapamatována. 
Přemýšlel jsem o nějaké alternativě tipu .bat jako je ve windows. V linuxu je pravděpodobně ekvivalent .sh 
Zkoušel jsem vytvořit samotný soubor .sh ve kterém byl pouze příkaz ./cesta/...Nazev. Nefungoval...
*Linux se učím používat. Mám ho třetí den.
Děkujííí
			 
			
			- 
				Na rozdíl od windows linuxové řádkové programy terminál neotevírají (nemusí otevírat). Takže první krok je spustit xterm a v něm ten daný program.
Exec=uxterm -e "/plná/cesta/k/souboru"
Stejně tak v tom .sh souboru: systém neví, jestli ten program musí běžet v terminálu, jestli si otevírá vlastní okna nebo jestli má běžet na pozadí. Takže do skriptu musí přijít uxterm -e "cesta/k/souboru"
Pozor na tu tečku na začátku cesty, jak jí tam máš ty. Tečka znamená "v současné složce", což bude tvoje domovská složka. Takže ty odkazuješ na soubor "/home/tvůjúčet/./home/archiso/...". Hádám, to nechceš.
			 
			
			- 
				Děkuju za odpověď jde vidět, že to evidentně něco dělá.
Bohužel se mi terminál hned zavře a pokud ho daný příkaz zadám manuálně v terminálu mi to vypíše toto:
xterm: cannot load font "-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1"
xterm: cannot load font "-Misc-Fixed-medium-R-*-*-13-120-75-75-C-120-ISO10646-1"
To chybí styly písma?
			 
			
			- 
				Nejde to spustit najednou.
Musí se to udělat v krocích 
1) V Xtermu jít do adresáře -> cd absolutní cesta
2) V tomto adresáři spustit aplikaci. -> ./aplikace
Jde toto nějak nascriptovat? Díky
			 
			
			- 
				Jde to naskriptovat.
xterm -e "cd /cesta/do/adresáře; ./aplikace"
			 
			
			- 
				Problém jsem vyřešil. Postup byl následující:
Pomohla mi tato strana: https://www.linuxexpres.cz/praxe/bash-8-dil
*******************************************************************************
Aby byl script skriptem bylo mu třeba trochu pomoci -> chmod a+x skript.sh
*************************************
skript obsahoval následující:
#!/bin/bash -> Jákesi záhlaví?
cd /absolutni cesta do slozky/
./nazev aplikace
*********************************************************************
Dále v  aplikaci "Aplikace Spouštěné při přihlášení" je příkaz následující:
xterm /absolutnicesta/skript.sh
************************************
Problem Solved
**************** https://youtu.be/w4aLThuU008?t=7s ******************
			 
			
			- 
				Koukám že Ravise mě předběhl v psaní  8)
To co jsi napsal jsem zkoušel též až na jednu nedokonalost. Neměl jsem tam středník a psalo mi to mnoho argumentů... Díky i tak
			 
			
			- 
				Za málo.
Ještě odpovím na tvoje "dotazy" :) 
#!/bin/bash znamená "tenhle soubor má být interpretován pomocí /bin/bash" - odlišují se tím skripty pro různé interprety.
Středník odděluje víc příkazů na jednom řádku. Jako máš teďka
cd /do/složky
./název s novou řádkou, tak je možné napsat cd /do/složky; ./název na jednu řádku. Hodí se to, když se potřebuješ vyhnout odřádkování. Bez toho středníku se cd ukázaly jako parametry cesta do tý složky ale zároveń i ta ./aplikace. No a s tím si cd neporadilo.