-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Snap: improve interface management documentation #8
Comments
Hi @degville — I might be ineterested in taking this on, but i have a couple of questions:
Thanks |
Hello @keith-taylor! Sorry for the long delay getting back to you. I've been away, but I should be a lot more responsive from now. And thanks so much for your interest in this task.
I don't think you need a great deal of experience. I think part of the problem at the moment is that we're assuming too much of our readers and users, and it would actually be really helpful to look at the ideas behind interfaces from an outside perspective - what an interface is isn't immediately obvious, I think, and yet it's fundamental to the access system and confinement that snaps use.
I'd love to see this fleshed-out, but I wanted to leave the issue ambiguous to help encourage people without too much time. Ideally, it would be wonderful if there were more sensible examples of how to use interfaces (with perhaps a range of different types of snaps such as hardware accessing ones, audio ones, file ones). These are just off the top of my head - if you still want to take this one, just feel free to take it in whatever direction you think may be most useful to readers trying to understand these concepts, and how they may best use interfaces. |
I'd chime in with my 5 cents: indeed, I've seen people (myself included) struggling around the idea of an interface in general, and the complete picture of all the components that comprise its operation, i.e. plugs, slots, policies, etc., even though the description looks pretty simple at first. The problem that arises out of this is that the reader skims through the parts that appear obvious (e.g. 'surely I know what an interface is') only to eventually find themselves with a number of unfamiliar moving parts of different shapes and sizes that somehow refuse to work the way they expected them to. |
@keith-taylor are you still working on this? I'd like to pick it up if you can no longer do it? |
I'm happy to let you take this @PhilStollery. |
That's really kind of you @keith-taylor. I'll assign this task to you, @PhilStollery. But @keith-taylor, let me know what kind of task you're interested in working on, and we'll create one specifically. |
And thanks to @PhilStollery for taking this on! |
Thanks @degville for assigning this to me. Should I make a copy of the markdown and add it to this repo for development and reviewing? Or work directly in discourse? My preference would be GitHub. |
Hello @PhilStollery. Very happy to do this - I prefer working in GitHub too. I've just imported those two docs with GH-65. Feel free to modify, add or edit whatever you think is necessary. |
The current interface management documentation isn't as a how-to, and isn't clean, clear, or as simple as it could be.
This task is to improve this documentation to make it easier to understand, to make it task-oriented and to either remove any superfluous details, or move them to the explanation section:
How-to:
https://snapcraft.io/docs/interface-management
Explanation:
https://snapcraft.io/docs/interfaces
Background
Snaps use plugs and slots to allow access to system resources, but the terminology isn't easy to understand for a general desktop audience. This problem is repeated throughout the snap-related documentation.
Prerequisites
You will need some experience using snaps and working with connections and interfaces.
See also Contribute to our documentation.
The text was updated successfully, but these errors were encountered: