Jump to content




OSRunner: The solution for multiple OS'es NEW: WIRED PERIPHERAL MANAGEMENT!

utility api computer

54 replies to this topic

#1 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 29 March 2013 - 11:38 AM

OSRunner



NEW FEATURE:

PERIPHERAL MANAGEMENT


View PostMudkipTheEpic, on 23 April 2013 - 03:15 AM, said:

Added peripheral support, protect your peripherals, configure your OSes to only be able to use only specific peripherals (changable per OS)! (Default all disabled)

In System Settings, Manage Peripherals!

Intro



After months of feature-adding,bug-fixing,and bug-fixing the bugs the bugfix made :P/>/>, it's finally out!


Features




OSRunner is a graphic-based utility that lets you run OS'es and other file-hogging programs that you don't want clogging up your main directory. It also emulates a virtual rom, which has all programs but secret/alongtimeago (I couldn't figure out how to copy it!). The nice GUI lets you add custom OS'es, reformat OS'es, and set the default OS. It also has some nice features such as os.reboot support, restoring _G and restarting the sandbox.


How It Works


OSRunner works by editing FS to make all programs, when using files, access them inside of their directory. I could explain MUCH more, but it would become a wall of text. :P/>/>


Download


pastebin get BNAxvJ1a install


Github:

https://github.com/M...c/ComputerCraft


Bug Reporting

Report all bugs at the Issues page in GitHub.


Special Thanks

SuicidalSTDz and alakazard12 (GitHub Names) for developing with me.


Everybody who took the time to read this thread, and use this program.




Have fun with OSRunner !

Edit: Added poll.



#2 FuuuAInfiniteLoop(F.A.I.L)

  • Banned
  • 435 posts
  • LocationThe left part of this post

Posted 29 March 2013 - 11:58 AM

The startup script gives me an error on line 11 when i use the installer

#3 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 29 March 2013 - 12:24 PM

Fixed! Sorry. :P

#4 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 29 March 2013 - 12:58 PM

Added poll!

#5 FuuuAInfiniteLoop(F.A.I.L)

  • Banned
  • 435 posts
  • LocationThe left part of this post

Posted 29 March 2013 - 03:16 PM

I have hacked your sandbox jejeje if you type "cd .." it will go back and back and back till you can access the files in the computer without sandbox. Image:

Posted Image
edit: sorry for the other computer i was coding my new program xDD

Edited by urielsalis, 29 March 2013 - 03:17 PM.


#6 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 29 March 2013 - 04:19 PM

Um.. that's akward... but I'll get on that right away.

Well, the program was never a jail, more of a utility, but I'll fix it.

How does the .. work?


Edit: I think it is like if you do rom/.. then you get default dir, right? Correct me if I'm wrong.

#7 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 29 March 2013 - 04:31 PM

Alright, fixing tomorrow, gotta shell.resolve all entries. :/

#8 kornichen

  • Members
  • 220 posts
  • LocationGermany

Posted 29 March 2013 - 07:25 PM

I love it :D

#9 theoriginalbit

    Semi-Professional ComputerCrafter

  • Moderators
  • 7,332 posts
  • LocationAustralia

Posted 29 March 2013 - 08:50 PM

View PostMudkipTheEpic, on 29 March 2013 - 04:19 PM, said:

How does the .. work?
Ok so that I didn't give the wrong explanation (or didn't say it exactly right) I traced back how the shell processes it. very hard traceback but I eventually traced it back to where it works. The parts of the path are iterated through and pushed to a Stack, but if the part of the path is a '..' (or empty) the last element is popped off the stack.

View PostMudkipTheEpic, on 29 March 2013 - 04:19 PM, said:

Edit: I think it is like if you do rom/.. then you get default dir, right? Correct me if I'm wrong.
rom/.. would be /
also i discovered from the investigation above that
rom/../rom would be rom. although why you would want to do that I'm not to sure. overall, if you override fs.combine it will change it for every use (fs.combine is the top most accessible function that is used and where .. is processed)

hope this helped :) oh btw good job on this, finally something that isn't just an installer but actually adds a sandbox! :)

#10 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 30 March 2013 - 03:15 AM

D:

I figured out how to do it, but the drawback is that .. and ../.. and so on are valid paths, but just access the sandbox dir! (Nothing wrong with accessing sandbox dir, but making .. and ../.. valid paths is bad.)

How to fix...

#11 MysticT

    Lua Wizard

  • Members
  • 1,597 posts

Posted 30 March 2013 - 04:07 AM

Here's some functions I used in the old version of MysticOS to sandbox the users to their own directory:
Spoiler
The splitPath function just parses the path and returns a table with each part of the path. Then the resolve path uses that table to get the sandboxed path.
It's an old code I used, so there's probably some things to improve, but it should work as a starting point.
Hope this helps. And nice work with this :)

#12 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 30 March 2013 - 10:39 AM

Fixed in new version! :D

#13 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 30 March 2013 - 12:59 PM

Any features you guys want me to add?

#14 Sxw

  • Members
  • 306 posts
  • LocationWhenever, Wherever!

Posted 30 March 2013 - 06:13 PM

The same problem applys to ccbox, its being fixed, but....

fs=getfenv(fs.open) Would be able to get at the old fs unless you had patched getfenv. :)

#15 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 31 March 2013 - 02:59 AM

Umm.... No.

Just tested it. :P

And I DID NOT modify getfenv.

#16 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 10 April 2013 - 01:26 PM

Added new update with ability to update from inside of app!

#17 Sammich Lord

    IRC Addict

  • Members
  • 1,212 posts
  • LocationThe Sammich Kingdom

Posted 10 April 2013 - 01:28 PM

I really don't see the use case for this(For meh at least). If for whatever reason I want to run multiple OSes(I don't even run one :P) then I would just make a new computer in CCEmu or my new favorite CCDesk.

#18 MudkipTheEpic

  • Members
  • 639 posts
  • LocationWhere you'd least expect it.

Posted 10 April 2013 - 01:31 PM

Well, maybe this just isn't for you then. I honestly use it to test file-abusing programs or ones that use lots of files. :P But, it can be very useful. Like deleting all files on the OS without using a disk, and the OS has nothing to do about it. :P :P :P

And, I understand why you would not use it in an emulator, but what about in MC (survival mostly, still useful in creative)?

#19 Sammich Lord

    IRC Addict

  • Members
  • 1,212 posts
  • LocationThe Sammich Kingdom

Posted 10 April 2013 - 01:34 PM

I may use it for testing abusive programs but other than that I can't see myself use it even in MC. I hardly spend the time to use a custom OS because most of them just make a task take longer.

#20 SuicidalSTDz

    Permutator of Strings

  • Members
  • 1,308 posts
  • LocationPennsylvania

Posted 10 April 2013 - 01:51 PM

View PostSammich Lord, on 10 April 2013 - 01:34 PM, said:

I hardly spend the time to use a custom OS because most of them just make a task take longer.
Well yeah, CraftOS is command-line. Most of us devs just go for aesthetics. My OS is fairly efficient in the way it works (For the most part, as well this is just my opinion :P) I have made a personal script to run OSRunner in EnderOS since I like it so much, well, and helped with part of the code :P

EDIT:

View Posturielsalis, on 29 March 2013 - 03:16 PM, said:

I have hacked your sandbox jejeje if you type "cd .." it will go back and back and back till you can access the files in the computer without sandbox. Image:

Posted Image
edit: sorry for the other computer i was coding my new program xDD
Bravo, you hacked into a non-secure language. Do you want a cookie? Not everything can be 'hacker' free in Lua. As well, Mudkip and I thank you for pointing this bug out.





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users