Kuukausittainen arkisto: Joulukuu, 2007

Samba sai Microsoftilta dokumentit

20.12.2007

Ohhoh. Jokohan Windowsin ja Linuxien/Unixien väliset levyjaot (ja esimerkiksi käyttäjätunnusten hallinta) toimisivat kohta entistä luotettavammin? EU ja Microsoft astelivat muutama vuosi sitten yhteiseen taistelukehään, aiheena muun muassa monopoliasema ja ohjelmien yhteentoimivuus muuallakin kuin Windowsissa.

Nyt asiassa on tapahtunut edistystä ja Microsoft luovutti Samban tarvitsemat dokumentit Samban suuntaan. Yay!

Vinkki Compiz Fusionin nopeuttamiseen Fedora 8:ssa

10.12.2007

… ja kenties muissakin jakeluissa. Olen siis jonkun aikaa käytellyt tässä Dell Latitude D830 -kannettavassa Fedora 8:a höystettynä sen pakettienhallinnasta löytyvällä Compiz Fusionilla + emeraldilla + compiz-managerilla. Kaikki on toiminut sinänsä nätisti, mutta selkäytimeni on koko ajan sanonut, että joku tekee tästä raskaamman kuin pitäisi.

Syylliseksi paljastui Compizin X-session alussa käynnistävä shelliskripti /usr/bin/compiz-manager. Ota alkuperäinen tiedosto talteen ja muokkaa kopiota millä tahansa tekstieditorilla pääkäyttäjänä.

Otetaan ensin emerald-ikkunointimanagerin lataaminen suoraan compiz-managerista käsin. Tämä ei varsinaisesti vaikuta suorituskykyyn, mutta eipähän tarvitse käynnistää emeraldia mistään muualta erikseen. Minulla oli rivin 85 tienoilla

USE_EMERALD=${USE_EMERALD:-no}

Vaihtamalla sen tilalle

USE_EMERALD=${USE_EMERALD:-yes}

tulee käyttöön emerald. Kyseinen emerald siis mahdollistaa paremmin compizin kanssa yhteen pelaavat ja paremmalta näyttävät ikkunanpielet.

Sitten suorituskyvyn parantamiseen – näin ainakin osalla Nvidian korteista. Tästä muutama rivi alaspäin lukee

INDIRECT=”no”

Vaihda tilalle

INDIRECT=”yes”

Ja vielä ihan tiedoston loppupäästä löytyy

${COMPIZ_BIN_PATH}${COMPIZ_NAME} $COMPIZ_OPTIONS “$@” $COMPIZ_PLUGINS || exec $FALLBACKWM $FALLBACKWM_OPTIONS

Tähän tilalle

${COMPIZ_BIN_PATH}${COMPIZ_NAME} –loose-binding $COMPIZ_OPTIONS “$@” $COMPIZ_PLUGINS || exec $FALLBACKWM $FALLBACKWM_OPTIONS

Tallenna tiedosto sijaintiin /usr/bin/compiz-manager (se vanha on jossain tallessa, eiks je?), poistu X:stä ja kirjaudu takaisin sisään. Ihaile (toivottavasti) nopeammin toimivaa Compiz Fusionia.

Muistakaa, että nämä tämmöiset modaukset voivat johtaa epävakauteen tai muihin epätoivottuihin efekteihin. Kokeilu siis tapahtuu omalla vastuulla ja jos huomaat, että joku ei enää toimi, palauta vanha compiz-manager paikoilleen.

Versionumeroinnin vaatimattomuudesta

9.12.2007

Tiedättekö, mikä perinteinen piirre avoimen koodin ohjelmissa saattaa hidastaa ohjelmien leviämistä? Siis perinteisten myyttien lisäksi.

Versionumerointi.

Yksi jos toinenkin isompi projekti voisi olla huomattavasti rohkeampi versionumeroissaan. Välillä tuntuu, että kaupallisella puolella hieman uudistunut käyttöliittymä ja pari uutta featurea riittävät siihen, että kauppojen hyllylle ilmestyy kokonaan uuden versiosukupolven leiman otsaansa saanut sovellus. Sen sijaan avoimen koodin puolella isokin koodimuutos johtaa usein siihen, että versionumeroon tulee vain yksi juokseva numero lisää. Yleisin syy tälle on se, että ohjelmoijien olisi helpompi hahmottaa asioiden kulkua: pieni versionumeropäivitys tarkoittaa, että rajapinnat säilyvät yhteensopivina edelliseen versioon nähden, isompi loikka (saattaa) tarkoittaa rajapintojen muuttumista. Ei tosin näin aina edes ole.

Hyvänä esimerkkinä vaatimattomasta numeroinnista toimii Linuxin ydin. Nykyinen kernel 2.6.23 on täysin eri otus kuin 2003 loppupuolella julkaistu 2.6.0. Silti 2.6.23 ei numerona kuulosta paljonkaan kehittyneemmältä kuin 2.6.0. Totuus on kuitenkin aivan toinen: vilkaiskaa vaikka versioiden 2.6.22 ja 2.6.23 välissä tapahtunutta muutosmäärää (varoitus: kyseessä on lähes neljän megatavun tekstitiedosto).

Toisena esimerkkinä toimii 3d-ohjelmisto Blender. Jos en ihan väärin ole ymmärtänyt, niin nykyisen Blender 2.4 -sarjan seuraaja 2.5 sisältää pikkumuutosten sijaan isompiakin uudistuksia. Miksei siis saman tien uuden version nimeksi tule Blender 3.0?

Toisaalta moni vakaakin ohjelma elää sitkeästi versiosukupolvessa v0.x. Moni varovaisempi ei tällöin uskalla ottaa ohjelmaa kokeiluun asti ja testauskohdeyleisökin jää suotta pienemmäksi kuin mitä se voisi olla.

Hyviä esimerkkejä paremmasta numeroinnistakin onneksi löytyy. Monet Linux-jakelut sentään jumppaavat numeroitaan ylös rohkeammin – toki Fedora 8 kuulostaa jo paremmalta seuraajalta Fedora 7:lle kuin mitä vaikka Fedora 7.1 olisi ollut. Myös Mozilla Firefox on hyvä esimerkki asiallisesta numeroinnista; tässä enemmän tai vähemmän lähiaikoina valmistuva Mozilla Firefox 3 kuulostaa sekin suuren massan korviin paljon uutuudenkiiltävämmältä kuin vaikkapa Mozilla Firefox 2.1.

Liiallisessa markkinointiasenteessa mennään jo metsään, mutta moni projekti voisi todellakin kaivata teflonkyynärpäillä varustettua markkinointimiestä päättämään versionumerot ja useiden softien kohdalla myös nimet.