LinuxSim Documentation

Every app. Every shell command. Every keyboard shortcut. If you ever wonder "what does this do?" โ€” this page has the answer.

Contents: Getting started ยท The desktop ยท System apps ยท Utilities ยท Dev tools ยท Challenges ยท Keyboard shortcuts ยท Shell commands ยท Rewards ยท Persistence ยท FAQ

Getting started

LinuxSim runs entirely in your browser. There is nothing to install โ€” not a VM, not a container, not a native app. When you open linuxsim.com, a complete Linux-style desktop environment boots inside the page: windows, a dock, a top panel, a filesystem, a shell, a Python interpreter, and 25+ apps. It's a simulation, not a real Linux kernel, but the commands, files, and tools behave closely enough to teach real skills.

Your first minute

  1. Click Terminal in the left dock.
  2. Type ls and press Enter. You'll see your home directory.
  3. Type cd /etc then ls. You're in the system config directory.
  4. Type man ls for a full manual page.
  5. When you're ready for a challenge, double-click Treasure Hunt on the desktop.

The desktop

LinuxSim's desktop mimics Ubuntu 24.04's GNOME environment. You can switch to a Unity-classic look in Settings โ†’ Desktop Style.

Top panel

Left dock

The dock holds what a fresh Ubuntu install ships with: Files, Web Browser, Terminal, Text Editor, Software, System Monitor, Settings, and Help. At the very bottom is the Show Applications grid icon โ€” click it or press Super+A to see every app in the sim, including the LinuxSim-specific ones.

Desktop icons

You can drag any desktop icon to reposition it. Positions persist to IndexedDB. Right-click the desktop for a menu with "Open Terminal Here" and other quick actions.

Windows

Every app opens in a window you can drag, resize, minimize, maximize, or close. Drag a window near a screen edge for a snap preview:

System apps

Terminal

Bash-compatible shell with 85+ commands. Supports pipes (|), redirection (>, >>, <), command substitution, globbing, and environment variables. Type help for the full list or man <cmd> for detailed manual pages.

Files

Nautilus-style file manager. Navigate with double-click, go up with the address bar, and right-click for a context menu. Opening a .png/.jpg routes through the Image Viewer; everything else opens in the Text Editor.

Text Editor

CodeMirror-powered editor with syntax highlighting for Python, JavaScript, TypeScript, SQL, JSON, and plain text. Markdown files (.md) get a live-rendered split-pane preview. Ctrl+S saves back to the virtual filesystem.

System Monitor

Fake CPU and memory graphs that drift over time to feel alive. Shows a process list you can sort by CPU or memory. Clicking "Kill" on a process removes it โ€” no real system is harmed.

Settings

Controls for wallpaper, accent color, hostname/username, clock format, text size, desktop style (GNOME vs Unity), high-contrast mode, and factory reset.

Utility apps

Calculator

Basic calculator with + โˆ’ ร— รท, parentheses via precedence, sign toggle, percent, and a history sidebar. Full keyboard support. Powered by a hand-written shunting-yard parser โ€” no eval.

Clocks

World Clock (6 cities), Stopwatch (with laps), Timer (with a notification when it finishes).

Screenshot

Captures the current browser viewport using the Screen Capture API and saves the image to ~/Pictures/. Download or delete from the list.

Image Viewer

Opens images from the virtual filesystem or from your real machine. Zoom in, zoom out, fit-to-window. Supports PNG, JPEG, GIF, BMP, WebP, SVG.

Environment Variables

GUI for editing ~/.profile โ€” add, edit, or remove export KEY=value lines without touching the file by hand. Values flow into new terminals at launch.

Cron Editor

Visual crontab builder. Enter a schedule (* * * * *), add a command, see a human-readable description and a live "next run in N minutes" countdown. Jobs don't actually execute anything โ€” the scheduler math is the teaching goal.

Development tools

Python 3

Full CPython interpreter running in the browser via Pyodide. Includes NumPy, pandas, sympy, scikit-learn, matplotlib, and the entire Python 3.12 stdlib. No tricks โ€” it's real CPython compiled to WebAssembly.

SQLite Browser

Powered by sql.js โ€” actual SQLite in WebAssembly. Click "Demo DB" to load a pre-seeded sample, or upload your own .db file. Run any SQL that SQLite supports: SELECT, CREATE, JOIN, window functions, CTEs, JSON functions.

JSON Viewer

Paste raw JSON, see a collapsible tree with syntax-highlighted values. Pretty-print, minify, or copy with one click. Handles nested objects and arrays up to any depth.

Hex Editor

Classic hexdump -C layout โ€” offset, 16 bytes of hex, ASCII column. Accepts text input or a file upload (up to 1 MB). Hovering a byte highlights the same position in the ASCII column.

Tux โ€” AI Assistant

A Linux-focused chat assistant built into the desktop. Ask it anything about shell commands, Python, regex, or how to use LinuxSim itself. Backed by Cloudflare Workers AI running Llama 3.1 8B. 20 queries per IP per day on the free tier.

Challenges & learning

Treasure Hunt

15 hidden flag files scattered across the virtual filesystem. Each is in a spot that teaches a specific Linux skill โ€” one is in /etc/passwd, one in ~/.bash_history, one in /proc/cpuinfo, one in ~/.ssh/. Copy the flag string, paste it into the Treasure Hunt card, unlock it. Finish all 15 for a reward code.

Practice Labs

11 interactive exercises with auto-grading. Each lab plants files in the virtual filesystem, gives you instructions, and checks a goal when you click "Check Progress." Covers terminal navigation, file operations, permissions, log parsing, pipes, environment variables, and the /proc filesystem.

Code Golf

8 Python problems of increasing difficulty โ€” reverse a string, count vowels, FizzBuzz, palindrome check, sum of squares, unique chars, prime check, anagram detector. Real Pyodide runs your code against hidden test cases. Your drafts auto-save.

Git Basics

6 challenges teaching git init, add, commit, log, branch, checkout, and merge. A real (small) git state machine runs in the browser โ€” not just a mock. You can make divergent branches and merge them.

Vim Tutor

10 interactive lessons in a working vim sandbox. Teaches motion (hjkl, w, b, 0, $, gg, G), edits (i, a, x, dd, yy, p, u), and save/quit (:w, :q, :wq). By lesson 10 you'll never wonder how to exit vim again.

Regex Playground

Free-form pattern tester with live match highlighting, flag toggles, and capture-group inspection. Plus 8 challenge problems from "just the digits" to "extract the log level with a capture group."

Keyboard shortcuts

ShortcutAction
Ctrl+Alt+TOpen a new terminal (GNOME default)
Super+AShow Applications launcher
Super+EOpen Files
Super+DShow desktop (minimize all windows)
Super+LLock the session
Super+Ctrl+โ†/โ†’Switch workspace
Alt+TabWindow switcher (hold Alt, tab through, release to focus)
Shift+Alt+TabReverse window switcher
Ctrl+SSave (Text Editor, Writer, Hex Editor)
EscapeClose launcher, notification center, lock screen prompt, etc.

Shell commands

LinuxSim's shell implements 85+ real Linux commands. For a quick reference, see the Commands page. For detailed manual pages, type man <command> in the terminal โ€” pages follow POSIX format (NAME / SYNOPSIS / DESCRIPTION / OPTIONS / EXAMPLES / SEE ALSO) and use ANSI colors for readability.

Supported categories:

Reward codes

LinuxSim partners with Apex Online Academy โ€” a paid learning platform with 175+ courses. Finishing a challenge unlocks a real discount code that adds free days to any Apex paid subscription.

ChallengeCodeReward
Treasure Hunt (15 flags)TREASURE14+14 days
Practice Labs (11 labs)LABS14+14 days
Code Golf (8 problems)CODEGOLF14+14 days
Git Basics (6 challenges)GIT14+14 days
Vim Tutor (10 lessons)VIM14+14 days
Regex Playground (8 challenges)REGEX14+14 days
All 6 completedBONUS7+7 bonus days

Total possible: 91 free days. Each code is one-use per Apex account. Codes can be redeemed at signup or on an existing subscription from Settings โ†’ Billing.

Persistence

Everything you do in LinuxSim persists to your browser's IndexedDB:

Wipe everything: Settings โ†’ Danger Zone โ†’ Factory Reset. This clears IndexedDB for linuxsim.com and starts you fresh.

FAQ

Is this a real Linux?

No โ€” LinuxSim is a simulation. There's no real Linux kernel, no real processes, no real syscalls. But the shell implements real command semantics, Python is real CPython, and SQLite is real SQLite. The trick is that the kernel layer is faked just enough to let the user-space tools work.

Is it safe to type rm -rf /?

Yes. You can't break the sim, and you definitely can't break your real computer. Worst case you wipe your virtual filesystem, which Factory Reset recovers in one click.

Can I use it offline?

LinuxSim is a progressive web app. After the first load, most of it works offline โ€” the main exceptions are Tux (needs the AI proxy) and curl/wget against remote hosts (the whitelist is offline but fake).

What does it cost?

LinuxSim is free. No signup, no credit card, no ads. Reward codes are a marketing tool for Apex Online Academy, which is a paid product โ€” but using LinuxSim itself never costs anything.

How do I report a bug?

Open Tux and describe it, or email [email protected].