cosmopolitan
blink
cosmopolitan | blink | |
---|---|---|
201 | 28 | |
15,370 | 6,728 | |
- | - | |
9.8 | 7.9 | |
about 20 hours ago | 4 months ago | |
C | C | |
ISC License | ISC License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cosmopolitan
-
Python Is Portable
The reality is a bit different, the work on Python 3.6 was checked into the Cosmopolitan repo and I have been able to use it for production workloads that are in pure python. [0]
As Cosmopolitan Libc has evolved, it has been possible to compile more software without modifications, and that includes latest Python through a project called superconfigure[1].
Last person who tried to reproduce it from scratch did it last week (granted it too them a few days of solid work) but in the end they ended with a portable binary with Python 3.11.9, brotli, ssl and asyncio for their work related project.[2]
[0] https://github.com/jart/cosmopolitan/tree/master/third_party...
-
Ask HN: What Underrated Open Source Project Deserves More Recognition?
Cosmopolitan https://github.com/jart/cosmopolitan and https://justine.lol/cosmopolitan/index.html
Some genius realized that you can actually embed valid win32 programs inside valid posix shell scripts, and found a way to make a C cross-platform solution out of it, meaning that you can write C programs that compile to a single executable that will run on (quoting the site) Linux + Mac + Windows + FreeBSD + OpenBSD + NetBSD + BIOS
It all started from this post.
- Cosmopolitan – build-once run-anywhere C library
-
Show HN: Usr/bin/env Docker run
For this .args file, put one argument per line. This will run on start. You can use `/zip/mydepencency.anything` to read from files, but if you have an executable dependency you'll need to extract it first.
You can do this with any software you can compile with comsocc, by adding a call to LoadZipArgs[1] in the main function.
It'seasy to get started, your ideas will branch out as soon as you start playing with it.
[1]: https://github.com/jart/cosmopolitan/blob/master/tool/args/a...
-
Libwebsockets
FWIW there is ongoing work with good progress to add websocket support to redbean (https://github.com/jart/cosmopolitan/pull/967)
- Release Cosmopolitan v3.2
- Cosmopolitan v3.2
-
Ask HN: ANSI escape sequences reference docs?
Check out this comment by jart (cosmpolitan author) here: https://github.com/jart/cosmopolitan/issues/766#issuecomment...
it might help but not sure how comprehensive it is! would it be a bad idea for you to check out the source code of other popular emulators (maybe iTerm 2^0) ?
0: https://github.com/search?q=repo%3Agnachman%2FiTerm2%20ansi&...
-
Actually Portable Vim (With a Cute Vimrc)
The binary was compiled with Cosmopolitan Libc [0], and therefore the binary will execute natively on Linux, Mac, Windows, FreeBSD, OpenBSD, NetBSD, and bare metal (BIOS boot).
I would call that portable.
[0] https://github.com/jart/cosmopolitan
-
Show HN: PyApp – runtime installer for Python applications
will go on my "to try" list where i already have cosmopolitan [2]. my last setup (windows) was shiv + wine + nsis (used that as pyinstaller had some issues)[2]
[1] https://github.com/jart/cosmopolitan/issues/141#issuecomment...
blink
- Python Is Portable
- Porting a Micro Linux VM (Blink) to WebAssembly
-
Patching GCC to Build Portable Executables
> Consider offering APE for x64 but then still producing ARM binaries the old fashioned way.
The recent version of cosmopolitan generates ARM binaries for Linux and MacOS (https://github.com/jart/cosmopolitan#arm; mode aarch64). There is also blink that provides the x86-64 emulation layer for (APE and other) binaries on a variety of platforms (https://github.com/jart/blink).
-
Blink 1.0
Would love a second pair of eyes on the powerpc64le JIT, since it partially works but hangs on some tests. https://github.com/jart/blink/issues/17
-
Searchable Linux Syscall Table for x86 and x86_64
I've never used it, but https://github.com/jart/blink is pretty much that. It's tiny and:
> We regularly test that Blink is able run x86-64-linux binaries on the following platforms:
> Linux (x86, ARM, RISC-V, MIPS, PowerPC, s390x)
> macOS (x86, ARM)
> FreeBSD
> OpenBSD
> Cygwin
-
Blink virtual machine now supports running GUI programs
I wonder if blink could be used as a lightweight sandbox. Looking at PR46[0], it seems sandboxing is not one of the current features, but it would be cool to have a way to run arbitrary code (e.g: Python) in a sandboxed environment. Even cooler if you could limit the amount of memory/CPU used.
[0]: https://github.com/jart/blink/pull/46#pullrequestreview-1264...
-
jart/blink: tiniest x86-64-linux emulator
https://github.com/jart/blink/issues/8 Porting to webassembly
What are some alternatives?
libc - libc targeted for embedded systems usage. Reduced set of functionality (due to embedded nature). Chosen for portability and quick bringup.
chromium - The official GitHub mirror of the Chromium source
src - Read-only git conversion of OpenBSD's official CVS src repository. Pull requests not accepted - send diffs to the tech@ mailing list.
blink - Blink Mobile Shell for iOS (Mosh based)
SDL - Simple Directmedia Layer
cosmonim - A Nim template to compile your code with the Cosmopolitan libc
llvm-project - The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
strace - strace is a diagnostic, debugging and instructional userspace utility for Linux
luastatic - Build a standalone executable from a Lua program.
xserver-SIXEL - A X server implementation for SIXEL-featured terminals, based on @pelya's Xsdl kdrive server(https://github.com/pelya/xserver-xsdl)
v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io
superconfigure - wrap autotools configure scripts to build with Cosmopolitan Libc