DankMaterialShell icon indicating copy to clipboard operation
DankMaterialShell copied to clipboard

IPC Commands fail at CLI

Open urbanslayer opened this issue 1 month ago • 8 comments

Compositor

  • [ ] niri
  • [ X] Hyprland
  • [ ] dwl (MangoWC)
  • [ ] sway
  • [ ] other

Distribution

EndeavourOS

dms version

v0.5.2

Quickshell version quickshell 0.2.1, revision a00ff0394431d1fe3f33ae0934c981930e2a1efb, distributed by: AUR (package: quickshell-git)

Description

All DMS IPC commands fail at the CLI with the following -

No running instances for "/usr/share/quickshell/dms/shell.qml" FATAL go: Error running IPC command: exit status 255

Solutions Tried

Reinstalled/overwritten both Quickshell and DMS using the git versions from the AUR with no change.

No errors appear in the dms service when running the IPC commands and nothing the overall system journal to indicate why.

Quickshell is running -

qs -p /usr/share/quickshell/dms

If you rename shell.qml in the /usr/share/quickshell/dms folder and try to restart dms, it does error -

Error: could not find DMS config (shell.qml) in any valid config path Usage: dms restart [flags]

Flags: -h, --help help for restart

Global Flags: -c, --config string Specify a custom path to the DMS config directory

FATAL go: could not find DMS config (shell.qml) in any valid config path

Which leads me to believe it IS loading the shell.qml.

DankGreet is also being used and works.

If you run the following manually - quickshell --path /usr/share/quickshell/dms/shell.qml

Output -

INFO: Launching config: "/usr/share/quickshell/dms/shell.qml" INFO: Shell ID: "85ecfc916fcda75f6106502e8dabb0ab" Path ID "85ecfc916fcda75f6106502e8dabb0ab" INFO: Saving logs to "/run/user/1000/quickshell/by-id/if4d7av5t/log.qslog" INFO qml: CompositorService: Detected Hyprland INFO qml: AudioService: Sound effects enabled INFO qml: NetworkService: Initializing... INFO qml: NetworkService: DMS_SOCKET not set, using LegacyNetworkService INFO qml: NetworkService: Switched to LegacyNetworkService, networkAvailable: true INFO qml: LegacyNetworkService: Activating... INFO qml: PolkitService: Initialized successfully INFO qml: IdleService: Initialized with idle monitoring support WARN qml: IdleService: Error creating IdleMonitors: Error: Qt.createQmlObject(): failed to create object: file:///usr/share/quickshell/dms/Services/IdleService.MediaInhibitor:6:17: Cannot assign to non-existent property "active" WARN quickshell.I3.ipc: $I3SOCK is unset. Trying $SWAYSOCK. WARN quickshell.I3.ipc: $SWAYSOCK and I3SOCK are unset. Cannot connect to socket. WARN quickshell.service.notifications: Could not register notification server at org.freedesktop.Notifications, presumably because one is already registered. WARN quickshell.service.notifications: Registration will be attempted again if the active service is unregistered. INFO: Configuration Loaded INFO qt.multimedia.ffmpeg: Using Qt multimedia with FFmpeg version n8.0 GPL version 3 or later DEBUG qml: AudioService: MediaDevices initialized, default output: AC511 Sound Bar Analog Stereo DEBUG qml: AudioService: Using bundled sound for audio-volume-change : file:///usr/share/quickshell/dms/assets/sounds/freedesktop/audio-volume-change.wav DEBUG qml: AudioService: Using bundled sound for power-plug : file:///usr/share/quickshell/dms/assets/sounds/plasma/power-plug.wav DEBUG qml: AudioService: Using bundled sound for power-unplug : file:///usr/share/quickshell/dms/assets/sounds/plasma/power-unplug.wav DEBUG qml: AudioService: Using bundled sound for message : file:///usr/share/quickshell/dms/assets/sounds/freedesktop/message.wav DEBUG qml: AudioService: Using bundled sound for message-new-instant : file:///usr/share/quickshell/dms/assets/sounds/freedesktop/message-new-instant.wav WARN scene: QML FileView at @Common/SettingsData.qml[920:5]: Read of /home/lain/.config/DankMaterialShell/plugin_settings.json failed: File does not exist. Input #0, wav, from '/usr/share/quickshell/dms/assets/sounds/freedesktop/audio-volume-change.wav': Metadata: encoder : Lavf62.3.100 Duration: 00:00:00.06, bitrate: 1420 kb/s Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s WARN qml: I18n: Falling back to built-in English strings Input #0, wav, from '/usr/share/quickshell/dms/assets/sounds/freedesktop/message.wav': Metadata: encoder : Lavf62.3.100 Duration: 00:00:00.31, bitrate: 1413 kb/s Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s Input #0, wav, from '/usr/share/quickshell/dms/assets/sounds/freedesktop/message-new-instant.wav': Metadata: encoder : Lavf62.3.100 Duration: 00:00:01.03, bitrate: 1411 kb/s Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s Input #0, wav, from '/usr/share/quickshell/dms/assets/sounds/plasma/power-unplug.wav': Metadata: encoder : Lavf62.3.100 Duration: 00:00:03.00, bitrate: 1411 kb/s Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s Input #0, wav, from '/usr/share/quickshell/dms/assets/sounds/plasma/power-plug.wav': Metadata: encoder : Lavf62.3.100 Duration: 00:00:03.00, bitrate: 1411 kb/s Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 2 channels, s16, 1411 kb/s WARN quickshell.service.polkit.listener: failed to register listener: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: An authentication agent already exists for the given subject WARN quickshell.service.polkit: failed to register listener on path "/org/quickshell/PolkitAgent" INFO qml: Detected distribution: EndeavourOS DEBUG qml: Adding ref for module: cpu count: 1 DEBUG qml: Adding ref for module: cpu count: 2 DEBUG qml: Adding ref for module: memory count: 1 DEBUG qml: Adding ref for module: cpu count: 3 DEBUG qml: Adding ref for module: cpu count: 4 DEBUG qml: Adding ref for module: memory count: 2 INFO qml: Theme: Setting desired theme - hex mode: dark type: scheme-expressive DEBUG qml: Theme: Starting matugen worker DEBUG qml: AudioService: Current system sound theme: ocean INFO qml: CompositorService: Detected Hyprland INFO qml: Theme: Matugen worker completed successfully INFO qml: SessionService: Native inhibitor available: true DEBUG qml: SessionService: DMS_SOCKET not set DEBUG qml: SessionService: Elogind detection exited with code 1 DEBUG qml: DankBar: Created native Wayland IdleInhibitor for eDP-2 DEBUG qml: DankBar: Created native Wayland IdleInhibitor for DP-1

It duplicates bars etc, but the IPC commands work.

I did try and replace 'dms run' in the hyprland exec-once command with the above quickshell command but on reboot that resulted in the same error at the top.

urbanslayer avatar Nov 17 '25 10:11 urbanslayer

I installed DMS manually (on Solus distro) and I'm also seeing similar issues with the latest release. DMS is version v0.2.5-1-g477968d Quickshell is v0.2.1.

'dms run' results in: FATAL go: Error locating DMS config: could not find DMS config (shell.qml) in any valid config path.

The same error is shown when attempting to run 'dms ipc' commands.

I can start DMS with 'qs - p ~/.config/quickshell/dms/quickshell' and the interface loads and is usable, but no shortcut keys requiring 'dms ipc' commands work...

One other point to note is that the latest manual installation guide (https://danklinux.com/docs/dankmaterialshell/installation) includes a step to compile and install the DMS backend, but there is no backend subdirectory.

aj8xr0 avatar Nov 17 '25 13:11 aj8xr0

I installed DMS manually (on Solus distro) and I'm also seeing similar issues with the latest release. DMS is version v0.2.5-1-g477968d Quickshell is v0.2.1.

'dms run' results in: FATAL go: Error locating DMS config: could not find DMS config (shell.qml) in any valid config path.

The same error is shown when attempting to run 'dms ipc' commands.

I can start DMS with 'qs - p ~/.config/quickshell/dms/quickshell' and the interface loads and is usable, but no shortcut keys requiring 'dms ipc' commands work...

One other point to note is that the latest manual installation guide (https://danklinux.com/docs/dankmaterialshell/installation) includes a step to compile and install the DMS backend, but there is no backend subdirectory.

This is a typo, it is the core subdirectory. But for your case, that is the problem. dms backend should be 0.5.1+

bbedward avatar Nov 17 '25 13:11 bbedward

For the original issue, I'm not sure - verify that which dms resolves to /usr/bin/dms

And verify you dont have another quickshell instance somewhere else.

# Should not exist
~/.config/quickshell/dms 
/etc/xdg/quickshell/dms

bbedward avatar Nov 17 '25 14:11 bbedward

For the original issue, I'm not sure - verify that which dms resolves to /usr/bin/dms

And verify you dont have another quickshell instance somewhere else.

# Should not exist
~/.config/quickshell/dms 
/etc/xdg/quickshell/dms

Thanks. I can confirm that dms does resolve to /usr/bin/dms -

whereis dms
dms: /usr/bin/dms

The two mentioned folders do not exist either.

DMS was initially installed using the standard method - curl -fsSL https://install.danklinux.com | sh

I reinstalled quickshell to the git version based on the message from dms relating to the quickshell version not support idle monitoring. Neither version of quickshell works for ipc cli commands though.

urbanslayer avatar Nov 17 '25 16:11 urbanslayer

This one, is kinda bizarre to me - I don't know what is up.

What about IPC with qs directly?

qs -p /usr/share/quickshell/dms ipc call notepad toggle

bbedward avatar Nov 17 '25 16:11 bbedward

Same error unfortunately -

qs -p /usr/share/quickshell/dms ipc call notepad toggle
No running instances for "/usr/share/quickshell/dms/shell.qml"

It does work if I run a second quickshell environment.

urbanslayer avatar Nov 17 '25 17:11 urbanslayer

This is a typo, it is the core subdirectory. But for your case, that is the problem. dms backend should be 0.5.1+

Thanks. That resolved my issues.

aj8xr0 avatar Nov 18 '25 10:11 aj8xr0

A minor update - I removed 'dms run' from the Hyprland config, rebooted, logged and ran the 'dms run' command manually. IPC commands now work as expected although the launcher keybind isn't working and media controls disappeared from the bar.

Putting it back, even at the end, the problem comes back, no ipc command can be run at the CLI. This seems to be something relating to the interaction between Quickshell and Hyprland and how they have been executed.

urbanslayer avatar Nov 22 '25 10:11 urbanslayer