Når man går igang med at lave en ny Linux distro ...

Her postes alt, som ikke direkte har noget med Ubuntu at gøre.
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Når man går igang med at lave en ny Linux distro ...

Indlæg af lath »

Det måtte jo ske, og jeg er så småt gået i gang med at lave en ny Linux distro.
Den skal kun bruge vanilla kildekode. BSD system-agtig med mest mulig automation af trivielle sysadmin aktiviteter : Jeg bliver for eksempel aldrig fan af pakkesystemer, der ikke kan opløse afhængigheder - da det simpelt hen er spild af tid at gøre det manuelt.

Det er faktisk meget sjovt, og jeg bestemmer hvordan styresystemet skal skrues sammen.

Beslutninger som jeg har taget:
  • Det er et styresystem baseret på Linux kernen. Jeg bruger en vanilla (=umodificeret) udgave af kernen, og det blliver nyeste stabile kerne.
  • Upstream Linux distro bliver sandsynligvis Slackware Linux (den mest UNIX agtige Linux distro), men der er en nogle ting der er skiftet ud:
  • Init system:
    Upstart: Det samme som f.eks. Ubuntu 14.04 LTS bruger. Brug af systemd er en måske, og det er først aktuelt om mange år.
  • Pakke system:
    1. Pakke systemet er lag opdelt - lige som med dpkg og apt.
    2. Inderst er pkgsrc: http://www.pkgsrc.org/#docs - 16.000 pakker - der er klar til brug - og også til Linux styresystemer, selv om pkgsrc kommer fra NetBSD.
    3. Adfærdspakker: Når pakkesystemet skal tage beslutning om at gå ud af 1 vej, og der er fra 2 til flere mulige veje for at opløse en afhængighed, hvilken vej skal så vælges? Eksempelvis så kan en sysadmin installere en lille pakke, der fortæller at en ekstern( i forhold til styresystemet) MTA(=emailserver) skal bruges.
    4. Oven på pkgsrc og adfærdspakker - laver jeg et pakkesystem a la PC-BSDs *pbi pakkesystem, der både har alt-i-en-pakke, såvel som pakker-med få store afhængigheder så som f.eks. GTK+ 2.x, eller GTK 3.x, eller Qt 5, eller Qt 5 + KDE Framework 5.
      http://download.pcbsd.org/iso/10.1-RELEASE/amd64/docs/html/update.html
    5. Med *pbi ligende pakker kan man nemt have flere forskellige versioner af det samme program på samme tid - det bliver noget med at sørge for at have en tilvalgsmulighed aktiveret som standard, der bruger 1 sti til et sæt konfigurationsfiler, da mange programmer (og desktops, f.eks GNOME) ikke kan håndtere at der eksisterer forskellige versioner af konfigurationsfiler.
    6. Til en start er der kun web sider til at finde interessant software og så CLI værktøjer, men et GUI værktøj i stil med AppCafe (se skærmbilledet herunder) vil jeg også gerne tilbyde:
      Billede
  • Desktop (til at starte med):

Projektet er i den 1. fase som hedder Planlægning.
2. fase er at bygge styresystemet op - manuelt, og ....
den 3. fase er hedder automation som er automation af fase 2 , så der er mindst muligt manuelt arbejde. F.eks. når en ny pakke er klar så opdateres pkg.DOMAIN.TLD domænet automagisk.
Den 4. fase er infrastruktur - upstream website, ISO download mirrors, download via BitTorrent - i den stil.
Den kvikkelæser har sikkert bemærket at fase 3 of 4 overlapper hinanden.

Den har ikke fået noget navn - endnu.

/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags