I decided to stop running XSane as root. Here’s what I had to do:
* Restored the ownership of ~/.sane back to my user:
sudo chown -R hisham ~/.sane
* Made /var/lock/sane writable by a regular user:
sudo chmod a+rwxt /var/lock/sane
* As a quick-and-dirty fix, as suggested here, I gave permissions to my USB devices:
sudo chmod a+rw -R /dev/bus/usb/*
* For a more permanent (and still untested) fix, I added a 40-libsane.rules file (found here) in /etc/udev/rules.d. This file already includes the USB id for my scanner. You may have to add yours.