News for hackers. Stuff that matters.
Re:Copyparty, turn almost any device into a file server by aredox on Monday July 28, 2025 @11:11AM (#44711670)
I saw "Python" and was going to comment a completely stand-alone* executable would be simpler, and then I scrolled and holy moly, there are a lot of features there! It would be quite some work to redo it in another lang.

*It already has no deps

Great job there. A nice tool you've made.

Edit: already adressed: https://github.com/9001/copyparty?tab=readme-ov-file#copypar...

Re:Copyparty, turn almost any device into a file server by 9029 on Monday July 28, 2025 @12:18PM (#44712307)
I wonder if cosmopolitan libc[0] could be leveraged to create an actually portable executable™ without a rewrite, looks like someone has figured out compiling python 3.11.4 with it[1]

[0] https://github.com/jart/cosmopolitan

[1] https://ahgamut.github.io/2021/07/13/ape-python/

Re:Copyparty, turn almost any device into a file server by leobuskin on Monday July 28, 2025 @01:21PM (#44713055)
I have a small/insane project of mine, I wrote a compiler for Python (strict and static subset only) to WebAssembly (bc-to-bc approach, 1:1 CPython compat due to walking internals), than I do wasm2c to sandbox it + pledge and compiling with cosmopolitan into a miniature standalone thing (fast as hell). Just because you have zero dependencies and it's a pure Python and properly typed, lemme try next weekend as PoC. No promises, but this message clicked in my heart
Re:Copyparty, turn almost any device into a file server by noman-land on Monday July 28, 2025 @03:59PM (#44714892)
<subscribe>
Re:Copyparty, turn almost any device into a file server by sull on Friday August 01, 2025 @01:00AM (#44753151)
on it
Re:Copyparty, turn almost any device into a file server by collinmanderson on Wednesday July 30, 2025 @03:42PM (#44738673)
> It already has no deps

Yes when I heard it was python I immediately checked the dependencies expecting a ginormous list and found basically nothing. Incredibly impressive, just a few "stolen" libs here: https://github.com/9001/copyparty/tree/hovudstraum/copyparty...

Worth scrolling through util.py to see lots of hand-implemented code: MultipartParser, read_header(), read_socket_chunked(), html_escape(), atomic_move(), killtree ("still racy but i tried"), termsize(), etc

https://github.com/9001/copyparty/blob/hovudstraum/copyparty...

6k loc for http server/client handling transferring files, rss feed, etc. See `def run(self)` for main request parsing.

https://github.com/9001/copyparty/blob/hovudstraum/copyparty...