Crear Nuevo Linux

Temas sobre proyectos de código abierto, su promoción, ayuda y todo lo necesario para mantenerlo trabajando.

Moderador: Luli

Responder
DarthJavier
Forista Nuevo
Forista Nuevo
Mensajes: 2
Registrado: Lun Dic 14, 2009 6:55 pm

Crear Nuevo Linux

Mensaje por DarthJavier » Lun Dic 14, 2009 7:29 pm

Salu2, soy estududiante de ing de sistemas, y tengo un proyecto en mente, y es el de realizar un OS especial para juego ! este seria base a linux para que fuera legal, ahora mi pregunta seria como lograr hacer que los emuladores pongamos de ps2, ps1, n64 etc esten acoplados al OS ? que cuando yo introdusca el CD o le de click al archivo se ejecute automaticamente sin necesidad de estar abriendo los programas ni nada de eso, no se si me explico ? quiero hacer un OS que ejecute cualquier consola automaticamente ? los emuladores se que existen pero como hago para unirlos al OS ? y q sean partes de el ¿? para q pase esto ¿? si me pueden ayudar les agradeceria mucho tambien me seria muy util web que indique mas sobre la creacion o programacion de linux ! soy nuevo en esto y necesito ayuda grax ! :D
Última edición por maiku el Mar Dic 15, 2009 11:09 pm, editado 3 veces en total.
Razón: Mensaje movido por el moderador del foro Programación al foro Proyectos por pertenecer mejor a esta temática. Por favor, revisa la descripción de cada foro
Avatar de Usuario
akodo
Moderador
Moderador
Mensajes: 1457
Registrado: Mié Nov 28, 2007 8:00 am
Ubicación: En la X del explorer (pulse para llamar)

Re: Crear Nuevo Linux

Mensaje por akodo » Lun Dic 14, 2009 9:07 pm

Si lo que quieres es que al hacer un doble click en un archivo de esos se abra el emulador, no necesitas cambiar nada del OS, tan sólo necesitas un navegador de archivos que te asocie ese tipo de archivos con un comando. Para hacer esto, no es necesario ningún conocimiento de programación, salvo que quieras automatizar el proceso.

No estoy muy seguro, pero creo que la gran mayoría de los navegadores de archivos grandes de linux (yo uso nautilus y me funciona) acceden a una base de datos.

La forma "fácil" de asociar el archivo con el ejecutable de forma que al hacer doble click el navegador ejecute ese comando, te la suele dar el propio navegador. Por ejemplo, suelen tener algo así como "abrir con" que, a parte de tener una lista con los posible programas que pueden abrir esos archivos, te suelen dar una opción para poder ejecutar un comando personalizado, y así abrir esos archivos con el programa que quieras.

La otra opción más compleja, aunque automatizable, consiste en editar unos ficheros, de forma que el navegador, al leer esos ficheros sepa lo que tenga que hacer cuando haces doble click. El problema que puede haber con este método es que puede que no todos los navegadores accedan a esos archivos modificados, con lo que es posible que no todos los navegadores te lo reconozcan.

Si quieres hacerlo de esta segunda forma, ahora mismo no te puedo dar ningún enlace, aunque sí tengo un pequeño script para hacer lo que dices con un programa. El archivo lo puedes descargar desde http://sourceforge.net/projects/jmusicmanager/files/, el archivo jmmmdesk.bsh . El script actua de "instalador local" del programa en cuestión (jmusicmanager) con lo que si no lo tienes no conviene que lo ejecutes.
Básicamente lo que hace es generar unos archivos y colocarlos en unas carpetas específicas. Los cambios que hace es a nivel local, con lo que no es una "instalación" para todos los usuarios. Teóricamente bastaría cambiar las localizaciones de forma que los archivos se coloquen en otras carpetas, aunque no lo tengo probado.
Los archivos que genera son:
· Un archivo .desktop para que se pueda ejecutar la aplicación desde el navegador y/o menú
· Unos archivos .xml para detectar qué tipo de aplicación ejecutar en base a la detección del archivo (realmente no sé si es al revés)
Lo que queda es modificar un archivo de forma que se asocie el tipo de aplicación con el archivo .desktop generado anteriormente.

Para tu caso, no creo que sea necesario añadir nuevos tipos mime, con lo que no necesitas generar los archivos .xml. Tan sólo tienes que crear el archivo .desktop (comprueba que no exista para no tener cosas duplicadas) y modificar el archivo correspondiente.

No sé si te resultará de utilidad, pero puedes empezar por este enlace: http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec

Un saludo.
Descargue el gestor de mp3 "Music Manager" -> ([url=http://ctrlalt.iespana.es]mmlf[/url])
Última versión del gestor "Music Manager" -> ([url=http://sourceforge.net/projects/jmusicmanager/]jmmm[/url])
DarthJavier
Forista Nuevo
Forista Nuevo
Mensajes: 2
Registrado: Lun Dic 14, 2009 6:55 pm

Re: Crear Nuevo Linux

Mensaje por DarthJavier » Mar Dic 15, 2009 1:07 am

bueno voy a comenzar x lo primero que me has dicho, aunque la segunda se acerca mas a lo que deseo realizar, se que no necesito mucha programacion solo quiero como dije antes automatizar todo con un OS ya listo, necesito que al instalar el OS de por si ya el reconosca estos archivos ! se q se puede hacer manualmente pero lo quiero automatizar ! la segunda opcion q me diste se acerca mas, pero como sabria cuales son estos ficheros que deb modificar ?
Avatar de Usuario
akodo
Moderador
Moderador
Mensajes: 1457
Registrado: Mié Nov 28, 2007 8:00 am
Ubicación: En la X del explorer (pulse para llamar)

Re: Crear Nuevo Linux

Mensaje por akodo » Mar Dic 15, 2009 5:22 pm

Al margen de la creación de archivos .desktop, y de generar los tipos mime (si es necesario) sólo tienes que asociarlos.
Creo que los archivos son: mimeapps.list y defaults.list.
La localización de los archivos, para que sean reconocidos, creo que son /usr/share/applications o $HOME/.local/share/applications.
De todas formas, conviene que busques información sobre esos archivos.

Por ejemplo, si quieres asociar los archivos .smc a la aplicación zsnes, primero hay que comprobar que tengas el archivo .desktop correspondiente. Si aparece la aplicación en el menú, puedes considerar que el archivo .desktop existe, aunque no puedes considerar lo contrario (es posible que exista el archivo .desktop pero no aparezca en el menú). Lo más normal es que esté en /usr/share/applications, aunque también puede estar en $HOME/.local/share/applications. A mí me aparece como zsnes.desktop, que es el que voy a considerar.
Si no existe o no encuentras el archivo, puedes crear uno.
Aquí puedes encontrar documentación para crear uno, aunque también puedes basarte en algún archivo .desktop que puedas encontrar.
http://standards.freedesktop.org/desktop-entry-spec/latest/

Luego es detectar el tipo de archivo. Para ello, ya que en principio no vamos a crear un nuevo tipo, vamos a ver cual es que detecta el navegador. Para ello, puedes abrir el navegador de archivos y ver las propiedades de uno de los archivos. En el tipo de archivo, a mí me aparece como "application/x-snes-rom", que es el que voy a usar.

Por último lo que hay que hacer es asociar. Para ello, creo que puedes utilizar uno de los 2 archivos que mencioné al principio. Como a mí no me interesa mucho andar con cuestiones de permisos, y como soy usuario único, voy a aplicar los cambios localmente. Para ello voy a modificar el archivo $HOME/.local/share/applications/mimeapps.list.
El archivo tiene una estructura de clave-valor, con multiples valores, siendo la clave el tipo de archivo y los valores archivos .desktop. Creo que el archivo defaults.list tiene una estructura similar aunque sólo permite un único valor por clave.
En el archivo mimeapps.list, debajo de la entrada "added applications", añadimos en la clave x-snes-rom el valor zsnes.desktop. Si no existe la clave se puede añadir sin problemas.
Para que la aplicación se abra al hacer doble click, creo que primero se busca en el archivo defaults.list y si no se encuentra nada se recurre al primer valor de la clave de mimeapps.list.
Yo lo voy a dejar como sigue:

Código: Seleccionar todo

#archivo mimeapps.list
[Added Associations]
#valores
application/x-snes-rom=zsnes.desktop;
.....
[Removed Associations]
....


Todo esto está bastante condicionado al navegador que se utilice, aunque supongo que la gran mayoría de los navegadores grandes siguen las especificaciones de freedesktop, con lo que este método debería valer para esos navegadores.
Descargue el gestor de mp3 "Music Manager" -> ([url=http://ctrlalt.iespana.es]mmlf[/url])
Última versión del gestor "Music Manager" -> ([url=http://sourceforge.net/projects/jmusicmanager/]jmmm[/url])
Responder
  • Similar Topics
    Respuestas
    Vistas
    Último mensaje