Move the labwc autostart file to a Budgie-specific location #16

Open
opened 2025-11-28 12:16:49 +01:00 by fossfreedom · 11 comments
Owner

From a review by Debian, please can we consider renaming the generic "autostart" file name to reflect the service itself

https://forge.moderndesktop.dev/BuddiesOfBudgie/budgie-desktop-services/src/branch/main/src/data/labwc


EDIT

As per labwc/labwc@eecb5d0947/src/common/dir.c (L149)

This means the autostart file is defined by our usage of --config-dir in /usr/bin/startbudgielabwc - in essence it will always be in the users home folder and any /etc/labwc/autostart file will be ignored.

What we could do is define the autostart file in budgie-desktop - bridges and modify /usr/bin/startbudgielabwc to copy it down to the users home budge config folder. Then when labwc starts, the contents of the autostart will run.

From a review by Debian, please can we consider renaming the generic "autostart" file name to reflect the service itself https://forge.moderndesktop.dev/BuddiesOfBudgie/budgie-desktop-services/src/branch/main/src/data/labwc ----- EDIT As per labwc/labwc@eecb5d0947/src/common/dir.c (L149) This means the autostart file is defined by our usage of --config-dir in /usr/bin/startbudgielabwc - in essence it will always be in the users home folder and any /etc/labwc/autostart file will be ignored. What we could do is define the autostart file in budgie-desktop - bridges and modify /usr/bin/startbudgielabwc to copy it down to the users home budge config folder. Then when labwc starts, the contents of the autostart will run.
Owner

You mean renaming our file or the target? Happy to rename ours to provide more clarity. In the case of the target, however, this is defined by labwc.

After a bit more digging, it does appear that we may be able to load it from our vendored path like we do for rc.xml and the like though. We can't install during compile time to that of course, but I can inject it at runtime (create file if it doesn't exist or copy it from a shipped vendor path).

Let me know your thoughts :)

You mean renaming our file or the target? Happy to rename ours to provide more clarity. In the case of the target, however, this is defined by labwc. After a bit more digging, it does appear that we may be able to load it from our vendored path like we do for rc.xml and the like though. We can't install during compile time to that of course, but I can inject it at runtime (create file if it doesn't exist or copy it from a shipped vendor path). Let me know your thoughts :)
Owner

It's probably not worth renaming it in source if it's going to be that in the destination, since we already have the labwc config base directory for this in the source tree.

But loading it from a vendored path is obviously a good idea. 👍

It's probably not worth renaming it in source if it's going to be that in the destination, since we already have the labwc config base directory for this in the source tree. But loading it from a vendored path is obviously a good idea. 👍
Author
Owner

The comment from Debian is as follows

"I don't like the generic name for /etc/xdg/autostart/autostart .
Could that file be named something other than autostart? Notably,
files in /etc/ are usually conf files and don't get automatically
removed when the package providing them is either removed or stops
shipping that filename."

The comment from Debian is as follows "I don't like the generic name for /etc/xdg/autostart/autostart . Could that file be named something other than autostart? Notably, files in /etc/ are usually conf files and don't get automatically removed when the package providing them is either removed or stops shipping that filename."
Owner
It doesn't get installed there, though? https://forge.moderndesktop.dev/BuddiesOfBudgie/budgie-desktop-services/src/branch/main/src/CMakeLists.txt#L100-L102
Author
Owner

dunno - but checking the built deb - its definitely created a file called /etc/xdg/autostart/autostart

dunno - but checking the built deb - its definitely created a file called /etc/xdg/autostart/autostart
Owner

That definitely didn't happen with the Fedora package, though we had to add a patch to fix it: https://src.fedoraproject.org/rpms/budgie-desktop-services/blob/rawhide/f/budgie-desktop-services.spec

That definitely didn't happen with the Fedora package, though we had to add a patch to fix it: https://src.fedoraproject.org/rpms/budgie-desktop-services/blob/rawhide/f/budgie-desktop-services.spec
Owner

Oh, you haven't backported the fix, that's what's going on. Backport this to your package: BuddiesOfBudgie/budgie-desktop-services@a22e40c0e2

Oh, you haven't backported the fix, that's what's going on. Backport this to your package: https://forge.moderndesktop.dev/BuddiesOfBudgie/budgie-desktop-services/commit/a22e40c0e21984f855832341671382fb831d5194
Author
Owner

Ah - ok - so that's the issue - we need to either change this to be sysconfdir/labwc/autostart or have a look at if labwc respects a vendor location - labwc/autostart potentially could conflict with another package that (incorrectly) wants to drop the same file there.

Ah - ok - so that's the issue - we need to either change this to be sysconfdir/labwc/autostart or have a look at if labwc respects a vendor location - labwc/autostart potentially could conflict with another package that (incorrectly) wants to drop the same file there.
Owner

The best we can do is use a vendor location if labwc lets us. We can't change anything else.

The best we can do is use a vendor location if labwc lets us. We can't change anything else.
ngompa changed title from Lets rename "autostart" to reflect the service to Move the labwc autostart file to a Budgie-specific location 2025-11-28 13:48:43 +01:00
Author
Owner

Question - if we are running budgie-desktop-services from /usr/bin/budgie-desktop - why do we need an autostart file?

Question - if we are running budgie-desktop-services from /usr/bin/budgie-desktop - why do we need an autostart file?
Owner

For when the compositor crashes and restarts, at least for now until we have a mechanism for restarting the display backend when the compositor goes down.

For when the compositor crashes and restarts, at least for now until we have a mechanism for restarting the display backend when the compositor goes down.
Sign in to join this conversation.
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
BuddiesOfBudgie/budgie-desktop-services#16
No description provided.