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
  • 37,085
  • 25
  • 149
  • 228