| Summary: | Autostart entires with binaries in ~/.local/bin (or other user-added PATH locations) fail | ||
|---|---|---|---|
| Product: | [Applications] systemsettings | Reporter: | pditchev |
| Component: | kcm_autostart | Assignee: | Nicolas Fella <nicolas.fella> |
| Status: | RESOLVED UPSTREAM | ||
| Severity: | normal | CC: | nate, plasma-bugs-null |
| Priority: | NOR | ||
| Version First Reported In: | 5.26.2 | ||
| Target Milestone: | --- | ||
| Platform: | Manjaro | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
pditchev
2022-11-01 09:12:01 UTC
Thank you for the bug report! Please note that Plasma 5.25.5 is not supported for much longer by KDE; supported versions are 5.24, and 5.26 or newer. If at all possible please upgrade to a supported version and verify that the bug is still happening there. If you're unsure how to do this, contact your distributor about it. This is a bug in systemd itself which was fixed with https://github.com/systemd/systemd/pull/24658. It wasn't expanding tildes; now it is. In the meantime, you can work around the systemd issue until you get the fix by using the full absolute path (/home/[user]/blabla...) Thanks for the tip, I'd applied that workaround. The bug should not be related to the tilde expansion though. My path contains the absolute path `/home/[user]/.local/bin` Can you attach the desktop file for the autostart entries in question that aren't autostarting? /home/[user]/.config/autostart/workday_timelapse.desktop : ``` [Desktop Entry] Comment[en_US]=A program to make timelapses of your screen(s) automatically Comment=A program to make timelapses of your screen(s) automatically Exec=workday-timelapse /home/[user]/screen_timelapses --log GenericName[en_US]= GenericName= Hidden=false Icon=accessories-camera MimeType= Name[en_US]=Workday timelapse Name=Workday timelapse Path= StartupNotify=false Terminal=false TerminalOptions= Type=Application X-DBUS-ServiceName= X-DBUS-StartupType= X-KDE-SubstituteUID=false X-KDE-Username= ``` workday-timelapse is located in /home/[user]/.local/bin (which is in PATH). Can you paste the output of running `journalctl -u systemd-xdg-autostart-generator`? And also `/usr/lib/systemd/user-generators/systemd-xdg-autostart-generator`? For some reason `journalctl -u systemd-xdg-autostart-generator` gave no output, but with `journalctl -b | grep autostart-generator` (filtered only ones referring to workday_timelapse: ное 08 11:45:31 p10-laptop systemd-xdg-autostart-generator[1430]: Configuration file /home/[user]/.config/autostart/workday_timelapse.desktop is marked executable. Please remove executable permission bits. Proceeding anyway. ное 08 11:45:31 p10-laptop systemd-xdg-autostart-generator[1430]: /home/[user]/.config/autostart/workday_timelapse.desktop:15: Unknown key name 'TerminalOptions' in section 'Desktop Entry', ignoring. ное 08 11:45:31 p10-laptop systemd-xdg-autostart-generator[1430]: Exec binary 'workday-timelapse' does not exist: No such file or directory ное 08 11:45:32 p10-laptop systemd-xdg-autostart-generator[1475]: Configuration file /home/[user]/.config/autostart/workday_timelapse.desktop is marked executable. Please remove executable permission bits. Proceeding anyway. ное 08 11:45:32 p10-laptop systemd-xdg-autostart-generator[1475]: /home/[user]/.config/autostart/workday_timelapse.desktop:15: Unknown key name 'TerminalOptions' in section 'Desktop Entry', ignoring. ное 08 11:45:32 p10-laptop systemd-xdg-autostart-generator[1475]: Exec binary 'workday-timelapse' does not exist: No such file or directory ное 08 11:45:32 p10-laptop systemd-xdg-autostart-generator[1475]: /home/[user]/.config/autostart/workday_timelapse.desktop: not generating unit, error parsing Exec= line: No such file or directory Okay, so here's the problem: > ное 08 11:45:32 p10-laptop systemd-xdg-autostart-generator[1475]: /home/[user]/.config/autostart/workday_timelapse.desktop: not generating unit, error parsing Exec= line: No such file or directory Is `workday-timelapse` available in $PATH? What does `which workday-timelapse` say? If it gives you the expected path, then this is indeed a systemd issue--but a different one! You can file a bug about it at https://github.com/systemd/systemd/issues/. In If it doesn't give you the expected path, then there's a problem with your $PATH variable. Precisely, the binary is in ~/.local/bin , which is in PATH. As commented here: https://stackoverflow.com/questions/60977834/systemd-user-service-exec-command-not-in-path , systemd does not reslove PATH by default (if the info in the thread is correct). And as per the Arch Wiki: https://wiki.archlinux.org/title/systemd/User#PATH PATH can be substituted for systemd in .bash_profile via `systemctl --user import-environment PATH` (which will affect units started after that point. IDK about the autostart ones). So I might file a bug upstream, but initially it seems to be expected behavior. Yep, this sounds like a systemd issue indeed. |