Show HN: GodotOS, una interfaz de sistema operativo falsa creada con el motor Godot
(github.com/popcar2)- GodotOS es una interfaz con estilo de sistema operativo hecha únicamente con Godot, que ofrece exploración de carpetas, edición de archivos de texto, visualización de imágenes, ejecución de juegos y más dentro de una sola pantalla pulida
- No es un sistema operativo real, sino una aplicación que parece uno, y apunta a ofrecer una interfaz que también pueda usarse en la web
- La naturaleza del proyecto está más cerca de un juguete experimental que de una implementación seria de un SO, y busca llevar al límite las capacidades de diseño de UI en Godot
- El escritorio apunta a un entorno minimalista, con pocas distracciones y agradable a la vista, y también funciona como un hub para agrupar fácilmente pequeños juegos y experiencias
- GodotOS no es un proyecto afiliado a los desarrolladores de Godot Engine ni a la Godot Foundation
La interfaz que ofrece GodotOS
- GodotOS es una interfaz con estilo de sistema operativo hecha únicamente con Godot
- Dentro de una sola pantalla coherente permite realizar las siguientes tareas
- Explorar carpetas
- Editar archivos de texto
- Ver imágenes
- Jugar
- Otras experiencias de tipo escritorio
- Ofrece una interfaz integrada que también puede usarse en la web
Propósito y naturaleza del proyecto
- GodotOS está más cerca de un proyecto experimental que de una implementación de sistema operativo real
- El objetivo es poner a prueba los límites del diseño de UI posibles en Godot
- El entorno de escritorio apunta a las siguientes características
- Minimalista
- Con pocas distracciones
- Visualmente agradable
Un hub para reunir juegos y experiencias
- GodotOS está diseñado como un hub que puede incluir fácilmente pequeños juegos y experiencias
- Para agregar juegos directamente al menú de inicio, se puede revisar la guía de contribución
Cómo usarlo
- La versión web puede probarse en la Itch.io page
- Todas las versiones pueden descargarse desde la releases page
- Hay un video de demostración disponible en Trailer
Limitaciones claras y aviso de no afiliación
- GodotOS no es un sistema operativo real, sino una aplicación con una interfaz similar a la de un sistema operativo
- GodotOS no está afiliado a los desarrolladores de Godot Engine ni a la Godot Foundation
2 comentarios
Es un juguete divertido.
Opiniones de Hacker News
Parece una excelente prueba de concepto para usar Godot como framework multiplataforma para aplicaciones de escritorio
El paquete de distribución es muy simple, con un solo ejecutable y un solo archivo de datos, y el rendimiento también es excelente
Como forma de ofrecer un paquete binario completamente autosuficiente e independiente de la distribución, parece mucho mejor que cosas tipo Flatpak, y en términos de rendimiento parece muy superior a Electron
Tal vez las aplicaciones de escritorio hechas con motores de juegos sean la próxima gran tendencia
Se terminan descartando funciones del sistema operativo como buen renderizado de texto, una interfaz coherente de edición de texto, accesibilidad y transparencia
Tampoco creo que Godot sea intrínsecamente más rápido que Electron en una UI arbitraria
Las apps de Godot suelen ser rápidas porque las hacen personas que quieren usar un motor de juegos y se preocupan por el rendimiento; si el desarrollador se preocupa por el rendimiento, Electron también puede ser lo bastante rápido, como VSCode
Lo digo desde mi experiencia trabajando con motores de juegos
Quería escribir un artículo sobre crear aplicaciones multiplataforma profesionales con Godot, y probablemente lo haga pronto
En resumen, Godot es excelente como constructor de UI, y creo que mucha gente se está dando cuenta de eso poco a poco
Hay muchas aplicaciones profesionales hechas con Godot[0], y también quiero mencionar Lorien[1], basada en Godot, que es mi app de pizarra favorita y que inspiró parcialmente este proyecto
Godot no es perfecto y hay cosas que otras herramientas de creación de UI hacen mejor, pero tiene mucho potencial aún sin explorar
[0]: https://alfredbaudisch.com/blog/gamedev/godot-engine/standal...
[1]: https://github.com/mbrlabs/Lorien
Uso un programa llamado Dungeondraft[1], para crear mapas de TTRPG fácilmente, y está hecho sobre Godot
La página de la API de modding[2] también menciona Godot
[1]: https://dungeondraft.net/
[2]: https://megasploot.github.io/DungeondraftModdingAPI/
Aunque una app sea un binario único y autosuficiente, puede obtener los beneficios de Flatpak
El sandboxing, la gestión de permisos, el aislamiento del sistema, la necesidad en distribuciones inmutables basadas en imágenes y un formato de paquete unificado que evita tener que crear deb o rpm por separado ayudan tanto a desarrolladores como a usuarios
Esto tiene poco que ver con qué se use para escribir la UI, y un binario autosuficiente por sí solo no puede reemplazar por completo a Flatpak
Otra desventaja que se me ocurre es que, desde el punto de vista del diseño, la aplicación tendría que tener el mismo lenguaje de diseño en todas las plataformas, por lo que sería difícil lograr una apariencia nativa en cada una
¿Habrá otras desventajas?
El propio IDE de Godot también es un “juego”, en el sentido de que está hecho por completo con la API de Godot
De hecho, me pregunto si esto no podría ser un buen entorno para crear apps empresariales portables, como un Visual Basic moderno
Relacionado con esto, Grey Hack es un sistema operativo, red e internet falsos dentro de un juego multijugador cuyo objetivo es hackear
Incluye hackearse entre sí y simula bastante bien las funciones básicas
Puedes robar archivos o dejar archivos en otras computadoras, instalar software, ejecutar comandos desde la línea de comandos, incluidos imitaciones de varias herramientas, y también escribir tus propios programas
Podría tener utilidad en el mundo real
Pensando en la industria del cine, un sistema operativo falso para mostrar a un personaje haciendo algo en una computadora es casi un cliché en sí mismo
Hace poco, hablando con fans de la película Hackers, me preguntaron qué OS se había usado en la película, y respondí que lo que usaban todas las películas de los 90: Mac OS con elementos de UI falsos improvisados en Macromedia Director
Después, Flash cumplió ese papel en las películas, y como los estudios de cine usan cada vez más motores de juegos para dar referencias de CG en tiempo real en el set, esto podría ser su versión moderna
Me parece que sería bueno que Godot tuviera un modo de compilación mínimo centrado en UI
Es muy atractivo para UI renderizadas con GPU, y ya existen excelentes bibliotecas y plugins para crear componentes útiles en ingeniería o análisis de datos
No sé cuánto se podrá reducir manteniendo la mayoría de los componentes 2D/3D, pero debería ser posible
[1]: https://docs.godotengine.org/en/stable/contributing/developm...
Con la flag
custom_modulespuedes elegir qué módulos de Godot compilarPor ejemplo, nosotros distribuimos un wasm pequeño para un juego web 2D en Godot
Godot es un excelente bloc de bocetos para crear este tipo de cosas.
Una vez, mientras esperaba un vuelo en el aeropuerto, hice a las apuradas un bloc de notas para tablet eInk del juego ruso de lápiz y papel Virus War (“Война вирусов”), para poder jugarlo con mi pareja durante el vuelo.
No era más que una cuadrícula con botones tocables en distintos estados, pero alcancé a tener un prototipo jugable antes de abordar.
Me recuerda a cuando, por ahí de 2005, los Sub OS estuvieron algo de moda en la comunidad de GameMaker.
Parece que, si pasa suficiente tiempo, alguien siempre intenta crear una interfaz tipo sistema operativo dentro de algún motor de juegos.
Era una buena forma de entender paradigmas de UI y usabilidad, más allá de crear mecánicas de juego, y me trae una nostalgia bastante agradable.
Yo hice Tiagix OS y, hasta donde sé, fue uno de los primeros subOS que realmente tenía soporte para crear apps.
Como tuve que hacerlo todo desde cero, aprendí mucho sobre toolkits de GUI.
https://forum.gamemaker.io/index.php?threads/gm8-subos-proje...
Normalmente tenían un shell de UI de sistema operativo y aplicaciones, pero lamentablemente olvidé sus nombres.
Dice: “GodotOS no es un sistema operativo real, sino una aplicación con una interfaz que parece un sistema operativo”. Pero, en realidad, ¿se puede decir que GodotOS sea menos sistema operativo que el Windows temprano?
Recuerdo cuando Notch estaba experimentando con un juego espacial usando un lenguaje ensamblador reducido hecho por él mismo.
Lamentablemente dejó de trabajarlo, pero creo que el género de hackeo dentro de juegos todavía tiene mucho potencial.
No algo tipo “presiona F para hackear”, sino iniciar sesión de verdad en un sistema y traer o cambiar algo.
Un sistema operativo dentro del juego que se sienta real parece un buen avance.
https://web.archive.org/web/20130905082541/http://dcpu.com/d...
Colocas una “instalación informática”, la conectas a la red de señales y luego abres una terminal para empezar a programar.
Como la fábrica puede volverse muy compleja, tiene utilidad real, y es genial que puedas usar ítems como símbolos de señal para comunicarte de forma bastante sofisticada a través de cables.
La velocidad de reloj del dispositivo estaba limitada a unas cuantas instrucciones por tick del juego.
Es un juego idle con una emulación limitada de “sistema operativo”, pero las buenas soluciones requieren pensamiento real y conocimientos de programación.
Terminas escribiendo scripts que escanean la red para encontrar puertos abiertos y “hackearlos” automáticamente, y luego equilibran de forma global la asignación de memoria de todos los sistemas según ciertos parámetros para que el hackeo sea lo más “rentable” posible.
Fue divertido terminar creando comunicación básica por sockets, scripts que devuelven resultados de análisis a la PC de casa e incluso trading algorítmico en un mercado bursátil falso.
https://www.zachtronics.com/tis-100/
En la captura dice “GodotOS is a fake operating system”.
Pero ¿realmente es falso? ¿El término “sistema operativo” implica necesariamente el nivel de la capa de hardware en la que se ejecuta?
Si no, aunque se ejecute encima de otro SO, igual podría considerarse un SO.
He sido bastante cuidadoso con la formulación porque no quiero dar una impresión equivocada al promocionarlo.