GoboLinux és una distribució de Linux la característica més destacada de la qual és una reorganització del sistema de fitxers Linux tradicional. En lloc de seguir l'estàndard de jerarquia del sistema de fitxers com la majoria de sistemes semblants a Unix, cada programa d'un sistema GoboLinux té el seu propi arbre de subdirectori, on es poden trobar tots els seus fitxers (incloent-hi la configuració específica d'aquest programa). Així, un programa "Foo" té tots els seus fitxers i biblioteques específiques a /Programs/Foo, sota la versió corresponent d'aquest programa disponible. Per exemple, la versió 8.1.0 del conjunt de compiladors GCC residiria al directori /Programs/GCC/8.1.0.
Segons els desenvolupadors de GoboLinux, això resulta en un sistema més net.
Visió general La jerarquia de GoboLinux representa una desviació radical del sistema de fitxers utilitzat tradicionalment per la majoria dels sistemes operatius semblants a UNIX, on els tipus específics de fitxers s'emmagatzemen junts en subdirectoris estàndard comuns (com /bin per als executables i /etc per als fitxers de configuració) i on els gestors de paquets són utilitzats per fer un seguiment de quin fitxer pertany a quin programa. A GoboLinux, els fitxers de cada programa es col·loquen al subdirectori dedicat del seu respectiu programa. Els creadors de GoboLinux han dit que "el sistema de fitxers és el gestor de paquets", i el sistema de paquets GoboLinux utilitza el mateix sistema de fitxers com a base de dades de paquets. Es diu que això produeix un arbre de directoris més senzill i menys desordenat. GoboLinux utilitza enllaços simbòlics i un mòdul del nucli opcional anomenat GoboHide per aconseguir tot això mantenint la total compatibilitat amb la jerarquia tradicional del sistema de fitxers de Linux.
Els creadors de GoboLinux han afirmat que el seu disseny té altres "modernismes", com ara l'eliminació d'algunes distincions entre directoris tradicionals similars (com les ubicacions dels executables /bin, /usr/bin i /usr/local/bin). Els dissenyadors de GoboLinux han afirmat que això provoca que els scripts d'intèrpret d'ordres es trenquin amb menys freqüència que amb altres distribucions de Linux. Aquest canvi, introduït per GoboLinux el 2003, només ha estat adoptat per altres distribucions molt més tard: Fedora va fusionar /bin i /usr/bin el 2012; Debian va habilitar la fusió /usr per defecte el 2018.
GoboLinux també permet a l'usuari tenir diferents versions del mateix programa instal·lades simultàniament (i fins i tot executar-les simultàniament). A més, s'ha afirmat que l'índex de gestió de paquets mai no es podria dessincronitzar amb el sistema de fitxers, perquè les referències a fitxers inexistents simplement es converteixen en enllaços trencats i, per tant, es tornen inactius. Els canvis del sistema de fitxers de GoboLinux també permeten altres innovacions, com ara un sistema d'arrencada completament nou que no utilitza sistemes d'inici d'estil System V o BSD.
Jerarquia de fitxers miniatura|Captura de pantalla de la jerarquia de fitxers El disseny de GoboLinux va ser influenciat per sistemes anteriors com NeXTSTEP, AtheOS i BeOS, tots els quals van adoptar estructures originals del sistema de fitxers tot mantenint un grau considerable de compatibilitat amb Unix. A l'arrel de l'arbre GoboLinux, hi ha sis directoris: Programes, Usuaris, Sistema, Fitxers i Muntatge.
Programa "Compilar". Compile és un programa que descarrega, desempaqueta, compila fitxers tarballs de codi font i instal·la el codi executable resultant, tot amb una sola ordre (com ara Compile foo) utilitzant scripts de compilació senzills coneguts com a "receptes".
El sistema Compile és una mica similar al sistema Portage de Gentoo, que es basa en la col·lecció FreeBSD Ports. Tanmateix, Portage està fet per a una jerarquia de sistema de fitxers tradicional, compatible amb l'estàndard de jerarquia de sistema de fitxers, mentre que Compile amplia la capacitat de la jerarquia de sistema de fitxers distintiva de GoboLinux a l'àrea de gestió de paquets. Així, a GoboLinux, el mateix sistema de fitxers serveix de manera natural com una mena de base de dades del gestor de paquets.
El programa Compile es va introduir a la versió 011 de GoboLinux. Abans d'això, hi va haver discussions sobre portar el sistema Portage de Gentoo a GoboLinux i desenvolupar el port com a projecte SourceForge.net amb el nom de GoboPortage.Gentoo Forums : View topic - GoboGentooSourceForge.net: GoboPortage
Les altres funcions de Compile inclouen:
L'ús del lloc de descàrrega propi de cada programa El repositori de la distribució (o un dels seus miralls) només s'utilitza per descarregar receptes. Les receptes es poden descarregar sobre la marxa o per lots. Guions de compilació minimalistes i orientats a declaracions El programari típic de "configure; make; make install" es pot escriure en dues línies, facilitant molt el manteniment. Suport de dependències a l'estil GoboLinux El programari compilat "a mà" per l'usuari es té en compte per un mecanisme de detecció. Camí-agnosticisme També funciona en una instal·lació de GoboLinux sense arrels (és a dir, dins d'un directori d'inici de qualsevol altra distribució).
Alliberaments Les versions s'han numerat mitjançant el sistema de base octal. Segons els autors, aquest esquema es va escollir perquè manté el típic zero inicial que està present en molts números de versió del programari lliure (ja que un zero inicial sovint indica que un nombre és octal), i és un joc de "carrera de números de versió". Això va passar entre les distribucions de Linux al voltant de 1999. Quan es llegeix com a nombres decimals, l'ús de nombres octals provoca un "bump de versió" determinista cada vuit llançaments. Fins a la versió 013, GoboLinux no feia "alliberaments puntuals", per tal d'evitar la implicació que algunes versions eren més estables que altres. Aquesta tradició es va trencar amb la versió 014.01, una actualització de la 014 centrada en la correcció d'errors.
Ports Actualment, GoboLinux està desenvolupat per a x86-64. Es va fer oficialment per a l'i686 només fins a la versió 015, però en un moment donat es va fer un port incomplet per a l'i386. També s'han fet ports a arquitectures incrustades, com ARM i SuperH; aquestes tasques es van aconseguir amb Bootstrap,GoboLinux Embedded una eina desenvolupada especialment per automatitzar la creació de ports.
Recepció LWN.net va revisar GoboLinux 010 el 2004:
Linux.com va escriure una ressenya sobre GoboLinux 013:
Jesse Smith de DistroWatch Weekly va revisar GoboLinux 015:
Smith també va revisar GoboLinux 016.
Nom i logotip Gobo és un personatge de ficció. Poc se sap d'ell, perquè els que el van veure mai van sobreviure per explicar-ne informació. També té un criat lleial fictici anomenat Fibo. La mascota de GoboLinux que és un pingüí que porta la roba de Fibo.
Referències
Enllaços externs
Categoria:Distribucions GNU/Linux