←  Operating Systems

ComputerCraft | Programmable Computers for Minecraft

»

Opus OS

Kepler's Photo Kepler 27 Oct 2016

For computercraft versions 1.7.10 and above

Posted Image

Features
Multitasking OS - run programs in separate tabs
Telnet (wireless remote shell)
VNC (wireless screen sharing)
UI API
Turtle API (includes true pathfinding based on the ASTAR algorithm)
Remote file system access (you can access the file system of any computer in wireless range)
File manager
Lua REPL with GUI
Run scripts on single or groups of computers (GUI)
Turtle follow (with GPS) and turtle come to you (without GPS)

Source / Contribute
https://github.com/kepler155c/opus

Install
pastebin run UzGHLbNC
Spoiler
reboot

Note that this install will overwrite files (including startup). It is recommended to run this on fresh advanced computers.

No Install
pastebin run 8wE73gbq
Spoiler

Loads a virtual file system to run the OS without overwriting existing files. Files are loaded directly from git.
Edited by Kepler, 21 March 2018 - 06:11 PM.
Quote

HaddockDev's Photo HaddockDev 06 Nov 2016

Did you repost this? I'm pretty sure not long ago there was a identical thread that had a few replies, but then got deleted.
Plus, I think i've seen this before. I can't recall the name to it, but I remember something like it.
Quote

Kepler's Photo Kepler 06 Nov 2016

Controlling multiple turtles
Spoiler

Edited by Kepler, 16 December 2016 - 05:48 PM.
Quote

Kepler's Photo Kepler 10 Nov 2016

AE Storage Manager video
Spoiler

Always have inventory crafted.
Purge unwanted items from the system (the chest in the video can be replaced with a trashcan).
Assemblers are optional (as the turtle can craft the items).

The turtle must be equipped with a crafting table and duck antenna (open peripherals) in order to craft items.
Edited by Kepler, 16 December 2016 - 05:49 PM.
Quote

Kepler's Photo Kepler 15 Dec 2016

Playing with animations...

Posted Image
Quote

Bomb Bloke's Photo Bomb Bloke 16 Dec 2016

That actually looks pretty cool. :)
Quote

DanyGames2014's Photo DanyGames2014 16 Dec 2016

Awesome practical , fast everything what i need
Quote

LDDestroier's Photo LDDestroier 18 Mar 2017

Does this OS support color theming? White text on blue background doesn't look too stellar.
Quote

Kepler's Photo Kepler 19 Mar 2017

View PostEldidiStroyrr, on 18 March 2017 - 05:54 PM, said:

Does this OS support color theming? White text on blue background doesn't look too stellar.

Yes, you can add a file named ui.theme in the /config folder. Here is an autumn theme example:

-- Copy to /config/ui.theme to enable
{
  Button = {
	backgroundFocusColor = colors.orange,
	focusIndicator = '*',
  },
  Grid = {
	textColor = colors.white,
	backgroundColor = colors.gray,
	textSelectedColor = colors.black,
	backgroundSelectedColor = colors.orange,
	headerBackgroundColor = colors.yellow,
	headerTextColor = colors.black,
	unfocusedTextSelectedColor = colors.yellow,
	focusIndicator = '*',
  },
  GridLayout = {
	textColor = colors.white,
	backgroundColor = colors.black,
  },
  MenuBar = {
	backgroundColor = colors.lightGray,
  },
  StatusBar = {
	textColor = colors.brown,
	backgroundColor = colors.lightGray,
  },
  TabBar = {
	selectedBackgroundColor = colors.brown,
	focusBackgroundColor = colors.green,
  },
  TitleBar = {
	backgroundColor = colors.brown,
  },
  ViewportWindow = {
	backgroundColor = colors.brown,
  },
}

You can also selectively theme applications by adding a theme section in the associated application config file.
Quote

LDDestroier's Photo LDDestroier 19 Mar 2017

Cool. I'll make myself a gray/white/yellow theme.

Also, if you didn't check your PM, I changed contextualGet() to std.contextualGet(). If the Discover section of the Opus store is to work, please change it. I changed the name just so I could keep all the STD variables contained.
A few other internal values were put in table 'std', but they aren't referenced by the store pages, do it shouldn't be a big deal.
Quote

1971chevycamaro's Photo 1971chevycamaro 20 Mar 2017

Hi!

Amazing job on the OpusOS Keplar! I love it how when apps crash they do it independent of the Operating System. There are two bugs I have encountered and a suggestion I would like you to implement/fix.
I have organized this reply in a easy to read format as best I could.

BUGS:
  • turtle follow program crashes because GPS system doesn't work. (I know how the follow program should work, I watched your video)
  • whenever I run the 'startup' file within OpusOS it creates another copy inception, when I close the inception it leaves a irremovable residue in the tab menu, I would like this to be fixed please :) .

REQUEST:
I would like a way to view a functions potential arguments, or a way to view the 'guts' of the function. FOR EXAMPLE; MineChem has bad error handling so it spits out uninterpretable errors instead of giving me its usage. If this is impossible that is ok to my knowledge there is no way to do this.
Quote

Kepler's Photo Kepler 23 Mar 2017

Thanks for the feedback. Please let know if you find anything else.

View Post1971chevycamaro, on 20 March 2017 - 11:09 PM, said:

turtle follow program crashes because GPS system doesn't work.

I would say this works as expected. The script tab is left open on the turtle with the error message "No GPS found".

View Post1971chevycamaro, on 20 March 2017 - 11:09 PM, said:

whenever I run the 'startup' file within OpusOS it creates another copy inception, when I close the inception it leaves a irremovable residue in the tab menu, I would like this to be fixed please :) .

I'm not sure what use it would be to run the OS within the OS. There's probably more problems that would occur other than the tab issue.

View Post1971chevycamaro, on 20 March 2017 - 11:09 PM, said:

REQUEST:
I would like a way to view a functions potential arguments, or a way to view the 'guts' of the function. FOR EXAMPLE; MineChem has bad error handling so it spits out uninterpretable errors instead of giving me its usage. If this is impossible that is ok to my knowledge there is no way to do this.

This type of error checking in functions would really bloat the source. I would suggest using the trace program from Apemanzilla if you are having trouble tracking down errors. You can also reference the source code in Git as an easy way to view the functions and arguments.

Again, thanks for the feedback...
Quote

MintGameKing's Photo MintGameKing 09 Apr 2017

Very good OS :)
Quote

ZapowGaming's Photo ZapowGaming 23 Jul 2017

Nice OS!

Also just for fun, I tried downloading this on a regular computer (not advanced) to see what would happen. It downloaded okay, but once it rebooted so it could be used, it was unusable because the mouse didn't work lol. It was cool seeing it in black and white though.
Quote

Kepler's Photo Kepler 23 Jul 2017

View PostZapowGaming, on 23 July 2017 - 05:17 AM, said:

Nice OS!

Also just for fun, I tried downloading this on a regular computer (not advanced) to see what would happen. It downloaded okay, but once it rebooted so it could be used, it was unusable because the mouse didn't work lol. It was cool seeing it in black and white though.

Thanks !

It's not very easy to use without a mouse, but it is usable. Here's some keystrokes you can use:

Control-o: Show Overview
Control-tab: Next tab / process

Within Overview (opening screen):
s = shell
l = lua

Any application:
Tab or arrow keys to navigate
Control-enter: restart application
Control-d: show debug tab
Quote

Homedog's Photo Homedog 30 Jul 2017

View PostKepler, on 06 November 2016 - 06:27 AM, said:

Controlling multiple turtles
Spoiler

I am quite the noob to computercraft and I gotta know how you got that turtle set up.
Quote

The Crazy Phoenix's Photo The Crazy Phoenix 31 Jul 2017

View PostHomedog, on 30 July 2017 - 07:32 PM, said:

View PostKepler, on 06 November 2016 - 06:27 AM, said:

Controlling multiple turtles
Spoiler

I am quite the noob to computercraft and I gotta know how you got that turtle set up.

The turtles track their current position and facing as they move around (by checking whether the movement succeeded).
This information can be used for dynamic GPS hosts (which may be what's used for the "follow" command), as well as instructing the turtle where to go.
All it takes at setup is to feed the turtle its coordinates (manually or through GPS) and facing (manually or by moving the turtle and using GPS again).
Quote

Kepler's Photo Kepler 31 Jul 2017

Most of the turtle movement code is in another API. But here is the following code:

Spoiler

Edited by Kepler, 31 July 2017 - 07:21 AM.
Quote

kreezxil's Photo kreezxil 14 Aug 2017

I'm getting a crash when installing the operating system.

After hitting next on the "Download and Install" screen, it red lines the text "Expected String" and then only gives me an ">exit" option.

Posted Image

I am using the Computality mod on 1.12 build 2443.
Quote

Kepler's Photo Kepler 20 Aug 2017

View Postkreezxil, on 14 August 2017 - 01:52 PM, said:

I'm getting a crash when installing the operating system.

Argh.... Forgot an update to the installer on last commit. Fixed now.
Quote