100 posts
Posted 04 October 2016 - 11:34 AM
Tesseract - an "expert" operating system
Current version: Warp Sierra/Pre-release/Build #0090
Version currently in development: Tesseract Alpha/Release/Build #0100
Status: Update in active development [DEV BUILD #0095 UP]
What is Tesseract, exactly?
Tesseract is a proof-of-concept Operating System, designed to resemble a Linux distribution.
I will say it ONE. EXACT. TIME: Tesseract is not for your average "hello world" newbie (just like Linux).
What does Tesseract feature right now?
Features already implemented in the system:
- A functional bootloader with the option to utilise custom boot records
- An autorun system that allows the user to execute their own code after boot
- A set of core utilities
- A set of demonstration programs that show multiple programming examples
- A (somewhat) state-of-the-art security system that allows for privileged/non-privileged account separation and filesystem sandboxing
- A Linux-like documentation system utilising manuals
- A monolithic kernel with basic features like a custom shutdown sequence, logging, crash reporting and custom module/API hooks
- 8 APIs that simplify configuration handling, package management GUI and more
- A simple package management system (currently without advanced package-relative dependency handling)
- A multi-user authorization system with authorization
- A script subsystem that can automate running specific tasks
- A backup system that will automatically conserve remotely updated system files
Features not yet implemented but are in development (status: implementing in the next update/queued for implementation/planned for implementation/implemented/unable to implement at current stage). Suggest features here or in PM:
Authorization system (possibly with hashing)- Further customization
Dependency handling in TPMA package management system with custom repositoriesFilesystem sandboxing- A nice-looking functional GUI system
- A multitasking framework
- More APIs to simplify development
- More built-in programs
- Tesseract's own network protocol system
- A built-in antimalware
- Suggest more…
This update's changelog.
- Fixed an URGENT bug in a part of the core utilities suite
- Fixed an URGENT bug in the TPM
- Fixed an URGENT bug in the kernel
- Fixed an URGENT bug in the security kernel
Improved the custom bootloader record feature Caused bugsImproved security measures Caused bugs- Tweaked some manuals
- Improved the core utilities suite
- Added a couple of manuals
- Tweaked TPM
- Integrated the Application API into the kernel, made preparations for complete removal of the Complex Application system!
- Created a shutdown wrapper
- Redone the manual system (somewhat)
- Tweaked the kernel
- Tweaked logging
- Redone security
Next update's temporary changelog. Subject to change without notice.
- Fixed an URGENT bug in the TPM repository database
- Created a primitive self-hosted decentralized domain name system
- Updated Search API
- Fixed a few minor bugs
- Added a few more programs into the repository
- Tweaked the GUI and LuaEx APIs
- Added script parsing
- Added error logging
- Added a backup subsystem that gets used when downloading system updates (/etc/.backups)
- Tweaked the system itself
- Removed complex applications
- Hugely redone the kernel
- Hugely redone the bootloader
- Hugely tweaked filesystem security
- Changes to multiple programs
- Progressing with assembly re-structuring
Is this safe?All builds are tested on the latest CCEmuRedux emulator and, periodically, on 1.7.10 Forge servers.
Tesseract also features security measures now.
Where can I get it?I use 1Ridav's archiver for OS distribution - it simplifies everything. (If you don't know 1Ridav, he's a Russian CC coder.)
Download the
http://pastebin.com/rSJsysgY archiver and the
http://pastebin.com/nzZUkZmx OS image, then type this into the shell:
<path to archiver> unzip <path to image> /
Reboot the system, and if you see that Tesseract Boot Loader is starting to load modules into memory, you have installed the system!
Oh, and the default credentials are root/root, make sure to change your password (passwd <username> <password> as root)!
Edited on 02 November 2017 - 04:30 PM
2679 posts
Location
You will never find me, muhahahahahaha
Posted 04 October 2016 - 06:29 PM
The installer should be used like this:
<path to archiver> unzip <path to image> /
Just tested it and that's how it worked for me.
I don't wanna discourage you! It looks like the beginning of an awesome OS!
Edited on 04 October 2016 - 05:02 PM
61 posts
Location
Somewhere, deep down under a rainbow.
Posted 05 October 2016 - 12:36 AM
This seems not bad although this is in development.
I really like the *nix style shell and generally the custom APIs to help other people develop on the system.
For the app management, you should get a site on 000webhost or something, then make a little PHP script
that allows uploading packages for your application installer. Then share the script to other people, so if they
want to make a repository, all they have to do is put the script on and there you go. (Just a theory though)
This looks to be a nice operating system for its current stage and I hope to see where it goes, and I'd probably
do another review of this if there is a major update.
100 posts
Posted 05 October 2016 - 09:11 AM
Thank you all very much!
The installer should be used like this:
<path to archiver> unzip <path to image> /
Just tested it and that's how it worked for me.
I don't wanna discourage you! It looks like the beginning of an awesome OS!
Don't be afraid to discourage me, constructive criticism is always appreciated :D/>
Thanks for pointing that out though, the post is updated
This seems not bad although this is in development.
I really like the *nix style shell and generally the custom APIs to help other people develop on the system.
For the app management, you should get a site on 000webhost or something, then make a little PHP script
that allows uploading packages for your application installer. Then share the script to other people, so if they
want to make a repository, all they have to do is put the script on and there you go. (Just a theory though)
This looks to be a nice operating system for its current stage and I hope to see where it goes, and I'd probably
do another review of this if there is a major update.
Regarding app management I prefer Pastebin record databases, the advantage of CCEmuRedux is that you can edit the computer files directly from your OS which simplifies Pastebin uploads. Also note that 1Ridav's archiver makes archives that ARE the application installation files.
The APIs are for the OS itself to function properly, but the manuals for them ain't for nothing.
Replies done, now for the announcement:
Expect an update soon, the archive link will always contain the latest version
Edited on 05 October 2016 - 10:28 AM
100 posts
Posted 05 October 2016 - 12:53 PM
Build #0049 is out, preparing for the Warp 2 preview.
111 posts
Location
here
Posted 05 October 2016 - 04:03 PM
-snip-
For the app management, you should get a site on 000webhost or something, then make a little PHP script
that allows uploading packages for your application installer. Then share the script to other people, so if they
want to make a repository, all they have to do is put the script on and there you go. (Just a theory though)
-snip-
I recommend InfinityHost, a pretty good free host with unlimited domains and space
100 posts
Posted 05 October 2016 - 04:48 PM
-snip-
For the app management, you should get a site on 000webhost or something, then make a little PHP script
that allows uploading packages for your application installer. Then share the script to other people, so if they
want to make a repository, all they have to do is put the script on and there you go. (Just a theory though)
-snip-
I recommend InfinityHost, a pretty good free host with unlimited domains and space
Understand, going to look at it someday.
And,
work on Warp 2 has begun - package management is going to come!
100 posts
Posted 06 October 2016 - 04:02 PM
Warp 2 is almost ready for release.
An example small repository file will be released with the system because I don't have time for traversing the entire forum for programs.
If you want a program to be included in the repository - go ahead and PM me.
100 posts
Posted 06 October 2016 - 05:01 PM
Warp 2 is out! Package management, 2 new APIs!
389 posts
Posted 07 October 2016 - 07:12 AM
Rather nice OS, one small problem although. I had a lot of issues with text clipping in the shell (which looks like a direct copy of the original shell program).
100 posts
Posted 07 October 2016 - 02:43 PM
Rather nice OS, one small problem although. I had a lot of issues with text clipping in the shell (which looks like a direct copy of the original shell program).
- Looks like a problem with the CC itself, works in CC 1.5/CCEmuRedux well.
- It IS an exact copy of the built-in shell, it was copied from the CC 1.5 files to ensure compatibility and use the Shell API. When authorization comes I will customize the shell
3057 posts
Location
United States of America
Posted 07 October 2016 - 02:58 PM
I would advise you to look at
the differences between CC 1.5 and current.
100 posts
Posted 09 October 2016 - 10:13 AM
I would advise you to look at
the differences between CC 1.5 and current.
Multishell and auto-completion can't be implemented in 1.5 I guess unless there are backports
100 posts
Posted 09 October 2016 - 06:58 PM
Warp 3 is almost ready and will be released tomorrow! Authentication is going to come!
100 posts
Posted 10 October 2016 - 04:39 PM
Warp. 3. Is. OUT!
As promised, authentication has came into existence. And I'm planning to introduce sandboxing soon!
Edited on 10 October 2016 - 02:40 PM
100 posts
Posted 12 October 2016 - 06:22 PM
WARP 4 RELEASED!…Somewhat ahead of schedule.
I was looking forward to make a BLAST AntiMalware-like sandbox system, and I, honestly, failed. Too bad…
Well, on the bright side, we have the multi-user authorization system and improved logging. Yeah.
100 posts
Posted 13 October 2016 - 06:53 PM
SANDBOXING! Finally!
And, for you Windows lovers, there is a new demo you would like :)/> Had to make a couple of new functions for it
100 posts
Posted 14 October 2016 - 10:12 AM
Work on Warp 5, the LAST technical preview, has officially began. Development is going to take more time than usually, so be patient. Expect a release in 2 days!
Edited on 19 October 2016 - 03:02 PM
100 posts
Posted 15 October 2016 - 04:28 PM
The first development build's ready, here's a quick sneak peek…
EDIT: And another one!
Edited on 15 October 2016 - 03:03 PM
100 posts
Posted 19 October 2016 - 05:03 PM
21th of October, wait no more!
100 posts
Posted 21 October 2016 - 01:16 PM
WARP 5 OUT NOW!
100 posts
Posted 28 February 2017 - 05:28 PM
Aaaaaand here it is,
Warp Sierra! Yes, I've been out for a loooong time, but today I finally finished it!
And now a question.
Should Tesseract remain compatible with CraftOS 1.5 or should I update it to use the more new 1.7? The vote is yours.
Now to other matters.
- Complex applications are going to be REMOVED in the release. They're a useless feature to me, and just take up disk space.
- Security has been made tougher. Basically, everything that triggers it will have a SU request unless it's the startup file (then it just accuses you of performing restricted ops). If you messed something up - just reboot into CraftOS (by logging in as root and corrupting the preferredBootloader field in /boot/boot.conf), delete all Tesseract files and re-install the system.
- Manuals moved into /etc, just because I had the feeling to. Also it's more logical to have /etc/manuals.
- Shutdown wrapper implemented, now you can configure how you want your system to terminate.
- Logging was extended, also a viewer was added - dmesg, like in Debian.
Waiting for your opinions!
7083 posts
Location
Tasmania (AU)
Posted 28 February 2017 - 09:14 PM
And now a question. Should Tesseract remain compatible with CraftOS 1.5 or should I update it to use the more new 1.7? The vote is yours.
Why not both?
194 posts
Posted 28 February 2017 - 10:29 PM
And now a question. Should Tesseract remain compatible with CraftOS 1.5 or should I update it to use the more new 1.7? The vote is yours.
Why not both?
Honestly, anything that requires 1.5 (or 1.7) you can detect the version and base it on that.
100 posts
Posted 01 March 2017 - 02:45 PM
And now a question. Should Tesseract remain compatible with CraftOS 1.5 or should I update it to use the more new 1.7? The vote is yours.
Why not both?
Honestly, anything that requires 1.5 (or 1.7) you can detect the version and base it on that.
The answer is that it will be, excuse me, a wuss to code both versions. But I'll consider it.
Edited on 01 March 2017 - 01:50 PM
100 posts
Posted 25 October 2017 - 06:16 PM
Yay, I'm back :D/>
Release development is continuing slowly:
- Special thanks to Luca_S for the script parser base code - put it under luaex.iterateFileLines(<path>).
- Removed complex applications. They are just wasted code. Also, integrated manuals into the kernel.
- Made error logging! Hurray!
Attaching a sneak-peek picture of the release version like this because it won't let me post an image. Sorry forum staff.
Edited on 25 October 2017 - 04:23 PM
100 posts
Posted 25 October 2017 - 07:59 PM
Updated the post and the poll. Cast your votes on the possible new features to give me a sense of what the community wants!
100 posts
Posted 26 October 2017 - 03:34 PM
Redone the bootloader - now the kernel resides inside the /startup file along with the interface subsystem.
Another quick sneak-peek!
467 posts
Location
Van Diemen's Land
Posted 26 October 2017 - 11:37 PM
And now a question. Should Tesseract remain compatible with CraftOS 1.5 or should I update it to use the more new 1.7? The vote is yours.
Why not both?
Honestly, anything that requires 1.5 (or 1.7) you can detect the version and base it on that.
Yeah, you could just have an installer that detects the version and then installs the appropriate files for that version? That would mean you need to keep 2 programs updated at once, though.
100 posts
Posted 28 October 2017 - 11:27 AM
And now a question. Should Tesseract remain compatible with CraftOS 1.5 or should I update it to use the more new 1.7? The vote is yours.
Why not both?
Honestly, anything that requires 1.5 (or 1.7) you can detect the version and base it on that.
Yeah, you could just have an installer that detects the version and then installs the appropriate files for that version? That would mean you need to keep 2 programs updated at once, though.
Any way to Sunday, I'm already updating everything to use 1.7. The new shell will come out soon and I'm working on using RedNet protocols as a DNS basis.
100 posts
Posted 28 October 2017 - 03:01 PM
Put the dev build up, expect one more until I release the system.
Heightened security, a temp dev account, scripts and huge tweaks all in one little package
100 posts
Posted 28 October 2017 - 03:20 PM
A quick run-down on the new features:
- Scripts. I saw Batch on the forums, got jealous, asked to use the code for Tesseract. See 'man credits' and 'man custom-script' for details.
- Error logging. Intercepting Lua error functions was pretty easy to implement. Beware, logs may get big if you are a developer.
- FHS compliance. Redone the top-level filesystem hierarchy to more closely resemble Linux.
- Custom shells. Now you can make your own shell and modify your user record to make it start by default. All custom shell API functions included.
- Reloading APIs. APIs are now called 'assemblies'. If you make a modification to the system libraries, for example, you can type 'asm-reload -c:SYSTEM_CACHE' and test it without rebooting.
- API re-structuring. I'm planning to curl all the system assemblies up into 4 large files: the kernel, the GUI subsystem, the Tesseract internal executive subsystem and the user interactions interface. Also this will make the kernel and the GUI subsystem more redundant by re-locating them into the /startup file (that part is already done).
130 posts
Location
Yes
Posted 14 January 2018 - 08:29 AM
This is… nothing short of amazing. I've never seen anything like this coded in a language like Lua. You deserve a pat on the back..
Actually, no. You deserve two pats on the back. Two pats on the back for you, sir.
100 posts
Posted 14 June 2018 - 04:39 PM
This is… nothing short of amazing. I've never seen anything like this coded in a language like Lua. You deserve a pat on the back..
Actually, no. You deserve two pats on the back. Two pats on the back for you, sir.
Nah, there are far more advanced OSes on this site. But still, thanks.
I've actually been planning to discontinue the OS, but I might release a final update in some time. Currently, I'm working on an OS called Darwin.
130 posts
Location
Yes
Posted 14 June 2018 - 05:48 PM
This is… nothing short of amazing. I've never seen anything like this coded in a language like Lua. You deserve a pat on the back..
Actually, no. You deserve two pats on the back. Two pats on the back for you, sir.
Nah, there are far more advanced OSes on this site. But still, thanks.
I've actually been planning to discontinue the OS, but I might release a final update in some time. Currently, I'm working on an OS called Darwin.
I'm currently
running an OS called Darwin.
AKA, macOS…