#dev 2023-06-28
2023-06-28 UTC
# [jacky] I didn't know either, had to look it up and found https://www.networknt.com/architecture/swt-vs-jwt/
# [jacky] so tbh no different than something like http://indieauth.com but headless
tei_1 joined the channel
# aaronpk and there is a pre-JWT spec for a signed token called "Simple Web Token" http://wiki.oauth.net/OAuth-WRAP
tei_1 joined the channel
gRegorLove_ joined the channel
# [tantek] aaronpk, jacky, you could file a feature request for Bridgy Publish to support SMTP 😂 https://github.com/snarfed/bridgy/issues/
tei_ and tei_1 joined the channel
# Soni should the indieweb care about fighting off facebook?
tei_ joined the channel
# Loqi replace Facebook is the wrong goal, instead, work on replacing your use of Facebook, as Barnaby Walters noted works from his own experience: https://waterpigs.co.uk/notes/1480/ https://indieweb.org/replace_Facebook
# Soni not replace facebook, but bury facebook and make sure it stays that way
# Soni we don't care about replacing facebook but we do care about *preventing* the tactics facebook uses/used
# [snarfed] also [tantek] [jacky] https://github.com/snarfed/bridgy/issues/257 (2014! 😆)
[snarfed], eitilt, kushal, Saphire, btrem, pharalia_ and jan6 joined the channel
# capjamesg What was this? https://github.com/indieweb/mynameisme.org
win0err joined the channel
# vladimyr Static backup of this https://web.archive.org/web/20131115095929/http://mynameisme.org/about/
# [KevinMarks] A site that was I response to the real names #nymwars stuff
# vladimyr Online plea to let people use their preferred names
# [KevinMarks] Mastodon api issues - if you make the instance API authenticated only, you break the instance website trees you're logged in. https://hub.sunny.garden/2023/06/28/what-does-authorized_fetch-actually-do/
# [KevinMarks] Not sure how "unless" became "trees"
# capjamesg Also, did Tumblr express any continued interest in IndieWeb technologies, or are they prioritizing ActivityPub work?
pmlnr and win0err joined the channel
# vladimyr I'd say that's actually intuitive. What people need to understand that Mastodon is not monolithic thing but really a client and server combo. Server speaks actpub and React powered web client uses servers Mastodon Client API like any other client you might use
strugee_ joined the channel
# vladimyr By default actpub is not restricted but you can enforce request signatures by switching the flag
# vladimyr In the same vein Mastodon client API is mostly unrestricted but can be totally auth restricted by switching another flag
# vladimyr Sure enough that will break all anonymous clients (including website) just like enforcing signatures won't simply let you get activity data by issuing request with Aceept: application/activity+json media type
voiceover63 joined the channel
# vladimyr Latter will break fedifeed service (for embedding mastodon feeds) because they rely on being able to anonymously ask for activity
IWSlackGateway1, [timothy_chambe] and oenone joined the channel; pmlnr left the channel
# vladimyr s/servers/server's/
# vladimyr * can be made totally auth
# vladimyr But all that is just fool's errand and here is why
# vladimyr Elk, mastoapi web client does rely on fact that client api is not fully auth restricted
# vladimyr Which is why following request would fail https://elk.zone/bsd.network/@rubenerd/110619179312940358
# vladimyr And you might think a-ha, authorized fetch is in place there is no way for someone to fetch that info
# vladimyr * Which is why following request would fail https://elk.zone/bsd.network/@rubenerd
# vladimyr Except you just need to hop onto another federated server that hasn't been blocked by bsd.network and there you go https://elk.zone/cosocial.ca/@rubenerd@bsd.network
# vladimyr It is exactly the same issue like with PGP encrypted emails
# vladimyr You encrypt that data, securely send it to receiver but then they mistakenly reply with whole thread attached in plaintext
# vladimyr Trying to protect data in fediverse from anonymous access is simply futile effort because you simply can't
# vladimyr All data in fediverse is public
# vladimyr Let's take post for example https://bsd.network/@rubenerd/110619177889675024
# vladimyr Trying to fetch that via API will end up with not authorized error https://bsd.network/api/v1/statuses/110619177889675024
# vladimyr Let's try to be smart and fetch it through anon actpub request:
# vladimyr `$ curl -sH 'accept:application/activity+json' 'https://bsd.network/@rubenerd/110619177889675024'`
# vladimyr -> https://ttm.sh/B3P.jpeg
# vladimyr * Let's try to be smart and fetch it through anon actpub request:
# vladimyr -> https://ttm.sh/B3P.jpeg
# vladimyr `$ curl -sH 'accept:application/activity+json' 'https://bsd.network/@rubenerd/110619177889675024'`
# vladimyr * Let's try to be smart and fetch it through anon actpub request:
# vladimyr -> https://ttm.sh/B3P.jpeg
# vladimyr `$ curl -sH 'accept:application/activity+json' 'https://bsd.network/@rubenerd/110619177889675024'`
# vladimyr But then we simply hop onto another fedi instance where someone is following @rubenerd@bsd.network
# vladimyr And it received given post and stored it under different id https://cosocial.ca/api/v1/statuses/110619179312940358
# vladimyr You won't be able to retrieve original activity document tho due to instance redirecting you to original one -> https://ttm.sh/B3w.jpeg
# vladimyr Little bit of jq and lynx magic and you have original content: https://ttm.sh/B3q.jpeg
# vladimyr So much about restricting access...
holiday_medley, petermolnar, UKn0Me, AramZS and Xe joined the channel
# Soni honestly we think we just want to promote open protocols in whatever ways we think are best
# Soni if well-known helps us do that, then it's the appropriate tool
# Soni sure, so we can base it off on the index.html. which is just well-known with extra steps and more network latency and a huge amount of overhead.
# Soni it benefits no-one to use URLs for everything
# Soni not everything should be an URL
# Soni and proper well-known structures are fully compatible with URLs, anyway
# Soni (your webserver might not be. the solution is to replace your webserver.)
# Soni like uh
# Soni if we use content negotiation you're gonna complain about it
# Soni if we use well-known you're gonna complain about it
# Soni basically everything we can do is gonna get complained about
# Soni but unlike content negotiation, you can host a well-known on e.g. a github pages
tei_ and btrem joined the channel
# [0x3b0b] vladimyr: That does get a little bit muddier with the implementations that support local-only posting, although from what I understand that's still subject to something even more closely matching the pgp email problem, namely someone boosting it outside the local wall; but that only helps in a limited and fragile way with a specific use case, and very much still leaves the point valid.
# [schmarty] What is the specific use case, here? This conversation sounds more like a debate on a podcast and less like a personal site development discussion.
# [KevinMarks] We don't like conneg-- either. We like link rel and a rel so you can do follow your nose and still host on a static site.
# [KevinMarks] You can serve link rel in a way that HEAD works, which is far cheaper than any well-known effort, and you can also use <a rel="blah" in the html body.
# [KevinMarks] We summed this up for SocialWG https://www.w3.org/wiki/Socialwg/AccountDiscovery
# [tantek] "(your webserver might not be. the solution is to replace your webserver.)" <-- this is not an IndieWeb attitude frankly, see https://indieweb.org/plurality
# [KevinMarks] I found another AS1 history pic https://flickr.com/photos/56624456@N00/3180183215/
# [KevinMarks] If you can serve with a HEAD request the parsing is simpler than most alternatives
# [KevinMarks] But they have an OS library to do it
# [KevinMarks] I can vaguely see the argument for this for embedded devices, but iOS devices spawn webviews like they're candy
# vladimyr Also there is no standard way to do HTML parsing from the command line
# [KevinMarks] I mean, I haven't done iOS dev for a decade or so, but it was not exactly hard 20 years ago on MacOS
# aaronpk this appears to be the popular Swift HTML parser library now https://github.com/scinfu/SwiftSoup
# vladimyr And even when you create DOM tree what what's the standard way of traversing it? xpath, css selectors?
# Loqi A link rel parser is a library for parsing individual rel values from inside HTTP LINK headers and/or HTML <link> tags, often used by discovery algorithms for API endpoints as defined by specifications like Webmention, Micropub, and IndieAuth https://indieweb.org/link_rel_parser
# [KevinMarks] Tantek was writing html parsers on MacOS 25 years ago that ran in a few MB
# [KevinMarks] Not to mention TimBL on nextstep
# vladimyr According to which standard? Nowdays we have whatwg but 25 yrs ago? https://html.spec.whatwg.org/multipage/parsing.html#parsing
# aaronpk add that example to /link_rel_parser!
# capjamesg Next step?
# [KevinMarks] NeXTStep was what the original browser was written with https://www.w3.org/People/Berners-Lee/WorldWideWeb.html
# vladimyr [tantek]: how I'm supposed to extract rels using tidy?
# vladimyr Looking at https://manpages.debian.org/tidy I don't see select or query option
# Soni so we should download a whole multi-megabyte webpage just to open another multi-megabyte webpage, increasing latency and eating data caps?
# vladimyr Which proves my point there is no standard way to work with html inside terminal
# vladimyr The fact I'm able to parse it into memory representation doesn't mean much if I'm not able to query it afterwards
# Soni XML, HTML, doesn't matter, it's irrelevant here
# Soni we have other concerns, including mobile users
# Soni maybe we should be making an indieirc instead...
# Soni the web being entirely passive isn't inherently a good thing tbh
# Soni also wait
# Soni we're wrong
# Soni XML actually helps
# Soni xinclude is awesome y'all
# Soni but lmao good luck getting anyone other than the IETF to use it
# Soni well you should xinclude your whole website ofc: footers, headers, link rels, etc
# Soni we've seen an xinclude-based website before, once. it was Something.
# Soni you really don't see those often
# Soni "xinclude-based conneg"
# [KevinMarks] We have a working example of IndieChat at http://chat.indieweb.org - it's not multimegabyte
# [KevinMarks] That's your choice, but for <link> and <a> a stream oriented SGML parser is fine.
# [KevinMarks] You don't need to implement the whole html spec to extract links unless you really want to support stupid ways of doing them.
# [schmarty] html command line parsing goodness: https://github.com/ericchiang/pup
# [schmarty] like jq but for HTML! use css selectors to pull stuff out. it's fun.
# [schmarty] been working fine for me since then :}
jonnybarnes and tei_ joined the channel
# [schmarty] ooh, i have htmlq starred but keep forgetting to try it snarfed++
# [KevinMarks] That sounds like an interesting head to head blog post (if you'll pardon the pun)
# [tantek] this meme gets me 😂 💀 https://mstdn.io/@wolf480pl/110612132494110667
tei_ joined the channel
# tei_ Hi! I'm wondering if anyone has a recommendation for me for a basic blogging setup that I could add to my static site? I don't really know much code, so I understand the HTML and CSS for my current site but it's... not very complicated, ha. So I started this page https://bloodripelives.com/not_fic.html that kind of has "blog entries" that are just links to other html pages
# tei_ but what I would really like would be that exact same page, with the same css and setup and everything, to be a scrolling wordpress-style blog. I installed wordpress as a subdirectory of my site, but I wasn't able to edit a theme to the point that it looked like the rest of the site... is that a thing that should theoretically be possible to do, or are the themes kind of set in stone?
# tei_ tbh I was also hella confused by wordpress's posting format-- I have used it before, but it was a decade ago and it was just "type some text into a text box" and now it's... all these "blocks" and I couldn't figure out how to port over html content
# tei_ is wordpress even what I want, or is there some other tool that would be... halfway in between just uploading and manually linking html files, and a whole wordpress installation?
# tei_ ooh, forgot that was a thing
# tei_ thanks!
# Loqi Static site generators or SSGs are programs that take a set of flat text files on disk and transforms them into a set of static HTML files ready to be served by a standard web server, or some variation of this example https://indieweb.org/SSG
# [KevinMarks] I was just typing that - it comes down to how much you get on with the particular template model for an ssg
[pfefferle] joined the channel
# vladimyr I'm aware of both pup and htmlq and OG CLI tooling made by w3g https://www.w3.org/Tools/HTML-XML-utils/README
# vladimyr However let's play numbers game
# vladimyr https://repology.org/project/htmlq/versions - 27 packages across different OSes
# vladimyr https://repology.org/project/pup/versions - 46 packages
# vladimyr And finally https://repology.org/project/html-xml-utils/versions - 110! packages
# vladimyr Numbers speak for itself
# vladimyr This counts presence in various repos not binaries
# vladimyr More archs means wider availability which is exactly my point
# vladimyr So you are saying I should simply ignore all this data because we could do it like in 80s by distributing source code and the makefile because it is written to target posix anyway
# vladimyr Or fast forward to 2020s with docker container/snap/flatpak
# vladimyr Or even better, binary straight from GitHub release
# vladimyr Say what you want but html-xml-utils is authored by w3g and by far the most available solution
# vladimyr Anyway, because I feel like masochist today here is how you extract webmention url from site using curl + tidy + hxselect
# vladimyr https://ttm.sh/B3T.sh
# vladimyr Note few things tho
# vladimyr 1/ hxselect works only with xhtml
# vladimyr 2/ tidy freaks out on unrecognized indie-action element
# vladimyr So /standard/ way of working with html in terminal assumes html to xhtml conversion and then css selector engine implemented over xhtml dom
# vladimyr Or you send users towerds pup/htmlq (which also use css selectors)
# vladimyr Roger that
gRegor joined the channel
# gRegor There's a request https://github.com/aaronpk/indielogin.com/issues/82
# [schmarty] sebbu: did you mean specifically via http://indielogin.com? Or via IndieAuth/RelMeAuth as a mechanism in general?
# [schmarty] IndieAuth-the-protocol and RelMeAuth-the-protocol don't require any central registration, so there is unlikely to be an "exhaustive" list of sites that support it.
# [schmarty] gitlab has a paid hosted offering too
# aaronpk well I had completely forgotten about this https://github.com/aaronpk/IndieAuth.com/pull/204
tei_1 joined the channel
strugee joined the channel
# bkil Pasting the message here on request https://chat.indieweb.org/2023-05-16#t1684246762808900 I'm using the term "Fediverse" loosely - in the early days, "The Federation" lived a separate and unbridged evolution until multi-protocol servers gained traction. By it, I mean interoperable self-hostable FOSS microblogging solutions using open protocols that federate (allows carrying your identity and owning your data) and supporting optional shared hosting
# bkil multi-tenancy for easier scaling and thus adoption by the masses. I can't name anything remotely similar to this before OpenMicroBlogging, but feel free to share any prior art that you know aaronpk
# bkil Or a "FOSS Twitter alternative" if you will. Similarly how PeerTube was built from the group up via federation & WebTorrent because self-hosted centralized media streaming suites already existed before it (Plumi, MediaGoblin and maybe others), no single one can be used to replace YouTube, because any third party entity must be as large as Google to be able to host it. I love how someone invented the term "free helicopter" for this (can we add it to the wiki?)
# bkil So it was probably the instability of the architecture of Twitter up to 2008 that triggered various alternatives to emerge. Then some realized that reimplementing Twitter itself as FOSS would be akin to donating a free helicopter. Hence why they wanted to go a step further by providing for federation so as to allow self-hosters running cheap nodes to each chime in to the network bit by bit.
oodani joined the channel
# bkil By the way, we still don't have a sustainable alternative to Mapillary to this day, so it's still up for grabs if anyone would like to chime in to such a project (i.e., publishing your photo gallery in a federated geo-indexable way). https://wiki.openstreetmap.org/wiki/Street-level_imagery_services https://github.com/nextcloud/maps/issues/885
[jeremycherfas], win0err, tei_ and btrem joined the channel
# capjamesg [snarfed] are you still looking for BlueSky bridgy support?
# capjamesg (iOS Autocorrect capitalization 🤦)
# capjamesg If so, can you remind me what I’d need to do?
tei_ joined the channel
# capjamesg POSSE to IRC sounds interesting.