asheesh changed the topic of #sandstorm to: Welcome to #sandstorm: home of all things sandstorm.io. Say hi! | Channel glossary: "i,i" means "I have no point, I just want to say". b == thumbs up. | Public logs at https://botbot.me/freenode/sandstorm/ & http://logbot.g0v.tw/channel/sandstorm/today
indiebio has joined #sandstorm
indiebio has quit [Client Quit]
indiebio has joined #sandstorm
indiebio has quit [Ping timeout: 255 seconds]
indiebio has joined #sandstorm
indiebio has quit [Quit: No Ping reply in 180 seconds.]
dwrensha has quit [Ping timeout: 250 seconds]
indiebio has joined #sandstorm
indiebio has quit [Read error: Connection reset by peer]
indiebio has joined #sandstorm
indiebio has quit [Quit: No Ping reply in 180 seconds.]
indiebio has joined #sandstorm
dwrensha has joined #sandstorm
<liam> How does gogs-sandstorm handle `git push`ing? As it needs a constantly running sshd, but i don't see anything indicating that in their Vagrantfile
<dwrensha> pushing probably goes through HTTP
<dwrensha> s/probably/must/
<liam> but, the grain id is constantly shifting?
<liam> i don't want to `git remote remove/add ...` every time i need to push
<dwrensha> you use an API token
<liam> interesting, i haven't read up on those yet
<liam> Could I (ab)use this to expose an entire application on a fixed subdomain? maybe if i set up http proxying with nginx and added in that bearer token...
<liam> s/application/instance/
<dwrensha> API tokens are associated with users
<dwrensha> hm...
<liam> "public test user" xD
<dwrensha> I suppose if you set `forSharing = true` on the token then Sandstorm knows to treat incoming requests as anonymous.
<dwrensha> I'm not sure how Gogs-sandstorm does it
<liam> well, the important bit I have come to understand, i must add push support over http
<dwrensha> gitlab-sandstorm sets `forSharing=false` so that git pushes are associated with users
<dwrensha> so that activity feeds and such can be updated
<asheesh> FWIW liam the "grain ID" stays the same; it's accessed over a variety of URLs, though.
<asheesh> I don't know if that helps you, though. :)
<liam> yeah I realized that after I typed, i meant instance? id
<liam> unless there's some secret subdomain that lets me access it based on grain id
<asheesh> Oh, right.
<liam> but i think that will break all sorts of permissions things
<asheesh> There is - see also "the API subdomain" in https://docs.sandstorm.io/en/latest/developing/http-apis/
<asheesh> Rather: "Sandstorm allows apps to expose their HTTP APIs at a permanent URL, as opposed to ephemeral domains used within the grain-frame."
<liam> yeah, dwrensha linked it a bit ago
<asheesh> Yeah, but I just wanted to highlight that bit, at least.
<liam> yeah, that's definitely what i will have to solve it with
jemc_ has quit [Ping timeout: 244 seconds]
lukexj has quit [Ping timeout: 276 seconds]
jemc_ has joined #sandstorm
frigginglorious_ has joined #sandstorm
frigginglorious has quit [Ping timeout: 255 seconds]
frigginglorious_ is now known as frigginglorious
nwf has quit [Read error: Connection reset by peer]
Guest55413 has joined #sandstorm
gambatte has quit [Ping timeout: 276 seconds]
gambatte has joined #sandstorm
niek has quit [Read error: Connection reset by peer]
Guest55413 has quit [Quit: WeeChat 1.5]
nwf_ has joined #sandstorm
niekie has joined #sandstorm
nwf_ is now known as nwf
afuentes has quit [Ping timeout: 240 seconds]
dwrensha has quit [Ping timeout: 250 seconds]
Telesight has joined #sandstorm
Telesight has quit [Quit: Leaving.]
jemc_ has quit [Ping timeout: 252 seconds]
nwf has quit [Ping timeout: 240 seconds]
nwf has joined #sandstorm
frigginglorious has quit [Quit: frigginglorious]
rolig has quit [Ping timeout: 244 seconds]
rolig has joined #sandstorm
Lionel_Debroux has quit []
rolig has quit [Ping timeout: 255 seconds]
rolig has joined #sandstorm
wuch has joined #sandstorm
rolig has quit [Ping timeout: 240 seconds]
rolig has joined #sandstorm
ecloud_wfh has quit [Ping timeout: 255 seconds]
ecloud has joined #sandstorm
rolig has quit [Ping timeout: 264 seconds]
xet7_ has joined #sandstorm
xet7_ is now known as Guest27488
wuch has quit [Quit: WeeChat 1.5]
wuch has joined #sandstorm
Guest27488 has quit [Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )]
afuentes has joined #sandstorm
HalfEatenPie has quit [Ping timeout: 264 seconds]
HalfEatenPie has joined #sandstorm
dwrensha has joined #sandstorm
amyers has joined #sandstorm
frigginglorious has joined #sandstorm
jemc_ has joined #sandstorm
tantalum has joined #sandstorm
rolig has joined #sandstorm
liam has quit [Quit: ZNC 1.6.1 - http://znc.in]
liam has joined #sandstorm
gkoz has quit [Ping timeout: 244 seconds]
gkoz has joined #sandstorm
asmyers has joined #sandstorm
amyers has quit [Ping timeout: 265 seconds]
<dwrensha> liam: wow!
asmyers has quit [Ping timeout: 244 seconds]
asmyers has joined #sandstorm
<xet7> How do I send email from Meteor app using capnp? Is there example somewhere?
rolig has quit [Ping timeout: 250 seconds]
Lionel_Debroux has joined #sandstorm
rolig has joined #sandstorm
amyers has joined #sandstorm
amyers has quit [Read error: Connection reset by peer]
asmyers has quit [Ping timeout: 244 seconds]
amyers has joined #sandstorm
rolig has quit [Ping timeout: 264 seconds]
rolig has joined #sandstorm
Telesight has joined #sandstorm
rolig has quit [Ping timeout: 244 seconds]
amyers has quit [Remote host closed the connection]
amyers has joined #sandstorm
<zarvox> liam: at a first glance: wow, this is fantastic! I also like how you structured your changes so you can easily update the underlying phabricator repos, that sounds helpful for maintenance.
<asheesh> xet7: Hi! Yes, let me look one up :)
<xet7> asheesh: Thanks! :) I already also sent message to sandstorm-dev.
MaxLeiter has joined #sandstorm
<MaxLeiter> where can I request an app to be added to Sandstorm?
rolig has joined #sandstorm
<liam> zarvox, ty. I used submodules also -- so i have the full suite of git tools to help identify breaking changes when i roll out their updates
<mokomull> ooh, phabricator. Now you've piqued my interest.
MaxLeiter has left #sandstorm [#sandstorm]
<liam> :)
<zarvox> liam: are there uniqueness requirements on what PhutilAuthAdapter.getAccountName() returns? If not, it seems like a good fit for X-Sandstorm-Preferred-Handle
<zarvox> (or if there are, then maybe it's a decent fit for X-Sandstorm-Preferred-Handle plus a uniquifying number?)
<zarvox> Oh wow Phabricator actually has user pronouns as a configurable option
rolig has quit [Ping timeout: 264 seconds]
<zarvox> awww man the Phabricator grain tries to fetch my profile picture from the static endpoint but can't because it can't resolve static.local.sandstorm.io from the server
<mokomull> Favorite option is phabricator.serious-business=false
<zarvox> seems to be the default on this package!
* asheesh shakes his head and smiles re: serious-business=false
<mokomull> default on this side of the wall, too :)
<liam> zarvox: It must be unique and immutable. It's used to identify which issues are assigned to/created by you within Phabricator. I can't use the Handle as it is mutable
<liam> sorry, rolling in and out of meetings at work :/
<zarvox> is that true of both getAccountName() and getAccountID()?
<zarvox> I'm baffled that they'd have two names for the field with the same requirements
rolig has joined #sandstorm
<liam> Uh, maybe I've got it backward. I'm using getAccountName() as meeting those requirements within my own code but i can look into it more, can you open a ticket about it?
<zarvox> Happy to!
<liam> ty
<zarvox> Also I'm super excited about this which is why I'm bursting at the seams with questions. :)
<liam> heh it's alright
<liam> I noticed some parts of the UI used a huge ID instead of a realname
<liam> and that's a bit annoying
<zarvox> yeah, I'm hoping this would fix that :)
<liam> ty
<asheesh> xet7: https://github.com/simonv3/quick-survey/issues/41#issuecomment-239987553 is the short answer. See also email. :)
<xet7> asheesh: Thanks! :)
<liam> zarvox: if you want something challenging, I wasn't able to work out how to set up Git. In theory it's already "done" but I don't know the endpoints or if i'll run into a bug with auth
rolig has quit [Ping timeout: 265 seconds]
aldeka_limechat has joined #sandstorm
rolig has joined #sandstorm
<zarvox> Setting up Git might be a bit tricky. It looks like Phabricator's repo hosting leans heavily on sudo, but Sandstorm disallows setuid binaries, so that won't be feasible.
<liam> can always just write a shell script that passes it through
<zarvox> yeah, you can probably convince it to do everything as one user.
<mokomull> zarvox: is setuid(2) seccomp'ed away, or does setuid(geteuid()) work?
<zarvox> mokomull: glancing at setupSeccomp() in src/sandstorm/supervisor.c++ we don't appear to block setuid(2)
<liam> ha you beat me to it, zarvox, i was in the middle of writing an issue
<liam> looks like you did more research than me, too
<zarvox> liam: happy to help :)
amyers has quit [Ping timeout: 255 seconds]
jemc_ is now known as jemc
Telesight has quit [Quit: Leaving.]
rolig has quit [Ping timeout: 244 seconds]
tantalum has left #sandstorm [#sandstorm]
rolig has joined #sandstorm
larjona has quit [Read error: Connection reset by peer]
rolig has quit [Ping timeout: 250 seconds]
larjona has joined #sandstorm
rolig has joined #sandstorm
amyers has joined #sandstorm
rolig has quit [Ping timeout: 240 seconds]
rolig has joined #sandstorm
davidjgraph has joined #sandstorm
<zarvox> hi davidjgraph! it's good to see you here!
<davidjgraph> yellow \o/
<asheesh> davidjgraph: btw do your sandstorm-files.list filenames start with a '/' character? You have to remove any leading '/' character, so it's like opt/app/foo not /opt/app/foo
<davidjgraph> no leading slashes
<asheesh> Too bad, I was hoping it was easy like that. :)
<davidjgraph> It worked a year ago with this script
<davidjgraph> everything seems to have rotted a little :)
<asheesh> davidjgraph: Out of curiosity, are you doing this with "vagrant-spk" and therefore have a .sandstorm/ directory?
<asheesh> If so, then I can attempt to repro here, at least.
<asheesh> If not, then I would also accept high-clarity instructions for repro-ing without.
<asheesh> I also wonder what is the file that it is not finding.
<davidjgraph> I tried vagrant-spk, that gave me a different error
<asheesh> For that, I guess you could strace spk pack.
<davidjgraph> so I went into the VM and executed in /opt/app what I think it really wanted to do
<davidjgraph> lemme check what happened with vagrant-spk
<asheesh> Well, I'm cool with starting with what you have.
<asheesh> Rather than reworking everything to suit my needs. :)
<asheesh> w/r/t get stacktrace: https://groups.google.com/forum/#!msg/sandstorm-dev/ww-AjOJvKsg/4Idb0njuLQAJ explains how to use addr2line to get stack trace info, although it may or may not actually give you something useful.
<asheesh> "Obviously" we should run a public addr2line service for the binaries we publish.
<davidjgraph> clearly :)
<zarvox> "or just ship addr2line with sandstorm so it can use it itself"
<asheesh> +1 from me
<asheesh> davidjgraph: I do think strace-ing "spk pack" is going to provide useful info, fwiw.
<asheesh> But addr2line will too.
<davidjgraph> actually, I don't have a .sandstorm folder in my build
<davidjgraph> but vagrant global-status says I'm running in it
<asheesh> Great. So I propose you ignore my vagrant-spk suggestion and keep debugging with strace and/or addr2line. :)
<asheesh> (fwiw "vagrant global-status" will show a VM present even if there's no "vagrant-spk" VM; vagrant-spk is a Sandstorm-brand tool that integrates Vagrant with "spk pack" and friends.)
<davidjgraph> I might just kill the VM and try again, a VM running in a non-existent directory sounds fishy
<asheesh> (i.e. it's very easy to use Vagrant without using vagrant-spk, and that's fine)
<asheesh> I wouldn't bother killing it. .sandstorm/ is only expected if you're using "vagrant-spk", but if you're using plain-old Vagrant, .sandstorm/ is not expected.
<davidjgraph> I did vagrant-spk vm ssh to get into it
<asheesh> OK that's a little mysterious, but I think we can table our Vagrant mysteries and focus on the Sandstorm ones.
frigginglorious has quit [Quit: frigginglorious]
wuch has quit [Quit: WeeChat 1.5]
rolig has quit [Ping timeout: 276 seconds]
amyers has quit [Read error: Connection reset by peer]
<asheesh> davidjgraph: Any luck so far? Or need any further hints?
<davidjgraph> I am working on it, slight interruption of a daughter decided it's wakey time :)
<davidjgraph> and no, it's not, it's quarter to midnight...
<asheesh> :)
amyers has joined #sandstorm
rolig has joined #sandstorm
amyers has quit [Read error: Connection reset by peer]
<davidjgraph> my staging script deletes the build folder when it updates, and the vm is in there...
amyers has joined #sandstorm
<davidjgraph> this might cause a lack of files to be found with completely random errors
<zarvox> that sounds completely possible
rolig has quit [Ping timeout: 244 seconds]
rolig has joined #sandstorm
<davidjgraph> ok, back
<asheesh> Welcome back!
<davidjgraph> is the executable spk?
<davidjgraph> vagrant@localhost:/opt/app$ spk pack --keyring=drawio.key --pkg-def=sandstorm-pkgdef.capnp:pkgdef package.spk
<davidjgraph> sandstorm/util.c++:99: failed: fstat(fd, &stats): No such file or directory
<davidjgraph> *** Uncaught exception ***
<davidjgraph> stack: 0x44916c 0x5ebdc7 0x5ebccd 0x48b3a0 0x48aeb8
<davidjgraph> vagrant@localhost:/opt/app$ addr2line -e /usr/local/bin/spk 0x44916c 0x5ebdc7 0x5ebccd 0x48b3a0 0x48aeb8
<davidjgraph> ??:?
<davidjgraph> ??:?
<davidjgraph> ??:?
<davidjgraph> ??:?
<davidjgraph> ??:?
<asheesh> That's not the most useful thing ever. Perhaps we strip debug symbols, yargh.
<mokomull> No ASLR?
<davidjgraph> sounds kinky
<kentonv> try with -f
<kentonv> for function names
<kentonv> (addr2line -f -e ...)
<davidjgraph> http://pastebin.com/raw/qke0NHTh is the vagrant-spk
<davidjgraph> I can rebuild with debug in if useful
<zarvox> that looks like a virtualbox shared folder driver bug/oddity. fstat() on an already-opened fd should never return ENOENT...
rolig has quit [Ping timeout: 265 seconds]
<kentonv> oh wow, I didn't notice that. Yeah, that's totally not a valid error for fstat.
<davidjgraph> so if I whipped up a clean debian that should work ok?
frigginglorious has joined #sandstorm
<asheesh> It should be. A difficulty is that it seems to me that it's confused by files in the file sharing directory (/opt/app) vanishing.
<asheesh> If they're going to vanish in your new future VM in the same way, then setting up the new VM wouldn't necessarily help.
rolig has joined #sandstorm
<davidjgraph> to check, I should be running the spk pack in the same directory as spk dev works in?
<asheesh> Almost definitely yes.
jemc has quit [Ping timeout: 244 seconds]
<asheesh> If you want to go "all in" on vagrant-spk then I can provide even more dogmatic help.
<asheesh> For example, you'd use "vagrant-spk dev" and "vagrant-spk pack" instead.
rolig has quit [Ping timeout: 244 seconds]
rolig has joined #sandstorm
<davidjgraph> I did try vagrant-spk pack http://pastebin.com/raw/qke0NHTh
<davidjgraph> dev fails on the same line for me