Hi, I have a snap (Calaboka) that uses the experimental feature User Daemons. During the past 2.5 years that the app has been available, over 1000 active users have been able to install and use it without problems. Recently (this past week) I got a report that it’s no longer possible for a user to install this snap without first setting the system flag:
snap set system experimental.user-daemons=true
I tried it myself on my personal system and confirmed the above.
Has anything changed in snapd recently that now makes it a requirement for users to set this system flag prior to installing an app that depends on User Daemons? Is there anything that can be done to improve the user experience in this case (i.e., not require users to set the flag, like it used to be)?
I’m surprised this wasn’t always the case, as far as I’m aware there’s exceptions built into snapd for certain snaps being able to use user daemons without the experimental flag, but outside of hardcoded exceptions, what you’re describing sounds to me like the expected case.
Is this potentially a case of people have been enabling this feature but this user is the first that’s mentioned it? As a snap author I wouldn’t be surprised if you’d turned it on years ago and since forgotten.
I’m not sure. There’s over 1000 users and no one’s complained until one person recently. So I don’t really know. The error message doesn’t really show the user exactly how to turn on the flag, so unless the user does some research I’m not sure all of them would figure it out.
Is there any chance I can get an exception for my snap (Calaboka)? It’s been around for over 2 years. It depends on User Daemons since inception.
It’s unfortunately something that’s hard to ask for, it’s not a store exception/assertion like most other exceptions, but literally part of the snapd build:
I think though there’s been movement on user daemons which may mean that they’re soon to be considered non-experimental, so it’s possible you might not be waiting too long before this stops being a problem for you; but I’d let someone involved in that work comment further.
I really hope a failed/denied install (due to the experimental feature flag not being set) doesn’t count towards the usage statistics. Otherwise you might be right. If people installed successfully, then the app is self guiding and instructs them how to set up the correct snap permissions. There are a few reviews in the store, so some people are definitely using it.
And the user who wrote that guide (I have no idea who that is) obviously got it working and didn’t include a step to set the flag… another reason why I didn’t think the flag was being checked on the user side .
Another point I’d like to make is that I tested this snap early on, on over 10 different variants of linux using separate VMs. I never had to set this flag. I remember I posted about it:
I recently updated the snap description and support page to include the instruction to set the experimental flag. But that was only days ago. This wasn’t a problem until apparently last week. I seriously hope user daemons moves out of experimental status soon. Thanks for using my snap, I’m glad you like it.