lip 22

Downgrade Python na Ubuntu 12.04 z 2.7 na 2.6 lub 2.5

1. Przygotowanie pakietów

a) Najpierw musimy dodać repozytorium PPA:

sudo add-apt-repository ppa:fkrull/deadsnakes

b) Aktualizujemy listę:

sudo apt-get update

c) Instalujemy wymaganą przez nas wersję pythona:

*dla wersji 2.6

sudo apt-get install python2.6 python2.6-dev

*dla wersji 2.5

sudo apt-get install python2.5 python2.5-dev

2. Konfigurujemy alternatywne wersje.

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.6 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.5 0

Informacja: 2, 1, 0 to priorytet dla wyboru alternatywnej wersji pythona w trybie auto.

3. Wybieramy używaną domyślnie wersję pythona.

Po dodaniu wszystkich wersji pythona jakie mamy, wystarczy wpisać:

sudo update-alternatives --config python

I widząc na liście w kolumnie ścieżka wersję, wpisujemy numerek.
Przydatną komendą (np. w razie zmiany priorytetów) jest również:

sudo update-alternatives --remove-all python

i powtórzenie kroków z punktu 2 zmieniając priorytet.
lip 14

DOTA 2 (noob) – pierwsze wrażenia z gry.

Wiadomość

Oto e-mail, ktory dostajemy po wybraniu nas do testowania gry.

Właśnie dostałem klucz do DOTA2, zabieram się bezzwłocznie za testowanie :) . O własny klucz można się pokusić wypełniając ankietę z oficjalnej strony DOTA2 tutaj. Na tą grę czekam już dłuższy czas, ze względu, że jestem graczem znanego już wszystkim League of Legends, który nie ukrywając spodobał mi się i wzbudził moją ciekawość do gier MOBA. Zapraszam do gry ze mną również w ten tytuł pod nickiem MesajInDaHouse na serwerze EU West, dodam, że nowych graczy zachęcam do wpisywania mojego nicku w nazwie polecającego po rejestracji, jest to bardzo pomocne dla mnie ;) .

Dobra wracamy do DOTA2, bo o tym ma być ten artykuł, a póki co wypisuje o LoL’u.

 

Na początek informacje podstawowe (tzw. Captain Obvious):

Instalka gry na Steam waży około 2,4GB do pobrania (digital download), ostatnio wyszedł jeszcze update ważący 260MB.

Minimalne wymagania sprzętowe:

  1. System operacyjny: Windows 7 / Vista / Vista64 / XP
  2. Procesor: Pentium 4 3,0GHz
  3. RAM: 1 GB dla XP / 2 GB dla Visty
  4. Grafika: karta ze 128 MB, obsługą Shader model 2.0. i kompatybilna z DirectX 9; ATI X800, NVidia 6600 lub lepsza
  5. HDD: Co najmniej 2,5 GB wolnego miejsca
  6. Dźwięk: Karta kompatybilna z DirectX 9.0c

Zalecane wymagania sprzętowe:

  1. System operacyjny: Windows 7 / Vista / Vista64 / XP
  2. Procesor: Intel core 2 duo 2,4GHz
  3. RAM: 1 GB dla XP / 2 GB dla Visty
  4. Grafika: karta z obsługą Shader model 3.0 i kompatybilna z DirectX 9; NVidia 7600, ATI X1600 lub lepsza
  5. HDD: Co najmniej 2,5 GB wolnego miejsca
  6. Dźwięk: Karta kompatybilna z DirectX 9.0c

Używam sprzętu Windows7, AMD Athlon II P340 2×2,2GHz, 6GB RAM, grafika HD5470 1GB, 320GB HDD, zintegrowana karta dźwiękowa Realtek dla laptopów. Zobaczymy po pobraniu jak będzie śmigać.

Dla osłodzenia artykułu dodam to, żeby nie świecił pustką, kiedy pobiorę grę zacznę wypisywać swoje wrażenia i odczucia z gry ;) .

Screen 1

Trailer gry DOTA 2 z festiwalu Gamescom

Ok, kontynuacja.

Płynność rozgrywki na mojej maszynie pozwala na średnio komfortowe granie jak na moją opinię. FPS rzadko przekraczał 30,więc nie można tego do końca uznać jako płynna rozgrywka, ale też najgorzej nie jest, bo da się grać, nie to co przy 10FPS w MOBA.

Pierwszą grę oczywiście kompletnie zlamiłem mając staty 1/2/4 i ubitych 15 creepów, nie ogar totalny. Ogólnie myślałem, że jestem w miarę na tym samym poziomie co reszta drużyny, jednak później przy jednym z team fightów zauważyłem, że jestem o 10 poziomów w tyle. Nic dziwnego, że ginąłem na 3 hity :) .

maj 12

Downgrade GCC/G++ na Ubuntu 12.04 z 4.6 na 4.4

1. Pobieramy pakiety gcc

sudo apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib gcc-4.4-multilib

2. Tworzymy katalog /bin w naszym katalogu domowym, ustalamy zmienną PATH do naszego katalogu bin (zobacz również punkt 5):

mkdir -p ~/bin
PATH=~/bin:$PATH

3. Linkujemy pobrane pliki binarne gcc 4.4 do katalogu bin, tak, żeby wraz ze zmienną PATH, tworzyły katalog, w którym są programy globalnie używane przez naszego użytkownika:

ln -s /usr/bin/gcc-4.4 ~/bin/gcc
ln -s /usr/bin/g++-4.4 ~/bin/g++

4. Nadajemy ewentualną flagę jako właściciele plików (żeby później nie mieć problemow z odmową dostępu) oraz uprawnienia rozruchu:

cd ~/bin
sudo chown NAZWA_UZYTKOWNIKA gcc
sudo chown NAZWA_UZYTKOWNIKA g++
chmod a+x gcc
chmod a+x g++

5. Dla tych, którzy chcą zrobić wszystko z punktów 2-4 za jednym zamachem (wcześniej zmieniając sobie „mesaj” na własną nazwę użytkownika [można sprawdzić w terminalu komendą "whoami"]):

ln -s /usr/bin/gcc-4.4 ~/bin/gcc; ln -s /usr/bin/g++-4.4 ~/bin/g++; cd ~/bin; sudo chown mesaj gcc; sudo chown mesaj g++; chmod a+x gcc; chmod a+x g++;

 

kwi 08

Reguły Udev Android dla Ubuntu 11.10/12.04

Wszystko na tacy :)

[Dodane 23.06.2012]
 Dzięki, WillingMagic (za informację) i  możemy użyć nowego zestawu reguł:

//Stare reguły poniżej działają, ale wyżej są dokładniej określone, więc zalecam używanie powyższych.
SUBSYSTEM==”usb”, ATTR{idVendor}==”0502″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0B05″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”413C”, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0489″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”091E”, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”18D1″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”109B”, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0BB4″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”12D1″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”24E3″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”2116″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0482″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”17EF”, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”1004″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”22B8″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0409″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”2080″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0955″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”2257″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”10A9″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”1D4D”, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0471″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”04DA”, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”05C6″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”1F53″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”04E8″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”04DD”, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0FCE”, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”2340″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”0930″, MODE=”0666″, GROUP=”plugdev”
SUBSYSTEM==”usb”, ATTR{idVendor}==”19D2″, MODE=”0666″, GROUP=”plugdev”

 

kwi 04

Testy MMORPG: Częśc I

Witam!

Z racji, iż ostatnio publikuję ogólne opinie o grach MMORPG, w które grałem, postanowiłem dodać wpis na blogu.
Nie będę się rozpisywał, nie chcę tu mieć wypracowań, więc przejdziemy do sedna sprawy bez zbędnych bajek.

Testowałem kilka gier MMORPG, głównie pod względem PvP, ale też brałem pod uwagę ważne aspekty gry, m.in. Pay4Win, płynność animacji postaci (nie lubię biegających jak roboty ludków), expienie (early game).

Na początek gry, które mi nie leżą, gdzie coś mi się nie spodobało:

Runes of Magic:

Minusy:

  • kopia WoW (UI, skille)
  • pay4win (kup wygraną – przewaga graczy pompujących za dodatkowe opcje prawdziwe pieniądze w grę)
  • słabe animacje, postacie biegają sztywno, lekko opóźnione względem wciskania przycisków bez lagów
  • dosyć spore wymagania sprzętowe, a tekstury terenu jak i postaci nie należą do bardzo dobrych.
  • ludzie nie mający pojęcia o grze całkowicie, dużo polaczków wyzywających o byle co, myślących ze są lepsi niż im się wydaje, dzieciaków ( ale to przypadłość większości gier MMO z polskim językiem, więc ogólną wadą takich gier jest dostęp do polskiej wersji klienta)

Plusy:

  • kopia WoW (w pewnym sensie to plus, bo rozległość możliwości to dobra cecha)
  • darmowa, grywalna i bez płacenia, ale niestety przewagę mają donorzy
  • początek sprawia wrażenie przyjemnej gry ze względu na łatwe expienie
  • ciekawe zadania

 

Lineage II:

Minusy:

  • wymagania
  • zadania na początku są nudne, dalej nie grałem właśnie ze względu na to
  • postacie biegają bardzo dziwnie, np. nachylanie się 90 stopni przed biegiem w przód(wtf?)
  • STEROWANIE tylko myszką
  • walka jest sztywna
  • elementy fantasy, postaci jak z chińskich bajek
  • jako fan WoW nie wyobrażam sobie PvP bez bindów i biegania myszką

Plusy:

  • darmowy bez limitów
  • ciekawy system wspomagania expienia
  • ponoć dobre PvP, ale early game i sterowanie mnie zniechęciło do dalszej gry

 

Fallen Earth:

Minusy:

  • wolne tempo rozgrywki, brak dynamiki
  • wytwarzanie ekwipunku, przedmiotów zadań trwa wieki
  • słaba płynność animacji, grafika też nie należy do najlepszych
  • reklamy odnośnie kupna premium

Plusy:

  • darmowa z platformy Steam, dużo graczy (dopóki było w „ostatnio dodane gry kat. f2p”
  • ciekawy pomysł na MMO+FPS
  • mnogość rożnych prefesji, kombinacji rzeczy itp.

 

Metin2:

Mój komentarz do tej gry uznam za zbędny, gdyż większość osób i tak już uznaje, że ta gra jest do bani.

 

Teraz zacznę pisać o lepszych grach, które jak na moje wymagania, całkiem dobrze spełniają swoją rolę.

 

World of Warcraft:

Gra to prestiż sam w sobie, więc też się nie wypowiem. Płatne > Darmowe (ZAWSZE)

 

Vindictus:

Plusy:

  • Ładna grafika,
  • Nieduże wymagania,
  • Postacie są płynne,
  • Ciekawe combo’sy,
  • Doskonale odwzorowana fizyka obiektów, ciał,
  • Bicie czym się podoba,
  • Nieprzecietne PvP,
  • Wsparcie ZAM pod względem bazy wiedzy gry. (ZAM również jest autorem najlepszych baz dla World of Warcraft, m.in. wowhead, curse),
  • Mała waga klienta gry.

Minusy:

  • nudne, podobne do siebie zadania,
  • uzależnienie klas, płci postaci od siebie

 

Age of Conan:

Plusy:

  • ciekawe zadania
  • tryb gry offline (szkoda, że tylko dla subskrybentów)
  • grafika jest ładna
  • animacje postaci płynne
  • często zadania wykonywane grupowo
  • niskie wymagania

Minusy:

  • duże ograniczenia
  • „spory” klient gry

 

Global Agenda:

Plusy:

  • pomysł połączenia MMO+FPS
  • PvP zarówno w zadaniach
  • grafika
  • płynne animacje
  • klimat

Minusy:

  • malejąca ilość graczy
  • brak aktualizacji gry, nic nowego od 2 lat, brak nawet małych patchy
  • na wyższym poziomie ciężej grać bez konta premium agent

 

 

 

lut 05

Kompilacja CyanogenMod7 na Gentoo

Kompilacja przebiega niemal identycznie jak w wypadku Ubuntu, jednak Gentoo ma swoje specyficzne komendy.

Mianowicie apt jest zastąpiony emerge w większości wypadków.

Oczywiście nie będę rozpisywał całej instalacji Gentoo, napiszę jedynie, że można iść na łatwiznę moim śladem instalując Calculate Linux Desktop i mieć w pełni kompatybilne i skonfigurowane środowisko pracy.

Zaczynamy.

Pierwszą kluczową sprawą będzie brak użycia komendy „sudo” jak to było w Ubuntu, można, ale nie jest to konieczne, aniżeli zalecane.

Dla upartych:

Wpisujemy komendę:

  • su

nasze hasło

  • nano /etc/sudoers

dopisując naszego użytkownika według wzoru root podanego powyżej. Po tym wciskamy Ctrl+X, T, Enter, można dodać również siebie do grupy emerge.

  • gpasswd -a nazwaużytkownika emerge

Od tej chwili będziemy używać terminala na koncie użytkownika root, wpisując „su” oraz hasło.

Wybrałem tą opcję, ponieważ sudo ciągle sprawiało mi problemy

  • emerge gnupg sun-jdk flex bison gperf libsdl  zip curl wxGTK android-sdk-update-manager –autounmask-write

Dodatkowo do pobrania są python, git.

  • emerge dev-lang/python
  • emerge dev-vcs/git
  • emerge eselect

Teraz zmieniamy maszynę wirtualną java na sun jdk

  • eselect java-vm list
  • eselect java-vm set user sun-jdk-1.6

 

Dokończę artykuł w wolnej chwili. Edycja: artykułu skończyć nie dam rady bo nie używam już Gentoo, nie pamiętam za bardzo dalszej procedury.

 

sty 14

Błędy podczas android repo sync

Dzisiaj wróciłem na Linuxa i chciałem zaktualizować sobie repo cyanogenmoda.

  • repo sync

Po tym dostałem błąd:

error: .repo/manifests/: Jest katalogiem. Stop.

W Google znalazłem poprawkę:

  • cd ~/android/system/.repo/manifests
  •  git reset –hard
  • cd ~/android/system/
  • repo sync
 Inne znane mi błędy synchronizacji:
1. cannot fetch projects
  • repo sync -f
Parametr -f daje nam możliwość ominięcia błędów i synchronizacji, wymusić ją mimo wszystko.
gru 28

GT540: Kompilacja CyanogenMod 7 na Ubuntu

Do rozpoczęcia potrzebny nam będzie jakiś system Linux/Unix. Polecam od siebie Kubuntu, wygodne środowisko, w miarę sprawnie działa, preinstalowane aplikacje, nie trzeba szukać wszystkiego po kolei, mamy to już pod ręką.

Po zainstalowaniu Linuxa (nie napisałem instrukcji, bo to nie cel poradnika), konfigurujemy połączenie z siecią i otwieramy terminal (zazwyczaj jest to skrót Ctrl+T) i w nim wpisujemy komendę:

  • sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool

W Kubuntu domyślnie zainstalowane jest już OpenJDK, jeśli u Ciebie go nie ma, musisz zainstalować OpenJDK na własną rękę:

  • sudo add-apt-repository „deb http://archive.canonical.com/ maverick partner”
  • sudo apt-get update
  • sudo apt-get install sun-java6-jdk

Po doinstalowaniu pakietów, pobieramy skrypt repo, aby pobrać nim później źródła CM7:

  • mkdir -p ~/bin
  • curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
  • chmod a+x ~/bin/repo
  • PATH=~/bin:$PATH 

Dodatkowo trzeba będzie pobrać android sdk:

http://developer.android.com/sdk/index.html + uruchomić z katalogu Tools plik Android, pobrać nim Platform Tools i Tools.

i ustawić reguły udev w linuxie dla naszego urządzenia:

  • sudo kate /etc/udev/rules.d/51-android.rules

wypełniając wyżej wymieniony plik następującą zawartością:

SUBSYSTEM==”usb”, ATTR{idVendor}==”1004″, MODE=”0666″, GROUP=”plugdev”

nadając mu uprawnienia:

  • sudo chmod 777 /etc/udev/rules.d/51-android.rules
  • sudo chown nazwaużytkownika /etc/udev/rules.d/51-android.rules

na zakończenie, pozostało tylko zrestartowanie daemona udev komendą:

  • sudo restart udev
lub
  • /etc/init.d/udev restart (dla starszych wersji)

aby uniknąć problemów później, dodajemy plik adb, z katalogu platform-tools sdk do katalogu /bin

  • sudo cp /ŚĆIEŻKADOSDK/platform-tools/adb /bin/adb

Teraz czas na pobranie repo CM7 (UWAGA: Rozmiar repo to około 6,5GB, więc pobiera się długo)

repo sync można przerwać i ponowić w każdej chwili. parametr -j odpowiada ilości plików pobieranych jednocześnie, w tym wypadki 16. Dla internetu 2MBit/s zalecane są cyfry ok  -j6.

Kolejnym krokiem będzie pobranie drzewka device dla naszego Swifta:

https://github.com/xmesaj2/android_device_lge_swift/downloads  - po wejściu w ten link, klikamy format, który nam odpowiada.

Po pobraniu, rozpakowujemy i kopiujemy tak, żeby ścieżka wyglądała mniej-więcej:

~/android/system/device/lge/swift/ – tu mają znaleźć się pliki i podfoldery.

Podłączamy telefon, musi być włączone debugowanie USB. Odpalamy skrypt extract-files.sh :

  • cd ~/android/system/device/lge/swift/
  • ./extract-files.sh

Jeśli wszystko poszło zgodnie z planem, pobieramy ostatnie 3 pliki, które trzeba podmienić/dodać do naszego repo.

http://review.cyanogenmod.com/#patch,sidebyside,10336,1,products/cyanogen_swift.mk (pobierz NEW VERSION i wstaw do ~/android/system/vendor/cyanogen/products/)

http://review.cyanogenmod.com/#patch,sidebyside,10336,1,vendorsetup.sh (pobierz NEW VERSION i wstaw do ~/android/system/vendor/cyanogen/)

http://review.cyanogenmod.com/#patch,sidebyside,10336,1,products/AndroidProducts.mk (pobierz NEW VERSION i wstaw do ~/android/system/vendor/cyanogen/products/)


Po tym wszystkim nareszcie można kompilować CyanogenModa. Komendy:

  • cd ~/android/system/
  • . build/envsetup.sh
  • choosecombo 1 1 cyanogen_swift 2
  • make -j2

(parametr -j odpowiada ilości wątków * ilości rdzeni twojego procesora, np. dwurdzeniowy procek, obsługujący po 2 wątki na rdzeń dla nalepszej wydajności ustawiony będzie miał -j4)