DEV Community

Cover image for The Mini Micro Desktop GUI
JoeStrout
JoeStrout

Posted on

The Mini Micro Desktop GUI

https://miniscript.org/MiniMicro is a virtual home computer with a primarily command-line interface. It boots into a prompt with a friendly blinking cursor, where you can type MiniScript commands or code to navigate around the system and get things done.

Screen shot of Mini Micro, freshly booted

But, among the demos in the /sys/demo directory is a program called desktop. You can run it from there like any other demo, or you can use the convenient desktop function, built right in as one of the globals defined in /sys/startup.ms. Just type:

desktop
Enter fullscreen mode Exit fullscreen mode

and Mini Micro will load up the desktop GUI (graphical user interface)!

Screen shot of desktop initial state

The initial state has one window open, showing the mounted disks -- in my case that is /sys, /usr, and /usr2. You can drag the window around by any part of the gray border, except the textured lower-right corner, which stretches the window out. You can double-click folders to open them in new windows:

Screen shot of desktop with several windows open

Power-user Tip

If you hold the Alt/Option key while double-clicking a folder, it will simultaneously open that folder and close the previous window. This is known as "Tunneling".

Scrollbars appear on disk/folder windows, which can be used to scroll around the files therein. You can double-click some files (for examples, pictures and text files) to preview them with the view command, or double-click MiniScript files to run them. The desktop acts as a shell, so when the program exits normally, the desktop should reappear. If the program aborts due to an error, or you press Control-C, then you can type exit to return to the desktop (or just use the desktop command again).

The File menu has three commands, all functional: New Window, Close Window, and Exit to Shell (which really means, exit to the standard command-line prompt). Close Window closes the frontmost window; you can also do that from the keyboard by pressing the W key.

The Window menu also works, and provides quick access to any of the windows you have open.

And that's about it. /sys/demo/desktop is more of a demo than a fully functional GUI. But maybe, in Mini Micro 2.0, it could be.

A fully functional desktop?

I have big plans for Mini Micro 2.0... probably too big, if I'm being honest. But among them is the idea of turning this demo into a proper, full-fledge desktop environment you can actually use to browse and manage your files. GitHub issue #61 is all about this possibility, which would include ways to move/rename files, desk accessories you could add to or replace yourself, etc.

But what do you think? Is this worth spending time on, or would you rather use the command line anyway? And if you do want to spend significant time in the desktop environment, what features are most important to you?

Let us know in the comments below, or chime in on on GitHub. I can't wait to hear your thoughts!

Top comments (0)