ChangeBlog  •  Archiwum  •  Kategorie  •  Artykuły  •  Galeria  •  Czytelnicy  •  Rupieciarnia
RSS wpisów  |  RSS komentarzy
Picasa for Linux

No proszę! Doczekaliśmy się Picasy na Linuksie. Dla niewtajemniczonych: Picasa to taki program, tworzony przez Google.Celem tego programu jest zarządzanie kolekcją cyfrowych zdjęć - katalogowanie, drukowanie, wysyłanie przez e-mail, tworzenie galerii, przeszukiwanie zasobów... Coś w rodzaju cyfrowego albumu dla posiadaczy cyfrowych aparatów.

Do tej pory Picasa była dostępna tylko pod Windows. Nie było to jakimś wielkim problemem, bo istnieje przecież znakomity f-spot, ale miło jest gdy "wielcy gracze" (jak Google) dostrzegają systemy inne niż Windows. Zwłaszcza gdy idzie o Google, które niestety traktuje wszystko spoza ścisłego mainstreamu po macoszemu. Ot, Google Earth (windows only) czy Google Calendar (który nie działa zbyt dobrze w Operze). Dlatego sama Picasa sama w sobie mnie nie interesuje aż tak bardzo, jestem jednak zadowolony z faktu zauważania przez Google istnienia Linuksa. Jedna jaskółka wiosny, oczywiście, nie czyni. Ale i tę nagą jaskółkę przyjmę ;)

A dlaczego nagą? Ano, wystarczy się przyjrzeć Picasie pod linuksem. Po pierwsze - winelibs. Tak, Picasa linuksowa to z grubsza Picasa windowsowa, tyle że połączona z bibliotekami Wine (Corel swego czasu też próbował takiego eksperymentu i efekt był mizerny, dziwne że Google postanowiło tak samo zaryzykować. Oczywiście obecne Wine jest o wiele lepsze niż kiedyś, ale mimo wszystko...). Oczywiście nie ma niczego złego w korzystaniu z Wine, zwłaszcza gdy jest to praktycznie jedyna realna możliwość przeportowania programu, trzeba jednak znać konsekwencje takiego wyboru.

W tym wypadku konsekwencją jest oczywiście spadek jakości produktu. Po pierwsze - zwiększone zużycie pamięci, choć to akurat niewielki problem - u mnie Picasa po uruchomieniu zużywa "jedynie" kilkadziesiąt megabajtów RSS (oczywiście możliwe, że po skorzystaniu parę razy z wyszukiwania, scrollowanie itp. wartość ta rośnie lawinowo, tak jak np. w Firefoksie). Po drugie (to bardziej upierdliwe), picasowy wineserver uruchamia właściwy program z nice == 15. ("nice" to priorytet programu, w skali jakoś od -19 do +20. Im wyższa liczba, tym chętniej program oddaje swój czas procesora innym procesom, tzn. zrzeka się swojego prawa do procesora na rzecz innych aplikacji). Nice == 15 to całkiem niski priorytet. Zwykle nie gra to roli... chyba, że komputer jest już obciążony. W takim wypadku Picasa zacznie ustępować miejsca pozostałym programom i, zamiast walczyć o sprawiedliwy kawałek CPU, będzie się niemiłosiernie wlec. I kiedy mówię "wlec" to nie mam na myśli "działać powoli". Mam na myśli "działać skokowo, reagować na czynności użytkownika z opóźnieniem rzędu paru sekund".

Taki podział priorytetów ma sens. Wine ma po prostu duże problemy z podziałem czasu procesora, bez wymuszenia niższego priorytetu Picasa mogłaby zeżreć 100% CPU, przyduszając sam wineserver, i dusząc własną pępowinę którą łączy się z X-ami. Czy wiesz, że jednym ze sposobów na przyspieszenie działania aplikacji uruchamianych w Wine/WineX/Cedega jest właśnie wymuszenie niższego priorytetu? Paradoksalnie może to przyspieszyć całość, bo powodem skokowej grafiki czy szarpanego dźwięku często nie jest niedomagający procesor, ale błędny podział megaherzów. Tego zapewne chcieli uniknąć autorzy Picasy - wpadli jednak w drugą pułapkę, ich aplikacja będzie chodzić nieznośnie powoli jeśli uruchomi się ją w dość obciążonym już systemie. Oczywiście poziom nice można skorygować - jest sobie polecenie renice, które służy właśnie do korygowania tego priorytetu, tyle że wymagać będzie uprawnień roota (spowolnić proces może jego właściciel; przyspieszyć spowolniony proces może tylko root). Na pewno można też przerobić odpowiednio skrypty/konfigurację Picasy, ale... no właśnie. Nie lepiej sięgnąć po wymienionego już f-spota? ;)

Pomijając konsekwencje używania Wine... Picasa pod Linuksem nie radzi sobie oczywiście z unikodem (UTF-8). Nie radzi sobie też z iso8859-2. Radzi sobie jedynie z cp1250. Dotyczy to zarówno nazw plików/folderów, jak i spolonizowanych komunikatów programów. Być może dopiero z LC_*=pl_PL.CP1250 by to działało poprawnie?

Można też mieć zastrzeżenia do innych aspektów działania programu, ale nie o to chodzi. Zakończyć ten wpis mogę następująco: fajnie, że Google wypuścił Picasę na Linuksa. Niefajnie, że zrobił to po najmniejszej linii oporu (przez Wine), a już całkiem niefajnie, że nikt nie pomyślał np. o tym, że Linux to jednak nie Windows, i warto by chociaż uwzględnić locale i kodowania. A "estetyczny inaczej" interfejs z bitmapowymi, rozmytymi napisami na przyciskach skwituję tylko westchnieniem. Nie sądzę by pozycja programu f-spot (czy digikam, bo to najbliższy jego krewny) na linuksie miała ucierpieć z powodu Picasy. Ale może programy te "pożyczą" z Picasy niektóre całkiem udane pomysły?

Dopiski:

Od: Aleks
Data: 20060618, 10:33
Google Earth tylko na winde??
http://earth.google.com/download-earth.html
:)

Pozdrawiam :)

Od: Hoppke
Data: 20060618, 11:21
Mhm. Wystarczyło, że ponarzekałem, a Google w ciągu jakichś dwóch tygodni się poprawiło i wydało wersję linuksową. Ma się ten posłuch ;)

Pozostaw dopisek: