Installing EPSON Stylus SX235W on Linux Ubuntu/Mint

Since I’ve had some difficulties finding on the internet support for this printer model, I decided to write this short post about it.

I had troubles installing this printer on a Linux Mint 14, but I guess it’s the same on various Debian based distributions.

To get to the solution, I followed some instruction of this post.

The first thing to do is downloading the right package from the EPSON website, here searching for the model sx235 (without ‘W’).

Then search for the package for the ‘Linux’ operating system and with the name ‘ESC/P Driver (full feature)’.

Download it and install it.

Installing this package (epson-inkjet-printer-201108w_1.0.0-1lsb3.2_i386.deb) i got a dependency error about lsb >=  3.2, even if I had the 4.0 version currently installed.

I tried then to force installing with

sudo dpkg --force-depends -i epson-inkjet-printer-201108w_1.0.0-1lsb3.2_i386.deb

Then going to the system “Add printer” dialog, select Network Printer while connected to the same network of the printer, and you should see the printer showing up. Just select it and then the system will do the rest. It should download the drivers and set up the printer, which should be working fine.

Now the package manager should be complaining about the missing dependencies, but you can resolve the error with a

apt-get -f install

which should just remove the previously installed epson package. 

Even if it’s now removed, and the package manager is now working again, the printer should still work fine, and you can still print over the network, so everything is ok 🙂

This worked for me, I hope it helps.


In these months, I attended  course of Computability and Complexity, ending with some concepts of cryptography.

It’s been really interesting, so I wanted to experiment something about it.

I created a little web page using Angular.JS and just a little PHP, to implement some kind of “secure chat”, which uses a given passphrase to encrypt every message directly on the client, and then stores the messages in an online database. This chat can host multiple users with the same passphrase, which will be able to see each other messages, doing all the encryption/decription on the client side.

This means that all the traffic going through the internet has already been encrypted, so everything is stored in the database must be decrypted with the key to be read. In theory, even accessing to the database wouldn’t give any information about the messages sent through the chat.

I really don’t know exactly how commercial messaging systems do work, but I always suspected that if the provider of the service wanted to, it would be able to read the messages going through its servers, because the ‘secure’ connection (if any) is established between the server and the clients, and not between the very two endpoints of the communication.

In the system I implemented, instead, the server makes only the ‘buffering’ of the data, it never gets in touch with the encryption keys, so that it can’t read the messages it saves to the database.

I don’t really believe commercial systems work exactly that way, but the doubt was enough to get me developing this little project 🙂

The software uses the encryption standard AES, implemented in javascript with Crypto-JS.

The AES encryption is a simmetric key encryption, which means that every user share a secret key and then use it to encrypt the data sent through an unsecure channel.

Here’s the link to the chat, if you want to be sure i’m not reading your messages in the database, you should inspect the javascript of the page, understanding that the encryption is made with your passphrase, in the client side of the application. This should be enough to understand I can’t read anything without the key.

Here’s the (still in development) link.