abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:55 | Nová verze

    Byla vydána verze R14.1.2 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    včera 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 9
    včera 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 2
    včera 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    včera 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    6.5. 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 1
    6.5. 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.5. 17:11 | IT novinky

    Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (7%)
     (14%)
     (16%)
    Celkem 139 hlasů
     Komentářů: 9, poslední včera 22:07
    Rozcestník

    Chroot podruhé aneb MyLittleInvestigations na AMD64

    25.1.2013 16:10 | Přečteno: 968× | Výběrový blog

    Dnes si řekneme, jak spustit MyLittleInvestigations na platformě AMD64 díky chrootu. Jedná se o volné navázání na předchozí zápisek Jak si chrochtat v chrootu - http://www.abclinuxu.cz/blog/Tinker/2013/1/jak-si-chrochtat-v-chrootu

     

    Před pár dny jsem na internetu narazil na zajímavou hru nazvanou MyLittleInvestigations (díky Youtube!) a protože mi seriál My Little Pony není cizí a hra vypadala zajímavě, hned jsem se pustil do hledání informací. Brzy jsem narazil na oficiální stránku hry s příhodným názvem - http://www.equestriandreamers.com/. Pročetl jsem FAQ, kde jsem se dozvěděl, že hra je FREE a napsaná v Javě. Přidal jsem Magnet link do torrent klienta (Flush) a čekal (nebojte, seeduji pořád). Jedná se o DEB balíček, který by podle FAQ měl bez problému fungovat v distribuci Ubuntu a Linux Mint.

    Bohužel po stažení jsem si uvědomil, že hra je jen pro architekturu i386. Balíček jsem tedy vnutil systému přes dpkg s parametrem --force-all a doufal, že se bude něco dít. Během instalace mi dpkg zahlásil několik "chybějících" balíčků, ovšem podle Synapticu byly v systému přítomné. Začal jsem tušit, že tu něco nehraje. Pokusil jsem se spustit hru, ale dozvěděl jsem se jen to, že ji chybí knihovna a to taková, která s Javou nemá nic společného. Znovu jsem otevřel Synaptic, našel správný balíček, adresář kde je knihovna nainstalovaná a překopíroval ji jinam. Hra knihovnu našla, ale nechtěla s ní spolupracovat. Dobře, co teď? Začal jsem psát email. Dear princess Celestia.....

    Zeptal jsem se na 64-bit verzi hry, popsal svoje problémy, pochválil hru kterou jsem ještě neměl šanci hrát a zeptal se, zda by nešla hra uvolnit například v ZIP archivu - pokud je napsaná v Javě, tak by to mohlo být užitečnější, než balíčky pro jednotlivé systémy. Odpověď přišla během 15 minut (bohužel jsem jí zaznamenal až v posteli přes usnutím) a dozvěděl jsem se mnoho zajímavých informací:

    - Hra byla původně vyvíjena v Javě, ale kvůli problémům s výkonem a kompatibilitou s HW (to jsem si opravdu nevymyslel!) byla hra přeportována na SDL a kompletně přepsána do C++. Jako výhodu SDL autor zmiňuje možnost běhu na snad jakémkoli HW a já s ním musím souhlasit (taky už jste hráli OpenTTD na smartphone/tabletu?).

    - Problém 64-bitové hry je ve scénářích. Jedná se o soubor zahrnující všechny podmínky a obecně celý příběh (zřejmě i velmi povedené hlášky a obrázky). Na 64-bitových systémech mohou být opravdu veliké, ale na 32-bitových je problém s 4GB bariérou. Mohlo by se tak jednoduše stát, že nějaký fanoušek vytvoří 5GB scénář, který půjde spustit na 64-bitové architektuře, ale ne na 32-bitové, protože bude moc velký. Proto je momentálně k dispozici jen 32-bitová verze hry a 64-bitová ne - není problém ji vytvořit, ale v případě moc velkých scénářů hrozí, že budou hráči na 32-bitových architekturách ochuzeni. Podal jsem vlastní návrh na řešení a momentálně čekám na odpověď.

    - Pokud chci hrát na 64-bitové architektuře, mohu si nainstalovat Wine a spustit v něm verzi pro Windows. Kombinace je odzkoušená a údajně funguje bez větších problémů.

    Zároveň byla rychle opravena chybná informace a nyní už web hovoří o hře napsané v C++ s použitím SDL.

     

    Instalace Wine se mi trochu příčila - už zase se mi budou textové soubory místo v Geditu otevírat v notepad.exe? Raději jsem šel spát a přenechal problémy Luně, ta má větší hlavu :-)

    Ráno jsem měl hned po otevření očí jasno - chroot! Tedy teď už chrocht, krátce po zprovoznění Eagle jsem si totiž udělal v souboru .bashrc alias (připsal řádek):

    alias chrocht="xhost +local: && sudo schroot -c sid -p"

    Mimochodem, co říkáte na alias cat='more'?

     

     

    Jak tedy na to? Předpokládám, že máte vytvořený chroot, obsahuje aktuální repozitáře a má informace o dostupných balíčcích. Pokud ne, postupujte podle http://www.abclinuxu.cz/blog/Tinker/2013/1/jak-si-chrochtat-v-chrootu až k příkazu apt-get update, dále už ani krok. Poté potřebujete samozřejmě hru, lze ji nalézt logicky v sekci Downloads http://www.equestriandreamers.com/downloads/ a můžete stahovat buď přes magnet link (torrent), nebo přes HTTP (přímo). Pokud podle vás nemá cenu takovou hru sdílet, použijte v chrootu jednoduše wget následovaný přímou adresou k souboru, jinak nechte chrochtat svůj torrent klient podporující magnet linky (nezapomeňte po stažení soubor ověřit) a výsledný soubor následně překopírujte do chrootovaního /home (v mém případě jsem musel být root).

    Nyní trochu odbočím, budeme totiž upravovat jeden soubor v hostitelském systému. Proč? Protože bez této úpravy by ve hře nefungoval zvuk a jak jistě všichni víte, bez zvuku to není ono. Jako root si tedy otevřeme soubor /etc/fstab a přidáme řádek:

    /dev /srv/chroot/sid/dev none bind 0 0

    Tím jsme zajistili "sdílení" adresáře /dev do /srv/chroot/sid/dev, takže chrootovaný systém může přistupovat ke všem zařízením v /dev jako k vlastním. Aby to ovšem fungovalo, tak musíme systému říct (opět jako root), že má znovu načíst obsah souboru /etc/fstab:

    mount -a

    Hotovo, nyní můžeme zapnout chroot. Pokud jste si již nastavili alias a restartovali terminál (aby si znovu načetl soubor .bashrc), můžete napsat jednoduše chrocht, jinak dlouze:

    xhost +local: && sudo schroot -c sid -p

     

     

    Vítejte v chrootu. Jako první si nainstalujeme ALSA aby nám fungoval zvuk:

    apt-get install alsa-base alsa-utils

    Pokud si trochu ztišíte aparaturu (je to opravdu hlasité) a připravíte končetinu na klávesovou zkratu CTRL+C (ukončení), můžete na vlastní nebezpečí spustit příkaz:

    aplay /dev/urandom

    Pokud jste právě neprohodili notebook nebo část vaší sestavy oknem, můžeme přistoupit k dalšímu kroku. Tím je instalace balíčku, typicky přes dpkg:

    dpkg -i MyLittleInvestigationsDemo2.deb

    Balíčkovač by měl zahromovat (jako když Ditzy Doo vyklopí piáno), naštěstí náprava je jako ve většině případů až podezřele snadná:

    apt-get -f install

    Balíčkovač by měl stáhnout chybějící balíčky, nainstalovat vaši hru a vše by mělo proběhnout bez chyb. Pokud se tak stalo, můžete zkusit spustit hru příkazem (opravdu tam jsou velká písmena):

    MyLittleInvestigations

    Pokud se vše zdrařilo (a já na nic nezapomněl), mělo by se otevřít okno s hrou jako na přiloženém screenshotu :-)

     

     

    To je pro dnešek vše, ale nebojte se, brzy bude jistě následovat další zápisek a tentokrát snad již o jiném tématu. Protože RaspberryPi neplnilo svoji úlohu na 100% jak bylo původně zamýšleno (nefungoval scanner + podezřele často se rozbíjel balíčkovač), bude nahrazeno opět x86 serverem. Mohu ale s klidem na duši prohlásit, že s výkonem problémy opravdu nebyly a v některém z budoucích zápisků mám v plánu zprovoznit RaspberryPi jako pracovní stanici. Bude to výzva a jakási zkouška dospělosti. Dalším nápadem byla instalace JACK a realtime úprava zvuku, ale zde by asi malina byla s výkonem na hranici, navíc by se musela použít USB zvuková karta. Mimochodem, na brony IRC se včera objevil odkaz na FM vysílač s RaspberryPi (stačí připojit delší drát na GPIO pin), myslím že napsaný v Pythonu ;-)

           

    Hodnocení: 100 %

            špatnédobré        

    Obrázky

    Chroot podruhé aneb MyLittleInvestigations na AMD64, obrázek 1

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    25.1.2013 18:53 mimi.vx | skóre: 37 | blog: Mimi.VX | Praha
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64

    alias na cat ... je blbost.

    spousta scriptu te za to bude mit rado a kdyztak "less is MORE"!

    USE="-gnome -kde";turris
    Dreit avatar 25.1.2013 19:14 Dreit | skóre: 15 | blog: Dreit a jeho dračí postřehy | Královehradecký kraj
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64

    Skriptům se to určitě líbit nebude, to je pravda :-( Změnim to na cats a uvidíme jak si na to zvyknu :-)

    Nope
    tsLnox avatar 27.1.2013 12:52 tsLnox | skóre: 31 | blog: Blog jednoho ukecaného Gentoolemana | Žďár nad Sázavou
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    Mimochodem, co říkáte na alias cat='more'?
    alias raven='echo Nevermore'
    vencour avatar 27.1.2013 13:15 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    :-)
    Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
    Luboš Doležel (Doli) avatar 25.1.2013 22:03 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    Problém 64-bitové hry je ve scénářích. Jedná se o soubor zahrnující všechny podmínky a obecně celý příběh (zřejmě i velmi povedené hlášky a obrázky). Na 64-bitových systémech mohou být opravdu veliké, ale na 32-bitových je problém s 4GB bariérou. Mohlo by se tak jednoduše stát, že nějaký fanoušek vytvoří 5GB scénář, který půjde spustit na 64-bitové architektuře, ale ne na 32-bitové, protože bude moc velký. Proto je momentálně k dispozici jen 32-bitová verze hry a 64-bitová ne - není problém ji vytvořit, ale v případě moc velkých scénářů hrozí, že budou hráči na 32-bitových architekturách ochuzeni. Podal jsem vlastní návrh na řešení a momentálně čekám na odpověď.
    Eh, jako by byl problém tam do kódu přidat jeden if().
    25.1.2013 23:11 Kvakor
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    Možná by to šlo i bez něj - u většiny problémů je možné zvolit rychlejší algoritmus s větší spotřebou paměti versus pomalejší algoritmus s menší spotřebou paměti, ale často jde udělat univerzální algoritmus, který může dynamicky přecházet mezi těmito extrémy podle toho, kolik má v dispozici paměti.

    Nevím, jak je interně realizovaný scénář, ale pokud je to něco na způsob stavového automatu, tak není nutné držet v paměti všechny stavy, jen aktuální stav včetně podmínek pro přechody do jiných stavů, případně (trasparentně) cachovat aktuálně používané stavy v paměti.

    Pokud je paměti dostatek, tak se všechna data nacachují, pokud jí není dost, tak se načte určitá část do určité hloubky (tedy dokud je v v cache místo) a zbytek se pak načítá za chodu (např. v samotatném vlákně, co dělá něco na způsob read-aheadu), zatímco nejméně používaná data se zahazují.

    Je pravda, že něco takového je složitější než jeden mmap(), ale overhead není zas tak moc velký a mimo toho je občas lepší dělat si vlastní cachování než spoléhat na systém, protože u vlastní cache je možné mnohem jemněji odstupnovat životnost dat než to jde pomocí madvise().
    25.1.2013 22:30 Petr Tomasek
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    Mimochodem, co říkáte na alias cat='more'?

    Rikam toto:

    $ more > soubor << EOF
    tady dady dady
    dadydady
    EOF
    

    :-)

    25.1.2013 22:46 jarin
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    Nevím co máš za systém, ale neřeší přesně tenhle problém multiarch podpora zavedená v debianu wheezy? Prostě si přidáš do balíčkovacího systému alternativní architekturu a potřebné 32bit balíky se doinstalují z 32bit repozitářů. Chroot mi připadá zbytečně komplikovaný.
    25.1.2013 23:16 Kvakor
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    Stačí inistalovat 32bitové knihovny (většinou se jmenují lib32něco), které jsou běžně v dispozici depozitáři a instalují se do /lib32.
    25.1.2013 23:29 jarin
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    Takhle to bylo dřív. Nevýhoda byla, že ne všechny knihovny byly lib32něco a navíc sis musel hlídat závislosti ručně nebo upravovat balík. Multiarch má tu výhodu, že instaluješ stejný balík do 32bit i 64bit systému beze změny.
    Dreit avatar 26.1.2013 01:04 Dreit | skóre: 15 | blog: Dreit a jeho dračí postřehy | Královehradecký kraj
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64

    Tak to koukám, že jsem o pár let pozadu a taková novinka se k mým očím zatím nedostala :-D Někdy se na to podívám, děkuji za tip :-)

    Nope
    kotyz avatar 26.1.2013 18:59 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: Chroot podruhé aneb MyLittleInvestigations na AMD64
    Nechceš se taky trochu víc rozepsat i o tý hře samotný? To je nějaká VN?
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.