1

I'm trying to install the fujitsu-usb-touchscreen drivers from here, on Kubuntu 12.04 on my new Fujitsu LifeBook P1630. (See fujitsu-usb-touchscreen on kubuntu 13.04 (64-bit) on P1630: `make` errors.) I downloaded the .zip file, unzipped it, and ran make in the directory thus created; this all worked as expected. However, when I run sudo checkinstall (which invokes make install), things go less well. On the first attempt the installation aborted with the following error:

make: execvp: /etc/init.d/fujitsu_touchscreen: Permission denied
make: *** [install] Error 127

I eventually resolved this by

$ sudo chmod +x /etc/init.d/fujitsu_touchscreen

But although a second sudo checkinstall then does not give the execvp error, it still fails at a later stage, and the log (on stdout) shows this dpkg error:

dpkg: error processing /home/archelon/fujitsu-touchscreen-driver/cybergene-fujitsu-usb-touchscreen-112fdb75b406/cybergene-fujitsu-usb-touchscreen-112fdb75b406_amd64.deb (--install):
 unable to create `/sys/module/fujitsu/usb/touchscreen/parameters/touch_maxy.dpkg-new' (while processing `/sys/module/fujitsu/usb/touchscreen/parameters/touch_maxy'): No such file or directory

And, indeed, there is no /sys/module/fujitsu/usb/touchscreen/parameters/touch_maxy; there is, however, /sys/module/fujitsu_usb_touchscreen/parameters/touch_maxy, and this is presumably what was intended. But this incorrect filename does not appear in the makefile or any other file in the directory, at least not that I can find. Nor does it appear, as I discovered after running sudo checkinstall --install=no as suggested below, in the .deb package created by checkinstall.

Where might such a typographical error be originating, and how would I go about fixing it?

Edited to add: I'm viewing the contents of the .deb file with ark, Kubuntu's default tool. It contains only three files: control.tar.gz, data.tar.gz, and debian-binary. data.tar.gz contains the directory tree that appears to match up to the usual root filesystem, with /etc, /lib, /sys, and /usr directories. (Looking at other .deb files on my system, this structure appears to be typical.) Here's a screenshot:
Ark window with contents of data.tar.gz.
(Full size.)

Here's another screenshot showing that control.tar.gz contains three files, one of which is empty:
Ark windows showing the rest of cybergene-fujitsu-usb-touchscreen_112fdb75b406-1_amd64.deb.
(Full size.)

Here's the actual .deb file: https://www.dropbox.com/s/odwxxez0fhyvg7a/cybergene-fujitsu-usb-touchscreen_112fdb75b406-1_amd64.deb

Edited 2013-09-28 to add:

After reinstalling Kubuntu 12.04 again, this time recreating the /home partition (which, again, had been generated during an install of 13.04), I can no longer reproduce this error. I am still curious to know how the underscores got changed to slashes, but it looks as though nobody has any idea. It is perhaps also of interest to note that while I have still not successfully run checkinstall against this package, I have done make install; it requires the executabilization of /etc/init.d/fujitsu_touchscreen and the installation of hal, and the GUI freezes shortly after installation completes, and there is no particular new functionality afterwards that I have noticed, and the system can no longer resume from being suspended; however, this will be pursued elsewhere.

Archelon
  • 83
  • 1
  • 9
  • 1
    As the error is with dpkg, probably the culprit is checkinstall. Try to run sudo checkinstall --install=no (this will only create the package, not installing it), and inspect the package contents. – Salem Sep 17 '13 at 17:11
  • @Salem: I have done this and am none the wiser. (Well, I learned what the inside of a .deb package looks like, which is nice.) The file cybergene-fujitsu-usb-touchscreen_112fdb75b406-1_amd64.deb that was created by checkinstall contains three files, of which one is data.tar.gz; this file includes /sys/module/fujitsu_usb_touchscreen/parameters/touch_maxy, as I imagine it should. (It also contains three other files in that directory with similar names, ending in 'miny', maxx', and 'minx'.) Any more hints? – Archelon Sep 17 '13 at 19:48
  • Why has my question been downvoted, if I may be permitted to ask? Am I missing something excruciatingly obvious? I am certainly capable of that. If so, then feel free to downvote me as much as you please, provided only that you tell me what it is. – Archelon Sep 17 '13 at 19:58
  • which program are you using to open the .deb file? If you use Archive Manager (file-roller) it should show you a folder named DEBIAN inside and the layout the package will have after being installed. As sys is a "dynamic" folder probably the statement to create /sys/module/fujitsu/usb/touchscreen/parameters/touch_maxy.dpkg-new may be in any script in the DEBIAN folder. – Salem Sep 17 '13 at 22:18
  • BTW if you could upload and share the generated .deb would help to see if the problem is indeed with checkinstall. – Salem Sep 17 '13 at 22:19
  • My apologies for taking so long to do this. As you can see there are no scripts in the DEBIAN folder, and no DEBIAN folder. Perhaps the binary performs the equivalent function? That seems unlikely, I suppose. When I read the checkinstall README file more carefully, I started to worry that it might not be as compatible with Ubuntu as I had blithely assumed. Then I noticed how old the document was and laughed at myself. Then I checked the version number in the README... and the version number on my checkinstall... They're the same. Is this, after all, a potential concern? – Archelon Sep 18 '13 at 03:16

1 Answers1

0

There is a known issue with checkinstall that generates file system errors such as you have demonstrated above. In my own usage of checkinstall I routinely use the following option with my command line to get around a probable bug:

sudo checkinstall --fstrans=no

The man pages give this:

--fstrans
Enable/disable filesystem translation. Filesystem translation enabled causes the install to proceed in a temporary directory, thus not actually touching your system.

Not a satisfactory solution but until the bug is fixed it seems to be required...

andrew.46
  • 39,479