This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
Exerro's profile picture

Nova Horizon (v1.2)

Started by Exerro, 04 November 2014 - 09:42 PM
Exerro #1
Posted 04 November 2014 - 10:42 PM

The graphical, user friendly alternative to Craft OS

Overview
It's been almost a month since Nova was released. Since then, it has been completely rewritten. This new version has some new features which make it slicker, quicker, and even better than before.

The main aim of the OS is to provide advanced and useful features with a simple to use interface, and to extend the usage of Craft OS rather than just putting a pretty cover over the top. Examples of this are one-click file encryption, packing folders into archives, creating images with multiple layers, and adding secure user accounts.

Everything has been improved in my opinion, the internal code, and the stuff that you, the user, sees. The only downfall is that nothing much has been added (except tonnes of improvements), and in cases, some things have been removed.
I am happy with this release to a point that I can start writing apps non-stop, and not work on the core nearly as much, so expect to see lots of new apps coming soon.

"I want to add my program"

This is now very easy to do!

Step by step:
  • Create a folder in Nova/apps, with the name of your program.
  • Inside, place your program, and rename it to "main.lua" (the .lua will disappear, and it should say "Lua script file" below)
  • Create a new file, and rename it "appconfig.txt" (again, the .txt will disappear, and it should say "Plain text file" below)
  • Open this file in Edit (it may open in Run, if so, close Run, right click on "open with", select Edit, and click ok)
  • Write the following lines:
    • runmode = "compatibility";
    • fullscreen = true; – if you want your program to use the entire screen.
  • After relogging, you should then be able to open Nova/apps, and launch your app. (it will no longer display it as a folder, but as a Nova app).
Screenshots
Spoiler






A list of the main features:
  • Multiple secure users.
  • Easy to use file browser, with encryption, archiving, and a favourites bar.
  • Advanced text editor, with selection, undo/redo support, and an inbuilt debugger (run your program).
  • Advanced paint app, with text support, multiple layers, and loads of useful tools.
  • Support to run any computercraft program.
  • BBTetris by Bomb Bloke.
  • An experimental NetworkTest app to show networking works.
  • Screenshotting.
  • Add users, rename accounts, change passwords, and delete your account from the settings app.
How to get Nova?
Simply download this one file and run it:
pastebin get m342HLd6 startup

It may take a couple of seconds, being 350kb and all, but with it installed, there is no need for anything else to be downloaded. Yes, that's right, it's all compressed into that one file for simplicity. It will create a folder called Nova to save data in, but other than that, it's completely self-contained.
If you are upgrading from a previous version of Nova, you will need to delete the Nova/ folder. Just open up Run, and type "delete Nova" without the quotes, and then install.

What's in the queue for version two (what's coming up in future versions)
SpoilerNot all of these things will be out next version, that's for sure, but they will be out soon hopefully.
  • A desktop, which you can add shortcuts to, and open CraftOS windows (movable, resizeable and closable).
  • A Messenger app (basically an email client)
  • A file transfer app.
  • A browser, similar to quest, which uses markup (from NovaUI) to display UI content from a server.
  • An app store. (this may take a while, I need to learn html, php, and js pretty much from scratch)
  • An FTP Mount and FTP Host app, which allows you to connect remotely to other computer's filesystems.
  • Apps that load files asking for a password if trying to open an encrypted file.
  • Files app mounting a bit better (auto detect if a mount is necessary).

Something went wrong…
SpoilerWhile I have tested everything I can think of, there are bound to be bugs and issues.
Don't be alarmed by the size of this spoiler, I have tried to cover as many of the problems I have seen, even in very early versions, so you won't be left wondering what went wrong.
Some things to be aware of:
  • "The screen has gone white". This is because an app UI has errored and not been caught, crashing the OS UI. This should never happen, but in spots I have missed a bit of code that will stop this. If it happens, use ctrl-r to reboot, and please tell me what you did you cause it to crash, as well as the Nova/logs/log.txt file.
  • I created an archive, password protected it, edited a file inside it, saved it, and all of a sudden the archive isn't password protected. Yes, this will happen, just re-encrypt the archive, as there is no way round this.
  • "I have forgotten my password". There is no way to get it back, so just delete the user file from the Nova/users/ folder if you can. Yes, it is OK to delete all the files in there, even the folder itself, as it will just ask to create a new user.
  • "I have forgotten the password to a file". Again, there is no way to get this back, and chances are, you have probably found the file is now complete garbage as it was decrypted with the wrong key resulting in a long string of weird characters. Sorry, but there is no way to get this back.
  • "I deleted an app from the Nova/apps/ folder, and I can no longer run it". Deleting the whole Nova/apps/ folder will cause it to be re-made (not using the internet, it's all in that 1 file remember). All apps will be restored by doing this, and you will lose NO data. However, you may need to restart for the app to be registered again.

If you need help with anything, don't hesitate to ask. Also, if you are interesting in developing apps for Nova, read the spoiler below.
Thanks for reading

For developers
SpoilerThis version has a much improved API.

There are no longer permissions, and error handling is done automatically by the AppInstance class.
In addition, all UI classes are put into the NovaUI table, to mimic what it would be like if the app were running standalone. Using this, it's far easier to make apps that run on their own. If you want proof, try running Nova/apps/Edit/main.lua inside the Run program. It will work, which shows it runs standalone too.

If anyone is interested in making apps for Nova, it's a great idea. If you just want to make something have a nice UI, using NovaUI is a great way to go, and if you're using that, you may as well make it work with Nova too. However, Nova also provides far more functionality. You can mount virtual disk drives into the filesystem, which can then be used by any other app with absolutely no difference to the functionality of that app. You can also use the networking library to send messages back and forth using a secure connection.

I'm not going to write any documentation for the API right now. NovaUI is still behind on its documentation, so I need to finish that first. However, if you'd like to start working on an app, you can PM me, and I'll talk you through it all personally (and I'll also hurry up with the documentation).
Edited on 27 November 2014 - 10:49 AM
Saldor010 #2
Posted 05 November 2014 - 12:27 AM
I only spent a couple of minutes in the O.S. (literally), and I can already tell this is amazing. If you work hard on it, I'm sure it will surpass even OneOS. (Sorry oeed).

BUG REPORT : Whenever I try to click the general tab in the settings program, it will show it for a brief moment, but then it crashes with white (which apparently means the UI crashed the O.S.)
Edited on 04 November 2014 - 11:32 PM
Agent Silence #3
Posted 05 November 2014 - 12:48 AM
Wow, this is awesome.
If you want to, you can use this, it's a custom shell I wrote for OS developers, and I think you could use it here.

It adds custom commands, such as "@prev" that lists all previously typed commands and a blacklist for specific programs or arguments to a program, so "edit" would blacklist edit, or "edit test" would blacklist editing "test", also works with directories.
oeed #4
Posted 05 November 2014 - 01:21 AM
Wow.

This is really impressive. Some bits do look a little like OneOS, but never the less it's really good.

A few small comments/issues:

With your 'press right control' function, Mac keyboards don't have a right control key… so, yea.
Maybe give all the default programs access to everything by default rather than having to click allow when you first use the OS.
The scrolling is really nice and smooth, good job!

If you work hard on it, I'm sure it will surpass even OneOS. (Sorry oeed).

That's good, it means I'll be encouraged to work more on OneOS, which I have neglected a little recently. Might get some inspiration too :P/>
Edited on 05 November 2014 - 12:24 AM
TurtleHunter #5
Posted 05 November 2014 - 01:22 AM
<p>Wow.</p>
<p> </p>
<p>This is really impressive. Some bits do look a little like OneOS, but never the less it&amp;#39;s really good.</p>
<p> </p>
<p>A few small comments/issues:</p>
<ul>
<li>With your &amp;#39;press right control&amp;#39; function, Mac keyboards don&amp;#39;t have a right control key… so, yea.</li>
<li>Maybe give all the default programs access to everything by default rather than having to click allow when you first use the OS.</li>
<li>The scrolling is really nice and smooth, good job!</li>
</ul>

Why html?
BeaubeauFett #6
Posted 05 November 2014 - 03:32 AM
After installation and account setup, I got past the "Would you like a tour" screen, and it just goes blank. Is there something that can fix this?
BeaubeauFett #7
Posted 05 November 2014 - 03:52 AM


This is all I get after it asks me "would you like a tour?"
Saldor010 #8
Posted 05 November 2014 - 04:23 AM


This is all I get after it asks me "would you like a tour?"

  • "The screen has gone white". This is because an app UI has errored and not been caught, crashing the OS UI. This should never happen, but in spots I have missed a bit of code that will stop this. If it happens, use ctrl-r to reboot, and please tell me what you did you cause it to crash, as well as the Nova/logs/log.txt file.
BeaubeauFett #9
Posted 05 November 2014 - 05:55 AM
I've tried rebooting, and I have no way to get into the shell to delete the Nova folder. This is on a friends server so I have no way to access the actual files.
Exerro #10
Posted 05 November 2014 - 11:55 AM
Wow, I wasn't expecting so many replies so soon!
Whenever I try to click the general tab in the settings program, it will show it for a brief moment, but then it crashes with white
If it did crash the OS UI, it should spam the error in the Nova/logs/log.txt file. Could you send me the thing being spammed, so I have a little more to go on. I have tested the settings program quite a lot, and it seems to work fine for me.
Wow, this is awesome.
If you want to, you can use this, it's a custom shell I wrote for OS developers, and I think you could use it here.

It adds custom commands, such as "@prev" that lists all previously typed commands and a blacklist for specific programs or arguments to a program, so "edit" would blacklist edit, or "edit test" would blacklist editing "test", also works with directories.
Thanks! I was actually thinking of implementing a bash-type language myself (and command line interface for it, and .nexe files…), but after about 30 mins on it realised it was a far larger task than I originally thought and gave up. However, I'll certainly take a look, and maybe add that too.
Wow.

This is really impressive. Some bits do look a little like OneOS, but never the less it's really good.

A few small comments/issues:

With your 'press right control' function, Mac keyboards don't have a right control key… so, yea.
Maybe give all the default programs access to everything by default rather than having to click allow when you first use the OS.
The scrolling is really nice and smooth, good job!
Hmmm, I never use a mac so that didn't occur to me, but I will certainly change it. Probably use an fn key, unless anyone has any problems with that.
And yeah, I think the Paint app and Notepad app look very much like Sketch and Ink. However, Notepad (as you may have noticed) barely works and will be removed eventually (until I can figure out how to fix it), and I will probably change the Paint app to have little draggable windows rather than the sidebar. I was actually trying to test out the UIMenu element with that sidebar, and it just kind of stuck. And I was wondering whether app permissions were actually useful myself. I think they'll stay, because when I add an app store they'll really start to be useful. I'll definitely make the core apps start with the permissions though.
After installation and account setup, I got past the "Would you like a tour" screen, and it just goes blank. Is there something that can fix this?
Terribly sorry but I have no idea how to fix this. I have noticed this myself, a couple of times, and not sure how to fix it. I have a feeling it could be caused by a website being blocked, so the os.irltime() function errors, which as it's a function that needs to return something can't run in a thread so when it errors it crashes the OS UI rather than the App (if you're wondering, app.newThread() sets the thread onException callback to pass the error to the app onException callback rather than simply erroring in the non-pcalled callbacks the UI uses). Although, having seen it myself means it must be caused by something else too. I'll certainly take a look, and try make a detection system that will wipe the user folder (which won't matter as you won't have any important details on it). If you can, make a disk drive and put a disk with a startup file on it next to the computer. Next time you reboot the computer, it will just go to shell, at which point you can delete the Nova/ folder. However, it would be useful if you could send the Nova/logs/log.txt file before deleting the folder.
Edited on 05 November 2014 - 11:00 AM
Exerro #11
Posted 05 November 2014 - 01:01 PM
I've made a new patch, with a couple of fixes.
- Apps barely lag at all now when opening them for the first time, this is due to the core_[permission name] permissions being compressed into one "core" permission.
- Fixed the Settings/General error, it was caused by the computer having no label, because apparently tostring( os.getComputerLabel() ) errors if there is no computer label.
- If the Home app errors, it will now display a "Restart or Reset" interface.
- Changed the show running apps button to f1 rather than right ctrl for all you mac users… (mac does have an f1 key right?)
- If the time server isn't on the http whitelist, it will no longer error, just show "??:??" in the bottom right

To get this version, it's the same pastebin id (pastebin get m342HLd6 startup)
Hope this helps.
Saldor010 #12
Posted 05 November 2014 - 02:22 PM
I've made a new patch, with a couple of fixes.
- Apps barely lag at all now when opening them for the first time, this is due to the core_[permission name] permissions being compressed into one "core" permission.
- Fixed the Settings/General error, it was caused by the computer having no label, because apparently tostring( os.getComputerLabel() ) errors if there is no computer label.
- If the Home app errors, it will now display a "Restart or Reset" interface.
- Changed the show running apps button to f1 rather than right ctrl for all you mac users… (mac does have an f1 key right?)
- If the time server isn't on the http whitelist, it will no longer error, just show "??:??" in the bottom right

To get this version, it's the same pastebin id (pastebin get m342HLd6 startup)
Hope this helps.

Yay, my bug was fixed! Also, the operating system itself is just a lot smoother. Good job man!
H4X0RZ #13
Posted 05 November 2014 - 02:35 PM
This OS is awesome! I love it!

The most awesome thing is, it works with Pocket Computers!
Edited on 05 November 2014 - 01:47 PM
Exerro #14
Posted 05 November 2014 - 02:54 PM
The most awesome thing is, it works with Pocket Computers!
Really? I tried it on a pocket computer, and it didn't work out too well (mainly due to everything being ridiculously squashed).
Also, I just noticed, the time will always display "??:??" even if the website is whitelisted due to a rookie code mistake. As it's nothing too big I won't update, but that is a bug if you're wondering.

Glad everyone is enjoying the OS :)/>

I do have a question though: is the "would you like to take a tour?" style of doing things helpful, or is the Designer "Help" dropdown menu a better approach? I am planning on adding help to Paint, Files, and Edit, and would like to know which is more helpful and which I should use.
Edited on 05 November 2014 - 01:55 PM
Saldor010 #15
Posted 05 November 2014 - 02:56 PM
I think the dropdown help is better.
H4X0RZ #16
Posted 05 November 2014 - 03:02 PM
The most awesome thing is, it works with Pocket Computers!
Really? I tried it on a pocket computer, and it didn't work out too well (mainly due to everything being ridiculously squashed).
Also, I just noticed, the time will always display "??:??" even if the website is whitelisted due to a rookie code mistake. As it's nothing too big I won't update, but that is a bug if you're wondering.

Glad everyone is enjoying the OS :)/>

I do have a question though: is the "would you like to take a tour?" style of doing things helpful, or is the Designer "Help" dropdown menu a better approach? I am planning on adding help to Paint, Files, and Edit, and would like to know which is more helpful and which I should use.

It is squashed together, but i only got small "bugs" like on the login screen it won't show the "selected user" text and in "File" you don't see the file name etc, only when rightclicking the file. but it is not a big problem for me :D/> The awesomeness of the OS is to awesome to care about these "bugs" :D/> (I don't think they are bugs, because the OS was never meant to be used on a Pocket PC, so i would rather say "Hardware restrictions" xD)
Exerro #17
Posted 05 November 2014 - 03:03 PM
This is all I get after it asks me "would you like a tour?"
Ah, I think that is actually an error caused by the time bug in the first version. It is probably a UI error, judging by the whiteness of the screen rather than a BSOD, and the fact that there is a little grey box down there makes it look like it was half way through drawing the time, at which point (when it actually tries to get the time and draw that on) it errors. Updating to the latest version should fix this, but if it doesn't please let me know.
TheJebForge #18
Posted 05 November 2014 - 06:46 PM
November 2014 is that time when new pretty looking OSes being released! Your OS is pretty cool! I have ragedeleted my OS when I have saw your OS, my wtOS really sucks!
Edited on 07 November 2014 - 04:30 AM
oeed #19
Posted 05 November 2014 - 08:43 PM
- Changed the show running apps button to f1 rather than right ctrl for all you mac users… (mac does have an f1 key right?)

Yep, you've gota use Fn + F1, but yea it works.
LDDestroier #20
Posted 05 November 2014 - 10:30 PM
I think Nova looks pretty awesome! I am a bit frustrated by the alphabetical organizing of apps though. Other than that, great job!
Exerro #21
Posted 05 November 2014 - 11:14 PM
I think Nova looks pretty awesome! I am a bit frustrated by the alphabetical organizing of apps though. Other than that, great job!
I'm glad you mentioned that, I was thinking of making it so apps will fill up each column rather than having a whole column for each letter. I will probably change this, unless anyone has any objections.
Saldor010 #22
Posted 05 November 2014 - 11:18 PM
I think Nova looks pretty awesome! I am a bit frustrated by the alphabetical organizing of apps though. Other than that, great job!
I'm glad you mentioned that, I was thinking of making it so apps will fill up each column rather than having a whole column for each letter. I will probably change this, unless anyone has any objections.

Why not make a custom desktop? So people can just drag apps to whatever column they want (including making new columns)
LDDestroier #23
Posted 05 November 2014 - 11:20 PM
Hey, try to limit mouse movement, and definitely implement some of the OneOS programs, like the door lock for computer/PDA, and Transmit (which should be standalone too).

Also, CC is at a lack of games. One of my favorites is rednet TRON. See if you can add some awesome networking tools/games.

EDIT: Damn, I thought it was oeed making this. Whoops. Take it as a compliment
Edited on 06 November 2014 - 12:24 AM
Exerro #24
Posted 05 November 2014 - 11:32 PM
Hey oeed, try to limit mouse movement, and definitely implement some of the OneOS programs, like the door lock for computer/PDA, and Transmit (which should be standalone too).

Also, CC is at a lack of games. One of my favorites is rednet TRON. See if you can add some awesome networking tools/games.
I'm trying not to include apps that are designed for cc, as they will probably lag. For example, implementing Sketch would cause there to be Bedrock (I think it uses bedrock anyway) running inside a buffer which is rendered by my own UI system, which would lag like mad. Some things, like a doorlock program, I agree should be implemented, but I'd prefer to make my own versions of these things, at least so I can tie them in with the user system.
As for dragging around apps on the homescreen, while it is possible, is it really worth it? If I did, there would probably be a vertically scrolling homepage, and you'd be able to scroll up and down and drag apps around etc…
Other than that, I'm just going to make them stack on top of eachother and overflow to the right like now but without the categories. My original plan for that was to have custom categories, but that didn't really pan out.
And as you mention networking… http://puu.sh/cERel/b75fdec7b0.png just a little sneak peak of what's coming up. (FTP access between computers, network access using the Nova network library, stuff like that…)
LDDestroier #25
Posted 05 November 2014 - 11:35 PM
And as you mention networking… http://puu.sh/cERel/b75fdec7b0.png just a little sneak peak of what's coming up. (FTP access between computers, network access using the Nova network library, stuff like that…)

Yaay! I am happy now. TIme to build giant rednet and disknet repeaters for LuaLand…
Edited on 05 November 2014 - 10:35 PM
Exerro #26
Posted 05 November 2014 - 11:46 PM
And as you mention networking… http://puu.sh/cERel/b75fdec7b0.png just a little sneak peak of what's coming up. (FTP access between computers, network access using the Nova network library, stuff like that…)

Yaay! I am happy now. TIme to build giant rednet and disknet repeaters for LuaLand…
You're going to hate me for this… it doesn't use rednet. It's based around peer-to-peer communication, like bluetooth in a way. While this may sound really bad right now, when I start making some apps that use it, you will hopefully be amazed. I have a lot planned for the networking aspect, but be patient, as it's a huge thing to implement (I've already re-written it 3 times).
It will probably be a couple of days before I start making apps that use these networking features, and weeks before there are big things like web browsers and automatic ftp drive mounting (picture the sidebar of Files, but with more things, as the support is there in the OS core to add pretty much any filesystem, even link things to online websites and they'll behave just like normal).
On the plus side, I've added a "check updates" and update installer in the Settings app, so you'll be able to download them straight away when they're out.
LDDestroier #27
Posted 05 November 2014 - 11:56 PM
So what, does it use HTTP rather than rednet? Because it should (also) use rednet.
Exerro #28
Posted 06 November 2014 - 12:00 AM
So what, does it use HTTP rather than rednet? Because it should (also) use rednet.
It simply uses modem messages. If you don't know what I'm talking about, rednet is actually a wrapper around modems. You can wrap a modem just like any other peripheral, and then send and receive data. For example

local modem = peripheral.wrap "left" -- get the modem
modem.transmit( 1, 1, "Hello" ) -- send Hello on channel 1
modem.open( 1 ) -- open the modem to receive data on this channel
local ev = { os.pullEvent() }
while ev[1] ~= "modem_message" do -- wait for a modem message
	ev = { os.pullEvent() }
end
print( ev[5] ) -- print the message it got
So it uses this functionality to send and receive data, but also encrypts the data it's sending, which rednet doesn't do.

Edit: with the apps stacking on top of eachother, the homescreen looks like this: http://puu.sh/cETuq/c4fb0e244d.png
Edited on 05 November 2014 - 11:12 PM
Saldor010 #29
Posted 06 November 2014 - 12:21 AM
So what, does it use HTTP rather than rednet? Because it should (also) use rednet.
It simply uses modem messages. If you don't know what I'm talking about, rednet is actually a wrapper around modems. You can wrap a modem just like any other peripheral, and then send and receive data. For example

local modem = peripheral.wrap "left" -- get the modem
modem.transmit( 1, 1, "Hello" ) -- send Hello on channel 1
modem.open( 1 ) -- open the modem to receive data on this channel
local ev = { os.pullEvent() }
while ev[1] ~= "modem_message" do -- wait for a modem message
	ev = { os.pullEvent() }
end
print( ev[5] ) -- print the message it got
So it uses this functionality to send and receive data, but also encrypts the data it's sending, which rednet doesn't do.

Edit: with the apps stacking on top of eachother, the homescreen looks like this: http://puu.sh/cETuq/c4fb0e244d.png

I for one like that desktop approach.
Exerro #30
Posted 06 November 2014 - 12:24 AM
-snip-
Edit: with the apps stacking on top of eachother, the homescreen looks like this: http://puu.sh/cETuq/c4fb0e244d.png

I for one like that desktop approach.
Ok, guess it's staying then… I can see how it will start to look good when there are more apps, which there will certainly be.
Thanks for the feedback everyone.
BeaubeauFett #31
Posted 06 November 2014 - 12:34 AM
I will try running the OS in Single player and get back to you hopefully with a log if it still does it. Thank you for what help could be given.

EDIT: It works perfect now, thank you so much for the patch :D/> Great OS so far from what I've seen, keep up the good work :)/>
Edited on 05 November 2014 - 11:39 PM
BeaubeauFett #32
Posted 06 November 2014 - 12:47 AM
Question, Is there a way to save a short cut to a folder to the home screen? If not, I highly suggest it lol.
LDDestroier #33
Posted 06 November 2014 - 01:25 AM
Whoops, I overlooked the Nova creator name. I thought it was oeed that made it. Take it as a compliment, it looks great. I wonder if there's a multiboot application for OneOS and Nova as duel-boot…
oeed #34
Posted 06 November 2014 - 01:55 AM
Whoops, I overlooked the Nova creator name. I thought it was oeed that made it. Take it as a compliment, it looks great. I wonder if there's a multiboot application for OneOS and Nova as duel-boot…
Haha, yea I was a bit confused before. I have to say, it is well designed and either intentionally or accidentally has a similar took to my interfaces.
Saldor010 #35
Posted 06 November 2014 - 02:41 AM
Question, Is there a way to save a short cut to a folder to the home screen? If not, I highly suggest it lol.


Best.
Suggestion.
Ever.

Even regular CraftOS should have a shortcut feature. It's that good. :D/>
theoriginalbit #36
Posted 06 November 2014 - 03:44 AM
Even regular CraftOS should have a shortcut feature. It's that good. :D/>
CraftOS does have shortcuts, it's called aliases
BeaubeauFett #37
Posted 06 November 2014 - 06:38 AM
Question, Is there a way to save a short cut to a folder to the home screen? If not, I highly suggest it lol.


Best.
Suggestion.
Ever.

Even regular CraftOS should have a shortcut feature. It's that good. :D/>

Thank you lol.


One thing I noticed though, is that I tried to run BBTetris (http://www.computercraft.info/forums2/index.php?/topic/15878-bbtetris/) and it gave me an error, something along the line of "attempted to use null value" I can use the program just fine on the stock craftos but for some reason it doesn't work, even when I use it in the "Run" program instead of just clicking the file icon. I have yet to try any of the other games though.

once again, great os, now that i've used it a bit today, I'm starting to think I wouldn't be able to work in the computer without it. Simply amazing lol.
Exerro #38
Posted 06 November 2014 - 09:47 AM
Even regular CraftOS should have a shortcut feature. It's that good. :D/>
CraftOS does have shortcuts, it's called aliases
Not quite to the same level though, particularly as you can create shortcuts to files, folders, archives, even other shortcuts, and it all works.
Question, Is there a way to save a short cut to a folder to the home screen? If not, I highly suggest it lol.


Best.
Suggestion.
Ever.

Even regular CraftOS should have a shortcut feature. It's that good. :D/>

Thank you lol.


One thing I noticed though, is that I tried to run BBTetris (http://www.computerc...15878-bbtetris/) and it gave me an error, something along the line of "attempted to use null value" I can use the program just fine on the stock craftos but for some reason it doesn't work, even when I use it in the "Run" program instead of just clicking the file icon. I have yet to try any of the other games though.

once again, great os, now that i've used it a bit today, I'm starting to think I wouldn't be able to work in the computer without it. Simply amazing lol.
The Run app uses one UI element, the UICanvas. This element tries to re-create the CraftOS environment (all the variables and stuff) nearly from scratch, so there are bound to be bugs. I'll test it with BBTetris though and see if I can get it working.
As for the shortcut on homescreen suggestion, I was trying to go for a windows-8 style homescreen, which on hindsight probably wasn't the best idea, and adding shortcuts to it right now would lead to some fairly messy code and an overall design I wouldn't be happy with. However, I do think it's a good idea, and would like to implement it, but I'm just not sure how the homescreen would look with this new layout. Maybe you could create some paint files showing what you think it should look like, so I've got a bit more to go on?
BeaubeauFett #39
Posted 07 November 2014 - 05:28 AM


Here's what it tells me when I try to run tetris
ade125 #40
Posted 07 November 2014 - 07:35 AM
I am absolutely sure that macs have a secondary "command" (essentially windows) key.
So can you add a toggle that (like) switches Ctrl and Cmd?

Great. Bye OneOS. (sorry oeed)

How do I make apps? I would like to get some ready.
oeed #41
Posted 07 November 2014 - 07:43 AM
I am absolutely sure that macs have a secondary "command" (essentially windows) key.
So can you add a toggle that (like) switches Ctrl and Cmd?

Great. Bye OneOS. (sorry oeed)

How do I make apps? I would like to get some ready.
Yep, they've got two command keys, but ComputerCraft doesn't say that it's a control key (as it should).


I'd agree with that actually, being able to toggle between command and control.

It will be interesting to see how this pans out against OneOS in the long run. I have been working on it over the past few days and have a few new funky features lined up, but we'll see…
ade125 #42
Posted 07 November 2014 - 10:29 AM
I am absolutely sure that macs have a secondary "command" (essentially windows) key.
So can you add a toggle that (like) switches Ctrl and Cmd?

Great. Bye OneOS. (sorry oeed)

How do I make apps? I would like to get some ready.
Yep, they've got two command keys, but ComputerCraft doesn't say that it's a control key (as it should).

*snips your picture*

I'd agree with that actually, being able to toggle between command and control.

It will be interesting to see how this pans out against OneOS in the long run. I have been working on it over the past few days and have a few new funky features lined up, but we'll see…
You can switch up Command and Control with OSX, somewhere, I did it, but I forgot and I am in windows right now so…
And no, I don't think you can switch up Windows Key and Control in Windows. that's why I got my PC keyboard to use with my Raspberry Pi and to use it with windows on my mac. I still have a mac wireless keyboard, but its Fn key doesn't work so well…
Exerro #43
Posted 07 November 2014 - 11:22 AM
I'm looking forward to finishing the networking library. FTP is pretty awesome at the moment, and while it only let's you list the files in a directory on another computer, it has a lot of potential for in the future. However, after looking back at some of the code I wrote probably about a month ago for the filesystem, I'm starting to see how there are problems with it: little non-consistent bits that throw me off and lead to incomprehensible errors.
So, in light of this, I am probably going to re-write the filesystem, and the Files app.
This will take long, so if anyone wants me to i'll put up the 1.0.8 release.
Anything to do with networking will be buggy to say the least, but with a modem on the top of the two computers you can try out messaging and the limited ftp feature. Without using networking, the only difference should be the new homescreen, selection in UIInput objects (the one line inputs) and many many bug fixes to Edit. I haven't got round to looking at that BBTetris bug yet, but I will right after networking is improved.

Again, thanks for all the support everyone.
LDDestroier #44
Posted 07 November 2014 - 07:23 PM
Say, when will version 1.1 of Nova come out? Also, could you try to make Nova work with LuaGRUB2 (link)? I want a OneOS/Nova multiboot PDA!
TheJebForge #45
Posted 08 November 2014 - 03:03 PM
That OS is very raw! I cant add new apps from pastebin etc, where does the customization gone? Score: 5/10
Exerro #46
Posted 08 November 2014 - 05:03 PM
That OS is very raw! I cant add new apps from pastebin etc, where does the customization gone? Score: 5/10
You can't install apps from pastebin because I simply haven't written the apps yet. There is no point distributing an OS with 2 apps and making the user download the other equally important ones. The only reason I will have an app store at any point is because there are enough apps to make the homescreen look messy and if not all of these apps are essential. As for writing your own apps, it's very easy to do. Literally, just make a folder in Nova/apps, give it a main.lua file, and it will appear on the homescreen to test right away.
Also, what is there to customise exactly? The homescreen colour? While it may look neat, it doesn't really add anything, and chances are it will make the icons for the apps look weird.
I'm not saying it's not going to get customisable, but I wrote the majority of this in just over a week, and posted it to see if it was going in the right direction, so there's not too much to customise at the moment.
November 2014 is that time when new pretty looking OSes being released! Your OS is pretty cool! I have ragedeleted my OS when I have saw your OS, my wtOS really sucks!
What changed? You seemed to like it before, has it got any worse, or have you just changed your mind?
Say, when will version 1.1 of Nova come out? Also, could you try to make Nova work with LuaGRUB2 (link)? I want a OneOS/Nova multiboot PDA!
Not sure when Nova 1.1 will come out, but sadly I'm going back to school in 2 days, so won't get as much time to work on it as before. I have talked to the developer of LuaGRUB, so you can expect Nova 1.1 to work with it.
Edited on 08 November 2014 - 04:04 PM
TheJebForge #47
Posted 09 November 2014 - 09:41 AM
By screens that really good! But if download it then…
LDDestroier #48
Posted 12 November 2014 - 08:59 PM
That OS is very raw! I cant add new apps from pastebin etc, where does the customization gone? Score: 5/10
You can't install apps from pastebin because I simply haven't written the apps yet. There is no point distributing an OS with 2 apps and making the user download the other equally important ones. The only reason I will have an app store at any point is because there are enough apps to make the homescreen look messy and if not all of these apps are essential. As for writing your own apps, it's very easy to do. Literally, just make a folder in Nova/apps, give it a main.lua file, and it will appear on the homescreen to test right away.
Also, what is there to customise exactly? The homescreen colour? While it may look neat, it doesn't really add anything, and chances are it will make the icons for the apps look weird.
I'm not saying it's not going to get customisable, but I wrote the majority of this in just over a week, and posted it to see if it was going in the right direction, so there's not too much to customise at the moment.
November 2014 is that time when new pretty looking OSes being released! Your OS is pretty cool! I have ragedeleted my OS when I have saw your OS, my wtOS really sucks!
What changed? You seemed to like it before, has it got any worse, or have you just changed your mind?
Say, when will version 1.1 of Nova come out? Also, could you try to make Nova work with LuaGRUB2 (link)? I want a OneOS/Nova multiboot PDA!
Not sure when Nova 1.1 will come out, but sadly I'm going back to school in 2 days, so won't get as much time to work on it as before. I have talked to the developer of LuaGRUB, so you can expect Nova 1.1 to work with it.

I do agree with thejebforge on the fact that it does not have a GUI/program for downloading/installing programs via Pastebin, although shell will do.

I never tried wtOS. I'll look at it maybe.

Yay, LuaGRUB will work with it! Now finally I can have Nova on my PDA with OneOS.
——————————————————————————————————————————-

-So how is the FTP going? Is it going to have rednet and http support? Will it be shiny?
-Will you make your own appstore, or use oeed's? If you do use oeed's, will you make another client for it?
-Will you make it so that, at first install, the apps it detects when it installs have all the permissions they need?
-Do you like waffles?
-Can you try to make a chat program that can integrate itself with the FTP program, so you can send files to people with their name as well as ID?
-Do you think you could manage making a store app? Maybe it could use disks with a special ultra-encrypted code as currency, which could be spendable at special stores. Insert a disk with an ultra encrypted code (with 100 moola), buy something that's 45 moola, and you have 55 moola left.

I love this OS almost as much as I love OneOS. I consider it one of the only great OSes I know.
Please answer my vast quantity of questions!
ElvishJerricco #49
Posted 13 November 2014 - 02:10 AM
I'm curious how the file type thing works. Is there a header at the top of files or something?
Edited on 13 November 2014 - 01:11 AM
Exerro #50
Posted 15 November 2014 - 11:24 AM
I'm curious how the file type thing works. Is there a header at the top of files or something?
Yup, a Lua comment so it doesn't break Lua programs. (and you can have any number of meta data tags, which is how shortcuts work)
-So how is the FTP going? Is it going to have rednet and http support? Will it be shiny?
-Will you make your own appstore, or use oeed's? If you do use oeed's, will you make another client for it?
-Will you make it so that, at first install, the apps it detects when it installs have all the permissions they need?
-Do you like waffles?
-Can you try to make a chat program that can integrate itself with the FTP program, so you can send files to people with their name as well as ID?
-Do you think you could manage making a store app? Maybe it could use disks with a special ultra-encrypted code as currency, which could be spendable at special stores. Insert a disk with an ultra encrypted code (with 100 moola), buy something that's 45 moola, and you have 55 moola left.

I love this OS almost as much as I love OneOS. I consider it one of the only great OSes I know.
Please answer my vast quantity of questions!
Ftp will work using a networking library I will write, which will all be encrypted, and will hopefully have rednet support.
As for the app store, I don't really know. I would love to use oeed's, but sadly programs that work for OneOS will most likely not work with Nova.
Permissions will definitely change if I implement an app store, and will probably just be listed when the app installs like you say.
Who doesn't like waffles?
A chat program is a must. Along with some kind of web browser, and an email client and server.
Currency for apps won't work sadly, if I understand you correctly it's virtually impossible.

I've stopped working on this for a while, sorry. School work is mounting up and I have final exams coming up.
DoomRater #51
Posted 16 November 2014 - 04:43 PM
I like the notepad app and like that it isn't as buggy as OneOS's Ink. It's too bad it isn't done yet- so far nobody allows printing of pictures, and Ink just has messy stuff I wish would be fixed.

I'm also a bit annoyed with the request to use certain functions in the OS the first time I use them, but I understand it's for security reasons. What I'd really like is a way to toggle all of that from a user account control setting, and only have administrators be able to assign them to other users (while users are stuck with default permissions that don't let them access system folders by default with programs). Well, that and the concept of an administrator, which I assume is the first person to login.

Overall, this is DEFINITELY going in the right direction. Pocket Computer support would be the best if it doesn't already have it.
DannySMc #52
Posted 21 November 2014 - 11:07 AM
I am really impressed, nicely designed, intuitive, and very nice graphical user interface!
Maybe add some programs for word documents? and rednet transfer programs, other than really well done!

:D/>
Exerro #53
Posted 21 November 2014 - 08:26 PM
I am really impressed, nicely designed, intuitive, and very nice graphical user interface!
Maybe add some programs for word documents? and rednet transfer programs, other than really well done!

:D/>
Thanks for the feedback. A Word program is a must, and after some tweaking of the UI library I think i'll be able to manage some in-text formatting options, such as changing text colour and background colour.

I also realised that the UI library is self-contained, so when I'm happy with the new features I'll release it as a standalone API that you can use by writing "os.loadAPI("NovaUI")".
For those that are interested, it is on a similar level to bedrock, with some advancements and some restrictions (which in my opinion make it better, but that might just be me). I'll be trying to make the Nova API cater for apps which should work on their own too (not adding too powerful features, tempting people to rely on the OS too much and not release the program as a standalone thing, but releasing those libraries separately so most apps will work without Nova).

Sadly, an actual OS update is pretty far away. I just started rewriting, as the first release was a little premature. The plus side of this is that code will be a lot more organised, consistent, easy to use, and hopefully even more modular.
The new update (codename "Nova Horizon") will have some really nice improvements to the UI. When I started writing Nova, I was adding to the UI library as I was adding to the OS, but then after writing apps and adding new UI elements, it left the older OS UI looking a bit bland and not using the full UI library. As I'm starting from scratch, the OS will be able to use the full UI library, meaning it will look pretty awesome.

The full details:
SpoilerIn addition, the filesystem library will be more stable and far quicker (use caching) and I'll be writing it with ftp in mind. When I tried implementing ftp using the current filesystem library and Files app, I realised it was sending 3-4 read requests per file so it could get file types, file sizes, and other information. Using a cache, it will only have to send one request, and will result in 3/4 times faster loading speeds, not to mention the reduced network traffic.

Users will also be a bit better. Security features such as different login methods will be available (think of the password settings on Android).
– Edit: thinking about this, probably not going to happen, at least not for a while.
Modularity in user configs will mean less content has to be decrypted/encrypted each time something is changed, which, again, is a big improvement for apps that save data.

I'll also be improving multitasking and apps in general. No more "blah has requested to use blah", and apps will be able to talk to eachother, share data and perform actions on eachother. Also, there will be a "Nova" dropdown present at all times, like there is in the Home app currently, and that will bring up an overlay on top of the running app with things like the time, running apps, notifications, and possibly stuff to do with the running app.
The home app will be transferred from being an app to a kernel-side UI, and will have a shortcut on the overlay mentioned above.

The first release of Nova Horizon will have similar functionality to now, maybe even less (when I rewrite the Paint app again, I want it to be very in depth, with layer support, copy/pasting, brush sizes, selections, etc. This (clearly) will take time, and I think releasing Nova Horizon will be a long enough wait), but after that i'll be back in competition with OneOS and be working hard to catch up.

In conclusion, I am working on this, but an update is at least a couple of weeks away. When the update is out, i'll probably take a short break, and then come back with tonnes of features.

If anybody is interested in helping with the development, let me know, I'll be very grateful of any help I can get, and as always, any design ideas, features, or app ideas are greatly appreciated.

Thanks for reading.
Edited on 21 November 2014 - 08:02 PM
DoomRater #54
Posted 25 November 2014 - 03:12 AM
I tried adding Ink to the home menu because I was tired of typing it in at the shell. So I created an ink folder in Nova/apps and copied the ink file there as main.lua. It doesn't load though. What'd I do wrong?
Exerro #55
Posted 25 November 2014 - 04:39 AM
You can't just create apps like that, sorry. Nova Horizon (the update I've nearly finished) might have some better support for normal comoutercraft files though. I'll add it in if you like.

Just so you know, after some tweaking of various things, I have created a system where it's quite easy for apps to be standalone from the OS if NovaUI is installed (single file api). The edit and paint app of Nova Horizon will be released standalone.
DoomRater #56
Posted 25 November 2014 - 06:22 AM
As long as I can keep getting the OS installed from pastebin, I'm happy. i'm stuck using with CC 1.63 and my server owner keeps forgetting to add github to the whitelist.
Exerro #57
Posted 25 November 2014 - 12:12 PM
I think by the end of the week, I'll be ready to release the update. Here are some screenshots of the newest version.
Spoiler







There are some key changes in Nova Horizon. Everything is generally just a lot more usable. For example, to switch between apps, you don't need to press f1 and then select the app from the list of running apps. You can just press the "<" in the top right corner and cycle through them, however, you can still press the "Nova" button on the top left to bring up a list of running apps. There are no longer permissions for apps, and there is potential for having different levels of user (admin, guest etc), although I haven't actually implemented it yet.

Another huge difference is the standalone apps. The Edit and Paint app work on their own without Nova. There is no feature in these apps that works in Nova that doesn't work outside of Nova.

The Files app is also improved. The file option dropdowns now actually create dropdowns rather than a menu on the side. There is a Favourites bar to the left as well, which you can add to and remove from (and it will save on a per-user basis). There is the ability to change the sort order (size or name, ascending or descending). Again, it's just a bit more polished than before.

If anyone has any suggestions they would like to see in the next release, tell me, and I'll do my best to add them.

Thanks for all the support everyone.
DoomRater #58
Posted 26 November 2014 - 03:34 PM
The ability to add programs I can run right off the desktop pretty much seals the deal. OneOS may be more mature at the moment, but it doesn't have logins and I'd really rather not set up a SECOND MFFS interdiction matrix just for my personal office.

Some things I'd like to develop for it include being able to login via a mag-stripe card. Support for the Mag-Reader block should be as simple as catching the "mag_swipe" event and filling in the password field with the stored data.

Edit: And if sandboxing programs will be a thing for this OS, perhaps it could catch programs that use os.shutdown() or os.reboot()? I didn't bring this up previously since it was only meant to run apps for Nova and the occasional program through the shell, or more specifically because I forgot to test this condition earlier.
Edited on 26 November 2014 - 02:51 PM
Saldor010 #59
Posted 26 November 2014 - 03:48 PM
The ability to add programs I can run right off the desktop pretty much seals the deal. OneOS may be more mature at the moment, but it doesn't have logins and I'd really rather not set up a SECOND MFFS interdiction matrix just for my personal office.

Some things I'd like to develop for it include being able to login via a mag-stripe card. Support for the Mag-Reader block should be as simple as catching the "mag_swipe" event and filling in the password field with the stored data.

You can just download a password lock from pastebin, put it on OneOS, then set it as the startup program. That's why oeed added in that setting, so people can add in a lock program if they want to.
DoomRater #60
Posted 26 November 2014 - 04:10 PM
That's interesting, I'll see if that actually fully locks OneOS down. I didn't think you could prevent access to the rest of the OS from a startup program but if there's a way to do that I'm interested…
Exerro #61
Posted 26 November 2014 - 05:01 PM
Users in Nova aren't just password locks. They hold important information related to how the computer runs. In Nova Horizon, the Files app has a Favourites section on the left, and users can add files and folders to that list. This is saved on a per-user basis. Using a password login certainly doesn't add that functionality to the Files program in OneOS.

Custom programs to run on the homepage isn't going to happen, and you'll see why with the new homepage. However, I will add a Desktop app, (kind of like how windows 8 does it I guess) that will allow you to create shortcuts, and I might build in windowing when I do that, not sure though.

A mag swipe card does sound pretty awesome, however you'll need to tell me more about how it works as I currently have no idea. If it fires an event, it will literally take 5 lines to add that functionality.

Sandboxing, after all the negative feedback I got about the permission system, has been pretty much removed *sigh*. Shutdown and restart would be a good thing to sandbox I guess, but only for computercraft programs. Apps are given pretty much free reign over the OS now (filesystem access, UI access, some user account access).

Talking of computercraft programs vs apps, there is something that I am quite excited about new to Nova Horizon. This is the "appconfig.txt" file. Along with various file handling things, this file can contain 'runmode="compatability"' to cause it to behave like a normal computercraft program. Tested with BBTetris (which is now fixed by the way), it works fine. In fact, using 'fullscreen=true' will cause it to go completely fullscreen, with no OS GUI at all. This was necessary as BBTetris doesn't run on lower resolutions than 50x19, but I'm sure will be useful for other programs that run in compatibility mode too. So for those of you that wish to add a CraftOS program, it's far easier. I'll put more information up when I release it though, as it's still quite easy to mess up I guess.

I'm working on the networking library (again), and need to implement a "service" feature for apps, allowing them to share data, and run code when a user logs in, but other than that, everything's ready for release. Edit and Paint both got a rewrite, and now work standalone (need NovaUI installed though), so I'll be releasing them on their own soon too.
Edited on 26 November 2014 - 06:29 PM
DoomRater #62
Posted 26 November 2014 - 08:33 PM
Okay I'm totally satisfied with how this is progressing. As for how mag readers work, yes they fire an event.
"mag_swipe", data, side – Queued when a card is read.
Straight from Immibis Perihperals forum page.
Exerro #63
Posted 26 November 2014 - 08:45 PM
Ok, after clicking on the user you want to log in with, if you swipe a mag card it should put that text into the password box and attempt to log in with that password.

I changed the logging in UI a little bit in Nova Horizon, but it's pretty much the same. It now looks like this and the password box appears when you click on a user and disappears when you click away.

After writing the settings app, and adding a couple of internal things, I'll be releasing it. It will be out by the end of Saturday at the latest.
oeed #64
Posted 26 November 2014 - 09:27 PM
I really don't understand why people want login systems so much. I mean, really, what's the point. Ignoring the fact that it's very easy to bypass, what would anyone have that needs protecting. I get door locks obviously, but what files do you have that need passwords. Personally I think login systems just make everything slow and annoying.

Now, as it was mentioned, this doesn't mean you can't have a password. You cloud get or make a program which then runs OneOS.
jaredallard #65
Posted 26 November 2014 - 11:59 PM
I really don't understand why people want login systems so much. I mean, really, what's the point. Ignoring the fact that it's very easy to bypass, what would anyone have that needs protecting. I get door locks obviously, but what files do you have that need passwords. Personally I think login systems just make everything slow and annoying.

Now, as it was mentioned, this doesn't mean you can't have a password. You cloud get or make a program which then runs OneOS.

You can make very secure password system actually.

Take for an example you have a virtual file system using JSON, which you AES encrypt using AESLUA. Then, upon boot some sort of initalramfs asks you for the password of the disk; it then decrypts it if right, or doesn't if wrong. Now, tell me how easy it is to crack AES. Last I checked, it's not, infact it's considered impossible as of now.

Just because some implementations of logins systems have been bad, doesn't mean the idea is worthless, that's how we got the light bulb after all.
DoomRater #66
Posted 27 November 2014 - 12:41 AM
One advantage of Nova having user logins vs OneOS having them is that user directories are supported by default as a result. That said, I did sucessfully grab a login implmentation and apply it to OneOS in a test environment. Too bad my server admin still has not whitelisted the internet (Yogscast Complete user, which is CC 1.63) so I can install it… Nova has filled that gap quite nicely.
oeed #67
Posted 27 November 2014 - 01:51 AM
I really don't understand why people want login systems so much. I mean, really, what's the point. Ignoring the fact that it's very easy to bypass, what would anyone have that needs protecting. I get door locks obviously, but what files do you have that need passwords. Personally I think login systems just make everything slow and annoying.

Now, as it was mentioned, this doesn't mean you can't have a password. You cloud get or make a program which then runs OneOS.

You can make very secure password system actually.

Take for an example you have a virtual file system using JSON, which you AES encrypt using AESLUA. Then, upon boot some sort of initalramfs asks you for the password of the disk; it then decrypts it if right, or doesn't if wrong. Now, tell me how easy it is to crack AES. Last I checked, it's not, infact it's considered impossible as of now.

Just because some implementations of logins systems have been bad, doesn't mean the idea is worthless, that's how we got the light bulb after all.

Oh I'm not saying that password checking isn't secure. You can make a secure password system with simple hashing. The thing is I can still really easily by pass it. Plonk down a disk drive with a custom startup and just edit out the password checker. It's not like you've got Russian missile codes on your computer (you don't right? :P/>) that need to be kept secure.

I mean, I might look in to adding it if people want it. But I think user directories are not needed. Just make another computer.
Edited on 27 November 2014 - 12:53 AM
DoomRater #68
Posted 27 November 2014 - 02:44 AM
You do if you play ICBM! But then you probably play with MFFS as well which has block interaction permissions baked in as well as missile defenses.
jaredallard #69
Posted 27 November 2014 - 03:09 AM
I really don't understand why people want login systems so much. I mean, really, what's the point. Ignoring the fact that it's very easy to bypass, what would anyone have that needs protecting. I get door locks obviously, but what files do you have that need passwords. Personally I think login systems just make everything slow and annoying.

Now, as it was mentioned, this doesn't mean you can't have a password. You cloud get or make a program which then runs OneOS.

You can make very secure password system actually.

Take for an example you have a virtual file system using JSON, which you AES encrypt using AESLUA. Then, upon boot some sort of initalramfs asks you for the password of the disk; it then decrypts it if right, or doesn't if wrong. Now, tell me how easy it is to crack AES. Last I checked, it's not, infact it's considered impossible as of now.

Just because some implementations of logins systems have been bad, doesn't mean the idea is worthless, that's how we got the light bulb after all.

Oh I'm not saying that password checking isn't secure. You can make a secure password system with simple hashing. The thing is I can still really easily by pass it. Plonk down a disk drive with a custom startup and just edit out the password checker. It's not like you've got Russian missile codes on your computer (you don't right? :P/>) that need to be kept secure.

I mean, I might look in to adding it if people want it. But I think user directories are not needed. Just make another computer.

See, the only way to combat that is by having your whole entire "disk" encrypted. You boot of disk, edit out password check, it still can't "mount" aka access the files because the password was wrong! I can see what your saying, and that's the issue with using password hashing, but using it in a way of file encryption is the easiest method and most secure– because even with the credential checking part out, it's still unable to be accessed!

See: https://github.com/ccLinux/kernel/tree/master/etc/kernel/core/vfs.lua and the fs https://github.com/ccLinux/kernel/tree/master/etc/drivers/fs/ext3.lua for a code example of what I mean.
Exerro #70
Posted 27 November 2014 - 12:05 PM
Nova Horizon is out! (v1.2)
See the OP for more details.

I have some questions about future development:

The Messenger app.
This will be an email client, allowing you to send messages between computers. I may implement some basic formatting at some point, image embedding, and stuff like that, but not just yet.

Using the networking library, this will be able to send the messages securely (encryption, with a key established using Diffie Hellman key exchange).

However, email systems in the real world send the messages to a server, which are then accessed later by the client. This is certainly possible, but having to set up a server and then 2 other clients to send messages around seems like a bit too much hassle. Using a peer to peer method, emails would still be received if the app wasn't running, and if for whatever reason the message wasn't sent, it would be saved to a list and sent again every minute or so until it was received by the other computer (and yes this would persist if you closed the app/shut down the computer).

In conclusion, the disadvantage of having a peer to peer system (both computers need to be on for the message to be sent) is roughly equal to the hassle of needing a server (and needing one computer to be on for the message to be sent) in my opinion, so what do you think I should do?
DannySMc #71
Posted 27 November 2014 - 12:20 PM
I am really impressed, nicely designed, intuitive, and very nice graphical user interface!
Maybe add some programs for word documents? and rednet transfer programs, other than really well done!

:D/>
Thanks for the feedback. A Word program is a must, and after some tweaking of the UI library I think i'll be able to manage some in-text formatting options, such as changing text colour and background colour.

I also realised that the UI library is self-contained, so when I'm happy with the new features I'll release it as a standalone API that you can use by writing "os.loadAPI("NovaUI")".
For those that are interested, it is on a similar level to bedrock, with some advancements and some restrictions (which in my opinion make it better, but that might just be me). I'll be trying to make the Nova API cater for apps which should work on their own too (not adding too powerful features, tempting people to rely on the OS too much and not release the program as a standalone thing, but releasing those libraries separately so most apps will work without Nova).

Sadly, an actual OS update is pretty far away. I just started rewriting, as the first release was a little premature. The plus side of this is that code will be a lot more organised, consistent, easy to use, and hopefully even more modular.
The new update (codename "Nova Horizon") will have some really nice improvements to the UI. When I started writing Nova, I was adding to the UI library as I was adding to the OS, but then after writing apps and adding new UI elements, it left the older OS UI looking a bit bland and not using the full UI library. As I'm starting from scratch, the OS will be able to use the full UI library, meaning it will look pretty awesome.

The full details:
SpoilerIn addition, the filesystem library will be more stable and far quicker (use caching) and I'll be writing it with ftp in mind. When I tried implementing ftp using the current filesystem library and Files app, I realised it was sending 3-4 read requests per file so it could get file types, file sizes, and other information. Using a cache, it will only have to send one request, and will result in 3/4 times faster loading speeds, not to mention the reduced network traffic.

Users will also be a bit better. Security features such as different login methods will be available (think of the password settings on Android).
– Edit: thinking about this, probably not going to happen, at least not for a while.
Modularity in user configs will mean less content has to be decrypted/encrypted each time something is changed, which, again, is a big improvement for apps that save data.

I'll also be improving multitasking and apps in general. No more "blah has requested to use blah", and apps will be able to talk to eachother, share data and perform actions on eachother. Also, there will be a "Nova" dropdown present at all times, like there is in the Home app currently, and that will bring up an overlay on top of the running app with things like the time, running apps, notifications, and possibly stuff to do with the running app.
The home app will be transferred from being an app to a kernel-side UI, and will have a shortcut on the overlay mentioned above.

The first release of Nova Horizon will have similar functionality to now, maybe even less (when I rewrite the Paint app again, I want it to be very in depth, with layer support, copy/pasting, brush sizes, selections, etc. This (clearly) will take time, and I think releasing Nova Horizon will be a long enough wait), but after that i'll be back in competition with OneOS and be working hard to catch up.

In conclusion, I am working on this, but an update is at least a couple of weeks away. When the update is out, i'll probably take a short break, and then come back with tonnes of features.

If anybody is interested in helping with the development, let me know, I'll be very grateful of any help I can get, and as always, any design ideas, features, or app ideas are greatly appreciated.

Thanks for reading.

For the users? I may be able to help you there? By using a database online? I have an online database? How about use that to login? As it is "secure" and other methods could be disk drives with the data from the server on? who knows it could be massive?:P/>

I can help with the live database logins? or anything else really that you want?:') I have a lot of free time :P/>
DoomRater #72
Posted 27 November 2014 - 02:45 PM
Although using an online database sounds really nice, us 1.63 computercraft people can't use it!

Also, I vote P2P for emailing system.

Finally, I wonder what all of the software will work on a pocket computer without much fuss…
Exerro #73
Posted 27 November 2014 - 02:57 PM
Since posting, I've made about 10 updates, fixing various issues, and adding pocket computer support! The homepage automatically adjusts to fit the pocket screen, and in Files, the sidebar disappears meaning you can actually see the files normally (no access to Favourites though).

People have misunderstood what I meant by "server", I mean an in game server. Also, having thought of some more reasons why to use a server (in-game) I'm pretty much decided (on using a server, not P2P).

By using a server, it would allow people to log into their emails from any computer running Nova and see the same thing, as well as being able to send messages to [a username]@[a database/server] rather than [a username]@[a computer], which in my opinion is a huge advantage.

I might add a feature to the networking library that allows computers to send messages to themselves. Sounds stupid I know, but it would mean you could host an email server and log into it using the Messenger client all from the same computer.
DoomRater #74
Posted 27 November 2014 - 04:34 PM
I hear pocket computer support. AAAAAAAAAAAA
The text for setting up username and password is cut off but everything else seems to fit quite well. I got some screenshots of it on my advanced pocket computer…
https://www.dropbox.com/sh/y75oykdtkc2bfz8/AACkxugKE5OdNMDd6sLNEO8Na?dl=0
Exerro #75
Posted 27 November 2014 - 04:39 PM
The Paint app and About tab are actually supposed to be like that (well, there's nothing I can do about it anyway, and it's not THAT bad). I didn't notice the setup one though, so I'll fix that, and I'll decrease the spacing between the buttons at the bottom of the Nova overlay so they don't get cut off. The multitasking support is limited on pocket computer though, you have to use the little < to switch between apps, and can't use the list sadly.
Exerro #76
Posted 27 November 2014 - 07:04 PM
This is actually going far quicker than I thought. In the past hour or so, I have implemented a server program which allows you to host a website. The Browser app can then connect to that computer, request a file, and any plugins the server has running will change the content of the file before it is sent back to the Browser. The Browser then displays the content as NML (NovaUI markup language).

Here's a little experiment I tried:
(This doesn't use the plugin feature, as I need to write some plugins, but plugins are run in an environment with the function 'document.write()' which will add to the stream of text to be returned to the client)

There were 2 computers in my minecraft world, computer A and computer B (id 1 and 3, but that doesn't matter)
Computer B had an index.nml file, with this inside it "<text width:auto>Hello world!</text>"
Computer A tried to connect to computer B and read that file.
Computer B looked at its list of plugins, and if it found any plugin sections in the text, ran that plugin with the text. This didn't happen because there were no <? bits in the text.
Computer B then sent back the text to computer A.
Computer A used NovaUI markup to load the content.
Spoiler

Another thing I implemented was the args table, which can be sent in the request to the server. It will be loaded just like real browsers do it (?name=value&amp;name2=value2) on the Browser app side, and is able to be accessed by plugins.

The main plugin I am thinking of having is the Lua plugin. You will embed it like this: "<?lua … ?>", and it will behave just like php scripts, with print() and write() adding to the output stream.

I'll probably make emails/messages rely on this system. It will be possible to have a website on the server that responds to requests to add emails to users registered on that server, register/delete users, get mail, and pretty much anything real websites do with php, but a computercraft version of it.

If anyone has any suggestions related to how this should work, I would be very grateful. If I get this to an acceptable point, I will probably release it, and then it will be harder to make changes.
Edited on 27 November 2014 - 06:06 PM
DoomRater #77
Posted 27 November 2014 - 08:40 PM
Browsing and networking code is a little too beyond me right now but I can see quite a bit of use for being able to make a website on one computer and serve the rest of, say, a megabuilding that reaches well into the sky.

But hey, running lua from a webpage? Suddenly, the idea of a central autofactory server computer became more awesome. It could send me e-mails letting me know my brine tank is low or that the ME block storage has overflowed. I can see a few uses for something like this.

Edit: I can report logging in smoothly with mag-stripe cards. Works great!
Edited on 28 November 2014 - 01:17 AM
Exerro #78
Posted 29 November 2014 - 07:01 PM
I've put up an update, which you can download in-game using the automatic updater (or if for some reason that doesn't work, the same pastebin link).

I have started to work on the new and updated NML. NML is similar to HTML in a way, and allows you to create pages of UI elements. This new version adds 2 new apps, Browser, and NetServer.

NetServer allows you to host a website. You can take it on and off line, change the root path, and install plugins. There is 1 plugin which you can install in the app, called "Lua". Basically, when the server gets a request, it reads the file, and if it finds "<?" in the file, it will run the content of the "<?pluginname … ?>" with the plugin. The Lua plugin allows you to call write() and print() to add to the stream of the text to be returned to the client.
If you try and access a directory, it will look for the index.nml file inside that directory, and if it can't find wherever you're looking for, it will try and respond with the content of the noindex.nml file.

Browser is a very WIP client for looking at these pages. You type in the id of the computer you want to view, followed by an optional "/" and a path, and it will fetch the file from that computer (or index.nml file if you just type the id) and display the result.

This is all rednet based, using the Nova networking library. The plus side of this is that it features secure data transfer (it's all encrypted) so don't worry about your stuff being broadcasted to people.

If you want to test this out and make a little website, there are currently 4 tags implemented. Text (t), paragraph (p), newline (nl, br), space (s). The space and newline tags don't have a closing tag.

A space basically writes a " " in, because whitespace at the end and beginning of text/paragraph objects is trimmed.
A newline goes down below all the objects in that element (inside a text/paragraph object, or the main body)
A paragraph and text object allow you to write text onto the screen. You can give them a width and a height in the format "width:10px" or "width:10%" for example, and you can give them background and text colour like "tc:blue" or "bc:lightBlue". A paragraph is different from a text object because it effectively has a "<br>" at the end.

An example website:

<p tc:blue>Hello world!</p>
<br>
<p width:20px>This is a long bit of text that will be word wrapped at 20 pixels across.</p>
<!-- You could give ^ a height smaller than what it wraps to and it will create a scrollbar automatically-->
<br>
<t width:100% height:50% bc:<?lua
	local n = 2 ^ math.random( 1, 14 ) -- exclude white/black
	for name, col in pairs( colours ) do
		if col == n then
			write( name )
			break
		end
	end
?>></t>

That would display some text on the top, a word wrapped paragraph, and then a big box which is a different random colour each time.

Anyway, have fun with this. I'll be adding in a lot more soon, like <f> or <div> for a frame or div, <hr> for a horizontal line, <button> and <link> which have onClick functions or go to other sites, <image> which will load an image and display it, <script> which will run Lua script on the client, and a full UI for the browser with history, a web address, maybe <head> support, and some options.
Edited on 29 November 2014 - 06:04 PM
jaredallard #79
Posted 03 December 2014 - 06:47 PM
I've put up an update, which you can download in-game using the automatic updater (or if for some reason that doesn't work, the same pastebin link).

I have started to work on the new and updated NML. NML is similar to HTML in a way, and allows you to create pages of UI elements. This new version adds 2 new apps, Browser, and NetServer.

NetServer allows you to host a website. You can take it on and off line, change the root path, and install plugins. There is 1 plugin which you can install in the app, called "Lua". Basically, when the server gets a request, it reads the file, and if it finds "<?" in the file, it will run the content of the "<?pluginname … ?>" with the plugin. The Lua plugin allows you to call write() and print() to add to the stream of the text to be returned to the client.
If you try and access a directory, it will look for the index.nml file inside that directory, and if it can't find wherever you're looking for, it will try and respond with the content of the noindex.nml file.

Browser is a very WIP client for looking at these pages. You type in the id of the computer you want to view, followed by an optional "/" and a path, and it will fetch the file from that computer (or index.nml file if you just type the id) and display the result.

This is all rednet based, using the Nova networking library. The plus side of this is that it features secure data transfer (it's all encrypted) so don't worry about your stuff being broadcasted to people.

If you want to test this out and make a little website, there are currently 4 tags implemented. Text (t), paragraph (p), newline (nl, br), space (s). The space and newline tags don't have a closing tag.

A space basically writes a " " in, because whitespace at the end and beginning of text/paragraph objects is trimmed.
A newline goes down below all the objects in that element (inside a text/paragraph object, or the main body)
A paragraph and text object allow you to write text onto the screen. You can give them a width and a height in the format "width:10px" or "width:10%" for example, and you can give them background and text colour like "tc:blue" or "bc:lightBlue". A paragraph is different from a text object because it effectively has a "<br>" at the end.

An example website:

<p tc:blue>Hello world!</p>
<br>
<p width:20px>This is a long bit of text that will be word wrapped at 20 pixels across.</p>
<!-- You could give ^ a height smaller than what it wraps to and it will create a scrollbar automatically-->
<br>
<t width:100% height:50% bc:<?lua
	local n = 2 ^ math.random( 1, 14 ) -- exclude white/black
	for name, col in pairs( colours ) do
		if col == n then
			write( name )
			break
		end
	end
?>></t>

That would display some text on the top, a word wrapped paragraph, and then a big box which is a different random colour each time.

Anyway, have fun with this. I'll be adding in a lot more soon, like <f> or <div> for a frame or div, <hr> for a horizontal line, <button> and <link> which have onClick functions or go to other sites, <image> which will load an image and display it, <script> which will run Lua script on the client, and a full UI for the browser with history, a web address, maybe <head> support, and some options.

please, please, please follow the syntax that ooeds browser uses, the last thing we need is a gap between syntax and just causing IE vs HTML Standards issues.

Which, on that topic, brings up the need for HTML like standards specifications.
Edited on 04 December 2014 - 12:38 AM
Exerro #80
Posted 13 December 2014 - 11:31 PM
Nova 1.3 snapshot

I took a little break from working on Nova, but started work again today, rewrote everything again, and added in windowing. I won't be releasing it officially right now, as I need to rewrite all the apps, but I added in the Files app, the Run app, and a task manager app to make it functional.



The windows can be closed (x), maximised (+), minimised (_), and bordered ( b ). When a window is bordered, a little @ appears in the bottom right, which allows you to resize the window. The windows are also shown along the bottom, and can be opened/focussed on by clicking their name down there. To move the windows around, simply drag their title on the top of the window. In addition, you can drag a window to the right/left of the screen to expand it to that half if the screen (like win7/8 does it).

I'd like to see what people think of this new system, so if you've got an opinion, please let me know.

If you'd like to run the snapshot, you can get it from pastebin: "pastebin get ZH3HCGqb Nova1_3"
To run apps, click the Nova button on the bottom left, then type in the app name (Files/Tasks/Run). In the future, this will be a search feature.
Edited on 13 December 2014 - 10:33 PM
Geforce Fan #81
Posted 14 December 2014 - 01:41 AM
Pretty nice, but definitely read up on Coroutines and implement multitasking
Nvm, the only app that doesn't have it is BBTetris, which is odd.
Sorry.
Definitely a VERY good OS. Keep it up.
Edited on 14 December 2014 - 12:53 AM
Exerro #82
Posted 14 December 2014 - 08:55 AM
BBTetris does have it, but it runs fullscreen. What do you think of the windowing I'm implementing?
DoomRater #83
Posted 14 December 2014 - 04:04 PM
If you ask me about windowing, it's a neat trick as long as the programs inside know to update after a resize.
Exerro #84
Posted 14 December 2014 - 04:25 PM
If you ask me about windowing, it's a neat trick as long as the programs inside know to update after a resize.
It's down to the apps themselves to do it, but the 4 apps currently implemented do it.

I've been told the whole thing looks too grey on the whole, would you agree?
DoomRater #85
Posted 14 December 2014 - 08:39 PM
If you let us change the border color it'd look a lot less grey.
willwac #86
Posted 14 December 2014 - 10:50 PM
I love it!
Here's a few suggestions:
  • Permissions. I know people didn't like this before, but it is SUPER useful!
  • Admin/Regular Accounts. This would be useful on a shared computer.
  • Key bind editing. Let the user choose which key is their function key.
  • Stand alone host for chat, web and ftp. While having hosts built into the OS is nice for new users, being able to host a Nova Service without the Nova OS UI overhead will be great.
  • Add a space before inputs.


As you can see, the text in the password field overflows to the left a bit.
KingofGamesYami #87
Posted 15 December 2014 - 03:53 AM
-snip-
[*]Add a space before inputs.

-snip-
As you can see, the text in the password field overflows to the left a bit.

Thats your texture pack, it's impossible to do that with the default font.
willwac #88
Posted 15 December 2014 - 11:28 PM
-snip-
[*]Add a space before inputs.
-snip-
As you can see, the text in the password field overflows to the left a bit.

Thats your texture pack, it's impossible to do that with the default font.
ComputerCraft, why do you have no font api?
Thanks, and I love your footer! Does anyone know a fix to this? I'm using the Faithful 32x32 pack.
Saldor010 #89
Posted 16 December 2014 - 03:15 AM
-snip-
[*]Add a space before inputs.
-snip-
As you can see, the text in the password field overflows to the left a bit.

Thats your texture pack, it's impossible to do that with the default font.
ComputerCraft, why do you have no font api?
Thanks, and I love your footer! Does anyone know a fix to this? I'm using the Faithful 32x32 pack.

I thought I heard somewhere that if you start the world with the default pack, THEN switch to your other pack, the font will be okay, but don't quote me on that.
nickname912 #90
Posted 23 December 2014 - 10:12 AM
Do you have the abiltiy to share files betwen nova devices?

If not, please make it and build it inside the system so you don't have to open an app to recive files.

Thank you for a good os!
Edited on 23 December 2014 - 09:13 AM
Exerro #91
Posted 23 December 2014 - 10:23 AM
There isn't a feature like that currently, and I'm working on Nova 2.0 so I don't really have the time to add it in, sorry.
DannySMc #92
Posted 23 December 2014 - 10:28 AM
Do you have the abiltiy to share files betwen nova devices?

If not, please make it and build it inside the system so you don't have to open an app to recive files.

Thank you for a good os!

Do you want me to add one in?:D/>
nickname912 #93
Posted 23 December 2014 - 10:30 AM
A new update. I'm very exited! Keep on with your awesome work.

Merry Christmas everybody :-)
nickname912 #94
Posted 23 December 2014 - 10:39 AM
Do you have the abiltiy to share files betwen nova devices?

If not, please make it and build it inside the system so you don't have to open an app to recive files.

Thank you for a good os!

Do you want me to add one in?:D/>/>

It would be very nice. It's Awsumbens os so you decide.
Exerro #95
Posted 23 December 2014 - 12:52 PM
Of course you can, but you might not know how to work with the multitasking or UI. Feel free to try though and if you get stuck just ask.
DannySMc #96
Posted 23 December 2014 - 04:36 PM
Of course you can, but you might not know how to work with the multitasking or UI. Feel free to try though and if you get stuck just ask.

Dude it's pretty simple, I have already edited your program for someone on my server who wanted to add a his own programs… :P/> But I can have a look when I am home!
Exerro #97
Posted 23 December 2014 - 06:12 PM
Of course you can, but you might not know how to work with the multitasking or UI. Feel free to try though and if you get stuck just ask.

Dude it's pretty simple, I have already edited your program for someone on my server who wanted to add a his own programs… :P/> But I can have a look when I am home!
Seriously? You could write a file transfer program just from looking at the current apps? Impressive if so, and thanks for the help :)/>
DannySMc #98
Posted 24 December 2014 - 12:04 AM
Of course you can, but you might not know how to work with the multitasking or UI. Feel free to try though and if you get stuck just ask.

Dude it's pretty simple, I have already edited your program for someone on my server who wanted to add a his own programs… :P/> But I can have a look when I am home!
Seriously? You could write a file transfer program just from looking at the current apps? Impressive if so, and thanks for the help :)/>

Yeah was pretty straight forward…
Exerro #99
Posted 26 December 2014 - 11:29 PM
Nova 2.0 is in the works. Rather than being just a graphical interface, this will also have the ability to run without various features, such as a UI, networking, modified fs, etc. It will do this using a module system… you will be able to call Nova.module.register(), Nova.module.load() and Nova.module.unload() to affect the code Nova runs. In addition, it won't be packed up into a single file, so you'll be able to delete the files you don't need to save space.

Right now, it can't do much: all the modules work other than "network" and "UI", but these are by far the two most important ones. The reason I'm posting this is because I'd like to know how the networking library should work. The internal code of Nova 2.0 will be aimed at developers, so I'd like to have some feedback. I could implement a real-life-internet-like API, but it seems like overkill (and will take quite a while), or I could simply add a little library that handles key exchange and whitelisting. I don't mind either way, it's up to you!

If you'd like to see the development of Nova 2.0, source code is now on GitHub.
Thanks for reading.
Edited on 26 December 2014 - 10:30 PM
DoomRater #100
Posted 26 December 2014 - 11:34 PM
Now we're talking! The ability to make a server software that other computers hook into and run little bits of code from would always be a nice setup. And that's one of the plans I'd have with this particular OS.

Actual APIs please? It'd be nice to develop apps that use minimal amounts of code because all the important stuff is already written and modularized.
ByteMe #101
Posted 26 December 2014 - 11:38 PM
Nova 2.0 is in the works. Rather than being just a graphical interface, this will also have the ability to run without various features, such as a UI, networking, modified fs, etc. It will do this using a module system… you will be able to call Nova.module.register(), Nova.module.load() and Nova.module.unload() to affect the code Nova runs. In addition, it won't be packed up into a single file, so you'll be able to delete the files you don't need to save space.

Right now, it can't do much: all the modules work other than "network" and "UI", but these are by far the two most important ones. The reason I'm posting this is because I'd like to know how the networking library should work. The internal code of Nova 2.0 will be aimed at developers, so I'd like to have some feedback. I could implement a real-life-internet-like API, but it seems like overkill (and will take quite a while), or I could simply add a little library that handles key exchange and whitelisting. I don't mind either way, it's up to you!

If you'd like to see the development of Nova 2.0, source code is now on GitHub.
Thanks for reading.

I haven't been on lualand for a while been working on it's new website :)/>. Is there anything new on the GUI side of things?
Exerro #102
Posted 26 December 2014 - 11:55 PM
Now we're talking! The ability to make a server software that other computers hook into and run little bits of code from would always be a nice setup. And that's one of the plans I'd have with this particular OS.

Actual APIs please? It'd be nice to develop apps that use minimal amounts of code because all the important stuff is already written and modularized.
APIs will happen, but you won't be able to load them using os.loadAPI(). The core of Nova is tiny (look in the sys folder on the github repo and you'll see) so I don't see why using that would be a problem, and that will load modules correctly. You can delete as many or as few of the modules as you like, and then use the loaded modules like Nova.[module_name]. These modules will be very specific, some only 10 lines even, but will be useful and will tie everything together.

By that top part, are you talking about remote control over a computer?

-snip-

I haven't been on lualand for a while been working on it's new website :)/>. Is there anything new on the GUI side of things?
A GUI won't be out for quite a while, at least a couple of weeks, but more like a month in all honesty. I'm focussing on the core stuff, the APIs, libraries, classes etc.
Edited on 26 December 2014 - 10:56 PM
FUNCTION MAN! #103
Posted 27 December 2014 - 10:27 AM
Please do an actual, real life-like api. Something like the POSIX C standard library, except way simpler.

Look at bedrock, for example. Creating an application is very easy. You load the view and :run() it.
Make something like that.
Exerro #104
Posted 29 December 2014 - 04:19 PM
I'm nearly done with the core for Nova 2.0 (at least I nearly have it at a working stage), so I'd like to begin working on the graphical side of the OS. There are some things, however, which I am unsure how to go about.

Users
Should I implement users? Lots of people have said that users are pointless, and just having a password for the computer will do. Honestly, I disagree, and think if I set up the user system in a nice way you won't be able to notice the difference (unless you start using multiple users of course).

Permissions
What kind of permission system should I implement? Basic sandboxing will definitely happen, but should apps have individual permissions that let them partially out of the sandbox (things like root fs access, network access etc). Also, if I implement users, should users have permissions (like "admin" or "default" accounts).

Multitasking
Of course there will be multitasking :P/> My question is how it should be displayed. I'm thinking of having windows right now. The only downside of this that I can see is the limited screen space, but if windows can go fullscreen, there isn't really a problem I don't think. This also makes having a desktop work a lot better, and a taskbar for switching between running apps would fit in nicely.

Any feedback would be very helpful, and will most likely affect how Nova comes out in the end.
DoomRater #105
Posted 29 December 2014 - 04:35 PM
The most sandboxing I see need for is making sure that a program that calls os.shutdown or os.reboot doesn't kill the OS automatically. Others might think differently though.
KingofGamesYami #106
Posted 29 December 2014 - 10:53 PM
Users - Yeah, I agree their pretty useless. Except, it would be cool to have a "guest-only" access which only allows them to use programs that cannot harm the computer or change the files.

Permissions - have different "nodes" of access, like allowing the program to access the internet or the files. The user can set these permissions per program, or run it as admin to give it unrestricted access (although I would still prevent them from editing the OS files).

Multitasking - Windows, but minimizing is a must. When minimized, a window should basically "pause", ei no longer be resumed. (In the case of a program using timer events, queue the timer event when the window is maximized). I realize this is a daunting task, and wish you luck!
tenshae #107
Posted 30 December 2014 - 12:31 AM
–snip–

I think that users can be incredibly useful as a disabled-by-default feature, because lots of people play on cyber warfare servers and such, so I heavily disagree with you.
Lyqyd #108
Posted 30 December 2014 - 12:56 AM
Multitasking - Windows, but minimizing is a must. When minimized, a window should basically "pause", ei no longer be resumed. (In the case of a program using timer events, queue the timer event when the window is maximized). I realize this is a daunting task, and wish you luck!

Why should minimized windows not be allowed to continue executing? No real operating system that I'm aware of does this. It's pretty counterintuitive, so I'm curious as to why you'd want such a bug feature.
MKlegoman357 #109
Posted 30 December 2014 - 11:56 AM
Note that most users will probably run simple CraftOS programs which most of them will probably not have direct support for your permission system. HTTP API can be safely restricted by just not providing it to the user, just like it does now when it's disabled in the config. How do you imagine the permission system would have?

Users are good when they are optional. I personally don't need a user system most of the time, but some people want them. I would suggest implementing them as an optional feature. Admins and regular users or 'guests' might be different in terms of program and FS access. For example an admin could do anything he/she wants to do with the computer but a guest should not be able to access and edit files of other users.
Exerro #110
Posted 30 December 2014 - 01:02 PM
Ok, thanks for the feedback.

I will implement users, but with multiple password options.
  • Option 1: password - just a simple text password.
  • Option 2: pin - a 4 number pin.
  • Option 3: pattern - a 3x3 grid of buttons where you can click on them to draw a pattern.
  • Option 4: no password - self explanatory?
When logging in, if there are multiple users, it will show some form of list of users. If there is only one user, it will try to log in as that user, bringing up the authentication GUI if necessary, or if the user has no password, just logging straight in. This means the computer will boot straight onto the home screen if there is only 1 user that also doesn't have a password.

As for permissions, I don't really see the point of limiting the http API, so I will leave that open. There will be a couple of permissions, things like "Access filesystem", "Create windows" etc, and will be toggle-able by the user in settings. There will also be guest accounts, which will have a lot of features disabled in settings and have some permissions locked off (i.e. "Access filesystem").

Windows will be implemented, with minimising, closing, maximising and fullscreen (fullscreen will overlay the taskbar too). I don't see the point of pausing a minimised window process, and with the way I'm doing things, that's not really possible either. However, apps will be able to check if a window is minimised, and possibly stop any processing intensive tasks while so.
djfj74 #111
Posted 30 December 2014 - 09:31 PM
Incredible! But, needs a app store!
Exerro #112
Posted 30 December 2014 - 11:40 PM
I will implement an app store at some point. The limiting factor for me before was my limited knowledge of html/css/js etc, but I have someone that might be helping make the website (where you can upload/create apps). Hopefully, this will end up a bit like CCAppStore by oeed, but who knows.
nickname912 #113
Posted 31 December 2014 - 09:03 AM
Nova 2.0 seems to be awesome. You have done a really good work. Thank you for a good os.
Exerro #114
Posted 31 December 2014 - 05:51 PM
Err, I haven't actually released it yet. Are you sure you mean 2.0 or are you talking about the released version 1.2?

Either way, thanks :)/>
LDDestroier #115
Posted 31 December 2014 - 06:49 PM
I once saw a thing on the CC forums called 'ramdisk', which allowed theoretically infinite storage capabilities, but only for the current session. How about, you try making/finding a file/folder compressor, compress the operating system, then at bootup, decompress it into the ramdrive. It would allow greater space. And if you add too many files, it could ask you to, maybe, insert a disk which would be specially formatted to store extra data for Nova to use as if the programs on the disk were in the programs folder. So, if you had a disk with npaintpro, and you had Quest on the computer, the 'Programs' folder would read "Npaintpro, Quest."

EDIT: Here's the link: http://www.computercraft.info/forums2/index.php?/topic/19338-ramdisk-v2-store-files-in-memory-with-almost-unlimited-capacity/

So in short…
1. The installer file downloads the compressed version of Nova and the startup file.
2. The startup file decompresses the compressed version of Nova and puts it in the ramdrive.
3. At shutdown, it takes all files, and compresses them on the drive for next startup.

4. If you run out of space, it asks for a disk to store things on.
If you put a program on a disk from the prompt, it will show up on the programs list as if it were on the pc.

Good idea?
Edited on 31 December 2014 - 05:52 PM
FUNCTION MAN! #116
Posted 31 December 2014 - 09:05 PM
I once saw a thing on the CC forums called 'ramdisk', which allowed theoretically infinite storage capabilities, but only for the current session. How about, you try making/finding a file/folder compressor, compress the operating system, then at bootup, decompress it into the ramdrive. It would allow greater space. And if you add too many files, it could ask you to, maybe, insert a disk which would be specially formatted to store extra data for Nova to use as if the programs on the disk were in the programs folder. So, if you had a disk with npaintpro, and you had Quest on the computer, the 'Programs' folder would read "Npaintpro, Quest."

EDIT: Here's the link: http://www.computerc...mited-capacity/

So in short…
1. The installer file downloads the compressed version of Nova and the startup file.
2. The startup file decompresses the compressed version of Nova and puts it in the ramdrive.
3. At shutdown, it takes all files, and compresses them on the drive for next startup.

4. If you run out of space, it asks for a disk to store things on.
If you put a program on a disk from the prompt, it will show up on the programs list as if it were on the pc.

Good idea?

Nice idea. I will look into it.
oeed #117
Posted 31 December 2014 - 10:50 PM
I will implement an app store at some point. The limiting factor for me before was my limited knowledge of html/css/js etc, but I have someone that might be helping make the website (where you can upload/create apps). Hopefully, this will end up a bit like CCAppStore by oeed, but who knows.

I'm going to be redoing the CC App Store for OneOS v2, and it seems rather pointless having two app stores. So if you're interested in using the CC App Store listing and using either the program I make for it or your own (there's a fairly simple API) PM me. Besides, the CC App Store has about a hundred programs already.
Exerro #118
Posted 31 December 2014 - 11:11 PM
I'm wanting to add permissions and some Nova-specific things to it, so kind of need my own store. Thanks for the offer though.

Happy new year everyone!
Mr. Bateman #119
Posted 31 December 2014 - 11:23 PM
-snip-
Good idea?
You run the risk of losing everything since last save if the computer errors out or the user forces a shutdown. Plus compressing anything above 20-50kb takes a very, very long time.

If it's going to be implemented, it has to be an opt-in feature, otherwise you're going to have angry people everywhere.
FUNCTION MAN! #120
Posted 31 December 2014 - 11:25 PM
-snip-
Good idea?
You run the risk of losing everything since last save if the computer errors out or the user forces a shutdown. Plus compressing anything above 20-50kb takes a very, very long time.

If it's going to be implemented, it has to be an opt-in feature, otherwise you're going to have angry people everywhere.

Hello, and happy new year!

Doesn't the shutdown (Ctrl+S) use os.shutdown? Or is it on the java side? Because, if it uses os.shutdown you could override that to make a clean shutdown, always.

If not, then it'd be opt-in, probably have 2 separate installers.

EDIT: Most user configuration and user-installed applications would be stored outside .nova, too.
Edited on 31 December 2014 - 10:56 PM
Exerro #121
Posted 01 January 1970 - 01:00 AM
Development is going very slowly at the moment. I've been a bit sidetracked recently. However, after a 3rd revision of the module system (now uses "bundles") I've decided to work on the OS again, and make it a bit more programmer friendly. For the end user, there won't be much change, but for developers, you will have far more control over the OS itself.

A couple of things that might be possible.
Spoiler
  • Popup box windows.
  • Multiple windows per process.
  • Custom bundles.
  • Rendering overlays over the default OS GUI.
  • Themes and modding of the OS GUI.
  • (theoretically, wrapping windows into 3D objects and rendering them using the GFX3D library, but it is CC after all, so don't expect any graphical miracles).
  • A generally improved environment for developers to work in.
  • Custom bundles (libraries etc) with dependencies, for example (in real life) some things on web pages needing Adobe Flash Player to run.

Anyway, while I have started rewriting since making this, here is a little snapshot of a new login system I've placed in.
Spoiler
The new OS has animations galore! For example, the pin entry you can see in the picture above swipes in from the right in a smooth transition animation. In addition, there is the ability to create user accounts with different login methods, such as password, pin, and none, and pretty much everything I mentioned in previous posts about user accounts.

My question for the day, however, is this:
Would people mind if Nova crashed the bios and ran in the top level coroutine?
After a recent discussion in General, it has been shown that the window API causes some significant performance issues.
Source:
Spoiler
This really interested me so I've put a little experiment together. I ran ComputerCraft with and without Java bytecode compilation on CCEmuRedux. Running 1lann/GravityScore's benchmark script produces these results:


		  | Current | Bytecode
==========|=========|===================
Text	  | 16.25   |  7.6
Color	 | 46.55   | 24.5
Advanced  | 31.75   | 14.35
Computing |  6.15   |  2.4  (Lower is better)

Overall   |-45.7	| 6.15  (Higher is better)

It is obvious that compiling to bytecode is quicker, but has quirks such as files with hyphens cannot be compiled (but I'm sure that could be avoided).

Without Window API: just in case you wanted it

			Current | Bytecode
==========|=========|===================
Text	  |  4.9	|  2.75
Color	 |  3.15   |  2.45
Advanced  |  6.1	|  4.85
Computing |  8.85   |  2.4   (Lower is better)

Overall   | 32.0	| 42.55  (Higher is better)

4.9 for text rendering without the window API vs 16.25 with the window API is quite a significant difference, and as I'll be implementing my own window system, the old one will just be a drain on resources.

Doing this won't have any negative effects that I can think of, as I'll run rednet in a Nova process, and other than that, multishell/bios etc doesn't implement anything that Nova won't.
Edited by
oeed #122
Posted 01 January 1970 - 01:00 AM
4.9 for text rendering without the window API vs 16.25 with the window API is quite a significant difference, and as I'll be implementing my own window system, the old one will just be a drain on resources.

Doing this won't have any negative effects that I can think of, as I'll run rednet in a Nova process, and other than that, multishell/bios etc doesn't implement anything that Nova won't.
I think you'll end up finding that your API will have similar speed issues as the default window API. Based on those findings I suspect the slowness is because the window API does lots of processing within Lua, unlike before where it all went straight to Java. I might be wrong, but you might see a minimal speed increase.


Also, regarding the app store, it is of course up to you, but it does seem rather pointless to try and make your own one from scratch really. It took two people about 2 or 3 months to make the CC App Store, it's no easy task. I would be happy to work with you to implement the features you need.
Exerro #123
Posted 01 January 1970 - 01:00 AM
I'm sure that if there is a performance increase of me using my own windows, it will be minimal, but it will still be better than running my windows on top of the default CC ones.

As for the app store, I am tempted to use ccappstore, particularly now I've decided how the new app system will work. However, I have someone (ByteMe) working on an app store already, so I'm not sure.
DannySMc #124
Posted 01 January 1970 - 01:00 AM
I'm sure that if there is a performance increase of me using my own windows, it will be minimal, but it will still be better than running my windows on top of the default CC ones.

As for the app store, I am tempted to use ccappstore, particularly now I've decided how the new app system will work. However, I have someone (ByteMe) working on an app store already, so I'm not sure.

I already have a PHP based app store working with API :D/>
oeed #125
Posted 01 January 1970 - 01:00 AM
I'm sure that if there is a performance increase of me using my own windows, it will be minimal, but it will still be better than running my windows on top of the default CC ones.

As for the app store, I am tempted to use ccappstore, particularly now I've decided how the new app system will work. However, I have someone (ByteMe) working on an app store already, so I'm not sure.

I already have a PHP based app store working with API :D/>
I've been talking on Skype with awsumben and he seems to have decided to my app store and may also assist in updating to remove many of the bugs and issues, as well as a new coat of paint.
ByteMe #126
Posted 01 January 1970 - 01:00 AM
I'm sure that if there is a performance increase of me using my own windows, it will be minimal, but it will still be better than running my windows on top of the default CC ones.

As for the app store, I am tempted to use ccappstore, particularly now I've decided how the new app system will work. However, I have someone (ByteMe) working on an app store already, so I'm not sure.

I already have a PHP based app store working with API :D/>/>/>
I've been talking on Skype with awsumben and he seems to have decided to my app store and may also assist in updating to remove many of the bugs and issues, as well as a new coat of paint.
That coat of paint by me :D/>
Edited by
DannySMc #127
Posted 01 January 1970 - 01:00 AM
I'm sure that if there is a performance increase of me using my own windows, it will be minimal, but it will still be better than running my windows on top of the default CC ones.

As for the app store, I am tempted to use ccappstore, particularly now I've decided how the new app system will work. However, I have someone (ByteMe) working on an app store already, so I'm not sure.

I already have a PHP based app store working with API :D/>/>/>
I've been talking on Skype with awsumben and he seems to have decided to my app store and may also assist in updating to remove many of the bugs and issues, as well as a new coat of paint.
That coat of paint by me :D/>

That's good but make an API for it so EVERYONE can use it, and yes a new design would be nice considering it doesn't work at all and it just errors when you attempt to download a program. Also if you are gonna make an app store make some kind of way to get a self-validating process instead of waiting for you to say if you like it or not 'cause this becomes annoying…:D/>
MKlegoman357 #128
Posted 01 January 1970 - 01:00 AM
That's good but make an API for it so EVERYONE can use it, and yes a new design would be nice considering it doesn't work at all and it just errors when you attempt to download a program. Also if you are gonna make an app store make some kind of way to get a self-validating process instead of waiting for you to say if you like it or not 'cause this becomes annoying…:D/>

There's a problem in self-validating process that anyone could simply make a virus or a program which just doesn't work. BTW, CCAppStore's validation is broken, or was(?). When I put my RedFile program on it I somehow managed to validate it myself… Anyway, the best thing about Oeed's appstore is that he uses probably the best domain name: ccappstore.com :D/>
Edited by
oeed #129
Posted 01 January 1970 - 01:00 AM
That's good but make an API for it so EVERYONE can use it, and yes a new design would be nice considering it doesn't work at all and it just errors when you attempt to download a program. Also if you are gonna make an app store make some kind of way to get a self-validating process instead of waiting for you to say if you like it or not 'cause this becomes annoying… :D/>
Yea, there has always been an API available. I haven't even had people PM to ask if they could make their own app store program or integrate it someway.

OneOS v2 will have a completely remade app store which will be much easier to use. I am now considering remaking the whole app store using Laravel and making the whole thing a bit simpler. This will also mean that we won't have moderation, it was just pointless really.

There's a problem in self-validating process that anyone could simply make a virus or a program which just doesn't work. BTW, CCAppStore's validation is broken, or was(?). When I put my RedFile program on it I somehow managed to validate it myself… Anyway, the best thing about Oeed's appstore is that he uses probably the best domain name: ccappstore.com :D/>
Well, that bug you're referring to was removed a while ago. What I'll probably do is have a report system rather than a validation system. So if you see a program that is a virus or whatever you'll report it.

Regarding the ccappstore.com domain name, I've got all these domains which are costing me a fair amount every year. One of these is the app store one. So what I've been doing is moving many sites to subdomains of my main domain. This means the app store will now be at appstore.olivercooper.me and is now hosted with paid hosting, meaning that everyone should be able to connect (unlike on 000webhost which was blocked for some people).

ccappstore.com should now be redirecting to the subdomain, but I think that the program may have issues. So for the next few days the app store will be down while I update the program.

The whole site is pretty buggy too. You'll probably just have to be patient while we remake everything.
Edited by
LDDestroier #130
Posted 01 January 1970 - 01:00 AM
Nova is a great OS with tons of potential, and I have a small list of suggestions:

- I'm not digging the new UI with the 'home' icon and whatnot. I would prefer interfacing with a menu that involved text to tell you what everything was, rather than icons.
- Try to add a startup application list, so that you can have programs like oeed's PDA lock run in the background at startup.
- I thought of a cool idea, what if you made an option for Nova so that five seperate computers, connected via rednet to a client, would do all the operations on the client, as if they were a big computer? That could maybe add faster multitasking, but be limited with rednet range.
Lyqyd #131
Posted 01 January 1970 - 01:00 AM
Your third idea would be significantly slower than doing the tasks on just one computer.
ByteMe #132
Posted 01 January 1970 - 01:00 AM
If you take away the icons and add text based menus it starts to become like every other OS.
LDDestroier #133
Posted 01 January 1970 - 01:00 AM
Your third idea would be significantly slower than doing the tasks on just one computer.
Sometimes I wish I knew more about Lua so I wouldn't suggest stupid ideas. But unfortunately I never have the time or immediate interest.
Anyway, keep up the work with Nova!
FUNCTION MAN! #134
Posted 01 January 1970 - 01:00 AM
Hei, awsumben, and ByteMe! I'm a developer too, plis get my opinion next time;

As far as crashing the bios.lua and running in the top-level coroutine, I can imagine performance increases, but you'll still be running code in a virtual machine inside code running in a virtual machine inside code running in a physical machine, so.. yea. Performance isn't very.. achievable with CC.
DannySMc #135
Posted 01 January 1970 - 01:00 AM
If you take away the icons and add text based menus it starts to become like every other OS.

I have to ask but, what else do you expect? It's ComputerCraft and Lua.. It's not exactly C++ or Java… There really isn't much else you can add, 'tis why I am waiting for something amazing, at the moment it's just the same pattern. It's just a derivative of OneOS, which is one of the many decent OS's out there.

To be honest I am using the emulator more, as I set the pixel ranges to a much higher ratio (as well as my minecraft) and am programming useful programs in that, because they help me outside of minecraft too :P/> and secondly it's a lot easier to test than C++ or Java… ;)/>
ByteMe #136
Posted 01 January 1970 - 01:00 AM
TBH not much more it's a nice OS, I don't use OS's in-game but its nice to look at and I just like the icons because it's different.
thedemonbean #137
Posted 01 January 1970 - 01:00 AM
How do I setup webserver for other pcs properly?
Ninja8370 #138
Posted 01 January 1970 - 01:00 AM
Cool awsumBen is on the server I am playing on (LuaLand) And he helped me get this OS on my computer :D/>. I didn't even know about it until he mentioned it on the server. It's really amazing, when I got CC, I never thought that that much would be possible! Of course, I could never do it, if you wanted my Lua experiance, it's like 1/10 lol. Still it's really awesome. I want to try it on a turtle sometime and see how that works. Right now though I really got to get to work on school, got to finish it up today. (Spanish class :\)
Exerro #139
Posted 01 January 1970 - 01:00 AM
How do I setup webserver for other pcs properly?
Sorry, I didn't notice this post. You should run "WebServer", turn the server on, set the root path (this is where files will be able to be accessed from), then install the Lua plugin if you want to be able to do <?lua – code ?> inside your script.
After this, open the root path (should be a directory/folder) and edit the index.nml file. It uses a html-like syntax, but I'd only use <p> <t> and <br> to be honest. You can set colours in the opening tag. After this, type in the ID of the computer in Browser on another computer, and you'll be able to see the file being displayed.
Ninja8370 #140
Posted 01 January 1970 - 01:00 AM
A small suggestion, can we be able to turn off our computer from the login area? Instead of logging into an account and then click power off?
'Cause your computer on my plot…. I don't know the pass XD but since you set an ID on it I was able to turn it off by destroying it and replacing it. Also for password changing, could you require the password to be entered again just before the password is changed, that way if someone leaves their computer logged in the password won't get changed on them? Thnks :)/>
Exerro #141
Posted 01 January 1970 - 01:00 AM
I deleted the source code and am now unable to make any changes to the existing version. Silly me.
Solutions:
  1. Hold ctrl-s to shut the computer down.
  2. Press Nova (top left), press the shutdown icon, then select "Logout"
I'm working on Nova 2.0 (mainly just thinking how it will work to be honest) but it is a project in-the-works.
Ninja8370 #142
Posted 01 January 1970 - 01:00 AM
okay, thnks :)/> Also on the last page I saw a post about an advanced login system with animations and stuff. That's awesome!
Question: Since Lua is a real programming language, wouldn't it be possible to install the Nova OS onto a real computer?
(An old one of course so I don't break a computer I'm using)

It would be cool if I could help with this, but I don't know much about Lua (yet)
Right now it's the end of the marking period, and I got 3 Spanish exams to do :unsure:/> But at the beginning of next marking period I can go back to 5 courses a day and I'll have extra time to work on learning Lua then. I thought it would be interesting to see if I could have an (in-game) webserver that could have a multiplayer game on it that other people connected to the network could play. But I don't know much about Lua yet so I don't know how difficult this is or if it's even possible. If I did finally get to work on it, I think I'd make it compatible with the Nova OS. :)/>

Also is it possible (with the current version) to connect Nova to a monitor and use that?
Edited by
FUNCTION MAN! #143
Posted 01 January 1970 - 01:00 AM
okay, thnks :)/> Also on the last page I saw a post about an advanced login system with animations and stuff. That's awesome!
Question: Since Lua is a real programming language, wouldn't it be possible to install the Nova OS onto a real computer?
(An old one of course so I don't break a computer I'm using)

It would be cool if I could help with this, but I don't know much about Lua (yet)
Right now it's the end of the marking period, and I got 3 Spanish exams to do :unsure:/> But at the beginning of next marking period I can go back to 5 courses a day and I'll have extra time to work on learning Lua then. I thought it would be interesting to see if I could have an (in-game) webserver that could have a multiplayer game on it that other people connected to the network could play. But I don't know much about Lua yet so I don't know how difficult this is or if it's even possible. If I did finally get to work on it, I think I'd make it compatible with the Nova OS. :)/>

Also is it possible (with the current version) to connect Nova to a monitor and use that?

This is impossible. As in, booting to Nova. A real operating system is written in Assembly, C/C++, D, or other System programming languages.
Lua is written in C, that only works because there's another OS there to provide output, windowing, keyboard input and display management.
Writing an OS in Lua would be very difficult, if not impossible.

Yes, it is possible to use a monitor.
Exerro #144
Posted 01 January 1970 - 01:00 AM
The animations with the login are also outdated now, I'm not planning on having multiple users in 2.0.

Nova on an actual computer won't happen any time soon. Real life OSs take SO much more work than something for CC. Even getting a Lua VM to work is a huge task (at least that's what I've been told).

Multiplayer games… I'm working on something like MiniatureCraft that will support multiplayer.

It's not currently possible to get Nova to work on a monitor unless you run it like "monitor [side] Nova".
Edited by
Ninja8370 #145
Posted 01 January 1970 - 01:00 AM
Okay, thankyou. :)/>
Endergreen117 #146
Posted 01 January 1970 - 01:00 AM
This OS is beautiful, however, I would say the UI is not-so-user-friendly, and it's a bit inconsistent. Other than that, I think this is really good. Good luck, to you and Oeed.
Exerro #147
Posted 01 January 1970 - 01:00 AM
I've started working on a completely redesigned version. Literally everything has been written from the ground up… the filesystem, UI, multitasking. I can't think of a single thing that hasn't been improved.

This version uses tween.lua by kikito and animates lots of things to give a really clean, slick experience, with virtually no lag (for me on ccemu). Now I'm not close to finishing it. I have a login system in place, some desktop transitions, app switching, but that's about it. This is just a demo to ask if I'm going in the right direction. Have a little play around and tell me what you think.

To run it, type "pastebin run deg6d5Tr" and it will download everything and start up Nova.

I'd also like to give credit to SquidDev for his minifier which is used in the package API I use to build Nova into a single file with its dependencies.

P.S. If you create a user without a password and try to log in, it will just go to a white screen. I've fixed this on my end, but haven't uploaded it yet (and probably won't too soon). Just check the "Use password?" box when creating a user and everything will be fine.
oeed #148
Posted 01 January 1970 - 01:00 AM
Man your animations are smooth….

I really need to figure that out.
ElvishJerricco #149
Posted 01 January 1970 - 01:00 AM
Man your animations are smooth….

I really need to figure that out.
I wonder how much of that has to do with his use of Tween. They are really really good.
Exerro #150
Posted 01 January 1970 - 01:00 AM
A combination of my buffer and the tween library I'd say.
Edited by
Exerro #151
Posted 01 January 1970 - 01:00 AM
There's a new update to the prerelease… I've been working hard.

This update has a functional homescreen, the Edit app finished (well, more or less, still need to work out some syntax highlighting bugs), a mainly functional Files app, a Calculator (not a priority, but I got bored), and the layout of most apps done. In addition, you can record your screen using Mirror, then view the video in Video by navigating to .nova/data/[user]/recordings, selecting the latest one, then opening the Watch menu in Video.

If you don't know how to do anything, I've added a couple of help files. Press ctrl-s to open the search area, then type in "Getting Started" which will show the result for the Getting Started help topic (the one with Help written under it). You may need to wait a second or two after starting the computer before searching for this to work as it takes about that long to complete the first full index.

To download, use the same pastebin ID: pastebin run deg6d5Tr

Edit: To run it again after you reboot, type in ".nova/run".

Screenshots:
Spoiler






I must stress that this is a prerelease. There will undoubtedly be more bugs than one would expect, and most of the apps aren't finished, with only a basic layout done.

Thanks for your continued support of Nova.
Edited by
_removed #152
Posted 01 January 1970 - 01:00 AM
Mirror looks cool, must try that out when I get a chance. You took my advice and made the console at the bottom of the edit program.

Nevertheless, keep up the good work!
Exerro #153
Posted 01 January 1970 - 01:00 AM
Well it's not really a console, and it only pops up when you need to find/replace, but whatever. Just so you know, recording with Mirror for >10 seconds will dump an absolutely enormous file on your computer. I'm talking GB, not KB. I'll be improving this in the future of course, just be warned for now.
LDDestroier #154
Posted 01 January 1970 - 01:00 AM
Holy spaghetti and meatballs, Batman, the animations are so goddamn smooth! And the apps it comes with…record, calender, an AWESOME calculator, mirror, sheets, paint, etc. Oeed better get working!

I have some ideas of some simple things to add.
1. Add F12 (or another function key) to force close an application. I know that the 'X' button on the top-right does the same thing, but keypresses are more natural to some people.
2. In Mirror, if you don't plan to already, add a 'view only' mode, id whitelist/blacklist, and sepetate optional passwords for view-only and interactive mode.
3. Does the 'Talk' app use http or rednet? Because I am under the assumption that you can use http locally in a server for infinite network range or something.
4. If you don't already, add encrypted chatting to 'Talk' and an encrypted file transfer with passwords and whitelists/blacklists.
5. It would be the best thing ever if the 'Video' app streamed from a sort of 'youtube'-styled search engine, which would display recent videos and subscribers and whatnot from the internet.
6. The 'Run' app does not allow copy/paste, moving the cursor with the mouseclick, or selecting text with the mouse at read() prompts. I'm sure you'll add them in the stable version of Nova Horizon, but I just wanted to make sure.


I actually think that Nova looks more appealing than OneOS. Good job dammit!

EDIT: Heh number 5, I didn't look hard enough.
Edited by
Exerro #155
Posted 01 January 1970 - 01:00 AM
1: ctrl-t
2: was planning to do that
3: my own secure version of rednet, not http
4: yup, planned
6: run just emulates CraftOS. There will never be the advanced features of Nova's UI in it.

Thanks for the feedback :)/>
LDDestroier #156
Posted 01 January 1970 - 01:00 AM
Okay, I got something else, if there isn't a keybinding to go to the home screen, make it F1, and for Sheets or Docs with the '|File|Edit|View|' menu, bind each one to either F2, F3, F4… or ALT+F for File, ALT+E for Edit…
Oh, and please try to allow multiline copy/paste. I saw that the copy and paste event only does one line, so you'll have to write your own function for that.
And before I forget, the 'Run' program is pretty nice, however I recommend using wojbie's extended shell as opposed to emulating CraftOS directly, as the extended shell is waaay better than a plain terminal.

EDIT: Bug in the beta - using 'exit' in 'Run' app doesn't close out of Run, it just stops doing anything. Everything else still works, and Run works again after I type 'exit' and reenter it.
Edited by
Exerro #157
Posted 01 January 1970 - 01:00 AM
Multi line copy and paste is already implemented, but I'll work on the alt key bindings. I might use the extended shell, but maybe not right now, and I'll fix the not closing issue.
biggest yikes #158
Posted 01 January 1970 - 01:00 AM
Is there a way to get the version of the OS? (Like at the time of posting v1.2)
I know you could envoke the Nova API and get Nova.version, but then again, is there a way to envoke the Nova API from the command line?
EDIT: After a little code-diving, it turns out the api is only opened when it's a nova app. Darn it. :/
Edited by
wieselkatze #159
Posted 01 January 1970 - 01:00 AM
Greetings. I just decided to have a look on this, as it seems to be very popular atm :P/>
First bug I encountered: When you download a fresh copy of the OS and try to create an account without a username and password it crashes ( Session.lua:121: attempt to index ? (a nil value) ).
Also your editor doesn't seem to handle multiline comments or strings very well - here an example:

Image

Also it kinda messes with them - if I put a multiline comment in my program, save it, close it and open it, it just displays them as "–" - don't know if this is intended to save disk space, but definitely not useful from my point of view ^^
Regarding NovaPaint I noticed you could select different colors for left- and right click. Color picking works, but when drawing the right mouse button just uses the color for the left one.
Additionally the layer selection doesn't seem to work - even if I selected the layer that's magenta the green one overlaps:

Image

I also couldn't get saving working.
Furthermore by deleting the only account that's on the computer you won't be able to use the system anymore as you only get the message 'corrupt user' and thus are unable to login - maybe a protection for that?

Anyways - this looks very promising and is definitely nice to use ( haven't tested it on a server yet ). A problem might be the massive disk usage of 624KB - I'm sure there would be a way to compress the whole thing :)/>
Goof #160
Posted 01 January 1970 - 01:00 AM
Greetings. I just decided to have a look on this, as it seems to be very popular atm :P/>
First bug I encountered: When you download a fresh copy of the OS and try to create an account without a username and password it crashes ( Session.lua:121: attempt to index ? (a nil value) ).
Also your editor doesn't seem to handle multiline comments or strings very well - here an example:

Image

Also it kinda messes with them - if I put a multiline comment in my program, save it, close it and open it, it just displays them as "–" - don't know if this is intended to save disk space, but definitely not useful from my point of view ^^
Regarding NovaPaint I noticed you could select different colors for left- and right click. Color picking works, but when drawing the right mouse button just uses the color for the left one.
Additionally the layer selection doesn't seem to work - even if I selected the layer that's magenta the green one overlaps:

Well.. im not sure, but it might be because Ben, didnt add support for the "[=[" (the equal sign) yet.

maybe it works with –[[



]]?


Not sure though, but indeed, it should actually work the way you're doing :)/>
Ben might look into that xD
wieselkatze #161
Posted 01 January 1970 - 01:00 AM
Well.. im not sure, but it might be because Ben, didnt add support for the "[=[" (the equal sign) yet.

That was the thing I was trying to point out :P/>
LDDestroier #162
Posted 01 January 1970 - 01:00 AM
I recommend adding a [alt] button or two on the calculator to add extra function that otherwise would not fit. Then asin, atan, acos, deg(rees), rad(ians), cube root, rounding, unit conversions, logarithms, the loneliest number (1), and modulo could fit onto the app. If you don't add all that crap though, please at least add an [alt] or [shft] button nonetheless, just in case. And add algebraic solving! And the ability to type letters onto the screen and not just numbers, for variables.
Exerro #163
Posted 01 January 1970 - 01:00 AM
Greetings. I just decided to have a look on this, as it seems to be very popular atm :P/>
First bug I encountered: When you download a fresh copy of the OS and try to create an account without a username and password it crashes ( Session.lua:121: attempt to index ? (a nil value) ).
Also your editor doesn't seem to handle multiline comments or strings very well - here an example:

Image

Also it kinda messes with them - if I put a multiline comment in my program, save it, close it and open it, it just displays them as "–" - don't know if this is intended to save disk space, but definitely not useful from my point of view ^^
Regarding NovaPaint I noticed you could select different colors for left- and right click. Color picking works, but when drawing the right mouse button just uses the color for the left one.
Additionally the layer selection doesn't seem to work - even if I selected the layer that's magenta the green one overlaps:

Image

I also couldn't get saving working.
Furthermore by deleting the only account that's on the computer you won't be able to use the system anymore as you only get the message 'corrupt user' and thus are unable to login - maybe a protection for that?

Anyways - this looks very promising and is definitely nice to use ( haven't tested it on a server yet ). A problem might be the massive disk usage of 624KB - I'm sure there would be a way to compress the whole thing :)/>

Wow, long post, thanks for the detailed feedback.

Nova 1.2 is no longer being developed. In fact, I was sure 1.3 was the latest version up, so that just shows how old that code is for me. The beta (pastebin run deg6d5Tr) is completely re-written, so any bug reports would be more helpful if they came from that version.

Edit…
Syntax highlighting is my nemesis. The UIText object (talking about the beta here) handles every bit of text in the OS with the exception of buttons (they flash when you click them). That means all single-line, multi-line, wordwrapped, selectable, copy/pasting, syntax highlighting, formatted (with &amp;F for example) text is rendered and updated with 1 object. Writing Lua specific syntax is surprisingly hard when you have all these things to consider, so at the moment, it just uses string pattern matching. However, this means grouping –[=[ type comments/strings is impossible. Maybe, one day, I will implement this, but if you look at the work that needs to be done on all the other apps, it's not a huge priority.

Paint…
The two colours are background and text colour. If you start typing with the brush tool, it will write text on. Not many people seem to figure this out though, and think it's a dual colour thing like in the default paint.
Not sure what's going on with layer selection, it might be because it's a pasted layer…? Everything seemed to work fine when adding layers normally for me.

Users…
No idea what the Session.lua error is or why it occurs. Might be something to do with version checking and a changed pastebin file, who knows. If you delete a user, you have to delete the user's folder. If you have done that, it should just show the 'create new user' interface.

Edit: You're probably doing this through the settings app, thinking about it, so I guess it is a bug.

I recommend adding a [alt] button or two on the calculator to add extra function that otherwise would not fit. Then asin, atan, acos, deg(rees), rad(ians), cube root, rounding, unit conversions, logarithms, the loneliest number (1), and modulo could fit onto the app. If you don't add all that crap though, please at least add an [alt] or [shft] button nonetheless, just in case. And add algebraic solving! And the ability to type letters onto the screen and not just numbers, for variables.

Good idea. I'll make a button that switches the 'page' so the buttons move to the right/left, like on the homescreen. Not sure about the variable stuff though. If you look in .nova/apps/Calculator/tokens.lua, you'll see that it assumes the syntax is virtually perfect when it evaluates as incorrect input isn't allowed. Making it accept variables could cause problems, but I'll look into it. If I did, should abc be a valid variable name, or should that mean a * b * c?
Edited by
wieselkatze #164
Posted 01 January 1970 - 01:00 AM
Yep, that's right, I did it through the settings app. I'll have a look on the beta version - didn't see any newer downloads than 'm342HLd6' :P/>
Geforce Fan #165
Posted 01 January 1970 - 01:00 AM
The multitasking can be a little hard to use, but at least it's present. I missed it for a while and kept searching for it, and was getting worried it was an "os" that was missing multitasking xD.
I'm very impressed by your screenshot tool! Well done!
Edited by
LDDestroier #166
Posted 01 January 1970 - 01:00 AM
Good idea. I'll make a button that switches the 'page' so the buttons move to the right/left, like on the homescreen. Not sure about the variable stuff though. If you look in .nova/apps/Calculator/tokens.lua, you'll see that it assumes the syntax is virtually perfect when it evaluates as incorrect input isn't allowed. Making it accept variables could cause problems, but I'll look into it. If I did, should abc be a valid variable name, or should that mean a * b * c?

It would be more accurate to an actual calculator if abc meant a*b*c, but then sin() could also mean s*i*n…
…I think it would be best and easiest to use local variables of multiple characters, meaning abc means the value of abc, not a*b*c. Else, variables would be hardcoded into the calculator or only use capital letters, like sin(X) would be the sin of X, but SIN(X) would be s*i*n*(x). I prefer the former though.
LDDestroier #167
Posted 01 January 1970 - 01:00 AM
I got an idea, you could try syncing Nova up to a real-life time server that adjusts according to a user-inputted time zone in the installer and settings, and for daylight savings time, which itself would adjust according to what country you live in (which again, would be inputted in the install prompt and the settings). Then there could be 12-hour AM/PM time or 24-hour time for displaying.
Exerro #168
Posted 01 January 1970 - 01:00 AM
Already planning on adding timezones, and it's as simple as passing in a GMT offset to the time getter. I'll probably make it so you can right click the time and it will show different timezones.
willwac #169
Posted 01 January 1970 - 01:00 AM
Already planning on adding timezones, and it's as simple as passing in a GMT offset to the time getter. I'll probably make it so you can right click the time and it will show different timezones.
Time Zones are a pain in the butt:https://www.youtube.com/watch?v=-5wpm-gesOY
LDDestroier #170
Posted 01 January 1970 - 01:00 AM
I can't wait till nova's finished. What are you working on now, the video app or slides or what?
Exerro #171
Posted 01 January 1970 - 01:00 AM
Taking another break. Sorry.

Right now I'm re-working the UI stuff of Nova because I really don't like how I did the gfx2D package. Now I'm working on this.

Hopefully, with drawables implemented, drawing things scaled and rotated will be easy as pie. I'll also revamp the UI library to take rotation and scale into account, and handle key events better.
Edited by
CrazedProgrammer #172
Posted 01 January 1970 - 01:00 AM
Taking another break. Sorry.

Right now I'm re-working the UI stuff of Nova because I really don't like how I did the gfx2D package. Now I'm working on this.

Hopefully, with drawables implemented, drawing things scaled and rotated will be easy as pie. I'll also revamp the UI library to take rotation and scale into account, and handle key events better.
Awesome!
Did you look at my code for the Surface API, like the scaling and rotating?
If so, I'm glad I could help the development of one of the best OSes on this forum.
Exerro #173
Posted 01 January 1970 - 01:00 AM
Taking another break. Sorry.

Right now I'm re-working the UI stuff of Nova because I really don't like how I did the gfx2D package. Now I'm working on this.

Hopefully, with drawables implemented, drawing things scaled and rotated will be easy as pie. I'll also revamp the UI library to take rotation and scale into account, and handle key events better.
Awesome!
Did you look at my code for the Surface API, like the scaling and rotating?
If so, I'm glad I could help the development of one of the best OSes on this forum.
Didn't actually look at the code, although that's exactly what inspired me to write this (and a little phase of writing Nova for OpenComputers - short lived I must say).

Edit: (changed the link in that previous post as I changed the repo quite a bit, now everything is going in one repo)
Edited by
cdel #174
Posted 01 January 1970 - 01:00 AM
This is really neat, my favourite operating system at the moment. I love the slightly darker theme compared to the rather garrish theme of OneOS, brilliant really, feels like its for the end-user but is still so easy to navigate and use.
LDDestroier #175
Posted 01 January 1970 - 01:00 AM
Is the update to Nova going to come out soon? Because from what you got as a freakin' beta is amazing, and I'd love to see what the full version would dazzle me with.
Anyhow, I got a small amount of suggestions:

1. Try to make a small web server that allows people to submit a pastebin-hosted program (with name, catagory, description, and [if possible] picture), as a way of directing people to pastebin without the need to enter in a code, or look up the program on google. (so sort of like the ubuntu-software-center, which gets a list of programs from your repositories, rather than a main ubuntu app store server) It should be reletively simple. Already did that with STD

2. The ability to, at install, temporarily have the whole of Nova on RAM rather than on the hard drive, so that Nova can be live booted from a disk. It would also be interesting if there were, along with the stock Nova boot, an extra folder with the Nova file architecture which can add those files to the live boot. That's a stupid idea in hindsight

3. Easier multitasking. The main issue I had with Nova 1.2 is that I had to go through so many things to do multitasking. I was much more satisfied with OneOS 1.3's screen to do that. Try a menu, or a GNOME 3 looking screen.
Edited by
Ninja8370 #176
Posted 01 January 1970 - 01:00 AM
oops…. tried installing on a Disk Drive (To run a bunch of computers on a network) but the whole file wouldn't fit…. any way to fix this? (It only worked to half way through line 4448 of the code.)


And now I can't delete the startup! It says access denied :o/>
(I'll just get a new floppy disk)



EDIT: Fixed, I made my own startup file that just does shell.run("pastebin run m342HLd6") …. although will this mess up the network effect?
Edit: Yeah it messed up the network effect. I'll try installing the startup again.


Yeah it doesn't work- It says pastebin:101:OutOfSpace
Any way I can fix this so that I can run a network of computers?

Edit: I put a "mag-stripe card" in thinking it might have more memory, it might have worked! Nevrmind, for some reason the computer I was using thought there was still a disk, so it said it worked, but my other computers didn't detect the disk.

So any way to put this on a disk so a bunch of computers on a network can use it? (This way people can use any computer and access their account and files)
Edited by
Exerro #177
Posted 01 January 1970 - 01:00 AM
Nope, sorry.
HPWebcamAble #178
Posted 01 January 1970 - 01:00 AM
-snip-

In the ComputerCraft Config, you should be able to change the max storage space of computers / floppy disks
Ninja8370 #179
Posted 01 January 1970 - 01:00 AM
-snip-

In the ComputerCraft Config, you should be able to change the max storage space of computers / floppy disks

Okay, thnks. This will work good for my testing in single player, but I guess it won't work on multiplayer, (Unless the server owner will change it)
LDDestroier #180
Posted 01 January 1970 - 01:00 AM
I gotta suggestion!
For the Videos app, have two video formats - one bitmap, one vector, and allow the video app to project to a monitor with the monitor text scale to 0.5.

How is the latest Nova release going? Making headway? I've been hearing seldom updates.
TheKickstart #181
Posted 01 January 1970 - 01:00 AM
Please make a setting allowing users to choose whether to go straight home or go to the desktop

This will make the OS more user-friendly
Exerro #182
Posted 01 January 1970 - 01:00 AM
Right click on the desktop, there's an option for it (well, at least I think there is). I've not touched the code for this in months, and I'm pretty sure I deleted it, leaving only a messy installer on pastebin. Don't expect anything new from this for a while… sorry.
LDDestroier #183
Posted 01 January 1970 - 01:00 AM
Damn, I'd love to see this done.
Exerro #184
Posted 01 January 1970 - 01:00 AM
Sorry :S On this plus side, my new project will make up for it, I'm sure.
LDDestroier #185
Posted 01 January 1970 - 01:00 AM
Sorry :S On this plus side, my new project will make up for it, I'm sure.

Lemme guess, does it have to do with the Mac OS X? Because I use Ubuntu on my laptop and Windows 8 (augh!) on my PC.
ItsRodrick #186
Posted 01 January 1970 - 01:00 AM
Cought his github Cought
LDDestroier #187
Posted 01 January 1970 - 01:00 AM
Cought his github Cought
Damn you're right, I didn't even look at the github. Looking…is it Sutron?
Edited by
CrazedProgrammer #188
Posted 01 January 1970 - 01:00 AM
Cought his github Cought
Damn you're right, I didn't even look at the github. Looking…is it Sutron?
It's Flare.
Flare is a GUI framework like Bedrock but much better.
Creator #189
Posted 01 January 1970 - 01:00 AM
Shoot, I think my GUI framework has no more place in the CC comunity.
Exerro #190
Posted 01 January 1970 - 01:00 AM
I've moved on to "Flare for love2D" for a while.

SpoilerI apologise for the mess. I'm just testing at the moment. (Oh and the weird black thing is an image).

Fancy eh? It's crazy what working with a higher resolution allows, and how much harder it all is!

As CrazedProgrammer said, I am working on 'Flare' - a development kit for computercraft (multitasking, graphics, UI, debugging and more). I keep on rewriting it, annoyingly, and I doubt I'll ever build up the motivation to write all the documentation for it. Shame.

Cought his github Cought
Damn you're right, I didn't even look at the github. Looking…is it Sutron?

Haha, Sutron. Takes a bit of fiddling to get it working but…

Spoiler

That was my first ever semi-serious game.
Edited by
oeed #191
Posted 01 January 1970 - 01:00 AM
It's Flare.
Flare is a GUI framework like Bedrock but much better.

As I am in the process of thinking about making a new framework, I'm interested to know why you think this. The speed is obviously something that is obviously not ideal, but is there anything else?
LDDestroier #192
Posted 01 January 1970 - 01:00 AM
What with summer happening, do you suppose you'll have some more progress on Nova?
Exerro #193
Posted 01 January 1970 - 01:00 AM
Right now (other than a love2d project I have going) I'm working with Oeed on Silica, and after that we'll be working together on the new OneOS. Think I have to call it: Nova is dead. Thanks for all the support along the way!
Creator #194
Posted 01 January 1970 - 01:00 AM
Why is everybody abandoning OSes? It ain't confirmed that the new graphics'll be as good as we suppose.

Why is everybody abandoning OSes? It ain't confirmed that the new graphics'll be as good as we suppose.

And the internal mechanism stay the same. Except if you OS is built ontop of graphics.

Under everybody, I meant Awsum and oeed.
Edited by
oeed #195
Posted 01 January 1970 - 01:00 AM
Why is everybody abandoning OSes? It ain't confirmed that the new graphics'll be as good as we suppose.

Why is everybody abandoning OSes? It ain't confirmed that the new graphics'll be as good as we suppose.

And the internal mechanism stay the same. Except if you OS is built ontop of graphics.

Under everybody, I meant Awsum and oeed.

Well Silica is actually far more advanced that both Bedrock and Nova. The events system is incredibly powerful. The class system allows for amazingly advanced things. And of course the drawing system is, although still being worked on heavily, freakin' awesome.

Worst case scenario, we have to dial back the graphics a bit. But given all the screenshots, we think we're on the right track.

So don't worry. Whatever comes of this will be stupendously awesome.
Creator #196
Posted 01 January 1970 - 01:00 AM
Why is everybody abandoning OSes? It ain't confirmed that the new graphics'll be as good as we suppose.

Why is everybody abandoning OSes? It ain't confirmed that the new graphics'll be as good as we suppose.

And the internal mechanism stay the same. Except if you OS is built ontop of graphics.

Under everybody, I meant Awsum and oeed.

Well Silica is actually far more advanced that both Bedrock and Nova. The events system is incredibly powerful. The class system allows for amazingly advanced things. And of course the drawing system is, although still being worked on heavily, freakin' awesome.

Worst case scenario, we have to dial back the graphics a bit. But given all the screenshots, we think we're on the right track.

So don't worry. Whatever comes of this will be stupendously awesome.

Do you mean it looks better?
oeed #197
Posted 01 January 1970 - 01:00 AM
- snip -

Do you mean it looks better?

It both looks better and allows more functionality with less work. For example, in Bedrock you couldn't simply subscribe an on-screen object to an event. It only got events with special functions (OnClick, OnDrag, etc). In Silica there is an event system that subscribe to a global event (i.e. click anywhere) and hit tested events. You can also cancel their propagation.

Classes have things like super, getters, setters and a cool declaration format:


class "Container" extends "View" {
children = {};
interfaceOutlets = {};
offsetX = 0;
offsetY = 0;
}

So not, it's not just 'prettier', although it certainly will be.
Creator #198
Posted 01 January 1970 - 01:00 AM
- snip -

Do you mean it looks better?

It both looks better and allows more functionality with less work. For example, in Bedrock you couldn't simply subscribe an on-screen object to an event. It only got events with special functions (OnClick, OnDrag, etc). In Silica there is an event system that subscribe to a global event (i.e. click anywhere) and hit tested events. You can also cancel their propagation.

Classes have things like super, getters, setters and a cool declaration format:


class "Container" extends "View" {
children = {};
interfaceOutlets = {};
offsetX = 0;
offsetY = 0;
}

So not, it's not just 'prettier', although it certainly will be.

That is nice. Already impatient I am.
SwagMasterIV #199
Posted 01 January 1970 - 01:00 AM
Dude, this OS is AMAZING! Keep up the great work on this OS! Also, I have a suggestion. Instead of being able to access the file system of other computers through wireless or cable (like you said you are planning on next update), I think you should instead be able to remote control the computer by wireless or cable.
Edit: Also, I tried this OS on a turtle, and since it had a smaller screen, some of the screen was cut off. The OS should be able to tell if the computer is a turtle or not so it will know what resolution to use.
Edited by
cyanisaac #200
Posted 01 January 1970 - 01:00 AM
Well the two best GUI OSes have been abandoned, that's just great :/.
ebernerd #201
Posted 01 January 1970 - 01:00 AM
Don't worry, the creators of both of them (I'm assuming OneOS and Nova) are working together on something spectacular. :)/>
DannySMc #202
Posted 01 January 1970 - 01:00 AM
In all honesty I can't wait, I have heard a lot from conversations with oeed, sounds like it's gonna be good.
Exerro #203
Posted 01 January 1970 - 01:00 AM
Yeah, when we're finished with Silica, or at least have it at an acceptable state, we'll start working on an OS that will probably be the first of its kind.

You may have seen the mockups, and even the actual rendering of Silica now - it's getting close to a release I'd say. As a result, we're going to start discussing the all important name, the kernel, and eventually how the OS will work (GUI interfaces, developer APIs, multitasking systems, etc). All I can say for sure is that Nova and OneOS will look like a 100 line shell in comparison.

If you're interested in the project, want to give any suggestions/feedback, or have any questions, the Gitter chat is the place to be.
DannySMc #204
Posted 01 January 1970 - 01:00 AM
Yeah, when we're finished with Silica, or at least have it at an acceptable state, we'll start working on an OS that will probably be the first of its kind.

You may have seen the mockups, and even the actual rendering of Silica now - it's getting close to a release I'd say. As a result, we're going to start discussing the all important name, the kernel, and eventually how the OS will work (GUI interfaces, developer APIs, multitasking systems, etc). All I can say for sure is that Nova and OneOS will look like a 100 line shell in comparison.

If you're interested in the project, want to give any suggestions/feedback, or have any questions, the Gitter chat is the place to be.

Yeah oeed asked to use my App Store in the OS, which would be awesome, I said I have an API and he said he would use that
Exerro #205
Posted 01 January 1970 - 01:00 AM
Great, even less for us to do :P/>
DannySMc #206
Posted 01 January 1970 - 01:00 AM
Great, even less for us to do :P/>/>

Haha I would love for you guys to use it :P/> Means more apps xD
Waitdev_ #207
Posted 01 January 1970 - 01:00 AM
May i use this in MultiBoot? (multi-os loader)
Exerro #208
Posted 01 January 1970 - 01:00 AM
Of course. Feel free to use it how you like.
クデル #209
Posted 01 January 1970 - 01:00 AM
Yeah, when we're finished with Silica, or at least have it at an acceptable state, we'll start working on an OS that will probably be the first of its kind.

You may have seen the mockups, and even the actual rendering of Silica now - it's getting close to a release I'd say. As a result, we're going to start discussing the all important name, the kernel, and eventually how the OS will work (GUI interfaces, developer APIs, multitasking systems, etc). All I can say for sure is that Nova and OneOS will look like a 100 line shell in comparison.

If you're interested in the project, want to give any suggestions/feedback, or have any questions, the Gitter chat is the place to be.

Yeah oeed asked to use my App Store in the OS, which would be awesome, I said I have an API and he said he would use that

Really not the topic for this, but meh. Thanks for offering up so many APIs, especially the App Store. It is just a breeze and lets everyone share resources, so woohoo! :D/>
Waitdev_ #210
Posted 01 January 1970 - 01:00 AM
i will need a installer to save it to a directory in order to use it in my program, maybe if you can edit your first one to do so?
thanks
DannySMc #211
Posted 01 January 1970 - 01:00 AM
Yeah, when we're finished with Silica, or at least have it at an acceptable state, we'll start working on an OS that will probably be the first of its kind.

You may have seen the mockups, and even the actual rendering of Silica now - it's getting close to a release I'd say. As a result, we're going to start discussing the all important name, the kernel, and eventually how the OS will work (GUI interfaces, developer APIs, multitasking systems, etc). All I can say for sure is that Nova and OneOS will look like a 100 line shell in comparison.

If you're interested in the project, want to give any suggestions/feedback, or have any questions, the Gitter chat is the place to be.

Yeah oeed asked to use my App Store in the OS, which would be awesome, I said I have an API and he said he would use that

Really not the topic for this, but meh. Thanks for offering up so many APIs, especially the App Store. It is just a breeze and lets everyone share resources, so woohoo! :D/>

Haha it's cool, the idea was to have a successful AppStore for everyone to use, using the API's etc, I am in the process of adding images for apps, as Oeed wants the option :P/>. It would be cool to have many AppStore clients running of the same database :P/>. We have SocialNet????:DDD
biggest yikes #212
Posted 01 January 1970 - 01:00 AM
Typing a single character in CraftOS in 1.74 seems to break. I'm using an emulator, not sure if that effects anything
Edited by
ProjectB #213
Posted 01 January 1970 - 01:00 AM
Typing a single character in CraftOS in 1.74 seems to break. I'm using an emulator, not sure if that effects anything
I had the same issue when I was using it.
Exerro #214
Posted 01 January 1970 - 01:00 AM
You're running on a newer version of computercraft that has getters for the set colours. If you run on an older version (<1.7.4) of computercraft it will work fine. As I am not updating Nova at the moment, it's just going to have to stay broken :(/> Sorry.
biggest yikes #215
Posted 01 January 1970 - 01:00 AM
So now I have to choose between Nova Horizon and OpenTerminalOS. This makes me very sad
Exerro #216
Posted 01 January 1970 - 01:00 AM
I'll take a little look at that big monstrosity of a file that is Nova compiled. I deleted the source ages ago for some reason, so any changes I'll make will have to be in the 9201 line minified file that is downloaded. Hopefully it's a small fix, or I really won't have a fun time doing this. After that, DannySMc has contacted me about updating Nova, and I've agreed that he will continue development, at least until I get back into it.

Edit:
Patched for CC1.74. Tada!
Spoiler
Edited by
DannySMc #217
Posted 01 January 1970 - 01:00 AM
DannySMc has contacted me about updating Nova, and I've agreed that he will continue development, at least until I get back into it.

I have offered to work on it as I know how it all works :D/> So if there is anything you want adding do say, I have a few plans I wish to implement and some fixes for bugs I have found. I shall not be changing any of the design, as it is Nova, and that would make it different, so I shall be adding some extra features :P/> to the same design.
biggest yikes #218
Posted 01 January 1970 - 01:00 AM
That's all cool and all, but, uh, what's going on here?

yet the APIs are accessed fine. I'm confused
Edited by
Exerro #219
Posted 01 January 1970 - 01:00 AM
Broken image?
biggest yikes #220
Posted 01 January 1970 - 01:00 AM
Broken image?
Gyazo keeps messing with their servers apparently. Should be fixed for the time being.
EDIT: Screw it, moved to Imgur
Edited by
Exerro #221
Posted 01 January 1970 - 01:00 AM
Yeah, for some reason, they don't show up in the lua prompt. No idea why tbh, but you can still use them in programs. Hopefully Danny will find a fix soon.
DannySMc #222
Posted 01 January 1970 - 01:00 AM
Yeah, for some reason, they don't show up in the lua prompt. No idea why tbh, but you can still use them in programs. Hopefully Danny will find a fix soon.

Ahh yeah I see the problem, Will create a fix.
FUNCTION MAN! #223
Posted 01 January 1970 - 01:00 AM
Yeah, for some reason, they don't show up in the lua prompt. No idea why tbh, but you can still use them in programs. Hopefully Danny will find a fix soon.

Ahh yeah I see the problem, Will create a fix.

In my experience that happenend when the sandbox environment didn't have an _ENV table. make it a link to _G, that fixed it for me.

It's because in the lua program, the environment things are ran in links back to the _ENV table. When the sandbox doesn't have an _ENV table, there are no APIs, no nothing.
Edited by
GodusX #224
Posted 01 January 1970 - 01:00 AM
awsumben13, can you make guide for NetServer? Or can you make list of tags?

Also, please make server version, because it's too heavy to run many servers on some old computers.
Exerro #225
Posted 01 January 1970 - 01:00 AM
Sorry but I've discontinued this.
manu_03 #226
Posted 01 January 1970 - 01:00 AM
  • "I have forgotten the password to a file". Again, there is no way to get this back, and chances are, you have probably found the file is now complete garbage as it was decrypted with the wrong key resulting in a long string of weird characters. Sorry, but there is no way to get this back.
There's an easy fix to this. Save a file in system folder that lists all encrypted files. It shall also save a checksum of that file (some first chars from the hash of the original, unencrypted file). It's safe: hashes are un-un-hashable and it's a substring of whole hash. Then, when you try to unencrypt, system would try to unencrypt file with given key, hash it, take first chars and check if it's equal to checksums file.
magiczocker #227
Posted 01 January 1970 - 01:00 AM
This OS is awesome.