Remix.run Logo
Reviving old scanners with an in-browser Linux VM bridged to WebUSB over USB/IP(yes-we-scan.app)
43 points by gmac 3 days ago | 14 comments
ValdikSS 4 hours ago | parent | next [-]

It's a great concept, but you haven't open-sourced the previous code, as the license requires, and you're yet again apologizing in this project as well, without any code.

Pretty sure you have my code in both projects. I contribute first and foremost to make printers and scanners to work reliably, but also keeping in mind the idea that I could at least try to apply legal actions for companies which violate the license rules one day, as a CUPS/SANE/printer/scanner drivers contributor.

Printer companies generally don't like that: https://xcancel.com/ValdikSS/status/1745898408693371125#m

Cool project though! Hope you can publish the source one day so we can all benefit from it in the future!

ironhaven 30 minutes ago | parent | next [-]

If you just install CUPS in a virtual machine (emulated in wasm on the web) what patches do you need to share?

itsthecourier 2 hours ago | parent | prev [-]

hope we see that code soon

raffraffraff an hour ago | parent | prev | next [-]

I used a raspberry pi 3b+ and an ancient ipad to turn my Canon A3 scanner into a network scanner with an LCD interface (which also just points to the phpscan web page). I tuned to html / js / css to fit the ipad perfectly and only show options that worked with my specific scanner.

jdub 3 hours ago | parent | prev | next [-]

Hrm, yes-we-scan and printervention are built on SANE and CUPS respectively, which makes sense. But running them in a whole wasm-emulated Linux kernel and userland seems... like a lot.

jdub 3 hours ago | parent | next [-]

Oh, and:

> I must apologise that I haven’t so far open-sourced any part of this that I don’t have to.

With some blather about commercial opportunities. Which is a weird thing to say without linking to the bits that must be shared (under the terms of the various licenses).

jdub 3 hours ago | parent | prev [-]

Ah, it seems like the architecture was designed by a slop machine. OK.

userbinator 2 hours ago | parent [-]

RE'ing drivers and porting them is one of those things that AI turns out to be really useful for, and there have been a few of such projects posted here already. But of course the author has to drive it in that direction rather than let it just glue stuff together.

ironhaven 32 minutes ago | parent [-]

If they reverse engineered the drivers then why do they need a virtual cpu and a Linux kernel to run them. Is this reverse engineering or just installing software in a weird environment?

Speaking of not just gluing stuff together with usb/ip could one make a virtual WebUSB host kernel module that could be used by the Linux kernel USB stack? They most likely would not want to do that because then all of the code would be GPL and would have to be shared with the public.

toast0 27 minutes ago | parent [-]

I don't think a usb host driver is necessarily tainted into being GPL? But if it is, plenty of non-gpl oses that can run SANE.

Aloha 4 hours ago | parent | prev | next [-]

I could also just go buy VueScan, which is cross platform and great.

ocdtrekkie an hour ago | parent | prev | next [-]

I don't want this enough to subject myself to WebUSB, but I am particularly fond of a no-longer-supported flatbed scanner I own which powers entirely off the USB port. It was super handy if you wanted to scan to like a tablet in a car or something, as long as you had a USB-A port to work with.

DeathArrow 2 hours ago | parent | prev | next [-]

Can this be made into a generic support app for old devices, not just scanners?

brudgers a day ago | parent | prev [-]

The ShowHN a few days ago, https://yes-we-scan.app/