WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Lenovo Thinkpad Synaptics - 2 finger scroll not working.  (Read 968 times)

Offline Sashank999

  • Sr. Member
  • ****
  • Posts: 405
Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« on: November 20, 2024, 11:27:19 AM »
Hello.

I am a user of Lenovo Thinkpad L412. I currently use touchpad for my daily linux use as my trusty mouse broke recently. I decided to revisit TCL as I had to install a linux distro to get Clickhouse OLAP running locally. But now I found out that 2 finger scroll and double tapping (for left click) does not work.

I have set up all the necessary things as per my choices - Firefox (thanks for the getLatest TCE), Alsa, Ice WM, etc.

From some forum and Google searches, I found a boot code:
psmouse.proto=imps
from:
https://forum.tinycorelinux.net/index.php/topic,6458.msg34363.html#msg34363
https://forum.tinycorelinux.net/index.php/topic,6982.msg36850.html#msg36850

Now this enabled the double tapping for left click. But I still cannot scroll with 2 fingers, as you would normally with a touchpad.

I will be happy to provide any information regarding my device drivers, hardware information or TCL version.

Thanks in advance.

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11702
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #1 on: November 20, 2024, 02:07:25 PM »
Hi Sashank999
I take it you are running Xorg. What does this return:
Code: [Select]
sudo libinput list-devices

Offline Sashank999

  • Sr. Member
  • ****
  • Posts: 405
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #2 on: November 20, 2024, 10:42:13 PM »
Hi Sashank999
I take it you are running Xorg. What does this return:
Code: [Select]
sudo libinput list-devices

Thank you for looking into this.

Here is what I got:
Code: [Select]
tc@box:~$ sudo libinput list-devices
Device:           Power Button
Kernel:           /dev/input/event2
Group:            1
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           Video Bus
Kernel:           /dev/input/event6
Group:            2
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           Sleep Button
Kernel:           /dev/input/event1
Group:            3
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           AT Translated Set 2 keyboard
Kernel:           /dev/input/event3
Group:            4
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           PS/2 Synaptics TouchPad
Kernel:           /dev/input/event5
Group:            5
Seat:             seat0, default
Capabilities:     pointer
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   *button
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   flat *adaptive custom
Rotation:         0.0

Edit: My laptop has both a touchpad and the "trackpoint" thing so I don't know if they are both being recognized. Mine is a Lenovo ThinkPad L412, Intel Core i3 6th Gen, 4GB RAM.
« Last Edit: November 20, 2024, 10:44:25 PM by Sashank999 »

Offline patrikg

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 722
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #3 on: November 21, 2024, 03:30:38 AM »
I think Thinkpads have some kernel mod's to get things working well.
If you try another live linux distro, and do lsmod to see what mod's installed.

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1530
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #4 on: November 21, 2024, 08:11:58 AM »
Hi Sashank999. I'm on a ThinkPad X230 and two-finger scrolling works for me. I did not do any special configuration for it to work. It seems that if the hardware supports it, libinput can handle it.

Here's what I'm seeing:
Code: [Select]
$ sudo libinput list-devices
Device:           Power Button
Kernel:           /dev/input/event2
Group:            1
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           Video Bus
Kernel:           /dev/input/event6
Group:            2
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           Sleep Button
Kernel:           /dev/input/event0
Group:            3
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           AT Translated Set 2 keyboard
Kernel:           /dev/input/event3
Group:            4
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           SynPS/2 Synaptics TouchPad
Kernel:           /dev/input/event4
Group:            5
Seat:             seat0, default
Size:             71x31mm
Capabilities:     pointer gesture
Tap-to-click:     disabled
Tap-and-drag:     enabled
Tap drag lock:    disabled
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   *two-finger edge
Click methods:    *button-areas clickfinger
Disable-w-typing: enabled
Disable-w-trackpointing: enabled
Accel profiles:   flat *adaptive custom
Rotation:         n/a

Device:           TPPS/2 IBM TrackPoint
Kernel:           /dev/input/event5
Group:            6
Seat:             seat0, default
Capabilities:     pointer
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   *button
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   flat *adaptive custom
Rotation:         n/a
I noticed your TouchPad section has this:
Code: [Select]
Scroll methods:   *button
whereas mine has this:
Code: [Select]
Scroll methods:   *two-finger edge
Maybe your touchpad doesn't support two-finger scrolling?

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11702
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #5 on: November 21, 2024, 09:41:17 AM »
Hi Sashank999
I think you need to create:
Code: [Select]
/usr/local/share/X11/xorg.conf.d/50-libinput.conf
Place the following in that file:
Code: [Select]
Section "InputClass"
   Identifier "libinput touchpad catchall"
   Driver "libinput"
   MatchIsTouchpad "on"
   Option "Tapping" "true"
   Option "ScrollMethod" "twofinger"
EndSection

Backup the file, restart X, see if anything changed.

This might be of some help:
https://wiki.archlinux.org/title/Libinput#Via_xinput

Libinput configuration details (options):
https://man.archlinux.org/man/libinput.4

Manually trying settings using xinput without the need to restart X:
https://forum.tinycorelinux.net/index.php/topic,23880.msg150206.html#msg150206

Offline Sashank999

  • Sr. Member
  • ****
  • Posts: 405
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #6 on: November 23, 2024, 08:38:14 PM »
I apologize for the late reply. Thank you all for trying to help me.

I think Thinkpads have some kernel mod's to get things working well.
If you try another live linux distro, and do lsmod to see what mod's installed.

Hi patrikg. I did not try any other live distro yet. I will try Fedora if it has something that can help.

Hi Sashank999. I'm on a ThinkPad X230 and two-finger scrolling works for me. I did not do any special configuration for it to work. It seems that if the hardware supports it, libinput can handle it.

Here's what I'm seeing:
Code: [Select]
$ sudo libinput list-devices
Device:           Power Button
Kernel:           /dev/input/event2
Group:            1
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           Video Bus
Kernel:           /dev/input/event6
Group:            2
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           Sleep Button
Kernel:           /dev/input/event0
Group:            3
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           AT Translated Set 2 keyboard
Kernel:           /dev/input/event3
Group:            4
Seat:             seat0, default
Capabilities:     keyboard
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      n/a
Nat.scrolling:    n/a
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   none
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   n/a
Rotation:         0.0

Device:           SynPS/2 Synaptics TouchPad
Kernel:           /dev/input/event4
Group:            5
Seat:             seat0, default
Size:             71x31mm
Capabilities:     pointer gesture
Tap-to-click:     disabled
Tap-and-drag:     enabled
Tap drag lock:    disabled
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   *two-finger edge
Click methods:    *button-areas clickfinger
Disable-w-typing: enabled
Disable-w-trackpointing: enabled
Accel profiles:   flat *adaptive custom
Rotation:         n/a

Device:           TPPS/2 IBM TrackPoint
Kernel:           /dev/input/event5
Group:            6
Seat:             seat0, default
Capabilities:     pointer
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   *button
Click methods:    none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles:   flat *adaptive custom
Rotation:         n/a
I noticed your TouchPad section has this:
Code: [Select]
Scroll methods:   *button
whereas mine has this:
Code: [Select]
Scroll methods:   *two-finger edge
Maybe your touchpad doesn't support two-finger scrolling?

Hi GNUser. My touchpad supports both 2 finger scroll and 3 finger gestures on Windows without any issues. That is why I was surprised when it did not work in Tiny Core Linux. I don't think it is a hardware issue at all.

Hi Sashank999
I think you need to create:
Code: [Select]
/usr/local/share/X11/xorg.conf.d/50-libinput.conf
Place the following in that file:
Code: [Select]
Section "InputClass"
   Identifier "libinput touchpad catchall"
   Driver "libinput"
   MatchIsTouchpad "on"
   Option "Tapping" "true"
   Option "ScrollMethod" "twofinger"
EndSection

Backup the file, restart X, see if anything changed.

This might be of some help:
https://wiki.archlinux.org/title/Libinput#Via_xinput

Libinput configuration details (options):
https://man.archlinux.org/man/libinput.4

Manually trying settings using xinput without the need to restart X:
https://forum.tinycorelinux.net/index.php/topic,23880.msg150206.html#msg150206

Hi Rich. I just tried creating the file and restarting the Xserver by exiting to prompt and then using the "startx" command to start the Xserver. This did not do anything.

Offline Sashank999

  • Sr. Member
  • ****
  • Posts: 405
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #7 on: November 24, 2024, 01:26:22 AM »
Hello Rich,

Your code did not work because my touchpad is being recognised as a "pointer" by libinput.
Hence, I modified your code to change match criteria to
Code: [Select]
MatchIsPointer "true", added a custom identifier, changed driver to "synaptics" which lead to Xorg applying this custom rule.
I also tried with driver "libinput" but it failed with "Failed to set" message.
I attached the 2 Xorg.log files.

Some digging around showed that Synaptics driver should usually be ok with these touchpads. So I compiled xf86-synaptics-driver from https://github.com/awestendorf/xf86-input-synaptics .
But that is showing protocol error.

Code: [Select]
[  3387.659] (II) LoadModule: "synaptics"
[  3387.659] (II) Loading /usr/local/lib/xorg/modules/input/synaptics_drv.so
[  3387.659] (II) Module synaptics: vendor="X.Org Foundation"
[  3387.659] compiled for 1.21.1.9, module version = 1.6.99
[  3387.659] Module class: X.Org XInput Driver
[  3387.659] ABI class: X.Org XInput driver, version 24.4
[  3387.659] (II) Using input driver 'synaptics' for 'PS/2 Synaptics TouchPad'
[  3387.659] (**) PS/2 Synaptics TouchPad: always reports core events
[  3387.659] (**) Option "Device" "/dev/input/event5"
[  3387.740] (EE) synaptics: PS/2 Synaptics TouchPad: Synaptics driver unable to
 detect protocol
[  3387.740] (EE) PreInit returned 11 for "PS/2 Synaptics TouchPad"
[  3387.740] (II) UnloadModule: "synaptics"

Offline Sashank999

  • Sr. Member
  • ****
  • Posts: 405
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #8 on: November 24, 2024, 04:15:41 AM »
Hello.

I initially wanted to have normal tap-to-click with my touchpad on my laptop. I followed https://forum.tinycorelinux.net/index.php/topic,6982.msg36850.html#msg36850 and added the bootcode
Code: [Select]
psmouse.proto=imps to my grub.cfg .

I thought this was a solution, but this is the actual trouble maker. It changed something so that my touchpad was being recognized as a pointer by libinput. I removed the bootcode and then libinput recognized my touchpad as an actual touchpad. As a bonus, xinput also now also lists my trackpoint separately.

Code: [Select]
â¡ Virtual core pointer                    id=2 [master pointer  (3)]
â   â³ Virtual core XTEST pointer              id=4 [slave  pointer  (2)]
â   â³ SynPS/2 Synaptics TouchPad              id=10 [slave  pointer  (2)]
â   â³ TPPS/2 IBM TrackPoint                    id=11 [slave  pointer  (2)]
⣠Virtual core keyboard                    id=3 [master keyboard (2)]
    â³ Virtual core XTEST keyboard              id=5 [slave  keyboard (3)]
    â³ Power Button                            id=6 [slave  keyboard (3)]
    â³ Video Bus                                id=7 [slave  keyboard (3)]
    â³ Sleep Button                            id=8 [slave  keyboard (3)]
    â³ AT Translated Set 2 keyboard            id=9 [slave  keyboard (3)]

The issue is not with libinput or my touchpad. It was with a bootcode. Remove the bootcode and properly configure libinput in /usr/local/share/X11/xorg.conf.d directory with a custom configuration file. This is the configuration I am using now:
Code: [Select]
Section "InputClass"
        Identifier "libinput new touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "Tapping" "true"
        Option "ScrollMethod" "twofinger"
        Option "NaturalScrolling" "true"
Option "AccelSpeed" "0.4"
EndSection

I am currently using persistent home and opt directories with `tce=sda7 home=sda7 opt=sda7 norestore` boot codes. I have a command bootlocal.sh for auto connecting to my Wi-Fi AP. I added a command to create the configuration file. Here is my bootlocal.sh:
Code: [Select]
#!/bin/sh
# put other system startup commands here
/usr/local/bin/wifi.sh -a 2>&1 > /tmp/wifi.log
echo 'Section "InputClass"
        Identifier "libinput new touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "Tapping" "true"
        Option "ScrollMethod" "twofinger"
        Option "NaturalScrolling" "true"
Option "AccelSpeed" "0.4"
EndSection' > /usr/local/share/X11/xorg.conf.d/50-custom.conf

Hope this helps other travellers that have come along my way. Sorry for wasting your time. Thank you for helping me.

Offline gadget42

  • Hero Member
  • *****
  • Posts: 823
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #9 on: November 24, 2024, 05:11:49 AM »
@Sashank999, thanks for sharing your findings! it most likely will help someone in the future.

also, for future visitors to this thread, as noted in "7.2 Persistent home/opt" of Into the Core:
(http://tinycorelinux.net/book.html)
Quote
Using absolute names can be unreliable if there are multiple drives
present; how fast they initialize affects their naming. So if there are
multiple internal drives, or you wish to use an external drive, it’s
recommended to use either UUID or LABEL.
Examples:
• home=sda1
• home=LABEL=mydisk
• home=UUID=fho4-3436t
The fluctuation theorem has long been known for a sudden switch of the Hamiltonian of a classical system Z54 . For a quantum system with a Hamiltonian changing from... https://forum.tinycorelinux.net/index.php/topic,25972.msg166580.html#msg166580

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11702
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #10 on: November 24, 2024, 10:25:40 AM »
Hi Sashank999
Glad to hear it's working. Kudos on pinpointing the boot code issue.

... I am currently using persistent home and opt directories with `tce=sda7 home=sda7 opt=sda7 norestore` boot codes. I have a command bootlocal.sh for auto connecting to my Wi-Fi AP. I added a command to create the configuration file. Here is my bootlocal.sh: ...

If you remove the  norestore   boot code, you can use the backup system
instead of having bootlocal.sh creating the file:

Click the  ControlPanel  icon (the one with the screwdriver).
Click the  Backup/Restore  button.
Select the  Include for Backup  tab.
Click the  Add  button.
In the file selector, navigate to  /usr/local/share/X11/xorg.conf.d/
Click  50-custom.conf  and click the  OK  button.
In the drop down box, change from  Dry Run  to  Backup.
Click  Go  and your file is now backed up.
The next time you boot, your file will automatically be restored.

If you prefer the command line instead of the GUI:
Code: [Select]
echo "usr/local/share/X11/xorg.conf.d/50-custom.conf" >> /opt/.filetool.lst
filetool.sh -b
Leave out the leading slash in the path as shown.

On a related note:

When it comes to automatically starting programs, scripts, daemons, etc., the basic rules of thumb are:
1. Things that need to run before a GUI are started (like kmaps) should go into  /opt/bootsync.sh.
2. Things that need to run after a GUI are started (like starting a GUI app) should go into  ~/.X.d.
3. Things that are not sensitive to when they are started can go into  /opt/bootlocal.sh  which runs in the background.

When starting something from numbers 1 or 3, you need to specify a full path. They run before any user is logged in.

Item 2 is unique to each user.

The configuration file you are creating would fall under item 1, it needs to
be present before Xorg starts.

So if you insist on creating the file like that, do it in  bootsync.sh  before
it calls  bootlocal.sh.  Otherwise you'll have a race condition that might
intermittently cause your touchpad to not be configured when you boot.

Some things don't belong in bootlocal.sh, kmaps for example. This explains why and
describes the timing of events:
https://forum.tinycorelinux.net/index.php/topic,23698.msg148996.html#msg148996

Offline Sashank999

  • Sr. Member
  • ****
  • Posts: 405
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #11 on: November 26, 2024, 12:05:47 PM »
Hi Rich,
Thanks for the information. I didn't know there is an order to be followed like that.

...If you remove the  norestore   boot code, you can use the backup system
instead of having bootlocal.sh creating the file: ...
The main reason why I chose to have TCL persistence on disk is because I have Firefox files in my /home/tc directory and taking a backup of that directory and restoring them on startup is taking too much time. That is why I chose to have those configuration commands in my bootlocal.sh file.

...So if you insist on creating the file like that, do it in  bootsync.sh  before
it calls  bootlocal.sh.  Otherwise you'll have a race condition that might
intermittently cause your touchpad to not be configured when you boot. ...
Yes, I would like to have a startup script like that. So, I made the current config:

In a new file called ~/.X.d/start-script.sh:
Code: [Select]
#!/bin/sh
# put other system startup commands here
xset b 90 200 75 &
clipit &

And in /opt/bootsync.sh:
Code: [Select]
#!/bin/sh
# put other system startup commands here, the boot process will wait until they complete.
# Use bootlocal.sh for system startup commands that can run in the background
# and therefore not slow down the boot process.
/usr/bin/sethostname box

/usr/local/bin/wifi.sh -a 2>&1 > /tmp/wifi.log &
alsactl init 2>&1 > /tmp/alsa.log &
mkdir -p /usr/local/share/X11/xorg.conf.d
sudo echo 'Section "InputClass"
        Identifier "libinput new touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "Tapping" "true"
        Option "ScrollMethod" "twofinger"
        Option "NaturalScrolling" "true"
Option "AccelSpeed" "0.4"
EndSection' > /usr/local/share/X11/xorg.conf.d/50-custom.conf

/opt/bootlocal.sh &
This setup works properly. ClipIt starts after X server starts and the custom libevent configuration file is created before X server starts. Even alsactl start is correct.

Please validate it and let me know if there is still something that I should do.


On a side note, I am just noticing the below new error message during my boot. I don't know how to capture the text start screen but after X starts, I can see it in dmesg log. Is there anything wrong with my setup ?
Code: [Select]
tc@box:~$ dmesg | grep elogind
[   17.226728] elogind-uaccess-command[4888]: Failed to apply ACL: Operation not supported
[   17.227406] elogind-uaccess-command[4910]: Failed to apply ACL: Operation not supported
...another 60 times...
[   17.248303] elogind-uaccess-command[4894]: Failed to apply ACL: Operation not supported
[   25.390845] elogind-uaccess-command[8852]: Failed to apply ACL: Operation not supported
I do not see any bugs or missing files in the system. Everything works fine but these logs just fill the screen during the boot.
I have my persistence on a ext4 partition that I created from TCL with fdisk. I previously had a non-persistent setup on a FAT32 partition where the kernel and initrd were stored but it didn't support persistence so I created the new partition and moved my persistent home, opt and tce directories to the ext4 partition and left the kernel and initrd in the FAT32 partition.
Please let me know if I should make a new thread for these logs alone.

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11702
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #12 on: November 26, 2024, 02:48:14 PM »
Hi Hi Sashank999
... The main reason why I chose to have TCL persistence on disk is because I have Firefox files in my /home/tc directory and taking a backup of that directory and restoring them on startup is taking too much time. That is why I chose to have those configuration commands in my bootlocal.sh file. ...

 ... Please validate it and let me know if there is still something that I should do. ...

 ---  and moved my persistent home, opt and tce directories to the ext4 partition ...
Since you have your home directory on disk, did you remember to remove it from you backup?
If not, then:
Code: [Select]
editor /opt/,filetool.lst
# Remove the line that says home
filetool.sh -b
# That purges home data from the backup so that
# stale data can't overwrite current data on the
# next restore.

Those dmesg errors sound like they might be triggered by one of the  .rules  files in elogind.tcz.

Offline yvs

  • Jr. Member
  • **
  • Posts: 65
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #13 on: November 26, 2024, 03:01:44 PM »
> elogind-uaccess-command[8852]: Failed to apply ACL: Operation not supported
>
  I suppose it's the same like case with xattr and squashfs, i.e. if kernel (or correspondent FS module) is built without a requested feature (in this case it's ACL), there's that "not supported" error

update: https://blog.tfiu.de/-failed-to-reset-acl-with-elogind-why-.html explanation seems not the same but similar to this ACL case
« Last Edit: November 26, 2024, 03:15:41 PM by yvs »

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11702
Re: Lenovo Thinkpad Synaptics - 2 finger scroll not working.
« Reply #14 on: November 27, 2024, 12:43:22 AM »
Hi Sashank999
ACL is enabled, but only for NTFS3:
Code: [Select]
CONFIG_NTFS3_FS_POSIX_ACL=y
My understanding is ACL lets you control who can access a device.
The error message states:
Code: [Select]
Failed to apply ACL: Operation not supportedThat suggests it aborted what it was attempting to do and what
you are seeing are just nuisance messages.