Cups Printing System Open-Source Development Has Seemingly Dried Up
phoronix.com
phoronix.com
While printing is overrated, of course the library printer needs a driver, too. And preferably open source in true Stallman spirit (I'm not a big Stallman fan, but wasn't it so that the whole Free Software movement started because of a closed source printer driver?). But as a domain of little general importance, I am not surprised about the lack of a thriving community.
I use a pen because my Lenovo Flex 14 came with one but I imagine you could use a mouse pointer as well.
What that means is you cannot scan a signature and reproduce it, because the machine won't know where to start and where to lift the pen. We used something like documented here: https://wiki.evilmadscientist.com/Capturing_Handwriting#Capt...
This produces SVGs which have those individual strokes that the machine can reproduce.
I wonder if you could recreate signatures by examining the depth of the ink where the person lifts their pen, since that typically has the largest deposit of ink at that point, particularly with a fountain pen.
Hint: The entry level is at USD475. ;-)
These are based on the EBB board which uses a custom command set rather than the more common GCode command set which is the basis for most CNC machines.
If you're interested in CNC I'd recommend going with something that is based on GCode as it's much more transferable. GCode is used in everything from $100 PCB engravers up to multi-million dollar HAAS milling machines.
The $150 laser engravers from Eleksmaker for example have an unused servo pinout on their control boards specifically for adding an accessory like an actuator for a pen. It would be trivially simple to swap out the laser module, which is held in by thumb screws, and replace it with a pen.
not sure about the rest of the EU, in Poland there's a thing called Trusted Profile ("Profil Zaufany") where your bank serves as an "identity provider", i.e. you basically use your online bank account to verify your identity. it's kinda weird! but after that you can use your TP to sign and submit most (?) government forms/docs so it's pretty nice
A clerk told me they tell you to print/sign/scan because most people is not familiar or has that feature.
If it doesn't work, here's an app idea: an app to make a document look like it was printed and then scanned.
FalsiScan – Make it look like a PDF has been hand signed and scanned
Now I just paste that over the appropriate place on electronic documents and email it back.
I have a 600dpi png file with black foreground and transparent background.
Xournal drops it anywhere right over the existing pdf image, resized and positioned at will, and the transparent parts are transparent.
I was about to go in to something I couldn't blow off, and I couldn't blow off returning the mail as soon as possible either.
But I had a Note 4 phone and a working cell connection and managed to get it all done in a few minutes right there in my drivers seat.
I think I didn't even end up using the Note4's stylus but writing the signature on paper and taking a pic.
It was a while ago so I don't remeber exactly what I did or what apps I used. I probably tried a few different things on the spot before I found something that worked. Maybe the official adobe android app had signature support like the desktop app does now, or maybe I had to do it more manually with some other combination of apps, but I know that I went from receiving an email with a pdf attachment to returning that email with my own new pdf attachment all in about 15 minutes with nothing but my phone.
I kind of miss reading source code written by others on dot-matrix long sheets, you can reason around existing code in a different way than navigating through a text editor or IDE. Still not indispensable, though.
Everything I would learn was because it was in the source of some other program,and finding something I never seen before was a thrill.
Fun times!
I have done it once in the last 15 years or so, only 2 years ago. Imagine the faces in the office when I worked with that source code listing in front of me :)
This was the very reason I looked out for a modern dot-matrix printer, last year, only to find, that they have gotten pretty expensive (at least when compared to the InkJets and Lasers and in color, you also want more than 80 columns, etc.).
Also, what I did not find was a printer utility, that would print as many pages as still readable onto the paper, with a special emphasis on source code (hilite, etc.)
I did not purchase, however, since it is not so often, that I have to go through somebody else's full source-code.
Granted, I guess this is a preference of people who cut their teeth in another era of 80x25 displays before modern editors so to each their own.
This! It's like "wading" through the code, being able to jump forth and back and setting remarks.
I sat there most of a morning with a rubber, a mechanical pencil and a highlighter and worked my way through the code.
It felt very good to have made sense of the whole thing to a reasonable level of detail.
I highlighted the key tokens, variables and function names and took notes on the side of the pages (sometimes in the back too).
It felt very very good.
Some of my colleagues where true masters of shellscript, some scripts were remarkable for what they achieved, along with both error checking and error recovery. I've learnt a lot that morning just by looking up commands and syntax I didn't know at the time.
I hate it. If I need to send something to my insurance company, I have to print it out, and go to the UPS Store (and faxing is not cheap).
Otherwise, I hardly ever use my printer.
In any case, it’s infrequent enough, that it isn’t an issue.
It was just a single T1 line in a data center with a linux box with a Dialogic T1 card installed, running HylaFax+.
This got us 24 high speed fax lines on an internet connected server, and all the application servers sent jobs to it via the regular hylafax+ client (which is like a slightly customized ftp)
The users didn't use the fax lines directly to send arbitrary files or prints from their desktops, they just used our software which had the option to fax things it generated. For some years there were several thousand end users and back end automated processes generating tons of faxes 24/7 and it hardly ever scratched the surface of that T1, because it often sent the faxes faster than the traditional 9600. Many times the receiving machine could receive at 14.4, and sometimes even at 19.2 or 33.6, and the server queing up the jobs and using all 24 lines could chew through a lot fast, so even when there was a lot of jobs, they didn't pole up much.
That wasn't a generic service but an integrated one, but it's only a small step from there to having a generic email-to-fax gateway/service, or a web front end, or even a virtual printer driver that faxes instead.
I used to use a generic service like that for a while also. Not one I made, someone else's service. Unity Fax, later renamed to fax.com. It worked like I just said, you could send and receive by email, or through their web site. They gave you your own phone number that anyone sending a fax to that number was sent to your email (or your inbox on the web site).
There are many such services just like that.
But, yes, Japan is behind the times many ways. It's apparently on the government agenda to modernize. Social distancing has made it clear that requiring personal stamps to stamp papers has to be replaced by something else.
In any case I uninstall CUPS when I install a new installation of linux because, at least in the past, I'd see tons of files updated all the time every update all related to cups, something I wasn't using at all.
Yep. Even if you need to own a printer, lots of modern printers for office or home also offer those options. For 99% of the cases it's just as good as printing from the computer.
This is how it should be, IMO. CUPS is ok, but I would rather never have to install any software related to HP, Epson or Canon on my machine, let alone a driver.
I don't. CUPS does not harm (it's lightweight and quiet), and I don't want to have to install it or configure it if I ever need to use a printer. Drivers should be installed automatically too, so I don't have to think about it. I install whatever mainstream distro, connect to whatever printer there is at the place I am with my laptop and it should just work. People have other things to do than (finding out how to) configure a printer and install packages for that.
Distros cannot assume people will know in advance what printer they will need to use with a laptop. For a desktop computer, it's slightly different, but still, common things just need to work out of the box, life is too short for fiddling for most people (I like fiddling though, but only when I choose to do it).
On less mainstream / more KISS distros, it would be okay (better) not to install CUPS by default though.
So you walk 1 minute to the convenience store, spend a minute fiddling with the plug, another few trying to go through the menu. Finally get your print, and walk a minute back. Say it takes 10 minutes total.
Meanwhile I just press print and in less than 10s my printout is on my desk.
I can see why some people don’t need a printer, but I need one often enough that walking to the conbini and doing that dance is a major PITA.
Personally nearest convenience store is not near so I have an inkjet printer.
The laserjet I’ve owned for 4ish years now has yet to infuriate me.
On the other hand, I have a cheap laser printer and it just works. I don't print a lot. I've gotten out of the habit of printing and filing most things and just keep a PDF. But there's still a bunch of random stuff: recipes, trail maps, various things I do need to send as physical copies, etc. I don't need to print it all and could take 30 minutes to print the things I do need at Staples or wherever, but I have a home office and it's a lot easier to just print out a few pages every now and then.
Personally I have great experiences with Brother on Linux. Brother has well-maintained Linux drivers, recommended.
Edit: I'm sure an iPad pro might be good size and resolution wise but I couldn't justify the cost just for sheet music. Plus the multi page issue.
Yes, most of us use GPS watches and have detailed maps on our phones too, but tech can & will fail and when it does while you are a little off course you'll be glad you have the paper map (and, of course, the ability to read it).
There is no need for everyone to have one though: I'm happy to print copies of my maps for others, I know a few people who don't have a printer of their own (they tend to use one at work if needed, or like your suggestion a local library).
I also like printing some things to read and scribble notes on away from the screen. e-ink implementations of this sort of thing are either expensive, so I've not tried them, or smaller than I'd like, or don't work well (big, inexpensive, works well, pick at most two).
Plus you've eliminated battery anxiety when the last thing you need is more things to be anxious about.
I might try Rite in the Rain next time I need to restock (https://www.amazon.co.uk/Rite-Rain-Unisex-Waterproof-Copier/...) as it looks about 50% the price-per-sheet and is thinner (75gsm vs 95gsm) which may be better for the maps-folded -into-pocket use case. I am amused/confused that one of the keywords in the URL is "unisex".
Though at only a few sheets per run and most organised runs being cancelled right now, I won't be needing to restock for a while...
What makes it interesting is that there is a 100% free tier that offers 15 pages per month: perfect for infrequent use.
We do a lot of printing in the home right now with virtual schooling for my youngers. Watching them try to complete math assignments (this is early elementary, mind you) on a tablet interface is a frustrating experience, and in my opinion hinders their ability to actually learn the relevant skills. Printing the assignments out on paper and having them use a pencil is both faster and gets them into a learning mode better.
I don't remember when I needed to print anything for a bank or the tax office. Certainly not the last 10 years. That probably highly depends on the country. And I did not have any big transactions like buying a house during the last 10 years.
I don't even own crypto currency. Amongst other reasons I don't want to worry in my private life what can go wrong with shitty IT...
The question really is, should you trust presumably a lot of closed source software while printing on internet-connected systems at home? Or even unmaintained open source software. Or open source software that you have not studied. Yeah, I can see some risks, but overall my local library is not known for their cybercriminality skills. So as long as I make sure that I delete my sensitive files ASAP after printing I would not be overly worried.
If I print at work, I at least definitely know that there are several people on the same local network / with admin rights that would have skills to do evil. So even that could be considered risky. But still I do print stuff there (rarely, but it happens) that I would not be comfortable to share.
But the city main library has some smart "document center" machine. Amongst other it can "print to pdf" for the paperless age. In other words scan. And send the results to an email address you enter on the touchscreen. Here I would be pretty worried what insecure operating system and software that machine is running. I wouldn't be suprised to read a headline on hackernews that the last 1000 pages printed/scanned on such type of machine are all publicly accessible on the internet...
Using pen on paper is much more natural, tactile and much more efficient in terms of concentration and uninterrupted work for me.
YMMV, of course.
Though I did order one.
While I love to read and write on paper, I don't buy any paper books anymore.
On the other hand, the second version costs $500, a luxury purchase for many people.
However, e-ink lacks speed and color. The papers I read use a lot of color in diagrams and waiting for e-ink screen to refresh, reduce its color palette to accelerate and re-refresh to return its previous mode is both distracting and flow breaking for me.
Also, I use a lot of colors for different things on paper. Different highlighters for different stuff (yellow for "further research", blue to "remember this part"), etc.
iPad with Good reader is almost as good as my workflow but this thing is heavy, backlit screens are eye-straining...
Since PDFs are not made for screens it's also distracting to zoom and scroll too.
So we need another format (maybe ePub) for academic papers to read them effectively on digital devices.
But my small-ish company owns several, and in my country it is basically essential...
A major reason to have a printer here, is that if you do ANY, and I mean ANY business, you need to file a electronic form with the government, and print a physical copy.
The reason for this, is that we have a transportation tax, and if the road police stops you, you must have the printed document on you to show to the cop the goods you are transporting had the tax paid.
Weirdly a lot of people DO NOT know that it is the road police that is the intended readers of the document, so the information that is relevant to them is often wrong (people file price, tax, etc... correctly, and then put random values in volume amount, weight, size, registration plate of vehicle, etc...) then they get surprised the police seizes their stuff.
And many just don't print it, and assume sending to the digital document is enough. (it is not, a cop in the middle of nowhere might not have internet to check on the official servers the document, and thus he will want the paper copy that he can read with a flashlight)
Corollary to Moyer's Law - The timestamps will still be wrong.
Musicians are not always particularly tech savvy, and even when they are, they may have little patience for futzing with technology. They expect things to just work, and to not detract from playing and working on the music.
Very well organized musicians and larger ensembles with a dedicated librarian have switched to the tablets, but when you're a bandleader trying to herd 19 cats who were all hired at the last minute, you don't want to add an hour to the time for performing or rehearsing to get them all up and running with disparate platforms, file formats, power cables, and so forth. You hand out folders full of "charts" and off you go.
It's too bad there doesn't seem to be much industry support for a common, open driver system. PS was a good try but seems Adobe licenses killed that one. Similar with PCL and HP. There was a glimmer of hope with XPS years ago but that quickly fizzled.
Kind of like Microsoft's brand new "Universal Print" is a brand name applied to the Internet Printing Protocol, although it uses Active Directory for discovery.
Google, recently announced they were killing CloudPrint to support IPP instead.
On Linux you're way less lucky if you wanna print, god forbid the document is more complex than a text file.
Regardless of using PCL6 or the Lexmark driver from Lexmark, the printer continues to be unable to print PDFs directly from the browser. Other PDF viewers print normally. CUPS logs no error but prints it on a piece of paper instead.
When attempting to view the print queue of my printer, it crashes if a document is being sent but has not started pritning yet. It is fine if the document is queued but not printing.
Sometimes, CUPS doesn't print the document immediately but waits 30 minutes. Other documents sent to the queue in the mean time print immediately. Sometimes the program that attempts to print causes a hard lockup in CUPS, so I have to restart the CUPS service.
"Connect printer" isn't the easiest in CUPS if it decides that autodiscovery doesn't do it, which it often does.
My favorite one is how a guy in my office one day was not able to print. Well he could print, but only from applications that used the really, really old Windows printing API. So basically you could print from Notepad, and that was it.
We tried everything to get printing to work, but could not figure out the problem. This led to a wipe and reload of the OS. After I got it reloaded, I tested out printing, and it worked great. Success!
Next day, he comes in and is again not able to print. Turns out that the problem was due to the drivers from his personal HP printer at home. The printer was auto-detected, and Windows automatically downloaded the new driver for that printer. That somehow fucked up the entire printing subsystem again so no printers would work at all.
Then you cannot remove the "to be printed" documents and have to kill the spool service...thats a problem since Win2K..shame on you Microsoft PUUUUUUU!
Ffs Microsoft get your shit together, windows may be dead to you but there a over a million running systems that you bought your way into. So sit up straight in your chair and get through that decade long backlog...
Like Booo but more firmly ;)
Isn't Internet Printing Protocol pretty much that, and supported by most printers?
And the very best part: on Fedora 32 or better, scanning Just Works! This is the result of a project to implement both Microsoft's and Apple's scanning protocols in SANE, and somehow the result seems substantially better than Apple or Microsoft's implementations.
Sounds like the CUPS developer and Apple dodged a bullet.
Has CUPS reached the TeX nirvana?
No
It's configured either via an ancient and partially broken printer applet (and with broken I mean I have a reproducible crash when trying to view my printer queue before the current print has begun printing on that printer, reported somewhere in 2015 but never fixed) or via the web interface, which is broken in different, exciting ways. Sometimes printing breaks, my browser for example cannot print, it always just prints an error message (which is not logged, it's only printed, there is no way to tell something went wrong by looking at CUPS), so all prints have to be done by another utility.
The code for CUPS isn't finished, it's a mess. The printing experience on Linux could best be described as "piss poor" if you're being nice about it. The best thing about CUPS one could say is "most of the time it'll have you printer do something that resembles printing your document".
Isn't CUPS an infrastructure service that exposes a bunch of APIs for downstream consumers, such as desktop environments, to build upon?
It also exposes it's admin interface on localhost with per-distro varying defaults on it's root password.
dpkg -l "*cups*"
seems to agree, given the number of installed packages related to CUPS.I never had to deal with CUPS directly in all these years. I always used the GUI in Settings to find and setup printers and I never had any problem. Which distro are you using?
It lists a few common options, such as JetDirect, PCL, TCP/IP, etc. Whatever. Doesn't really matter, it's just poor UX. Most end users have no idea what any of this means and don't know what to pick. You'd possibly find out in the printer manual, though mine didn't specify what protocols it understood very clearly, it was written in Appendix B or something and not in the index at the back.
In most cases, you now enter the hostname or IP of the printer to add. While sometimes necessary on Windows, autodiscover on linux is still a shitshow and doesn't work except for HP printers. (Laser HP in Color is expensive).
On Windows, the very same printer that took me 30 minutes to setup after I wrangled it through the initial setup dialogue, took all of 20 seconds to setup; "Settings" -> "Devices" -> "Add Device" -> "Lexmark Printer". Done. It printed perfectly fine.
On the other hand, my printer to this day cannot print directly from firefox through CUPS. Only from other PDF viewers.
edit: from what I can see in a sibling comment, the add printer dialog in gnome is the same it has always been atleast up to Ubuntu 18.04, unless they made radical changes to Ubuntu 20.04 to the add printer dialog, which I don't think is the case since I haven't heard about any larger printer-related changes in 20.04
And this is a more in depth video for Ubuntu 18 with a more polished interface but not very different https://www.youtube.com/watch?v=vGz1RUqCzkI
They don't look complicated to me.
Then there is the hard way. Check at 4:00 in https://www.youtube.com/watch?v=En2DJAMpwmY
I eventually had to USB drive it to a windows computer to print.
Linux printing is a crapshoot
If you're old enough to remember what printing on Linux was like in the 1990s and early 2000s, you'll recognize what a towering accomplishment the above is.
Hundreds of pieces of largely undocumented hardware with little to no manufacturer support more-or-less work most of the time!
Really, the only problem I've had with printing from Linux had to do with Xerox printers that required downloading some magic file from the Internet and then required me to install SAMBA to login to a Windows domain and then manually pick the right trays and other config for the specific model before I could print. Otherwise, it would register the printer but the printer would refuse the job with an error.
Normal network printers were just a matter of clicking "add" and selecting the printer. The entire process took way less time than the Windows printer drive install took.
Making printing work that way was a choice by the printer manufacturer, it could've been a lot easier. If this is what CUPS would need to do for me for every printer out there then I'm glad for the authors' sanity sake that they don't.
Only if cups decides to bless autodiscovery today, which often doesn't work properly for a lot of people. If you need to manually configure the protocol and IP/Host of a printer, you already lost the average end user.
Having to install SAMBA is likely to be far outside their domain.
The dialog to add printers hasn't changed much since a few more famous blog rants in 2008 or so, up to Ubuntu 18.04. It's still user-hostile unless you have some prior knowledge of linux and printer networking.
OTOH, my Win10 work laptop found it on my wifi, connected, and was good to go in about 5 minutes. Didn't have to download, extract, and run some random vendor tarball, just said 'find" and it found.
This however is not to be taken as an endorsement of Windows's printing prowess. Without going through the hassle of getting the specific drivers from the manufacturer Windows 10 will give you the impression that everything is stellar.. finds the printer, makes it available to print to.. and even prints!... with colors inverted. A text document with black font printed a black document with white text... just light my toner on fire why don't you?
I use Google cloud print instead. It goes out to the internet, then comes back, to be right next to me because cups is that broken.
The bugs that would fix it, have been fixed, sitting in forks, for years, unmerged.
I've literally given up. Thanks Apple
Then I had to find, download, compile an implement a third party driver (that doesn't have my exact model).
It works and it's mostly on Brother for not having easy ARM/Linux drivers but still a pain. I wish I'd looked before picking up this specific model printer as I could have gone fora used Dell laser too.
> PAPPL requires a POSIX-compliant host operating system such as Linux®, macOS®, QNX®, or VxWorks®. It also requires the following support libraries: > CUPS 2.2 or later for the CUPS libraries (libcups2/libcupsimage2)
>PAPPL fully implements the IPP Everywhere™ specification and passes the IPP Everywhere™ Printer Self-Certification Manual tests.
Like seriously, what company provides actually decent printers? None of them do, because they’re beholden to old paranoid execs who think that their shitty printer drivers or whatever somehow represents a competitive “asset”.
It’s our economic system’s biggest flaw, that old clueless people can fuck up things beyond recognition (mostly for their younger, more informed and more educated colleagues) just because they have “seniority”, while being completely disconnected and ignorant of any relevant technologies past the fucking 1960s.
(Then, of course, they vote in fascists, and complain about young people not voting, as if that excuses the fascists they voted into office.. disgusting..)
> PAPPL is a simple C-based framework/library for developing CUPS Printer Applications, which are the recommended replacement for printer drivers
I remember once buying a mouse and having to install a driver for it. Then one day, the mouse manufacturers all agreed to use a single interface. Now I can plug in any mouse and it just works without even having to download a driver.
Why can't I buy a printer, plug it in and the OS sees a device with a standard print-a-page interface?
Since then printers still jam all the time, have ridiculously expensive ink, don't work worth a damn (or at all) with my devices (lots of Linux and Android), and all sorts of other issues, and lately they seem to have some sort of DRM that when I took our printer offline for a few months, it never came back. The internals seem completely seized up. Some Googling has shown that many suspect it bricked itself because it couldn't reach the backend service it reports to. Speculation of course, but still absolutely enraging.
I haven't printed more than a handful of pages in 10 years but my wife prints all the time. Part of me wishes she would either stop printing (not likely as she loves paper) or print enough to justify spending more money to escape the consumer printer space. In the mean time I wish I'd kept that HP from the 90s. Donating that and thinking things would only get better with time was a huge mistake. D-:
It was revolutionary almost as much as the Macintosh (and had more computing power!).
I remember my uncle setting up a new business at the time and getting a bank loan for a Mac and the printer. It cost about the same as a new car and was worth the money.
https://developers.hp.com/hp-linux-imaging-and-printing
Everything works perfectly.
There’s a few more nitpicks around paper selection, dual side printing etc.
Well, as long as you don't mind changing your init system:
So clearly some developers are willing to contribute and improve it.
Are you willing to drive that project and work on patches? Because wishing upon "maybe a community fork" is just wishing that someone else should do what you expect to be done.
Would it be too far fetched if one of them starts maintaining/sheltering a fork - at least to fix bugs? Maybe even with the help of the other interested parties (in an ideal world)?
I cannot imagine IBM wants to sit on a Fedora Workstation release with a buggy printing service.
Maybe they don't care about it anymore. Or maybe they do but don't have the time/motivation to work on it. Some people have lives. Do you want to see changes to this project? Then fork it.
Still nothing beats printing a document, scribble on it and giving it to someone or putting it a stash on your desk - not even having a device being capable of doing those things digitally without hick-ups.
The two most important issues are:
- This device (possibly) stacks all of these papers you would have printed out - so they are lost in a sheer endless space of all these various documents and even worse versions thereof. And then if you start sending these versions to others, e.g. expecting feedback, all hell breaks loose.
- There is still something about sitting with a stack of papers in your hand/on your desk - no digital device involved. Most people can't focus on a digital version the same way they do on a physical paper. I'm a huge fan of the ReMarkable (2), but simply put every (even awesome) attempt so far has failed.
Then add to that all the hick-ups that are simply never to leave. Software incompatibilities, sharing tools not working with all devices, walled-gardens, ... the problems are still endless and just get worse with every tool you add.
How are you going to print exams for students? Forms for residents to fill out? We are not going to demand of every citizen to fill out everything online at all times, are we? That would leave the most vulnerable even more stranded than they are now.
Plus, I've used a wacom tablet and, while I was impressed that they managed to somewhat mimic the feeling of writing with a pen, it isn't the feeling of writing with a great pen. And nowhere near the feeling of a nice mechanical pencil. There's room for improvement.
But let me tell you, it is terrible not being able to print from your system dialogue.
Then there is IPP and LPD/LPR. But those are either limited and sometimes the results not ideal (LPD), or again rely on a driver on your system to access the features of your printer (IPP) e.g. double sided printing, toner levels, print quality, etc.
There is a reason why print services are implemented on the Desktop OS and not on the printer (well I'm sure many printers do have a shitty implementation): Because there's few Desktop OSes but so many printers. You want to split the work and implement each thing where it is most efficient.
Things a print spooler should do:
- Queue print jobs, be able to watch progress, cancel them.
- Manage permissions, maybe implement quota or similar.
- Offer desktop integration in print dialogues: N-up, shrink, duplex, and other common postprocessing features. With a print dialogue, a lot of manual labor of creating temporary files and editing them with a particular application is saved.
In the lid of this imaginary printing solution is the printing gubbins with the ink needed for reasonable coverage on the included paper, plus the circuitry needed for wifi/bluetooth/Chrome web printing.
When the box is done it should email you to arrange for it to be replaced, with recycling part of the deal. Its replacement also arrives just in the cardboard box such as what you get with 2500 sheets of paper, so no huge polystyrene packing and no plastic in the printer housing, that being cardboard.
In this design double sided is not going to happen or any other paper sizes apart from A4. It no longer competes in aspects of versatility, nobody cares about its printer driver, no ink cartridges have to be bought, the internals are only good for 2500 sheets and it just works.