La mayoría de los usuarios comunes al intentar aprender sobre GNU/Linux se encuentran perdidos por muchas diferentes razones:
Muchas distribuciones, las personas que saben recomiendan varias y la persona no termina decidiendo ninguna; rumores de mala compartibilidad con algunas piezas de hardware, al elejir alguna distribución la computadora le funciona más lenta, poca compartibilidad con juegos, no tiene soporte para algunos dispositivos, etc....
Estuve trabajando en un proyecto bastante tiempo el cual solucionaría todo esto, en donde una persona que sólo sabe usar Internet y chatear pueda instalar Gnu/Linux en pocos minutos, en donde aquellos programadores avanzados que pasan horas configurando y compilando el sistema operativo para obtener el máximo rendimiento posible usen ese tiempo en otros programas que desean hacer pero mis conocimientos son limitados para el tamaño de este proyecto.
Consiste básicamente en un servicio online interactivo donde el usuario entra al sitio web, éste automáticamente detecta el hardware del equipo, el usuario sigue un asistente, elige los programas, orientación del Sistema Operativo, y lo descarga con el software y drivers especificos de su PC.
El tamaño final de la descarga puede ser mucho menor que las actuales, más eficiente y sencilla. Todo sin instalar ni descargar algun plugin, el único requerimiento para la página sera un navegador que soporte HTML5 como máximo podría usar Java. El archivo descargado es un ejecutable con un grabador de CD/DVD interno, luego de realizar algunos procesos de configuración se genera la imagen y graba (todo automaticamente). Por último se reinicia con el CD puesto y se graba el Sistema Operativo con el Kernel compilado, software optimizado, programas que uno ya eligio en el asistente y todos los dispositivos funcionando sin tener que configurar nada más.
En éste sitio se puede ver como actualmente el kernel de linux esta creciendo hasta un punto critico donde se esta volviendo grande, lento y pesado, incluso Linus Torvalds coincide en esto. Por ejemplo: los servicios ¿como una persona con un pentium 3 y con apenas una tarjeta de video decente puede instalar cualquiera de las grandes distribuciones actuales teniendo hasta los servicios de bluetooth activados por defecto? Con este proyecto al analizar la pc antes de bajar el Sistema Operativo se pueden eliminar un monton de servicios innecesarios, como por ejemplo tener el servicio de bluetooth activado por defecto en una pentium 3. A la vez podes tener la webcam funcionando sin estar horas partiendose la cabeza intentando encontrar los drivers para la misma.
En aspectos más amplios no se trata sólo de bajar el kernel compilado automaticamente en tu pc, si no de ajustar y especificar varias areas para aprovechar los recursos al máximo, ya sea elijiendo programas, navegadores web, particion de disco, orientación o tipo de escritorio. Además del compilado final, se incluiria un programa integrado a éste servicio Web, donde pueda actualizar los drivers, recompilar, contribuir a la comunidad con controladores de dispositivos, etc.
Este Sistema Operativo Especifico debería empezar desde la página web donde la misma debería tener una interfaz intuitiva, simple, interación con el usuario y un asistente de descarga, de echo ya existen varias páginas que detectan el hardware que uno tiene y analiza si los juegos pueden funcionar en la PC de uno además brinda detalles y sugerencias sobre cada dispositivo, por ejemplo:
http://cyri.systemrequirementslab.com/CYRI/intro.aspx
http://www.yougamers.com/gameometer/10171/
Con lo cual la detección del Hardware no la considero un impedimento grave. El asistente debería incluir pasos como:
Orientación y Servicios
Para empezar tendría que elejirse el tipo de computadora: Servidor, Pc de escritorio, almacenamiento portatil,destinada para algun uso particular (estudio de música, equipos multimedia, etc.). Aqui se pueden pre-establecer programas según el escritorio.
Escritorio y Paquetes
Recomendar un tipo de escritorio según el hardware pero ofrecer todas las alternativas. Incluso poder modificar la configuración de alguno existente de manera tal que quede básico y eficiente, que no gaste recursos en imagenes para iconos o botones, en varias barras, paneles, etc. y dejarlo esteticamente atractivo y limpio. En éste paso también se deberían elegir que tipo de paquetes y repositorios usar.
Tipo de Partición
Desconozco actualmente de ext4 y su rendimiento, pero hace unos años para archivos grandes era mejor la partición xfs y para chicos reiserfs. Se podría convinar y usar cierta partición para el arranque (grub, lilo, etc) según las características del hardware y que tipo de kernel* se usa recomendar uno. En este paso se debe poner de manera va a particionar el disco ya que en la instalación no estaría disponible.
Compilación e Instalación
En la última etapa del asistente se descargan sólo los archivos necesarios compilados en un programa ejecutable el cual incluirá un grabador de CD libre, luego al ejecutarlo se crea la imagen y graba en un cd automaticamente. La instalación debe mostrar 2 o 3 pasos donde se completen los datos personales y luego sólo el progreso y tiempo estimado de finalización.
Se podrían agregar otros pasos aunque lo mejor serian pocos pasos sencillos. Detectar automaticamente el tipo de arquitectura. De más esta decir que el sitio estaría traducido en varios idiomas y que el software que se baje sea la mayor parte posible en el idioma elegido.
Este sistema podría ser utilizado para detectar incluso otros dispositivos como por ej: Playstation 3, Playstation 2, Celulares de última generación y otros dispositivos multimedia. Se puede discutir sobre cada dispositivo pero lo ha Al ser Software Libre permitiria que la comunidad renueve, contribuya con drivers y otras mejoras constantemente, con lo cual la base de datos de los drivers de dispositivos se actualizaría constantemente. Serviría también para que cada distribución adapte el sistema y para otros sistemas operativos que usan otro kernel como *BSD(http://es.wikipedia.org/wiki/FreeBSD), Opensolaris (http://es.wikipedia.org/wiki/OpenSolaris), entre otros.
En éste blog sólo intento comunicar lo básico del proyecto para armar un equipo y hacerla si hay gente interesada en desarrollarla, quisiera saber que opinan sobre esto, si es posible, si le interesaría trabajar, habría que organizar varias cosas primero. De echo nisiquiera sé donde proponer la idea para que una comunidad la acepte y tome para realizarla.
Busco programadores de verdad que estén interesados de verdad, no gente que busque dinero, con el proyecto final se puede ganar dinero sí, pero hasta que no esté finalizado no.
26 comentarios:
Esta un poco confuso tu proyecto mi amigo exactamente de que se trata? porque hay muchas palabras tecnologicas y hasta se lee bonito pero no dices concretamente de que se trata el proyecto.
Por poco que entendi pretendes hacer un linux que opera facilmente? (Me atrevo a decir que tu idea es crear un linux tan facil como WINDOWS?).... Porque si es eso es como si estuvieramos diciendo que encontraste la cura del SIDA, empresas como Canonical RED HAT, Mandriva con años de investigacion y desarrollo no lo han logrado.
Otra teoria que entendi es que pretendes crear un proyecto donde das soporte a las personas para hacerles mas facil la migracion hacia linux? No se sacame de esa duda concretamente que pretendes con el proyecto.
Oh bueno ya leyendolo por tercera vez, reducimos todo a que tu propuesta es hacer un SOPORTE TECNICO A LINUX que mediante chat te vayan explicando como instalar, compilar etc etc?. Bueno si es eso pues hay miles, o millones de empresas que ofrecen ese servicio ya sea gratuito o de paga. es mas... los propios distriuidores como canonical y mandriva tienen una seccion de ayuda via chat.
Disculpa mis otros comentarios ahora si lei el articulo completo es que solo habia leido lo que estaba en la pagina principal. MIL DISCULPAS!.
Bueno ahora si respecto a tu proyecto y ahora si quiero suponer que entendi bien es que al estar en la pagina online y detectar el hardware de la PC entonces te descargara una distribucion de acuerdo a lo que tienes instalador.
COMPAÑERO esa tecnologia todavia es inexistente!! (Digo lo de detectar hardware si existe en muchas paginas se usa, pero que te compile y descargue un sistema operativo de acuerdo a tus necesidades va mucho mas alla de la tecnologia disponible hasta el momento te imaginas cuanto tardaria un servidor armar un Linux para tu pc en especifico?.
Lo unico beneficioso que saldria de este proyecto seria descargar un linux con menor tamaño, pero eso de que el mismo servidor elimine cosas como drivers de bluetoth porque tu PC no tiene BlueTooth, eso es imposible de hacer hoy en dia, si no te imaginas cual mas ricas serian las empresas como MICROSOFT, Poniendo de promocion BAJA EL WINDOWS A TU MEDIDA.
Bueno seguiremos investigando sobre tu proyecto...
ja sisi, no tiene nada que ver con brindar chat o servicio tecnico online...menos mal que lo entendiste. ¿pero porque no lo entendias? digo para saber si tengo que cambiar algo de la pagina?
Con respecto a tus dudas... si es posible, es dificil pero se puede hacer. Además el servidor no va a compilar el programa en el servidor, si no en la pc cuando lo instala.
Estuve hablando con un ingeniero en sistemas que le intereso la idea y empezamos a hablar de las ventajas, desventajas, aclarar ideas, etc...asi que cuando terminemos de aclarar todo voy a ir subiendo noticias, también voy a hacer unos bocetos y animaciones para que se entienda. Sé que lo único parecido que hay es el netinstall de debian, pero es todo a ciegas practicamente y tenes que saber bastante sobre que paquetes bajar y no es nada facil, comparado con esto es como saber todo sobre la mecanica cuantica ... ja. Igualmente muchas gracias por tus comentarios y consejos ¿si es posible vos que opinas de algo asi?
Podría empezar por averiguar como funciona SuseStudio, para la parte de compilar el sistema ya armado. Bastante ambicioso, siga así.
Muchas gracias por tu consejo de susestudio, la verdad no lo conocía aunque investigando sobre eso varios comentarios decian que es una copia de http://custom.nimblex.net/
Pero mi proyecto no se basa en elegir los programas solamente...
El tema de compilar un sistema operativo completo en tu pc, lleva mucho tiempo, y no es nada facil.
Por ejemplo, compilar gentoo, con un escritorio liviano como XFCE a mi Pentium 3 de 450 mhz le llevo más de 24 hs (fueron varias hs mas, pero no se exsactamente porque me fui de viaje mientras compilaba!)
Te puedes dar una idea de alguien que entre con su PC antigua, porque ve que tu instalador online le Promete obtener un linux que aproveche todo su hardware. Pero se de cuenta que el sistema lleva 15 hs instalando y sigue? Seguramente mete un reset y vuelve a windows 98se..
Me parece un proyecto demasiado ambicioso, ni hablar que hay una parte que no entiendo.
Porque en teoria el Usuario ingresa al sitio web. Accede al Instalador online, el mismo scanea la PC y despues? Como formatea y particiona el disco estando el usuario utilizando un SO que esta accediendo a ese disco? La unica forma seria que el usuario tenga una live CD y desde ahi ingrese al instalador Online, ¿Pero para eso no es mas facil tener todas las fuentes en el CD/DVD y que compile desde ahi?
Saludos, perdon por los horrores ortograficos pero no me instale aun el corrector del firefox :P
Recien veo que hablabas de utilizar un CD! no vi que continuaba el post jeje.
Saludos.
La idea es bastante buena... no le hagas caso a quienes escriben tonterías y no leen todo el contenido... querer algo así como dices es algo que yo también desearía, y es lo que algunas distros intentan hacer... claro que debe conocer el usuario más del sistema en cuestión para llegar a eso.... cosa difícil para un usuario común, o con pocos conocimientos...
Creo que la idea ó proyecto puede comenzar con algo pequeño y simple...
¿Puedes enviarme más sobre esto a mi correo: vargux[AT]gmail[DOT].com ? ...
Podríamos generar algunas ideas es conjunto... quién sabe!!!
Salu2!!!
La verdad que la idea es buena, pero como ya dijeron el hecho de compilar todo es imposible hoy en día.
Por el otro lado, te comento que lo que decís de que en la página el usuario seleccione que desea y que no en su sistema si existe.
Es más, la distribución SLAX hace exactamente eso en su web. Uno entra, selecciona que programas desea, cuales no y luego al hacer click en download te baja un archivo TAR.GZ con la distribución armada según lo que seleccionaste. Podrías ver con la gente de slax como lo implementaron.
Saludos
A quienes solo critican e ingresan para que le hagan click a sus enlaces, decirles que por lo menos esta persona contribuye con idea que contribuira a fomentar el uso de Linux. Parecen perros del hortelano.
La verdad, el proyecto me parece muy interesante y ambicioso. (Nada es imposible.)
Sólo tengo algunos puntos por aclarar:
1. No entiendo bien cual es el target de la aplicación... a quien va dirigida.
En la descripción del proyecto dice: "... en donde una persona que sólo sabe usar Internet y chatear pueda instalar Gnu/Linux en pocos minutos...". En mi opinión, alguien que usa la PC sólo para chatear, no le debe interesar usar Linux. (Tampoco Windows,... pero es lo que tiene.)
Por otro lado, el usuario entendido, si le molesta todo lo que sobra de su instalación, elimina el sobrante porque lo sabe hacer.
2. Ya que es tan ambicioso el proyecto, puede tardar muchísimo tiempo en concretarse, y mas aun, en publicarse el primer release. Creo que deberían plantearse las cosas de tal forma que haya metas intermedias, y que se pueda ir publicando alguna parte (que sea útil) de la gran aplicación, para que la gente que participa en el proyecto vaya viendo los resultados, y no se aburra con horizontes muy lejanos.
De todas maneras, estaría dispuesto a participar, aunque en realidad, tendría mucho que aprender, y quizás poco para ofrecer, ya que los temas que se plantean superan mis conocimientos.
Saludos.
[Adrián E. Córdoba]
1) Va dirigida a todo el mundo, los usuarios con pocos conocimientos
lo pueden usar por su sencilles y los programdores avanzados también
para evitar estar horas configurando el kernel para compilar. También
podría servir para empresas, colegios y otras instituciones. El
problema no es el sobrante, ya que una persona que no tiene idea de
como compilar un kernel no podria sacar nunca el sobrante.
2) En eso estoy de acuerdo, como primer etapa tendriamos que hacer una
pagina donde detecte el hardware, en la siguiente etapa hacer la base
de datos y relacionarla con la pagina, la tercera ya sería el programa
andando detectando el hardware y los drivers, la ultima etapa ya haria todo...aunque obviamente te lo estoy comunicando en este momento, ya tengo planeado especificamente como, pero es muy largo para copiar.
Cualquier ayuda
viene bien, estoy juntando gente interesada y programadores, pero nose si publicar
otro post diciendo "busco programadores" o si hacer un foro, u otra entrada en el blog.
pd: ya se comunicaron 2 ingenieros y varias personas por foros, por el
blog y por email
Jonatan:
Me parece que se puede armar un grupo (de Google por ejemplo),
donde se vayan conectando la gente que quiera participar, para que se
comiencen a discutir los lineamientos del proyecto.
Allí, de las discusiones, naturalmente van a ir surgiendo las
ideas, los roles de cada integrante (líderes, arquitectos, analistas,
etc.), y las tareas que pueden ir desarrollando.
Va a ser un proceso muy largo, y como es colaborativo (nadie
cobra), aunque sea por el momento, las tareas tienen que surgir de la
voluntad propia de cada integrante.
Saludos.
[Adrián E. Córdoba]
Muy interesante el proyecto. Pienso que, igual que los demás, compilar linux seria muy tardado, yo sugiero que seria más rapido instalar los paquetes por medio de binarios, al estilo de Arch linux. Suerte con el proyecto!
Hola. Saludos desde Cali, Colombia. Creo que tu proyecto es posible. Para lo de la compilación en el servidor, pienso que se puede crear una caché de drivers precompilados para diversas arquitecturas. Por ejemplo, supongamos que alguien posee un Dell Gx270, y escoge su sistema a la medida. Alguien mas desea instalar este sistema en otro Gx270. Por lo menos ambos se beneficiarian de paquetes ya compilados y optimizados para su arquitectura. En el servidor, se ensambla los paquetes específicos compilados y el resultado podría ser una imagen de CD o en USB descargable para iniciar la instalación reiniciando la máquina. Y por supuesto, como es a la medida, la descarga será menos pesada.
Es solo una idea. Muchos éxitos.
... es mas: no todo el trabajo tendría que ser del mismo servidor. Se puede crear una plataforma para que la versión instalada sea capaz de crear paquetes compilados que se suban al servidor, para que de este modo el trabajo sea colaborativo. Un problema potencial sería la seguridad pero se pueden implementar mecanismos para ello.
Algo muy parecido a la compilación distribuida, pero en este caso, cada computador con esta distro compilará para su arquitectura (podría ser en el tiempo libre de la CPU).
Bueno, esa fue una idea mas.
yo me ofrezco para traducciones y a mi pc para procesamiento de paquetes, cualquier cosa me dejas un mensaje en la pag
jejeje, mi pagina, www.novalettres.worpress.com, se me paso, sorry
enzo_lucas_2004@hotmail.com , solo una cosa, si recibe alguien algun correo mio en ingles no responder ni tocarlo, solo borrarlo, es spam y del bruto, mo se como, pero toma el control de tu cuenta, por el momento lo estoy combatiendo con cambios de contraseñas masivos, pero la advertencia queda
Bueno eso de compilar un linux ah medida la verdad si que es muy ambicioso
podrias enviarme mas informacion ah mi correo jlarryv@gmail.com ,puedo apoyar en pruebas y compilar paquetes(aplicaciones no modulos del kernel).
ah casi lo olvido para compilar paquetes podriamos usar los famosos slackbuilds de slackware.ah por cierto que nombre tendria el proyecto??
Che una pregunta, en esto de compilar un kernel, cuanto tiempo lleva en una pc comun?? estamos hablando de horas o minutos?
Tal vez se podria hacer una aplicacion con interfaz grafica para compilar el kernel, luego sumarle un identificador del hardware no se.
(te descarga el kernel tmb)
pero ya seria algo, que ahorraria mucho tiempo a la gente y si se engancha se puede ir mejorando y quien sabe, despues dar el salto a ser online.
PENSA EN HACER UN SITIO EN INGLES asi se suma gente de todo el mundo
Hola Hernn lo de compilar un kernel en su momento en una pentium 2 tardaba 20 minutos, aunque ahora tardan horas dicen (no sé porque no probe en una pentium 2 con algun so actual). Pero igualmente se van a precompilar algunos para computadoras de bajo rendimiento para que no esten horas compilando.
¿Tenes alguna forma de contactarte por email conmigo? Mi email es jonidimo@gmail.com mandame un email por ahi asi hablamos bien, gracias.
El proyecto es la caña!
Te recomiendo que mires gentoo por el tema de compilar. La propia instalacion de gentoo necesita la compilacion de todo el kernel y los programas (aunque tambien te da la opcion de instalar paquetes binarios ya compilados).
Supongo que no seria demasiado dificil hacer que se configurara el kernel de forma automatica para el hardware del pc (una vez que este fuera arrancado con un livecd y mirando en /proc y en la salida de lspci deberia bastar).
En cuanto al tiempo, casi todo el mundo tiene al menos un pentium iv, con lo que la compilacion no tardara mucho.
Sigue adelante y animo!
Ov3r0n muchas gracias por tu respuesta, pero no tengo ningun email ni dirección tuya como para contactarme con vos. Si queres mi email esta en el chat de abajo (cuando pasas el mouse sobre mi nick)
Publicar un comentario en la entrada