Monthly Archives: avgust 2008

Predstavil vam bom pet programov, ki so vsaj za mene nuja pri opravljanju nalog na računalniku. Je še seveda malo morje ostalih, vendar bom izpostavil tiste za vsesplošno vsakodnevno uporabo. Številčenje je malce nerodno saj je naslednji po vrsti enako ali še bolj pomemben od prejšnjega :)

  1. Firefox – program ki ga vsi ljubimo in sovražimo. Nekakšen paradni konj odprtokodne scene, ki se uvršča na vrh zraven OpenOffice.Org in GIMP kot eden najbolj uporabljenih odprtokodnih programov. Čeprav si lahko življenje brez Firefoxa predstavljam, si ga brez modernega brskalnika ne. Žalostno pri tem pa je, da je ta edini moderen brskalnik ki je hkrati prenosljiv in odprtokoden. Morda Windows uporabniki ne bodo razumeli moje jeze. Ravno zato, ker je njegov razvoj vseeno bolj usmerjen proti Windows izdaji. Za Linux izdajo pa (vsaj za mene) postaja nekakšno nujno zlo. Doživljam frustracije ob naključnem sesipanju, kar posebej pride do izraza pri (niti-ne-toliko) zahtevnih Flash predstavitvah. Da pa Firefox le prinaša manjšo revolucijo v web-usmerjenem rečunalništvu, pa to stalno dokazuje. Nedavno tudi s projektom Ubiquity, ki je vsesplošen vstavek za popolnoma nov način razumevanja termina “elektronska komunikacija”.
  2. Emesene – tukaj svet odprtih kodàh ponuja dokaj pestro ponudbo. Na prvem mestu je za mene must-have MSN klient za raznorazne smiselne/nesmiselne pogover s prijatelji in za ohranitev tistih kontaktov, ki te mogoče 1x ali 2x kliknejo v letu. Sicer jih je več vendar si Emesene zagotovo zasluži večjo omembo. Gre se za MSN odjemalec, ki ima čisti videz, je še vedno eden izmed tistih kar-nekaj-vendar-brez-avdio/video IM programov za Linux. Pa vendar je še boljši od alternativ. Podpira prenos datotek, offline sporočanje, osebna sporočila, prikaz emotikonov na seznamu, prikaz predvajane skladbe.
  3. XChat – Mnogi mislijo, da je IRC le prostor za hormonsko-nabite najstnike, ki iščejo nasprotujoče se spole za zafrkancjo ali pa za l33t h4×05Z3, ki so jim ukazi ipconfig in net sveto na zemlji. Vendar ni tako. Je orgomno drugih IRC omrežij, kjer se redno sestajajo znani ali nepoznani ljudje in izmenjujejo ideje, pomagajo drugim, diskotirajo o vsesplošnem in vsemogočnem. Odprtokodne skupnosti pridno izkoriščajo IRC protokol in lahko se še veselimo mnogo let ircanja.
  4. Rhythmbox – kopija iTunes za bolj ekonomske ljudi. Je moderen glasbeni predvajalnik. Oziroma bolje povedano glasbeni urejevalnik (manager). Za začetnike je čisti izgled lahko zelo privlačen in enostaven za uporabo. Zaradi zakonov pa se bodo nekateri morali srečati s problemi s kodeki določenih zapisov (začnimo uporabljati OGG zapis!). Vendar ta problem je vsesplošen in prizadane vsak predvajalnik na sistemu. Uporabniki, ki so navajeni WinAmp izgleda, jim Rhythmbox ne bo všeč in bodo zagrabili kakšen drug predvajalnik. Čeprav je na videz zelo okleščen, ponuja razširitve in tako vrsto drugih sposobnosti kot so samodejno iskanje lirik, brskanje po Last.fm spletišču, nadzor predvajanja preko dalinjskega upravljalca, podporo za iPod, deljenje glasbe po omrežju s DAAP protokolom.
  5. Evolution – kljub težki uporabi IM sporočanja, elektronska pošta ostaja. Mogoče ne toliko za vsesplošen pogovor, ampak bolj za profesionalno uporabo. No Evolution ni samo elektronski odjemalec, ampak ponuja tudi koledar, ki lahko obdeluje iCal in Google Calander koledarje. Kot vsak spodoben elektronski klient ima tudi seznam stikov, možnost prijave na novičarsko skupino, filtriranje spama, obdelava nalog in zapiskov, šifriranje in podpisovanje sporočil.

Ker se praktično vsak Gtk+ program lahko brez posebnih težav prekompajla :) . Še en screenshot development okolja:
Shrani.si

Od včeraj dalje je moj ISP postal t-2. Do sedaj še nisem opazil resnih problemov. Sem pa razočaran, da kljub 8 Mbit/s liniji dosegam največ 850 KB/s in povprečju 770 KB/s namesto plačanega 1 MB/s. Deluje pa oddajanje 1 MBit/s, tako da je sedaj moj strežnik nekoliko razbremenjen in še hitrejši.

Začele so se tudi resne priprave na Ubuntu release party za Intrepid Ibex, ki so sicer javnosti nedostopne. Več informacij pa ob uradni razglasitvi. So, stay tuned.

Mi kdo lahko razloži, zakaj se izpiti iz programiranja pišejo na liste?! How stupid are they? Mislim da ima univerza dovolj laboratorijev, da bi ponudila računalnike. Internet se enostavno izklopi, če je že bojazen pred zlorabo.

Tako pa lahko rečem da 15% vsega časa pri izpitu porabiš za pisanje in popravljanje napak pri pisanju. Teh 15% bi nekateri raje vložili v dejansko reševanje nalog! Na koga se lahko obrnem, da bi se pritožu?

UPDEJT: Dobro, razumem da se lahko na izpit prijavi tudi čez 100 študentov. Pa vendarle se bi morala rešitev iskati bolj aktivno.

Ben Collins, razvijalec v Ubuntu kernel ekipi je v svojem blogu najavil vključitev Linux jedra 2.6.27 v prihajajočo Ubuntu izdajo, imenovano Intrepid Ibex. Po debati na dopisnem seznamu se je ekipa zaradi vrsrto novosti v novem jedru odločila za vkljulčitev verzije 2.6.27. Slika jedra bo v repozitorijah na voljo v naslednjih 24 urah.

Vključitev jedra 2.6.27 bo prinašala vrsto izboljšav pri podpori Web kamer in prihaja z novo alsa izdajo 1.0.17. In zaradi te nadgradnje je tudi možno pričakovati vključitev nove različice PulseAudio 0.9.11, ki prinaša vrsto izboljšav pri predvajanju zvoka. Nekateri deli so na novo spisani, ki naj bi omogočali brezprekinitveno predvajanje. Odpravljene so tudi nekatere resne napake pri predpomnjenju zvoka in multipleksiranja različnih zvočnih virov.

Razmišljal sem, kako bi ponovno napisal glavno komponento Teuthide. Trenutna delovna površina, ki prikazuje predmete, je Gtk+ gradnik, podedovan od gradnika GtkDrawingArea. Delovna površina ima notranji seznam vseh predmetov, ki nato spreminjajo svoj položaj, obliko in ostale lastnosti. Vendar predmet je običajna struktura in ima zato nekaj pomanjkljivosti:

  • koda za obdelavo predmetov je nepregledna,
  • vsa dejanja nad predmeti mora opraviti delovna površina

Zato sem razmišljal v smeri, da bi delovna površina bila kontejner, mogoče kar izpeljan iz GtkFixed, ki že omogoča poljubni položaj. Predmeti pa bi bili ali Gtk gradniki. Vendar tukaj je težko najdit gradniki, ki bi ustrezal predmetom. Najbolje bi bilo, da bi predmet bil izpeljanka gradnika GtkDrawingArea z vključenimi dogodki. Če bi predmet bil Gtk+ gradnik, bi lahko zelo enostavno povezoval dogodke in pisati odzivne funkcije.

Malo sem se poigral z murine pogonom za gtk+ teme. Source sem dobil iz Intrepid repozitorija, kjer je notri RGBA verzija pogona. Po majhni spremembi izgleda Rhythmbox takole:
Shrani.si

Vendar je problem s prelivom, ker ostali gradniki, ki so znotraj okna ne ohranijo ozadja.

Mapa (ang. folder):

Imenik (ang. directory):

/home/luka/dokumenti/

Razlika je očitna. Sedaj pa upam, da se bodo izrazi tudi v dokumentacijah pravilno uporabljali …

Pred dnevi dobil knjigo Fundations of Gtk+ Development …
Shrani.si

Čeprav že veliko večino obravnavanega vem, se vedno najde kakšna podrobnos ki je nova. Posebej mi je všeč poglavje za izdelavo lastnih GObject objektov.

Ko sem malo brskal po ubuntuforums forumih, sem naletel na pobudo za izdelavo nekakšnega system restore mehanizma za ubuntu. Takoj sem se spomnil mojega projekta, ki naj bi tudi uporavljal takšno nalogo. No projekt nikoli ni videl širše publike zaradi nekaj problemov in pomanjkanje časa. Sem pa ugotovil nekatere probleme:

  1. kateri podatki so dovolj pomembni za sistem
  2. na kakšen način naj uporabnik obnovi sistem

Pri prvem vprašanju se že kar kmalu srečaš, ko imaš pripravljen vmesnik za izdelavo obnovitve. In se je potrebno odločiti ali se bodo shranjevale le sistemske datoteke za zagon sistema ali pa še zraven uporabniške nastavitve, baza nameščenih programov, …

Drugo vprašanje je mogoče bolj zapleteno. Ko se enkrat uporabniku sesuje sistem, na kak način bo sedaj ta sistem obnovil. Ali naj bo pripravljen vnos v grub meniju.  Pa si poglejmo scenarije:

  1. uporabnik deformira namizje,
  2. uporabnik izgubi domači imenik,
  3. napačna nastavitev sistema

Prva točka je rešena, če so v obnovitvi shranjene nastavitve namizja za vsakega uporabnika. Pri drugi točki je potrebno narediti kompromis. Nesmiselno je arhivirati celoten domači imenik uporabnika. Lahko se pa rešijo nekateri drugi podatki npr. elektronska pošta, zapiski (npr. za Tomboy). Rešljivost tretje točke pa je pogojena z sistemskimi datotekami, ki smo jih priložili v obnovitev.

Ker je to procedura za reševanje sistema, si predstavljamo da je tretja točka najbolj kritična. Če se uporabniku zaradi napačne nastavitve ne požene X strežnik ali če se mu ne priklopi particija.

Verjetno je najboljši trenutek za odpravo sistemskih nastavitev tam, kjer se sistem prične nalagati. Se pravi po zagonu jedra in pred glavno init skripto, ki poganja ostale storitve. Vendar tukaj naletimo na drogo težavo: če imamo sistem porazdeljen na več particij (npr. /usr), se te ne bodo priklopile in npr. knjižnice za zagon programov ne bodo na voljo.

Dovolj brainstorminga za danes. Se nadaljuje v drugem delu.