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

TungstenOS - Now with screenshots!

Started by Csstform, 11 December 2013 - 09:43 AM
Csstform #1
Posted 11 December 2013 - 10:43 AM
Hello fellow ComputerCrafters! Today I bring you the very latest in OS technology! Feast your eyes upon the next greatest OS!

Screenies
SpoilerMain Screen:
http://i.imgur.com/OXjBQzu.png
User Management Screen:
http://i.imgur.com/KWGSfuG.png

Changelog
Spoilerv 1.0.0
-added functional UI
-added user support
-optimized api and now remembers settings
-will now catch most errors
-changed installer to ooed's PkgMake program
(link below)
v 0.2.0
-added terminal support
-added text UI (partially)
-removed bad security
-added screensaver
-improved api
v 0.1.0
-added basic installer
-added password and username support
-Nonfunctioning security

Planned Features
Spoiler-GetHub installer
-terminal glasses support
-functional UI(finished! GUI planned at a later date)
-app store for glasses(maybe)
-password encryption and other security features (partly finished, still want to add some security features such as admin support)

Download

v 1.0.0

pastebin get suZq6Yh0  install

Old Versions:
Spoilerv 0.2.0

pastebin get F8GjuMf1 install

Purpose
SpoilerAfter digging around for a while, I didn't find an OS for the terminal glasses that worked well for me. So, I've decided to start my own. This OS will operate on an advanced computer with the glasses directly part of the computer OS. I hope this will make a seamless computing environment to suit everyones needs.

Please give me feedback on the update! Glasses support coming soon!

~Castform

Credit:
ooed for his package maker
http://www.computercraft.info/forums2/index.php?/topic/11226-fixed-package-maker-easy-program-distribution/page__fromsearch__1
oReedy for help with the user support
Edited on 23 January 2014 - 09:53 AM
Lyqyd #2
Posted 11 December 2013 - 10:51 AM
GitHub is free–you can set up an account and create a repository yourself. Private repos cost money, of course.
Csstform #3
Posted 11 December 2013 - 11:16 AM
If I understood how, I would. I'll look into it later today. Also, how would I go about setting up a poll?
mrdawgza #4
Posted 11 December 2013 - 01:35 PM
GitHub can store any file - In this case; your OS files. Those can be either anything (.anything) but can always be read in text.

So if you setup a GitHub repository and upload those files you can make an installer.
So for example: The file I'll be downloading is startup. Now my GitHub username is OptimuSnorr - and the repository that file will be in is Files.

So overall - the file will be located at https://www.github.c...r/files/startup (Not real - just a link)

Now if you try to download that into ComputerCraft you'll end up with a bunch of HTML stuff.
So just like on Pastebin, there is a raw feature: eg: http://www.pastebin....php?i={pasteid}

Now this isn't about Pastebin - I'm talking about GitHub.

How I download and save files of GitHub.


local download = http.get("https://raw.github.com/optimussnorr/files/startup") --Notice how now the address is raw.github not www.github.
local data = download.readAll() --This makes a variable that data is the raw download from GitHub.
download.close() --Remember to close download!

local file = fs.open("saveto","w") --Opens the file 'saveto' with the permissions to write.
file.write(data) --Writes the data to the file.
file.close() --Remember to close the file!

And that should be it. Run startup and you'll have whats on GitHub.
Now doing that for an installer each time is a mission, so here is a little function you can put into your GitHub installer. (I use it in mine)
Also, this one will check if the connection + download was successful.


local function get(username, repo, repoFile, saveTo)	 --Username is your GitHub username, repo is the repository, repoFile is the file being downloaded, saveTo is the file to save the data to.
local download = http.get("https://raw.github.com/"..username.."/"..repo.."/"..repoFile) --Downloads the file
if download then  --Checks if the download was successful.
   local data = download.readAll()
   download.close()
   local file = fs.open(saveTo,"w")
   file.write(data)
   file.close()
  else   --if the download was unsuccessful then this will display.
   print("Couldn't connect to GitHub!")
   print("Make sure you have the HTTP API enabled")
end --Closes the if.
end --Closes the function.

get("OptimusSnorr","Files","startup","saveFile") --Call the function. Downloads the file 'startup' from the repository 'Files' from the user 'OptimusSnorr' and saves it as 'saveFile'.

I hope it helps you.
Also check out my GitHub downloader.

If the code doesn't work please tell me I did it without testing.
Edited on 11 December 2013 - 01:41 PM
LBPHacker #5
Posted 11 December 2013 - 02:39 PM
-snip-
I can already see a mistake there. http.get never returns booleans - on the third line, that download == true will never evaluate true. Strip off the == true part and it'll work.
Edited on 11 December 2013 - 01:40 PM
H4X0RZ #6
Posted 11 December 2013 - 03:46 PM
-snip-
I can already see a mistake there. http.get never returns booleans - on the third line, that download == true will never evaluate true. Strip off the == true part and it'll work.
It would work, your idea is just shorter…
Symmetryc #7
Posted 11 December 2013 - 04:01 PM
-snip-
I can already see a mistake there. http.get never returns booleans - on the third line, that download == true will never evaluate true. Strip off the == true part and it'll work.
It would work, your idea is just shorter…
No it wouldn't, "if 5 == true then" doesn't run, but "if 5 then" does.
Csstform #8
Posted 11 December 2013 - 04:40 PM
Out of curiosity, is ther any easy way that anyone has uploaded to GitHub from the computer? That will make the whole process a few steps easier.
H4X0RZ #9
Posted 11 December 2013 - 04:43 PM
-snip-
I can already see a mistake there. http.get never returns booleans - on the third line, that download == true will never evaluate true. Strip off the == true part and it'll work.
It would work, your idea is just shorter…
No it wouldn't, "if 5 == true then" doesn't run, but "if 5 then" does.
Everything which is Not Nil or false returns true. 5 is Not Nil or false.

EDIT:
Sorry for my foolish mistake, it only works like This:
if var ~= false then
Edited on 11 December 2013 - 03:49 PM
iliketanks1998 #10
Posted 11 December 2013 - 08:53 PM
Not to bother anyone, but I noticed that you mentioned "terminal glasses support". I have the mod that adds those through a modpack (tekkit) and can't find anything relating to it, being the download link, wiki, or any tutorial. If someone could point me towards any resources, that would be appreciated. Good luck on your new OS, looks complicated.

After I have looked over some of the resources (See my first post) I would be happy to help in any way I can.
Csstform #11
Posted 11 December 2013 - 10:07 PM
Post updated to use poll. (Mobile why u no have poll??!)

Not to bother anyone, but I noticed that you mentioned "terminal glasses support". I have the mod that adds those through a modpack (tekkit) and can't find anything relating to it, being the download link, wiki, or any tutorial. If someone could point me towards any resources, that would be appreciated. Good luck on your new OS, looks complicated.

After I have looked over some of the resources (See my first post) I would be happy to help in any way I can.

Resources:
http://www.computercraft.info/forums2/index.php?/topic/13063-mc-16x-openperipheral/

If you are any good at GUIs, I may PM you in the future!

Unfortunately, I'm a total noob at the interwebs, evidently. No GitHub for a while. It's confusing as heck.

EDIT: Sorry about the double post, not sure how to fix it on mobile.
Edited on 11 December 2013 - 10:42 PM
Lyqyd #12
Posted 11 December 2013 - 11:43 PM
If you tap on the post in mobile view, it should show the edit button.
oeed #13
Posted 12 December 2013 - 05:12 AM
If you decide on using a GUI I'm happy to help out, I'm not sure if Terminal Glasses detect clicks, however.
theoriginalbit #14
Posted 12 December 2013 - 05:17 AM
If you decide on using a GUI I'm happy to help out, I'm not sure if Terminal Glasses detect clicks, however.
No it does not. It is only through chat commands.
Csstform #15
Posted 12 December 2013 - 07:04 AM
If you decide on using a GUI I'm happy to help out, I'm not sure if Terminal Glasses detect clicks, however.
As TheOriginalBit said, it does not. The GUI is for the computer, once that is up I just have to port a 'lite' version over to the glasses. After looking Mikemoo's code, the most difficult thing will be finding x and y values. Simple.

Edit: maybe not port perse, but close ties to each other with interaction.
Edited on 12 December 2013 - 06:41 AM
iliketanks1998 #16
Posted 12 December 2013 - 07:24 AM
Post updated to use poll. (Mobile why u no have poll??!)
Not to bother anyone, but I noticed that you mentioned "terminal glasses support". I have the mod that adds those through a modpack (tekkit) and can't find anything relating to it, being the download link, wiki, or any tutorial. If someone could point me towards any resources, that would be appreciated. Good luck on your new OS, looks complicated. After I have looked over some of the resources (See my first post) I would be happy to help in any way I can.
Resources: http://www.computercraft.info/forums2/index.php?/topic/13063-mc-16x-openperipheral/ If you are any good at GUIs, I may PM you in the future! Unfortunately, I'm a total noob at the interwebs, evidently. No GitHub for a while. It's confusing as heck. EDIT: Sorry about the double post, not sure how to fix it on mobile.
Thanks for your help, and i'd like to help you with tungsten OS if possible.
Csstform #17
Posted 12 December 2013 - 04:42 PM
-snip-
Once you get another post out on the forums, I'll be happy to PM some info!

Edit: Can't PM you until you have full permissions.
Edited on 13 December 2013 - 08:49 AM
Csstform #18
Posted 13 December 2013 - 10:42 AM
UPDATE!!
Version 0.2.0!

Now has some basic programs. GUI coming soon!
Edited on 13 December 2013 - 09:51 PM
lieudusty #19
Posted 14 December 2013 - 07:02 PM
Out of curiosity, why do you sleep after print in your installer?
Csstform #20
Posted 14 December 2013 - 10:54 PM
Out of curiosity, why do you sleep after print in your installer?
I don't know… For dramatic effect? That shouldn't be there… I used to put those in because I thought my cheesy little programs would feel more real if they took time to load. Probably force of a bad habit.
Alice #21
Posted 15 December 2013 - 01:59 AM
Out of curiosity, why do you sleep after print in your installer?
I don't know… For dramatic effect? That shouldn't be there… I used to put those in because I thought my cheesy little programs would feel more real if they took time to load. Probably force of a bad habit.
You want dramatic effect?
Slowly print loading……… :D/>
Csstform #22
Posted 15 December 2013 - 08:38 AM
SpoilerInsert mission impossible theme here:
http://www.youtube.com/watch?v=9p0BqUcQ7i0
Edited on 06 January 2014 - 07:19 AM
mrdawgza #23
Posted 15 December 2013 - 06:02 PM
If you haven't gotten GitHub working yet I'll be happy to help you out with it :P/>
Csstform #24
Posted 15 December 2013 - 09:30 PM
If you haven't gotten GitHub working yet I'll be happy to help you out with it :P/>
I'll be glad to take the help… :P/>
Csstform #25
Posted 16 December 2013 - 07:16 AM
Bump.
I AM NOW ACCEPTING GAMES!
PLEASE SUBMIT THEM LIKE THIS:
GAME NAME:
LINK:
SHORT DESCRPTION:
Lemur #26
Posted 22 December 2013 - 10:41 PM
You might also look into Bitbucket, also uses git for version control but allows you to have a free private repo. Mind you, you'd have to enter the password and rework an API to get that to download properly directly from Repo. I prefer the code review and issues system myself, but preferences really.
Csstform #27
Posted 06 January 2014 - 08:18 AM
Alright, break is over - back to work. I'm gonna push an update here, hopefully, I'll get user support up. As soon as that's done, I'll start cracking on the terminal glasses. Please submit programs and games, I want some functionality next update. XD
Csstform #28
Posted 08 January 2014 - 11:11 AM
UPDATE!!! TUNGSTENOS 1.0.0 IS OUT!!

This update is a big step to the end, so we are no longer in beta. This is now a fully functioning OS. (or shell your pick) Glasses support will hopefully come in the next update! Please, test it out!
oeed #29
Posted 10 January 2014 - 05:40 AM
Posting some screenshots would be good. It helps pursued people to install it.

Also, I see you've used my package maker :)/>
One virtual hi-five to you!
Edited on 10 January 2014 - 04:42 AM
Csstform #30
Posted 10 January 2014 - 07:03 AM
Posting some screenshots would be good. It helps pursued people to install it.

Also, I see you've used my package maker :)/>/>
One virtual hi-five to you!
Screens coming soon, as soon as I run the program in Minecraft. (I use ccemu) And yeah! High five for my laziness!
Symmetryc #31
Posted 16 January 2014 - 05:38 PM
Decent looking code for a beginner :)/>.
willwac #32
Posted 19 January 2014 - 10:33 AM
[9:55 AM] willwac: OMG! Found an OS that sounds really nice… but it doesn't have any screenies!
[9:56 AM] Daisy: Well, no screenies, no clickies.

I'm going to check it out.

The over-simplified UI turns me off. I love the text UIs, but this one just doesn't work for me. I'm sorry. Now, this doesn't mean that your OS sucks; it doesn't. I just don't like the UI, and that's why I don't use very many OSes.
But, good choice on using Oeed's package make tool!
oeed #33
Posted 19 January 2014 - 05:42 PM
[9:55 AM] willwac: OMG! Found an OS that sounds really nice… but it doesn't have any screenies!
[9:56 AM] Daisy: Well, no screenies, no clickies.

I'm going to check it out.

The over-simplified UI turns me off. I love the text UIs, but this one just doesn't work for me. I'm sorry. Now, this doesn't mean that your OS sucks; it doesn't. I just don't like the UI, and that's why I don't use very many OSes.
But, good choice on using Oeed's package make tool!
An interface can never be over simplified. Things that use the Fisher-Price "one big button" mentality always do better than those which look like they need a PhD in physics to use. But I see your point. There is a line between lack of features and difficulty that ease of use fits, and some times things drop below it.
Csstform #34
Posted 20 January 2014 - 07:01 AM
-snip-
So, what would you like better? I am personally not a fan of GUI's, just because it never looks good. This is the only UI that I have made in computercraft, so I would definitely like some input.
willwac #35
Posted 20 January 2014 - 08:03 AM
Well, I don't have mc/cc open, and you don't have screenshots, so give me an hour.

-snip -
An interface can never be over simplified. Things that use the Fisher-Price "one big button" mentality always do better than those which look like they need a PhD in physics to use. But I see your point. There is a line between lack of features and difficulty that ease of use fits, and some times things drop below it.
And some UIs just plainly don't work.
oeed #36
Posted 20 January 2014 - 06:50 PM
Well, I don't have mc/cc open, and you don't have screenshots, so give me an hour.

-snip -
An interface can never be over simplified. Things that use the Fisher-Price "one big button" mentality always do better than those which look like they need a PhD in physics to use. But I see your point. There is a line between lack of features and difficulty that ease of use fits, and some times things drop below it.
And some UIs just plainly don't work.

After looking at the UI again, I actually think this is a really good text UI. It's not really that oversimplified really. I just don't really see the issue.
Csstform #37
Posted 23 January 2014 - 10:54 AM
SCREENSHOTS ARE HERE!
GHASTCRAFTMC #38
Posted 23 January 2014 - 12:02 PM
Realy Simple it is like the Console with a GUI
Csstform #39
Posted 23 January 2014 - 02:20 PM
Realy Simple it is like the Console with a GUI
Sort of, yeah. But with password support and 'soon' glasses support. (I should really get around to writing that…)