Vad är Foresight?

Posted 2007-02-21

För ungefär en månad sedan släpptes version 1.0 av linuxdistributionen Foresight. Utan att vara den mest spridda eller omtalade distributionen för stunden, är den ändå en av de mer nybildande. Det är inte "bara" ett Ubuntu med lite andra förinstallerade program och med ett annat skrivbordstema.

Foresight innehåller både Java, Flash och stöd för en armada multimediaformat från början. Och för de som faktiskt undrar så är standardtemat grönt.

Foresight har länge varit omtalat för att de alltid är först med senaste Gnome. Samma dag som en ny, stabil Gnomeversion släpps, så släpps också en ny version av Foresight.

Det är inte bara gamla, dammiga Gnome som ingår. Alla (nåja, de flesta) nya, coola projekt följer med i installationen. Foresight var en av de absolut första distributionerna att skicka med Mono, och alla de omtalade Monoprogrammen (Beagle, Banshee, F-spot och alla de där) ingår. Gulliga saker som inte är skrivna i Mono ingår också, som till exempel Avahi, Brasero och NetworkManager. Om det är nytt och coolt, är det mycket möjligt att det finns, eller kommer snart. Faktum är att det är troligt att Beagle, som just tagit sig in i de flesta distributionerna, snart är på väg ut ur Foresight igen, till förmån för Tracker.

När de flesta distributionerna överväger att gå över till ett 3d-skrivbord har naturligtvis Foresight redan gjort det. Compiz ingår i standardinstallationen, dock inte ATI:s eller Nvidias proprietära 3d-drivrutiner.

Det är dock inte vilka program som ingår i standardinstallationen som är mest spännande med Foresight - de flesta har sina egna preferenser (själv klarar jag bara inte av Banshee, t ex), och en nyinstallation behöver man (förhoppningsvis ;) ) bara göra en gång. Foresight är inte baserad på varesig Debian eller RedHat, utan det är istället baserat på rPath Linux, och dess pakethanterare, Conary. Conary är byggt för att vara "nästa generations RPM". I och med att det är en egen pakethanterare kan Conary göra någonting som RPM och DEB inte kan: slänga ut allt gammalt skrot som samlats ihop över årens lopp. Tyvärr följer det av det här att Conary inte än är riktigt lika välutvecklat, och inte har en riktigt lika stor programdatabas, som Debian. Conary har dock flera fördelar jämfört med andra pakethanterare. Det tydligaste är hur enkelt det är att bygga paket: man behöver sällan skriva mer än 5-10 korta rader text, och texten är vanlig pythonkod. En annan sak som är en gigantisk fördel, men som samtidigt gör det lite mer komplicerat till en början, är att Conary har ett inbyggt, distribuerat versionshanteringssystem. Det innebär att det är busenkelt att göra egna paket (och hela distributioner för den delen) baserat på existerande paket genom att göra en vanlig branch, och det blir också busenkelt att uppdatera genom att göra en merge av ändringarna - precis som i vanliga versionshanteringssystem. Va? Ni skiter i det, och vill bara kunna använda det? Jaja, jag ska fortsätta...

Några bra-att-ha-kommandon:

Installera eller uppdatera ett paketconary update <paketnamn>
Installera eller uppdatera ett paket från källkodconary emerge <paketnamn>
Uppgradera alla paket till senaste versionenconary updateall
Uppdatera paketlistornasker automatiskt när man använder dem.

Ytterligare en rPath-het som ingår är rPath Appliance Agent (rAA). Det är ett webbgränssnitt för administration av datorn. Jag vet, det låter en smula galet med webbgränssnitt till en början, men man får tänka på att den ursprungliga designen av rAA kommer från rPath, som vill underlätta mass-utrullningar av upp till tiotusentals datorer - oavsett om det är skrivbordsdatorer, servrar eller Xen-noder.

Genom rAA kan du t ex ställa in vilka tjänster som ska starta när datorn startar, sköta paketinstallationer, och även schemalägga uppgraderingar av systemet (vid en nyinstallation sker det automatiskt varje måndag). Man kan även få mail och/eller RSS-meddelanden när uppdateringar hittas. Ett GTK-gränssnitt för rAA är under utveckling.

Ett vanligt klagomål mot många binära distributioner är att de bara uppdaterar paketen när varje ny version släpps - vilket ofta är en gång i halvåret. Om man inte kör den instabila versionen, vilket riskerar att få ditt system att falla i bitar när som hellst. Foresight har "rolling stable", precis som bl a Gentoo, där även den stabila utgåvan uppdateras med nya paket kontinueligt. Aldrig mer vänta 4 månader på att få nästa Firefox!

Är du intresserad av Foresight är det bara att besöka hemsidan, http://foresightlinux.org. Titta även in i den svenska IRC-kanalen #foresight-se @ Freenode - vi vill ha nytt blod!

There is 1 comment

Foresight + Macbook

Posted 2006-11-22

The latest episode of LUGRadio contains a segment about rPath and their packaging system Conary. It sounded really neat: kind of what Canonical is trying to accomplish with Launchpad/Bazaar, but it's completely integrated into the packaging system and not some kind of extra layer. Also, if all you need to do to install an application from source, why do you need to go through like 2000 steps in order to create a package? Conary source packages are often 5-10 row python scripts that basicly say ./configure; make; make install.

Foresight is a distro that's using Conary (and the rest of the rPath goodness), and it also always the first distribution to release a version with the latest Gnome. It suited my needs great.

I realized that Macbook isn't supported - apparently, no developer has got one. The Disc Druid partitioner threw the GPT partition table away, and that's what the Macbook uses. Crap... After that, the installer installed GRUB, which isn't supported on a Macbook. Double crap!

Apparently, there's something in the EFI that thinks "Fuck - this crap is so incompatible, it Must be Windows. I'd better emulate BIOS/MBR right away!", and thus boots my hard drive. Also, I managed to install lilo from the rescue mode, and after that, Foresight booted!

So, I got into this sytem, but I wasn't done yet. Since the touchpad (normaly) only have one button, I need to use keyboard buttons to click, and to do that I need xkbset - I'm sure there are other options, but none that I know of. In any other system than Conary, I'd have downloaded xkbset and installed it, but this time, I tried to create a xkbset conary package. The result? When I hade read some documentation and worked on the package for a while (an hour or two), it worked great!

Next step: correct resolution. My LCD is 1280x800, but something about the intel graphics which I don't understand makes that impossible, unless you use the wonderful 915resolution application. That wasn't packaged either, and when packaging it, I found out that it needed a newer version of vbetool than what is avalible in the standard repositories. The solution? Package 915resolution, and create a "shadow" package from the upstream pm-utils (which contains vbetool) with the newer version of vbetool in it. All of it worked out Great, and my computer now works much better :D

I really like how packaging Just Works - that's the way it should be!

[b]Update:[/b] For those of you who actually wants to do this yourselves, check out http://issues.foresightlinux.org/confluence/display/docs/Install+Foresight+on+a+Macbook where I documented the process

There are 10 comments