GithubHelp home page GithubHelp logo

banana-man10 / anuraos Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mercuryworkshop/anuraos

0.0 0.0 0.0 289.01 MB

A web "OS" and development environment with full linux emulation

Home Page: https://anura.pro

License: GNU Affero General Public License v3.0

Shell 0.64% JavaScript 87.44% Perl 0.01% C 0.65% TypeScript 7.64% CSS 1.57% Nix 0.03% Makefile 0.12% HTML 1.75% Dockerfile 0.11% Roff 0.03%

anuraos's Introduction

Quality Gate Status Lines of Code

AnuraOS logo AnuraOS logo

The next-gen webOS and development environment with full linux emulation


What is AnuraOS?

An entirely local browser "OS" and development environment with complete graphical linux emulation, visually based on chromiumOS. See a demo here, fully in your browser.

Note

Due to numerous issues with Firefox's implementation of certain web standards, it is not supported on Anura. Please use a chromium-based browser or you will have a significantly diminished user experience. Safari is also fully compatible, as long as you have MacOS Sonoma, or iPadOS/iOS 17 or later.

Anura uses the features of a progressive-web-app to make its environment work fully offline, providing a virtual filesystem (synced with the linux emulator), a code editor, and a modular and extensible app system. You can even edit Anura's code live while inside of it!

Anura shows as more of a proof-of-concept with what's possible on the modern web rather than an actual product. However, it proves useful in many actual cases and is a useful educational tool.

What can AnuraOS do?

  • Run linux GUI apps from a terminal

Development

Important

Anura will not build on Windows. Please use a Linux VM or WSL

Easy Install (When in a codespace)

  • Run bash codespace-basic-setup.sh

NOTE: If you are not in a codespace skip to the regular installation steps.

NOTE: This does NOT build RootFS.

Installation

  • Make sure you have rustup and run the command: rustup target add wasm32-unknown-unknown
  • You also need to have a C compiler, inotifytools and a decent version of java installed
  • Clone the repository with git clone --recursive
  • Then, make all
  • NOTE: You can use make all -B instead if you want to force a full build.

Building ROOTFS

  • Make sure you have Docker installed and running.
  • Run make rootfs
  • Make sure to add yourself to the Docker group using usermod -a -G docker $USER
  • (Special Use Case) In the event that you should need to override/manually add the initrd and kernel, remember to keep track of the file names of initrd and vmlinuz in build/images/(rootfs)-boot/. Then, copy them to the Anura root directory and rename them to initrd.img and bzimage respectively.(See the extended instructions here.)

Running Anura

You can run anura with the command

make server

Or, run authenticated with

cd server
npm start -- --auth

After Installation

NOTE: Anura uses recent web technologies, and is unstable in Gecko. Chromium is strongly recommended as it has seen the best results.

  • If you started the server, Anura should be running at localhost:8000.

Documentation

Still being written. (See the current index of documentation here)

Security

See SECURITY.md for reporting instructions.

Credits

AnuraOS is created by Mercury Workshop. Linux emulation is based off of the v86 project

anuraos's People

Contributors

averagejuliet avatar bomberfish avatar builtbyvys avatar cattn avatar co1acraft avatar coolelectronics avatar e9x avatar endercass avatar foxmoss avatar incognitotgt avatar kxtzownsu avatar luphoria avatar madjikdotpng avatar markrosenbaum avatar motortruck1221 avatar percslol avatar pogo-bash avatar programmerin-wonderland avatar r58playz avatar scoder12 avatar thememesniper avatar wearrrrr avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.