Systemd not available
neevparikh opened this issue · comments
~ » libinput-gestures -l
libinput-gestures: session regolith+x11 on Linux-5.14.7-arch1-g14-1-x86_64-with-glibc2.33, python 3.9.7, libinput 1.19.0
Hash: 5ed4f9aa29fda776dbbb6c36c619eb8d
Gestures configured in ~/.config/libinput-gestures.conf:
swipe left 3 app_swipe right
swipe right 3 app_swipe left
swipe left 4 i3-msg workspace next
swipe right 4 i3-msg workspace prev
swipe up 4 i3-msg workspace back_and_forth
swipe down 4 i3-msg workspace back_and_forth
libinput-gestures: device /dev/input/by-path/platform-AMDI0010:03-event-mouse(event7): ASUE1209:00 04F3:319F Touchpad
libinput-gestures is installed.
libinput-gestures is set up as a desktop application.
libinput-gestures is currently running as a desktop application.
libinput-gestures is not set to autostart.
libinput-gestures is using custom configuration file.
~ »
Describe the issue
The main issue is that libinput-gestures now cannot see systemd at all. This happened all of a sudden, likely with an update. I'm on Endeavor OS (arch + gnome + i3 (regolith))
Running libinput-gestures-setup service
says:
~ » libinput-gestures-setup service
Systemd not available, can not run as service.
Nothing works when running things as a service (no autostart, no start/restart etc.)
Running things via systemctl directly works, but it sounds like libinput thinks it's being run as a desktop app. Running the setup command as a desktop app does work.
It's very strange, as systemd does exist for the rest of the laptop. Also it was working just recently!
Please paste the output of systemctl --user show graphical-session.target
.
Id=graphical-session.target
Names=graphical-session.target
Requires=basic.target
Wants=libinput-gestures.service
ConsistsOf=dunst.service libinput-gestures.service
Conflicts=shutdown.target
Before=shutdown.target libinput-gestures.service
After=basic.target
Documentation="man:systemd.special(7)"
Description=Current graphical user session
LoadState=loaded
ActiveState=inactive
FreezerState=running
SubState=dead
FragmentPath=/usr/lib/systemd/user/graphical-session.target
UnitFileState=static
UnitFilePreset=enabled
StateChangeTimestampMonotonic=0
InactiveExitTimestampMonotonic=0
ActiveEnterTimestampMonotonic=0
ActiveExitTimestampMonotonic=0
InactiveEnterTimestampMonotonic=0
CanStart=no
CanStop=yes
CanReload=no
CanIsolate=no
CanFreeze=no
StopWhenUnneeded=yes
RefuseManualStart=yes
RefuseManualStop=no
AllowIsolate=no
DefaultDependencies=yes
OnSuccessJobMode=fail
OnFailureJobMode=replace
IgnoreOnIsolate=no
NeedDaemonReload=no
JobTimeoutUSec=infinity
JobRunningTimeoutUSec=infinity
JobTimeoutAction=none
ConditionResult=no
AssertResult=no
ConditionTimestampMonotonic=0
AssertTimestampMonotonic=0
Transient=no
Perpetual=no
StartLimitIntervalUSec=10s
StartLimitBurst=5
StartLimitAction=none
FailureAction=none
SuccessAction=none
CollectMode=inactive
How did you install libinput-gestures
?
Also, please paste output of systemctl --user status graphical-session.target
Sorry, you did not see my edited comment above because you replied via email. Please paste output of systemctl --user status graphical-session.target
.
Oh yeah, edited comments don't show on email.
» systemctl --user status graphical-session.target
○ graphical-session.target - Current graphical user session
Loaded: loaded (/usr/lib/systemd/user/graphical-session.target; static)
Active: inactive (dead)
Docs: man:systemd.special(7)
~ »
Well I can't understand how you would not be seeing the same bug #305 as the others there? When using the previous version, did libinput-gestures
start automatically at boot/login?
It certainly started at login.
What is the output of systemctl --user list-units --type target
?
I am having the same issue, after updating.
====================
Output from systemctl --user list-units --type target:
systemctl --user list-units --type target
UNIT LOAD ACTIVE SUB DESCRIPTION
basic.target loaded active active Basic System
bluetooth.target loaded active active Bluetooth
default.target loaded active active Main User Target
paths.target loaded active active Paths
sockets.target loaded active active Sockets
timers.target loaded active active Timers
==================
libinput-gestures -l
libinput-gestures: session KDE+x11 on Linux-5.13.13-zen1-1-zen-x86_64-with-glibc2.33, python 3.9.7, libinput 1.19.1
Hash: 5ed4f9aa29fda776dbbb6c36c619eb8d
Gestures configured in ~/.config/libinput-gestures.conf:
swipe left 3 xdotool key alt+Right
swipe right 3 xdotool key alt+Left
swipe down 3 qdbus org.kde.kglobalaccel /component/kwin invokeShortcut Expose
swipe up 3 qdbus org.kde.kglobalaccel /component/kwin invokeShortcut ShowDesktopGrid
swipe down 4 qdbus org.kde.kglobalaccel /component/kwin invokeShortcut Window Minimize
swipe up 4 qdbus org.kde.kglobalaccel /component/kwin invokeShortcut Window Maximize
swipe left 4 qdbus org.kde.kglobalaccel /component/kwin invokeShortcut Switch to Next Desktop
swipe right 4 qdbus org.kde.kglobalaccel /component/kwin invokeShortcut Switch to Previous Desktop
libinput-gestures: device /dev/input/by-path/pci-0000:00:15.1-platform-i2c_designware.1-event-mouse(event11): DELL097D:00 04F3:311C Touchpad
libinput-gestures is installed.
libinput-gestures is set up as a user service.
libinput-gestures is not currently running.
libinput-gestures is not set to autostart.
libinput-gestures is using custom configuration file.
==================
libinput-gestures-setup start
Systemd service is not available.
===================
libinput-gestures-setup start
Systemd service is not available.
Basically everything else on my side is identical to what @neevparikh reported. Running Arch,
~ » systemctl --user list-units --type target
UNIT LOAD ACTIVE SUB DESCRIPTION
basic.target loaded active active Basic System
default.target loaded active active Main User Target
paths.target loaded active active Paths
sockets.target loaded active active Sockets
timers.target loaded active active Timers
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
5 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
~ »
I'm going to close this bug because it is actually a duplicate of issue #305. Essentially, users who try to use the service
start option and then get the "Systemd service is not available" message have to currently use the desktop
start option. Such users don't have graphical-session.target available which is required by libinput-gestures. Until I work out, or somebody suggests, a better way around this I will leave #305 open.