Skip to content

Getting scanning to work with Gimp on Trixie

Debian

Trixie ships Gimp 3.0.4 and the 3.x series has gotten incompatible to XSane, the common frontend for scanners on Linux.

Hence the maintainer, Jörg Frings-Fürst, has disabled the Gimp integration temporarily in response to a Debian bug #1088080.

There seems to be no tracking bug for getting the functionality back but people have been commenting on Debian bug #993293 as that is ... loosely related :-).

There are two options to get the Scanning functionality back in Trixie until this is properly resolved by an updated XSane in Debian (e.g. via trixie-backports):

Lee Yingtong Li (RunasSudo) has created a Python script that calls XSane as a cli application and published it at https://yingtongli.me/git/gimp-xsanecli/. This worked okish for me but needed me to find the scan in /tmp/ a number of times. This is a good stop-gap script if you need to scan from Gimp $now and look for a quick solution.

Upstream has completed the necessary steps to get XSane working as a Gimp 3.x plugin at https://gitlab.com/sane-project/frontend/xsane. Unfortunately compiling this is a bit involved but I made a version that can be dropped into /usr/local/bin or $HOME/bin and works alongside Gimp and the system-installed XSane.

So:

  1. sudo apt install gimp xsane
  2. Download xsane-1.0.0-fit-003 (752kB, AMD64 executable for Trixie) and place it in /usr/local/bin (as root)
  3. sha256sum /usr/local/bin/xsane-1.0.0-fit-003
    # result needs to be af04c1a83c41cd2e48e82d04b6017ee0b29d555390ca706e4603378b401e91b2
  4. sudo chmod +x /usr/local/bin/xsane-1.0.0-fit-003
  5. # Link the executable into the Gimp plugin directory as the user running Gimp:
    mkdir -p $HOME/.config/GIMP/3.0/plug-ins/xsane/
    ln -s /usr/local/bin/xsane-1.0.0-fit-003 $HOME/.config/GIMP/3.0/plug-ins/xsane/
  6. Restart Gimp
  7. Scan from Gimp via File → Create → Acquire → XSane

The source code for the xsane executable above is available under GPL-2 at https://gitlab.com/sane-project/frontend/xsane/-/tree/c5ac0d921606309169067041931e3b0c73436f00. This points to the last upstream commit from 27. September 2025 at the time of writing this blog article.

Trackbacks

No Trackbacks

Comments

Display comments as Linear | Threaded

SeeM on :

Thanks. Tip for those, who remember, when GIMP did not have one window and calling xsane-gimp was placing so many windows onto dekstop, that picture was completely hidden.

I once made dedicated "xero" pc in small graphics studio with Xsane and GIMP on Linux. My 20+ years old Artec scanner is still working perfectly fine with Sane.

Bella on :

THX for the heads up! Here too is a very grateful Xsane user, who an old 90s Canon flatbed that just keeps going (avoiding landfill!). Question though: from the message I understand you are familiar with the XSane dev. When upgrading to trixie, I noticed the UI went back in time (GTK 3 >>> 2?)compared to bookworm (but functions fine). Searching, found gitlab messages discussing a potential upgrade from 0.999 to an all new 1.0, which potentially also would sport a new GUI. Do you by chance have any info on the when? Ciao!

Daniel Lange on :

The xsane I compiled binds against libgtk-3.so.0. So you get that "newer" UI. The Debian Trixie default xsane links against libgtk-x11-2.0.so.0. That's the reason for the visual regression that you mention.

I have no clue when substantial GUI improvements beyond the migration to the newer GTK framework will land in xsane and ... sometime later in Debian.

Bella on :

THX for the reply! You are right: xsane 12.2, as also v13 that is in testing right now indeed both bind to libgtk-x11-2.0.so.0 and libgdk-x11-2.0.so.0. Can't imagine why such a regression was made. Since this is beyond my abilities: can you share how I can achieve the same result?

Daniel Lange on :

The "[u]nfortunately compiling this is a bit involved..." comment is meant as it reads. Either use the xsane-1.0.0-fit-003 I have provided or have some patience for Debian to pick up.

Add Comment

Markdown format allowed
Standard emoticons like :-) and ;-) are converted to images.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Form options

Submitted comments will be subject to moderation before being displayed.