Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Oct 15 08:58

    bourgeoa on main

    3.5.7 (compare)

  • Oct 15 08:52

    bourgeoa on main

    Update dependencies 3.5.6 (compare)

  • Oct 14 14:45

    bourgeoa on main

    Update dependencies 2.4.12 (compare)

  • Oct 14 14:45

    bourgeoa on v2.4.12

    (compare)

  • Oct 14 14:41

    github-actions[bot] on gh-pages

    deploy: 92a6733c9feee81ddac08c3… (compare)

  • Oct 14 14:36

    bourgeoa on main

    Update dependencies 2.4.10 (compare)

  • Oct 14 14:36

    bourgeoa on v2.4.10

    (compare)

  • Oct 14 14:28

    github-actions[bot] on gh-pages

    deploy: 1b20c1e010f092a8930e613… (compare)

  • Oct 14 14:24

    bourgeoa on main

    lint err (compare)

  • Oct 14 13:51
    theRealImy synchronize #438
  • Oct 14 13:51

    theRealImy on auth-upgrade

    Fix typos; closes #429 Fix lint Merge pull request #432 from ja… and 4 more (compare)

  • Oct 14 13:30
    bourgeoa opened #438
  • Oct 14 13:29

    bourgeoa on auth-upgrade

    Merge pull request #421 from so… Always add on the deafult langu… Add first test for language mod… and 39 more (compare)

  • Oct 14 13:29
    bourgeoa closed #433
  • Oct 14 12:40

    dependabot[bot] on npm_and_yarn

    (compare)

  • Oct 14 12:40
    dependabot[bot] closed #67
  • Oct 14 12:40
    dependabot[bot] edited #67
  • Oct 14 12:40
    dependabot[bot] commented #67
  • Oct 14 12:40
    dependabot[bot] edited #67
  • Oct 14 12:39

    bourgeoa on v2.4.11

    (compare)

Daniel B.
@DanielBakas
And that's where I got confused on what folders (like profile) I should be modifying and which ones I should leave untouched :D
(That's how it all connects haha)
Captura de Pantalla 2021-07-10 a la(s) 6.45.45 p.m..png
Jeff Zucker
@jeff-zucker
Well, in any case here's the situation with servers : the Solid specifications are not finalized. For most parts of it that are finalized , either server should follow the specs so can be accessed with the same clients. But for parts that are up in the air, they could differ. For example ESS uses a very different access control system than NSS. As far as what files are on the server - that is not and will never be covered in a specification because Solid doesn't care if you store things as files or a db or anything else. That means that the specific files on the server are always implementation specific and will differ from one server to the other.
Daniel B.
@DanielBakas
I see
Okok cool
Does it matter where each user stores their data in their pods then? (regardless of the server the pod is in)?
Jeff Zucker
@jeff-zucker
But for most purposes solid-client should behave the same on either servere
Daniel B.
@DanielBakas
Okok cool. When I say where I just wanna say I mean "in what folders inside their pods"*
Jeff Zucker
@jeff-zucker
And the same with other clients
Well, you can store anything anywhere you like. But some apps will want to store things in their own places. That is handled in your settings type-registry that says type of data X (e.g. a bookmark) is stored in folder Y. Apps should read that registry to find where to look for stuff. If it's your own stuff that you are serving with your own apps, put it anywhere you like.
Daniel B.
@DanielBakas
Wuuuuu thanks so much. So, if I understand correctly, if my application is called "Semantyk" I could create a folder inside each user's pod by that name (semantyk) where all relevant information that my application consumes is located?
Jeff Zucker
@jeff-zucker
Yes, for most purposes, that would be polite.
At least for stuff that is only accessed by your app
Daniel B.
@DanielBakas
Awesome!
One more and I'll get on with the work. Should this "semantyk" folder be inside "public", "private" or the root directory?
Jeff Zucker
@jeff-zucker
If your app access common resources like inbox or profile, those would be outside your app-specific folder
Daniel B.
@DanielBakas
Right!
Jeff Zucker
@jeff-zucker
Well you can't count on there being directories with those names, so just make sure that wherever you put it, you make a pointer to it in the type index. Your app will need write permissions to the folder you want to store stuff in, so public may be a better option
Daniel B.
@DanielBakas
Awesome. Best put it in the root directory
Jeff Zucker
@jeff-zucker
Personally , I'd rather not have my root directory crowded
Daniel B.
@DanielBakas
You have a point
But that would mean that all information from every user that has used Semantyk will have all their info made public since the "semantyk" folder would be inside public, correct?
Inside their public folder in their pods I mean
Jeff Zucker
@jeff-zucker
No, you can make separate access permissions for folders within public that are more restrictive
for example a folder that only the user can read and only your app can write to
Daniel B.
@DanielBakas
Are those access permissions determined by the application developer or the user?
Jeff Zucker
@jeff-zucker
The user can always change the access permissions. Your app will need to ask the user what permissions they want to grant. That info is stored in the user's profile under trustedApps.
Daniel B.
@DanielBakas
This is so cool
Jeff Zucker
@jeff-zucker
Yes, asking is nice :-)
Daniel B.
@DanielBakas
Thank you so much for answering. This community is amazing
Jeff Zucker
@jeff-zucker
Glad you're a part of it :-)
Daniel B.
@DanielBakas
🥺😭😩🙏🏽

So if I understand correctly:

  1. My application will request the creation of a new "semantyk" folder inside a given user's pod
  2. The user will have the ability to accept or decline this request.
  3. If the user accepts the request, a new folder named "semantyk" will be created inside the "public" folder of the user's pod
  4. My application will be able to read/write to this folder to work and provide the user with the
    application's experience.

Correct?

Jeff Zucker
@jeff-zucker
The user will need to agree not only to the creation of the folder, but also to the rights they wish to grant your app. So they'll need to grant your app read, or append, or read+append, or write
Daniel B.
@DanielBakas
This needs to be shared with everybody. This is the way the world should treat data
Jeff Zucker
@jeff-zucker
Yep
Daniel B.
@DanielBakas
You guys are inspiring and generous. Thank you so much Jeff
Jeff Zucker
@jeff-zucker
Glad to help.
Daniel B.
@DanielBakas
🌱
vinnl
@vinnl:matrix.org
[m]
I don't think that permission model is described in the spec, and only NSS (inrupt.net and solidcommunity.net) implements it as far as I'm aware. Generally, my current strategy is indeed to just create a folder at the root of the user's Pod. Should cause least problems with e.g. other folders (like /public/ or /private/) not existing. That said, I tend to work on apps that only store data for the user themselves, i.e. that they're not sharing with others.
Daniel B.
@DanielBakas
This is a great answer too. Thanks @vinnl:matrix.org!
What do you guys think? Should our applications' folders be located at the root directory of our users' pods, or inside their "public", "private", etc. folder?
Alain Bourgeois
@bourgeoa
I there is absolutely no rule.
Jeff Zucker
@jeff-zucker
It should be located somewhere an app can find it by following its nose from the user's profile.
Alain Bourgeois
@bourgeoa
But personally I don't like any app to write directly in my user root folder. It more to keep it clean and have a one level of folder with ACL I can managed touching root the least possible.
Jeff Zucker
@jeff-zucker
^^Me too.
Nick Form
@nickform:matrix.org
[m]

In the blog post linked below, Ruben Verborgh discusses something called "footprints" as a solution for the problem of where apps should store new data. I think there was a similar blog post by Tim Berners-Lee that discussed this but both are a couple of years old now and I'm not sure whether the idea went any further. May be useful background though.

https://ruben.verborgh.org/blog/2019/06/17/shaping-linked-data-apps/

Daniel B.
@DanielBakas
Is there a standard though? Or does every application developer decide where to store their applications' data inside each user's pod?
Jeff Zucker
@jeff-zucker
AFAIK, no, there is no standard on this. What I would like to see is ability to have a triple in my profile that tells apps the root folder for app data. The spec shouldn't specify a location, just a method for the user to specify a location.