It’s that time again, everybody! The time when I feel like I really want to discover a new programming language and need a large, ambitious project to direct my learning. That brings us to mineos-ruby.
A few months back I started this by creating the foundation of MineOS scripts–the core functionality of creating servers, starting, stopping, and editing configuration files, and the like.
Over the past few days, I’ve been engineering the new webui portion, which is taking an almost entirely different design approach. Whereas mineos
and mineos-node
integrated heavily into the underlying system, leveraging existing Linux users and shadow passwords, mineos-ruby
will have its own authentication system, modularly implementing arbitrary user/pass, Oauth, mojangid, or any/all of them combined, based on the user’s needs.
For many, mineos-node
will continue to fit the bill, and it will be maintained to the best of my ability; I’m hoping mineos-ruby
will appeal to both those who have minimal requirements in what they need to manage as well as those who want more scaleable, enterprise-y software.
Enterprise-y?
Perhaps enterprise is a bit of a stretch, but enough people have asked me through the life of mineos-node
to be able to control multiple machines with the webui, have reseller-like functionality such as an administrative superuser and regular mineos admins.
No, there are no plans whatsoever to turn mineos-ruby
into a billing system, nor will it implement resource limits (e.g., CPU, HDD constraints), but I do want to make it scale. This might mean from one, singular webui you can run several different servers distributed on several different machines. I envision a setup where I connect to 192.168.0.110 and from there I can run a half dozen servers on 192.168.0.111, 192.168.0.112, and so forth–all with good bulk-control, rather than the single-server model the webui currently manages.
Like I said, not all users will find this model a necessary upgrade and therefore can stick with mineos-node
. But for those who want the newness and polish, it’s likely too that mineos-ruby
will be designed to deploy cleanly on solitary machines as well (with the help of maybe docker, etc.)
What’s next?
Well, ruby, like node before it, is a new language to me so this isn’t something I expect to be a working alpha for at least Q1 2017. If any of you are ruby developers, you’re welcome to let me know and we can see where your skills and enthusiasms line up with writing code or UI or whatever it might be.
What I’ve described here today, and the model I’m aiming for, is not set in stone. Much about the webui can and will change and I hope to do it with some insight and use cases from you, the future administrators.
Please use this thread for any discussion and feature requests, opposition pieces, or whatever you think mineos-ruby
should be.