<mquandalle>
I just want to ping you and say that I'm still working on Libreboard and I'm super excited to implement the sharing capabilities to the sandstorm version
<mquandalle>
I'll have some time to work on that in the coming days :-)
<paulproteus>
: D
<paulproteus>
BTW snolahc1 is supposedly giving some kind of Sandstorm talk tomorrow.
<ocdtrekkie>
:D mquandalle
<mquandalle>
I'll be there
<ocdtrekkie>
I always hear lots of people wanting to see more LibreBoard.
<ocdtrekkie>
I was going to try the newui.libreboard, but it didn't work for me. So I await the new Sandstorm version. ;)
<snolahc1>
hey :) I've been in so much trouble this evening, wow.
<snolahc1>
the building we'll be having the prez tomorrow blocks internet except on :80, :443 and :22
<ocdtrekkie>
Uh oh.
<snolahc1>
impossible to install sandstorm in LXC and impossible for me to spawn a VM (console blocked)
<ocdtrekkie>
Screen record you doing it and play it? o_o
<snolahc1>
wow i'm home now, i can begin to work :) by the way, thanks for the prez video, it was very enlightening :)
<kentonv>
mquandalle: FWIW, it's not well-documented, but the user's permissions are automatically inserted into their row in the meteor users table by accounts-sandstorm. So as soon as you define some permissions they should appear there.
asmyers has joined #sandstorm
<mquandalle>
oh cool I didn't you integrated the new system with meteor accounts system
asmyers has quit [Remote host closed the connection]
<kentonv>
mquandalle: I actually wrote the permissions-handling code into accounts-sandstorm from the start, in anticipation of it eventually being meaningful. :)
amyers has quit [Ping timeout: 265 seconds]
mort___ has quit [Quit: Leaving.]
<mquandalle>
So I have to update the capnp manifest with my 3 level of authorization (reader, member, and admin) and I'll have the permission level directly accessible in the user document in the meteor collection?
<kentonv>
mquandalle: yes. Note that reader/member/admin are probably your "roles", where each "role" maps to some set of "permissions" like "read" or "write". What you get in the user table is the permissions.
<kentonv>
the reason for this is that when sharing, it's user-friendly to show a drop-down of roles rather than a series of check-boxes
<kentonv>
but then if you receive roles from multiple people we need to merge them
<kentonv>
so we turn them into bits at that point
<kentonv>
and do a bitwise-OR
<kentonv>
but it may be that in your case you just define permissions exactly matching your roles, where e.g. the admin role maps to admin,member,reader permissions, member role maps to member,reader permissions, and reader role just maps to reader permissions.
<mquandalle>
that totally makes sense (but I may need to refactor the libreboard code to use a permission system everywhere instead of Meteor.user().isBoardMember())
<mquandalle>
sorry to ask (I should just look at the code) but are you using any package to handle the permission API?
<kentonv>
can you redefine `isBoardMember()` to simply check if "member" is in the user.sandstorm.permissions list?
<kentonv>
no, we don't use any particular package. We just stuff them into user.sandstorm.permissions as a list.
<kentonv>
open to suggestions on that, though
<kentonv>
(or better yet pull request against accounts-sandstorm. :) )
<mquandalle>
A lot of people seems to use https://atmospherejs.com/alanning/roles, but I'll do my homework to verify if it works for both libreboard and sandstorm cases
<kentonv>
yep, Meteor.user().services.sandstorm.permissions will be a list like ["member", "reader"]
<mquandalle>
anyway it seems reasonable to keep this data in the .services.sandstorm sub-document instead of forcing a permission/roles package that will “pollute” the user document
<mquandalle>
because the http server is only used to distribute the application (currently one HTML, one CSS, one JS, and some assets), everything else is on DDP
<kentonv>
yeah it might be pretty easy
<mquandalle>
(I probably just ask because I don't like my application to be qualified as “legacy” ;-) )
<kentonv>
as long as there are no server-side routes
<kentonv>
haha
<mquandalle>
which is the case
<mquandalle>
in my case
<paulproteus>
Sandcats is all server-side routes.
<paulproteus>
But it's not a typical Meteor app.
asmyers has quit [Ping timeout: 256 seconds]
sasattack has quit [Ping timeout: 252 seconds]
<XgF>
I've thought about a sandstorm-wsgi for python as well
<XgF>
But pycapnp doesn't really expose enough access to the event loops to make it work yet
<paulproteus>
Aw. I was hoping sandstorm-wsgi would be real.
bb010g has joined #sandstorm
sasattack has joined #sandstorm
sasattack has quit [Ping timeout: 276 seconds]
rhapsodhy has quit [Remote host closed the connection]
rhapsodhy has joined #sandstorm
geofft has quit [Read error: Connection reset by peer]
geofft has joined #sandstorm
jadewang has quit [Remote host closed the connection]
paroneayea has quit [Read error: Connection reset by peer]
paroneayea has joined #sandstorm
jadewang has joined #sandstorm
mort___ has joined #sandstorm
mort___ has quit [Quit: Leaving.]
mort___ has joined #sandstorm
geofft has quit [Remote host closed the connection]
jadewang has quit [Remote host closed the connection]
<mitchell>
kentonv: thank you.. since its name ends in "part1", will you guys have any followups? (-part2 404s)
mort___ has joined #sandstorm
<kentonv>
mitchell: eventually. :)
<mitchell>
kentonv: well then I'll start on a script now to poll that url. :)
<mitchell>
seriously though, great concept. I like how you guys imagine distributed information systems in graphical form
<kentonv>
:)
bb010g has quit [Quit: Connection closed for inactivity]
mort___ has left #sandstorm [#sandstorm]
<ocdtrekkie>
Pet peeve: Apps on Github and F-Droid that don't have clear open source licensing. (F-Droid says Apache2, but I can't find anything on the repo that backs that up.)
fonfon has joined #sandstorm
asmyers has quit [Read error: Connection reset by peer]
<paulproteus>
But yes, Sandstorm is pretty cool. I work on it too. (-:
<whyrusleeping>
nice!
<whyrusleeping>
how do you guys handle peer to peer connections?
<whyrusleeping>
or is it all through a central server?
* whyrusleeping
is still reading things
logbot__ has quit [*.net *.split]
jeffmendoza has quit [*.net *.split]
zarvox has quit [*.net *.split]
kxra has quit [*.net *.split]
rhapsodhy has quit [*.net *.split]
saneki_ has quit [*.net *.split]
rhapsodhy has joined #sandstorm
saneki_ has joined #sandstorm
logbot__ has joined #sandstorm
jeffmendoza has joined #sandstorm
zarvox has joined #sandstorm
kxra has joined #sandstorm
<ocdtrekkie>
whyrusleeping: No central servers. Central servers are bad. \o/
<whyrusleeping>
ocdtrekkie: good, over at #ipfs we're of the same mindset :)
<whyrusleeping>
so then my question stands, how are p2p connections done? mostly interested in NAT traversal
<dwrensha>
when we say "no central servers" we mean "everyone could have their own Sandstorm server"
<dwrensha>
I think it will be possible for e.g. a Sandstorm app to help in setting up a peer to peer connection between browsers
<dwrensha>
you could imagine a video chat app, for instance
rhapsodhy has quit [*.net *.split]
saneki_ has quit [*.net *.split]
<whyrusleeping>
dwrensha: okay, so you run a sandstorm server somewhere, its not purely distributed?
rhapsodhy has joined #sandstorm
saneki_ has joined #sandstorm
mort___ has joined #sandstorm
mort___ has quit [Quit: Leaving.]
<posix4e>
Right
bb010g has quit [Quit: Connection closed for inactivity]
asmyers has quit [Ping timeout: 252 seconds]
ragesoss has quit [Ping timeout: 265 seconds]
ragesoss has joined #sandstorm
asmyers has joined #sandstorm
sasattack has joined #sandstorm
fonfon has quit [Ping timeout: 255 seconds]
<XgF>
Hmm, an interesting challenge for consideration: how do you handle sharing in a mixed public/private social app?
GeorgeHahn has joined #sandstorm
erikoeurch has quit [Ping timeout: 240 seconds]
Takumi has joined #sandstorm
<Takumi>
Hi again.
sasattack has quit [Ping timeout: 244 seconds]
GeorgeHahn has quit [Ping timeout: 250 seconds]
<paulproteus>
Hi Takumi !
<Takumi>
I cleared my cookies for reasons unrelated to sandstorm and discovered I can't log in with github now. I keep getting 'internal server error'.