piątek, 24 września 2010

Gallium3D

Jako, że posiadam kartę Ati Radeon, która od dłuższego czasu nie jest wspierana przez AMD i w związku z tym nie są wydawane aktualne wersje binarnych sterowników postanowiłem przetestować bibliotekę Gallium3D. Między innymi ma ona na celu dostarczyć użytkownikom wszystkie funkcje, które oferują zamknięte sterowniki. Instalacja przebiegła bardzo gładko. Wystarczyło kierować się instrukcjami podanymi tutaj.

glxinfo |OpenGL:

OpenGL vendor string: X.Org R300 Project
OpenGL renderer string: Gallium 0.4 on RV530
OpenGL version string: 2.1 Mesa 7.9-devel
OpenGL shading language version string: 1.20

Sauerbraten z najlepszymi ustawieniami grafiki.

czwartek, 23 września 2010

Rotten apple

Przeglądając planetę KDE natrafiłem na ciekawy post. Otóż ktoś postanowił podzielić się z czytelnikami swoimi przekonaniami dlaczego Linux jest "bee", a produkty firmy Apple są bliskie doskonałości. Co ciekawe, to już co najmniej drugi raz kiedy pojawia się tam wpis napisany według podobnego schematu przez osoby mające z KDE oraz z Linuksem niewiele wspólnego. Bloger twierdzi, że napotkał problemy z odtwarzaniem płyt DVD, że musiał ręcznie edytować pliki, aby sprzęt działał poprawnie itd. Warto zaznaczyć, że wspomniany sprzęt to Macbook, który służy autorowi do tworzenia kodu dla systemu OS X oraz dla iPhone. Autor najwyraźniej nie rozumie, że to właśnie OS X, system stworzony przez Apple będzie najlepiej działał na... sprzęcie Apple. Równie dobrze mogę narzekać, że wspomniany system nie działa na moim PC (na którym Linux "po prostu działa").
Część wpisu o tym, że OS X lepiej nadaje się do programowania jest po prostu niepoważna. Skoro autor już wcześniej programował w systemie Linux to wydaje się dziwne, że nagle i nie wiadomo skąd pojawiają się problemy, z którymi musi się ciągle zmagać. Prawda jest taka, że narzędzia programistyczne, które dostępne są pod Linuksem oraz komfort programowania pod tym systemem są z nieporównanie wyższej półki. Wielkie brawa należą się projektowi GNU, środowisku KDE oraz twórcom repozytoriów, które bardzo ułatwiają sprawę.
Autor nie szczędzi komplementów pod adresem swojej ulubionej firmy. Ponoć hibernacja systemu działa bez zarzutu w OS X, ale jak wynika z różnych źródeł nie jest tak różowo i jeśli wziąć pod uwagę sprzęt bez logo zgniłego jabłuszka to bez wątpienia Linux znacznie lepiej radzi sobie z uśpieniem i wybudzeniem systemu. Bloger stara się ukazać społeczność Linuksa jako zapatrzonych w siebie geeków, którzy odsyłąją początkujących użytkowników do podręczników systemowych. Szkoda, że jego uwadze umknął fakt, że istnieje mnóstwo osób, które nie szczędzą swojego czasu i które pomagają nowym użytkownikom rozwiązywać różnego rodzaju problemy na forach internetowych. Jednak Linux stał się na tyle dojrzałym i przyjaznym systemem, że w większości przypadków "po prostu działa". Autor chyba zapomniał o problemach z "Blue Screen of Death", który dotnkął wielu użytkowników OS X. Warto dodać, że firma Apple początkowo starała się zatuszować sprawę i usuwała wpisy związane ze wspomnianym błędem.
Nie od dziś wiadomo, że Apple czuje dużą presję, ponieważ Linux jest obecnie w stanie konkurować z nimi w każdym segmencie. Myślę jednak, że wpis, który przypomina FUD Microsoftu nie jest najlepszym sposobem, żeby zachęcić użytkowników do swoich produktów. SUN stosował podobne chwyty i każdy wie jak skończył.

Mała ciekawostka:


Można powiedzieć, że Apple "stoi" na Linuksie i powinno to dać do myślenia tym, którzy zastanawiają się nad zakupem serwera spod znaku tej firmy.

wtorek, 3 sierpnia 2010

Amarok 2.3.1 - więcej niż odtwarzacz.

Myślę, że nie ma osoby, która przynajmniej od czasu do czasu słucha muzyki na komputerze i która nie wie co to Winamp. Dawniej, kiedy nie znałem jeszcze Linuksa nie wyobrażałem sobie, że mógłbym używać innego programu. Winamp automatycznie kojarzył mi się z muzyką. Jeśli chciałem jej posłuchać to musiałem go włączyć. Tak było do czasu kiedy poznałem system spod znaku pingwina a wraz z nim środowisko KDE i Amaroka. Program ten po prostu mnie oczarował! Genialna lista odtwarzania i zarządzanie kolekcją, wyświetlanie tekstu, kolejkowanie utworów, okładki, świetna integracja z last.fm! Czego chcieć więcej? Kiedy twórcy KDE postanowili przejść na nową bibliotekę Qt4 twórcy Amaroka postanowili zrobić to samo. Trzeba przyznać, że w obu przypadkach była to droga przez mękę, ale myślę, że warto było ją przejść. Przyjrzyjmy się najnowszej wersji Amaroka, czyli 2.3.1. Wersja ta zawiera (jak się nie mylę) wszystkie funkcje swojego poprzednika i ponadto oferuje szereg nowych rzeczy. Jedną z nowości jest możliwość niemal dowolnej modyfikacji interfejsu naszego odtwarzacza. Możemy przenosić przyciski akcji, listę odtwarzania w dowolne miejsce. Jeśli komuś nie podobają się domyślne ustawienia to nic nie stoi na przeszkodzie, żeby to zmienić. Kolejną z nowości jest okno kontekstowe. Możemy przypisać mu różne funkcje takie jak: wyświetlanie informacji o aktualnie odtwarzanym utworze, wyświetlanie klipów wideo, wyświetlanie tekstu utworu itp. Ponadto, okno kontekstowe pełni jeszcze jedną rolę. Kiedy przeciągamy na nie utwór lub album z kolekcji okno oferuje nam szereg opcji - za jego pomocą możemy m.in. dodać przeciągany element do listy odtwarzania lub oznaczyć go jako ulubiony.

Po środku okno kontekstowe.

Mogę przyznać, że nie znam lepszego odtwarzacza od Amaroka. Z niecierpliwością wyczekuję nowej wersji, która powinna przynieść nowe funkcje i optymalizacje.

poniedziałek, 26 lipca 2010

Linux vs BSD

Nie od dziś wiadomo, że istnieje spór pomiędzy użytkownikami Linuksa a użytkownikami systemów z rodziny BSD. W skład tzw. fanbojów wchodzą również sami programiści *BSD (co bywa zabawne). Niektórzy znani są z tego, że trolują na różnego typu portalach o tematyce komputerowej, z kolei inni robią nieobiektywne testy. Odkąd Linux wyparł *BSD z serwerów powstało wiele mitów (bo skoro fakty nam się nie podobają to potrzeba wyimaginowanych zalet) - BSD ma lepszej jakości kod, ma lepszych programistów, lepiej się skaluje, ma lepszą licencję itp. itd. Postaram się je obalić i muszę przyznać, że nie wydaje się to być trudnym zadaniem.

1. BSD ma lepszej jakości kod...


Mogę jedynie domyślać się o co chodzi zwolennikom *BSD kiedy mówią, że ich ulubiony system ma lepszej jakości kod. Według mnie o jakości kodu świadczy ilość błędów przypadających na jego ilość. Najwyraźniej tego samego zdania jest "Scan":

http://scan.coverity.com/rung1.html

Jak wynika z tabelki na tysiąc linii kodu Linuksa przypada znacznie mniej błędów niż ma to miejsce w przypadku NetBSD. Obecnie na stronie nie ma wyników FreeBSD, ponieważ używają oni własnego skanera.

2. BSD ma lepszych programistów...


FreeBSD to chyba jedyny system, którego krytyczne komponenty tworzą/modyfikują amatorzy - viva Google Summer of Code. Baza programistów FreeBSD wynosi trochę ponad czterystu. Linuksa tworzą programiści z takich firm jak: Red Hat, Intel, IBM, Hewlett-Packard, Novell, Oracle, SGI, AMD i inne. Nad jądrem (samym jądrem, nie nad całym systemem jak ma to miejsce w przypadku FreeBSD!) pracuje średnio około tysiąca programistów. Ktoś powie, że liczy się jakość, a nie ilość, ale w tym wypadku zarówno jakość jak i ilość leżą po stronie Linuksa.

3. BSD lepiej się skaluje...


Ciekawe. Linux używany jest na około 90% najszybszych superkomputerów na świecie. A tutaj przykład testu na mniejszej maszynie:

http://www.kernel.org/pub/linux/kernel/people/npiggin/sysbench/

4. BSD ma lepszą licencję...


Pytanie dla kogo? Na pewno nie dla użytkowników. Na licencji BSD korzystają przede wszystkim takie firmy jak Apple i Microsoft, ponieważ mogą bez żadnych przeszkód wziąć dowolny kod BSD, wykorzystać go w swoich produktach i sprzedać nie dając nic w zamian programistom i społeczności BSD. W przypadku Linuksa jest inaczej. Jeśli ktoś weźmie jego kod, zmodyfikuje, ulepszy itp. a następnie będzie go rozprowadzał to musi przestrzegać zasad licencji GPL i tym samym musi nowy kod udostępnić do użytku publicznego. Kodu objętym licencją GPL w przeciwieństwie do kodu na licencji BSD nie można dołączyć do aplikacji własnościowych i tym samym Linux nie wspiera konkurencji.

Arch vs Ubuntu

Używam systemów linuksowych od lat i przez ten czas korzystałem z wielu dystrybucji: Knoppix, Red Hat (jeszcze nie RHEL), Aurox, Fedora, Ubuntu, Kubuntu, OpenSuse, Arch Linux. W tym oto wpisie będę starał się pokrótce opisać pewne różnice pomiędzy Arch Linuksem a Ubuntu. Zacznijmy od Archa. Należy on do dystrybucji typu "rolling release" co oznacza, że pakiety uaktualniane są na bieżąco, a nie jak ma to miejsce w Ubuntu gdzie nowe pakiety dostarczane są dopiero wraz z nową wersją systemu lub po dodaniu zewnętrznych repozytoriów. Arch Linux tworzony jest w myśl zasady KISS (Keep it Simple, Stupid) co w gruncie rzeczy oznacza tyle, że ma być przejrzysty i prosty w budowie, ale niekoniecznie ma być uproszczony w konfiguracji. Na płycie instalacyjnej znajdują się jedynie podstawowe pakiety potrzebne do zainstalowania oraz skonfigurowania systemu. Środowisko graficzne możemy bardzo łatwo doinstalować z repozytorium. Do zarządzania oprogramowaniem służy rozbudowany program Pacman oraz ABS (Arch Build System) do budowania pakietów ze źródeł. Możemy także korzystać z ich graficznej nakładki, czyli z Shamana. Jeśli chodzi o Ubuntu to mamy do dyspozycji świetny program Synaptic Package Manager działający w trybie graficznym oraz Apt-get i Aptitude, które oferują podobne możliwości co Pacman. Warto zaznaczyć, że wspomniane menadżery pakietów mają pewną przewagę nad menadżerami z dystrybucji bazujących na pakietach RPM, a mianowicie potrafią usuwać pakiety wraz z zależnościami. Ubuntu jest bardzo proste w konfiguracji. Na przykład, jeżeli chcemy posłuchać ulubionego utworu, ale okaże się, że nie posiadamy odpowiednich kodeków to system spyta, czy chcemy je zainstalować. Podobnie jest z zamkniętymi sterownikami Catalyst i nVidia, Ubuntu po rozpoznaniu karty graficznej zaoferuje ich instalację. Z takimi udogodnieniami wiąże się jednak większe zapotrzebowanie na zasoby (skrypty napisane są w zasobożernym Pythonie). Wśród programistów Gnome (który jest domyślnym środowiskiem graficznym w Ubuntu) można zauważyć tendencję do sięgania po narzędzia konkurencji a mianowicie po Mono, czyli trochę ubogą kopię Microsoft .NET. Podobnie jak w przypadku zastosowania języka skryptowego Python, wiąże się z tym znacznie większe zapotrzebowanie na zasoby:



1. Tomboy (Simple note-taking program), który z definicji jest prostym programem do tworzenia notatek jest bardziej zasobożerny od przeglądarki Firefox! F-spot, czyli program do przeglądania grafiki jest również bardzo zasobożerny.

2. Ciekawa zmiana. Zarówno w systemach z rodziny Windows jak i w środowiskach KDE i Gnome (przy domyślnych ustawieniach oczywiście) przyciski okien umieszczone są po prawej stronie. W Ubuntu nie dość, że zostały przeniesione na stronę lewą to jeszcze zmieniono ich kolejność. Bardzo mądrze...

Dobrą wiadomością jest fakt, że w przyszłej wersji Ubuntu F-Spot zostanie zastąpiony mniej zasobożernym programem Shotwell. Nie mogę jednak zrozumieć dlaczego nie zdecydowano się również na zastąpienie Tomboya przez Gnote, który jest jego klonem napisanym w C++, bo wtedy nie byłoby potrzeby upychania całego Mono na płytę. Podsumowując Arch Linux jest lekkim systemem przeznaczonym dla trochę bardziej zaawansowanych użytkowników. Ubuntu natomiast, przeznaczone jest głównie dla początkujących oraz dla tych, którzy chcą mieć w pełni działający system zaraz po instalacji (choć uważam, że bardzo wiele można zmienić w Ubuntu na lepsze, ale o tym innym razem).