-
-
Notifications
You must be signed in to change notification settings - Fork 630
Home
ProducerMatt edited this page Sep 6, 2023
·
43 revisions
Welcome to the cosmopolitan wiki!
Beginners should check out the FAQ.
Path | Description |
---|---|
o//examples/nesemu1.com | A fork of Joel Yliluoma's NES emulator that runs in the command-line |
o//examples/hangman.com | Hangman game without visuals |
o//tool/viz/life.com | apelife: Conway's Game of Life, with Windows GUI support |
o//tool/viz/deathstar.com | Death Star with dynamic, animated lighting |
Path | Description |
---|---|
o//third_party/python/python.com | Python programming language |
o//third_party/quickjs/qjs.com | QuickJS JavaScript interpreter |
o//third_party/make/make.com | Landlock Make: GNU Make with Makefile-determined process sandboxing |
o//third_party/lua/lua.com | Lua 5.4.3 with Cosmopolitan ZIP enhancements |
o//third_party/sqlite3/sqlite3.com | SQLite3 database management CLI |
o//third_party/awk/awk.com |
One true awk: Portable awk text processor |
o//third_party/sed/sed.com | NetBSD sed: Portable sed text processor |
o//third_party/tidy/tidy.com | HTACG Tidy: tidy and pretty-print XML/HTML/XHTML |
o//tool/plinko/plinko.com | plinko: aggressively over-optimized Lisp interpreter. May require changing security settings on your distro. |
Path | Description |
---|---|
o//third_party/chibicc/chibicc.com | rui314's small C compiler, built alongside a book on compiler development |
o//third_party/quickjs/qjsc.com | QuickJS JavaScript compiler |
o//third_party/python/pyobj.com | Python compiler/objectifier |
o//third_party/lua/luac.com | Lua compiler |
Path | Description |
---|---|
o//tool/build/pledge.com | User-friendly per-program capability sandboxing for Linux systems |
o//tool/build/unveil.com | User-friendly per-program filesystem sandboxing for Linux systems |
o//tool/build/mktemper.com | stronger mktemp for shell scripts |
o//tool/build/sha256sum.com | SHA256 hash given files. Faster than coreutils |
o//examples/getrandom.com | examine various sources of randomness (or not-so-randomness) |
Path | Description |
---|---|
o//tool/build/apelink.com | Create multi-architecture Actually Portable Executables from many ELF files |
o//tool/build/ar.com | Fast UNIX archive creator |
o//tool/build/assimilate.com | Converts Actually Portable Executables to the host's preferred executable format |
o//tool/build/compile.com | Compiler wrapper for the Cosmopolitan build process |
o//tool/build/mkdeps.com | Generate Makefiles with header dependencies for the Cosmopolitan build process |
o//tool/build/pecheck.com | Linter for PE format executables |
o//third_party/ctags/ctags.com | Programming language object index generator. Enables LSP-style features in your editor. vim, emacs |
o//tool/build/zipobj.com | Arbitrary file to ELF object file converter |
o//tool/build/zipcopy.com | Zip artifact copier for Actually Portable Executables |
o//tool/build/runit.com | Remote test runner |
o//tool/build/runitd.com | Remote test runner daemon |
o//tool/build/fixupobj.com | Fixes objects for use in Actually Portable Executables |
o//tool/build/package.com | Symbol reference verifier |
o//tool/build/march-native.com | Prints compiler flags for enabling CPU-specific optimizations based on host CPU |
o//tool/build/elf2pe.com | ELF executable to PE converter |
o//tool/build/freebsd2sysv.com | Changes ELF header from FreeBSD to SysV. |
o//tool/build/objbincopy.com | Faster objcopy -SO binary alternative for linking with custom executable headers. |
o//tool/build/rollup.com | Amalgamates Cosmopolitan header files. |
Path | Description |
---|---|
o//examples/script.com | OpenBSD script: record and playback terminal sessions |
o//examples/ttyinfo.com | examine what keypresses your terminal is passing to programs |
Path | Description |
---|---|
o//examples/kilo.com | Kilo: Tiny text editor in under 1000 source lines of code |
Path | Description |
---|---|
o//tool/build/cocmd.com | extremely small Bash command executor, good for linking into exec-heavy programs |
o//examples/cosh.com | shell powered by cocmd.com. Runs on Unix and Windows, includes Readline-style shortcuts |
o//examples/picol.com | picol: a tiny Tcl shell |
o//examples/unbourne.com | a Unix shell based off the Debian Almquist Shell (dash), does not support Windows yet |
Path | Description |
---|---|
o//tool/net/redbean.com | Redbean: webserver with Readline REPL, embedded Lua, SQLite, and ZIP storage |
o//tool/net/redbean-demo.com | Readbean prepackaged with demonstration files |
o//tool/net/redbean-static.com | Redbean without dynamic content features like REPL, Lua, SQLite, etc |
o//tool/net/redbean-unsecure.com | Redbean without TLS |
o//tool/net/redbean-original.com | Redbean without dynamic content features or TLS |
o//tool/curl/curl.com | A clone of the curl utility, used to fetch web documents |
o//examples/nc.com | A clone of the netcat connection utility |
o//examples/whois.com | A clone of the whois utility, used to get info about DNS names |
o//examples/wall.com | A clone of the UNIX wall utility, used to broadcast a message to all terminals |
o//third_party/finger/finger.com | BSD finger: get info about UNIX users |
o//tool/net/dig.com | A clone of the dig utility, used to query DNS servers |
Path | Description |
---|---|
o//net/turfwar/turfwar.com | turfwar: IPv4 Turf War game server |
o//net/turfwar/turfbean.com | Redbean prepackaged with turfwar reverse proxy script |
o//net/turfwar/blackholed.com | blackholed: allows unprivileged daemons on Linux and BSD to block IPs in the system firewall |
o//net/turfwar/blackhole.com | Command-line blackholed client |
Path | Description |
---|---|
o//third_party/ggml/llama.com | fork of llama.cpp: allows interacting with LLaMA-based large language models |
o//third_party/ggml/quantize.com | Quantize LLM models |
o//third_party/ggml/perplexity.com | Measure perplexity of LLM models |
o//third_party/radpajama/radpajama.com | fork of redpajama.cpp: llama.cpp with RedPajama LLM support |
o//third_party/radpajama/radpajama-chat.com | Chat interface for redpajama.cpp |
o//third_party/radpajama/radpajama-copy.com | Copy RedPajama LLM models |
o//third_party/radpajama/radpajama-quantize.com | Quantize RedPajama LLM models |
Path | Description |
---|---|
o//tool/viz/printimage.com | printimage: prints images to the terminal |
o//tool/viz/printvideo.com | printvideo: plays videos in the terminal |
o//tool/viz/derasterize.com | Convert images to Unicode ANSI art |
o//tool/viz/printansi.com | Print images to the terminal without Unicode |
o//examples/img.com | Quickly generate HTML img tags for a given image |
Except for tr
, all of the below tools are tiny versions of what you'd usually find in an UNIX system
and lack a lot of functionality that enhances interactive use - for example, chmod.com
only accepts octal modes
instead of friendlier syntax like a+x
.
While these tools are generally meant to be used by the build process, you are free to use them as a way to avoid inconsistencies
with shell scripting utilities across different operating systems.
Path | Description |
---|---|
o//third_party/tr/tr.com | NetBSD tr : change or delete characters from a text stream |
o//examples/seq.com | Print number sequences. |
o//tool/build/chmod.com | Change POSIX file mode bits. |
o//tool/build/touch.com | Update file modification timestamps or creates files. |
o//tool/build/mv.com | Move files. |
o//tool/build/cp.com | Copy files. |
o//tool/build/pwd.com | Get the current working directory. |
o//tool/build/rm.com | Delete files. |
o//tool/build/dd.com | Extract parts of files. |
o//tool/build/echo.com | Print text to standard output or stderr. |
o//tool/build/false.com | Return an exit code of 1. |
o//tool/build/summy.com | Sum integers provided one per line over standard input. |
o//tool/build/mkdir.com | Create directories. |
o//tool/build/printf.com | Output strings formatted with printf . |
o//examples/nanosleep.com | Sleeps for a specified amount of time. |
o//tool/decode/base64.com | Encodes or decodes Base64 data from standard input. |
Path | Description |
---|---|
o//tool/viz/memzoom.com | Interactive live process memory viewer |
o//tool/decode/ent.com | File entropy calculator |
o//tool/decode/elf.com | ELF metadata disassembler |
o//tool/decode/pe2.com | PE metadata disassembler |
o//tool/decode/macho.com | Apple Mach-O metadata disassembler |
o//tool/decode/ar.com | UNIX archive metadata disassembler |
o//tool/decode/zip.com | ZIP archive metadata disassembler |
o//tool/viz/bing.com | Displays binaries as Unicode glyphs from IBM code page 437 |
o//tool/viz/fold.com | Folds text to a specific number of characters per line |
o//tool/decode/x86opinfo.com | Decodes a single x86 instruction. |
o//tool/viz/unbing.com | Reverses bing.com conversion |
o//tool/viz/bd.com |
braille dump: Dumps files or standard input as a hexdump with Braille characters for 0x81 through 0xff
|
Path | Description |
---|---|
o//examples/printargs.com | Prints an overview of the environment. |
o//examples/stackexplorer.com | Prints the contents of the initial process stack. |
o//tool/viz/cpuid.com | Decodes CPUID data and prints CPU capabilities. x86 only. |
o//tool/viz/printpeb.com | Prints information from the Windows Process Environment Block. Windows only. |
o//tool/viz/virtualquery.com | Prints the Win32 virtual memory layout. Windows only. |
o//examples/rlimit.com | Prints and changes UNIX system limits. |
o//examples/rusage.com | Inspects runtime and memory use of a command. |
o//examples/getcpucount.com | Prints number of CPU cores available on the system. |
o//examples/loadavg.com | Prints system load average. |
o//examples/date.com | Prints current ISO 8601 timestamp. |
o//tool/viz/maxmind.com | Checks IP addresses in MaxMind database (MMDB) files. |
o//examples/stat.com | File metadata viewer. |
o//examples/statfs.com | Filesystem metadata viewer. |
o//examples/sysconf.com | Shows cosmopolitan sysconf values. |
o//examples/sysinfo.com | Shows system uptime, process count and memory information. |
o//examples/uname.com | Shows information about the operating system. |
Path | Description |
---|---|
o//examples/reboot.com | Performs system reboot. |
o//examples/shutdown.com | Shuts down the system. |
o//tool/build/dropcache.com | Clears file system cache. Linux only. |
Path | Description |
---|---|
o//third_party/zstd/zstd.com | Zstandard compression tool. |
o//tool/build/gzip.com | Gzip compression tool. |
o//third_party/zip/zip.com | ZIP archiving tool. |
o//third_party/unzip/unzip.com | ZIP archive extractor. |
o//third_party/zip/zipnote.com | Attaches comments to a ZIP archive. |
o//third_party/zip/zipcloak.com | Encrypts a ZIP archive. |
o//third_party/zip/zipsplit.com | Splits ZIP archives. |
o//third_party/bzip2/bzip2.com | Bzip2 compression tool. |
o//third_party/bzip2/bzip2recover.com | Bzip2 data recovery tool. |
o//third_party/lz4cli/lz4cli.com | LZ4 compression tool. |
o//third_party/smallz4/smallz4.com | Optimal LZ4 compression tool. |
o//third_party/smallz4/smallz4cat.com | Decompresses and reads LZ4 files. |
o//third_party/xxhash/xxhsum.com | Extremely fast non-cryptographic hash tool. |
o//examples/compress.com | Compresses data in zlib format. |
o//examples/decompress.com | Decompresses zlib format data. |
Path | Description |
---|---|
o//examples/tls.com | Demonstration of thread local storage. Does not write any output. |
o//examples/ucontext-sigfpe-recovery.com | Demonstration of changing CPU state on signal delivery. |
o//examples/vga.com | Demonstration of baremetal VGA console text rendering. |
o//examples/vga2.com | Demonstration of baremetal program crash reporting. |
o//examples/vqsort.com | Demonstration of very fast array sorting using vectorized quicksort. |
o//examples/walk.com | Demonstration of directory walking. |
o//examples/greenbean.com | Massively multi-threaded demonstration web server from scratch |
Path | Description |
---|---|
o//tool/lambda/lambda.com | Binary Lambda Calculus processor: user-friendly version |
o//tool/lambda/tromp.com | John Tromp's obfuscated Lambda calculus processor submitted to IOCCC 2012 |
o//tool/lambda/asc2bin.com | Converts ASCII binary to binary data. |
o//tool/lambda/blcdump.com | Dumps Binary Lambda Calculus as various notations. |
o//tool/lambda/bru2bin.com | Converts de Bruijn notation to ASCII binary |
o//tool/lambda/lam2bin.com | Converts lambda notation to ASCII binary |
Path | Description |
---|---|
o//examples/time.com | Measures command execution time. Equivalent of UNIX time command. |
o//third_party/python/Parser/asdl_c.com | Generates C code from an ASDL description. |
o//third_party/python/freeze.com | Packages Python code into C. |
o//third_party/python/hello.com | Prints hello world . |
o//third_party/python/pycomp.com | Compiles Python code. |
o//third_party/python/pystone.com | Pystone benchmark program. |
o//third_party/python/repl.com |
python.com with most of the builtin modules removed. |
o//third_party/quickjs/unicode_gen.com | Generates Unicode tables. |
o//tool/build/bigmul.com | Cryptographic multiplication kernel generator. |
o//tool/build/deltaify.com | Prints time difference between incoming input data chunks. |
o//tool/build/fastdiff.com | Scalable version of the diff tool. |
o//tool/build/helpop.com | Decodes geek operand notation from ref.x86asm.net. |
o//tool/build/lz4toasm.com | LZ4 content embedder. |
o//tool/build/symtab.com | ELF to symbol table file dump tool. |
o//tool/build/unbuffer.com | Quick and dirty incomplete rewrite of the classic unix unbuffer command. Executes sub-command inside a PTY and pipes its standard i/o. Useful for teasing no-delay i/o out of a program that would otherwise use gigantic buffers. |
o//tool/build/unbundle.com | Decompresses files in third_party/gcc and prepares them for use in the build. |
o//tool/decode/hex.com | Converts binary data to hex. |
o//tool/decode/unhex.com | Hex to binary converter. |
o//tool/decode/word.com | Displays bytes as a binary word. |
o//tool/net/wb.com | HTTP(S) benchmark tool |
o//tool/viz/ascii2utf8.com | Convert ASCII combining markings to Unicode. Meant to be used to transform manpages to Unicode. |
o//tool/viz/basicidea.com | Print an image to the terminal using the simplest implementation possible |
o//tool/viz/bin2asm.com | Dumps standard input as a GNU assembler .byte directive |
o//tool/viz/dumphexc.com | Dumps standard input as a string with hex literals |
o//tool/viz/fixconsole.com | Resets the Windows console |
o//tool/viz/fliphex.com | Returns the negative of a number as a signed 32-bit integer in hex |
o//tool/viz/fontspace.com | Visualizes how much of the Unicode character space is defined by a font |
o//tool/viz/generatetortureimage.com | Generates a 1920x1080 yellow/blue checkerboard pattern image |
o//tool/viz/getglyph.com | Print a list of all available Unicode codepoints in a TrueType font, or print a glyph from a font to the terminal. |
o//tool/viz/od16.com | Print binary as signed 16-bit decimal numbers |
o//tool/viz/printdos2errno.com | |
o//tool/viz/tailf.com | Reads a file as it grows, but with a lower poll rate than tail -f . |