An MS-DOS-like CLI OS made entirely in Python.
Project description
██████╗ ██╗ ██╗ ██████╗ ██████╗ ███████╗
██╔══██╗╚██╗ ██╔╝ ██╔══██╗██╔═══██╗██╔════╝
██████╔╝ ╚████╔╝ ██║ ██║██║ ██║███████╗
██╔═══╝ ╚██╔╝ ██║ ██║██║ ██║╚════██║
██║ ██║ ██████╔╝╚██████╔╝███████║
╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚══════╝
A DOS-style terminal simulator built entirely in Python. Implements a virtual filesystem with file and directory management, a built-in package manager, system information display, and support for creating and running Python scripts from within the environment.
Features
- Virtual filesystem with persistent state across sessions
- Create, edit, view, copy, move, and rename text and executable files
- Directory navigation and management
- Run Python scripts from within the virtual filesystem
- Live clock display in the terminal
- Battery status and file 'encryption inside simulator
- Built-in pip package manager (
install/uninstall) - Command history (last 10 commands) saved and restored between sessions
To be added:
- Web browsing features( with a network connectivity interface)---------------
- |lock screen/security| ------------------------------------------------------Done
- manipulation/veiwing of actual device settings (storage, CPU/GPU usage, etc)
Installation
Prerequisites
- Python 3.7 or higher
- pip/pipx
Installing pipx (recommended)
Windows:
python -m pip install --user pipx
python -m pipx ensurepath
Restart your terminal after running these.
macOS:
brew install pipx
Or without Homebrew:
python3 -m pip install --user pipx
python3 -m pipx ensurepath
Linux (Ubuntu/Debian):
sudo apt update && sudo apt install pipx
Linux (other distros):
python3 -m pip install --user pipx
python3 -m pipx ensurepath
Installing PyDOS
Using pipx (recommended):
pipx install Py-DOS-B1
Using pip:
pip install Py-DOS-B1
Running locally:
git clone https://github.com/basanta-bhandari/PY_DOS
cd PY_DOS
pip install -r requirements.txt
python main.py
On some systems a virtual environment is required first:
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python main.py
Running PyDOS
boot
Commands
Directory,file & system commands can be viewed through the 'help' command.
Package Manager
install <package>-------->Installs a pip package
uninstall <package>------>Uninstalls a pip package
Editor
Text and executable files open in nvim on macOS/Linux and Notepad on Windows. When using nvim:
i-> enter insert modeEsc-> exit insert mode:wq-> save and exit:q!-> exit without saving
Troubleshooting
- Close and reopen your terminal
- Windows: ensure the Python Scripts directory is in your PATH
- macOS/Linux: ensure
~/.local/binis in your PATH - Verify installation:
python -m pip show Py-DOS-B1
Permission errors on Linux/macOS:
pip install --user Py-DOS-B1
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py_dos_b1-1.1.9.tar.gz.
File metadata
- Download URL: py_dos_b1-1.1.9.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b035fca289cfb87a2d7193225f2f085ba8cc0f9ae42005b7f170583fd707fc64
|
|
| MD5 |
263a3e10d11dd1b4c596b5bc9cdced03
|
|
| BLAKE2b-256 |
c9395428cf9dfd6fbe90313a41e4678b63b86a4d99915f9bf8d37fd6f8ffff8f
|
File details
Details for the file py_dos_b1-1.1.9-py3-none-any.whl.
File metadata
- Download URL: py_dos_b1-1.1.9-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b9672dc7313072c161dab141664a3b8021d9375f7d1ab7c298b155c12b973a7e
|
|
| MD5 |
ab372a291169e27d43df9b6c55d9a4f2
|
|
| BLAKE2b-256 |
0d0e08331096fff8b91b02b1bedc0a14bad3f66e945bd913cdc4ec3f00bc9a31
|