fix lastmod
This commit is contained in:
parent
3baa708322
commit
eb7a80832b
|
@ -121,9 +121,6 @@
|
|||
background: inherit;
|
||||
padding: 0;
|
||||
}
|
||||
pre code > span {
|
||||
padding-inline: 1em;
|
||||
}
|
||||
.highlight pre {
|
||||
padding-block: 1em;
|
||||
}
|
||||
|
@ -155,25 +152,22 @@
|
|||
padding: 0.5em;
|
||||
}
|
||||
/* {{<hint>}} shortcode */
|
||||
.hint {
|
||||
.hint, .callout {
|
||||
padding: 1em;
|
||||
line-height: 2;
|
||||
}
|
||||
.hint,
|
||||
.hint.info,
|
||||
.hint.tip {
|
||||
background: rgba(142, 226, 142, 0.2);
|
||||
border-inline-start: 4px solid rgb(142, 226, 142);
|
||||
}
|
||||
|
||||
.hint.warning {
|
||||
background: rgba(218, 226, 142, 0.2);
|
||||
border-inline-start: 4px solid rgb(218, 226, 142);
|
||||
}
|
||||
|
||||
.hint.danger {
|
||||
background: rgba(226, 142, 142, 0.2);
|
||||
border-inline-start: 4px solid rgb(226, 142, 142);
|
||||
&.info, &.tip
|
||||
{
|
||||
background: rgba(142, 226, 142, 0.2);
|
||||
border-inline-start: 4px solid rgb(142, 226, 142);
|
||||
}
|
||||
&.warning {
|
||||
background: rgba(218, 226, 142, 0.2);
|
||||
border-inline-start: 4px solid rgb(218, 226, 142);
|
||||
}
|
||||
&.danger {
|
||||
background: rgba(226, 142, 142, 0.2);
|
||||
border-inline-start: 4px solid rgb(226, 142, 142);
|
||||
}
|
||||
}
|
||||
/* hugo-specific citation footnote */
|
||||
cite sup {
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# ActivityPub
|
||||
|
||||
## HTTP verbs
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Communication paradigms
|
||||
|
||||
## qualitative analysis
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Things you would need to do for compatibility
|
||||
|
||||
## Mastodon
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Ideas for extensions and differences from current implementations
|
||||
|
||||
## Webfinger Content-Type of activitystreams profile
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Joke ideas for federation that are still actually kinda valid but funny
|
||||
|
||||
## Federated mutes
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Prior art
|
||||
|
||||
## email
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Routing table
|
||||
|
||||
## trwnh.com
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
this is really the interface that makes pure AP servers discoverable.
|
||||
|
||||
problem: AP `id` can be literally anything
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,3 +1,7 @@
|
|||
+++
|
||||
updated = "2018"
|
||||
+++
|
||||
|
||||
# Essays
|
||||
|
||||
## Have you considered the alternative?
|
||||
|
@ -11,4 +15,48 @@ https://homebrewserver.club/have-you-considered-the-alternative.html
|
|||
|
||||
---
|
||||
|
||||
> the problem is not that federation doesn’t adapt, but rather that there are problems with its implementation for a very significant reason: software developers working on federated systems mostly work for free in their spare time or with little means [...] while Marlinspike seems to defend his product from a technological perspective, Gultsch’s counter argument moves back the discussion to the context of political economy.
|
||||
> the problem is not that federation doesn’t adapt, but rather that there are problems with its implementation for a very significant reason: software developers working on federated systems mostly work for free in their spare time or with little means [...] while Marlinspike seems to defend his product from a technological perspective, Gultsch’s counter argument moves back the discussion to the context of political economy.
|
||||
|
||||
## Avoid News
|
||||
|
||||
1) News does not represent the real world [...] the highly visible misleads us.
|
||||
|
||||
2) News is irrelevant [...] It’s very difficult for us to recognize what’s relevant. It’s much easier to recognize what’s new [...] if something really important happens, you will hear about it, even if you try to live protected from the news in a cocoon
|
||||
|
||||
3) News limits understanding [...] It’s not “news facts” that are important, but the threads that connect them
|
||||
|
||||
4-5) News is toxic for your body/society [...] News consumers risk impairing their physical health [...] News leads to collective neurosis [...] **Psychological scars do not heal easily**
|
||||
|
||||
6) News massively increases cognitive errors [...] Our brains crave stories that “make sense” – even if they don’t correspond to reality
|
||||
|
||||
7) News inhibits thinking [...] **The passageway from working memory to long-term memory forms a bottleneck in our brain** [...] Because news disrupts concentration, it actively weakens comprehension
|
||||
|
||||
8) News changes the structure of your brain [...] The more news we consume, the more we are exercising the neural circuits devoted to skimming and multitasking while ignoring those used for reading and thinking deeply [...] Your attention is set on fast-breaking events, so you hunger for more data about them [...] [this] feeds compulsive information-seeking behavior (CISB) [and long term potentiation (LTP)]
|
||||
|
||||
9) News is a waste of time [...] Information is no longer a scarce commodity. But attention is.
|
||||
|
||||
10) News separates reputation from achievement [...] people become famous for reasons that have little relevance to our lives
|
||||
|
||||
11) News is produced by journalists [...] Fewer than ten percent of the news stories are original. Fewer than one percent are truly investigative
|
||||
|
||||
12) Reports and forecasts can be or are wrong [...] Incorrect forecast are not only useless, they are harmful
|
||||
|
||||
13) News is manipulative [...] News is the perfect Trojan horse. Few bits of news arrive without a hidden
|
||||
agenda [...] It sets the public agenda
|
||||
|
||||
14) News makes us passive [...] **News stories are overwhelmingly about things you cannot influence** [...] it can lead to passivity and a sense of victimhood. The scientific term is learned helplessness
|
||||
|
||||
15) News gives us the illusion of caring [...] [it] delivers the illusion of care but doesn’t get us anywhere [...] we are not connected because we consume news
|
||||
|
||||
16) News kills creativity [...] Things we already know severely impact creativity [...] If you want to come up with old solutions, read news
|
||||
|
||||
//Isn’t it inhumane not to care about Haiti? Your shtick feels pretty cold.//
|
||||
|
||||
Is it inhumane not to care about horrific things happening on other planets? The point is: You can’t care about everything in the universe, on the earth, in your country, not even in your city. Nor should you.
|
||||
|
||||
//Where is the compassion?//
|
||||
|
||||
Let me state this even stronger: Caring without action is inhumane. It gives us the illusion of making the world a better place. Truth is, we do it for us. We revel in the marinade of caring. What does it change? It makes us feel good (humane if you like) but doesn’t help a thing. [...] Empathy – if it remains empathy – is useless.
|
||||
|
||||
http://www.dobelli.com/en/essays/news-diet/
|
||||
https://web.archive.org/web/20180106154431/http://www.dobelli.com/en/essays/news-diet/
|
|
@ -1,51 +1,11 @@
|
|||
+++
|
||||
updated = "2018"
|
||||
+++
|
||||
|
||||
# Quotes
|
||||
|
||||
## Managers need private offices for "productivity" but put their workers in open offices
|
||||
|
||||
When they went to open office one of my friends said in the announcement meeting it was asked why managers and higher ups needed offices. Productivity was the answer. Didn't seem to phase them that the people actually doing the producing were going to be producing less.
|
||||
|
||||
https://arstechnica.com/science/2018/07/in-open-offices-workers-chat-70-less-are-less-productive-and-email-more/?comments=1&post=35658503#comment-35658503
|
||||
|
||||
## Avoid News
|
||||
|
||||
1) News does not represent the real world [...] the highly visible misleads us.
|
||||
|
||||
2) News is irrelevant [...] It’s very difficult for us to recognize what’s relevant. It’s much easier to recognize what’s new [...] if something really important happens, you will hear about it, even if you try to live protected from the news in a cocoon
|
||||
|
||||
3) News limits understanding [...] It’s not “news facts” that are important, but the threads that connect them
|
||||
|
||||
4-5) News is toxic for your body/society [...] News consumers risk impairing their physical health [...] News leads to collective neurosis [...] **Psychological scars do not heal easily**
|
||||
|
||||
6) News massively increases cognitive errors [...] Our brains crave stories that “make sense” – even if they don’t correspond to reality
|
||||
|
||||
7) News inhibits thinking [...] **The passageway from working memory to long-term memory forms a bottleneck in our brain** [...] Because news disrupts concentration, it actively weakens comprehension
|
||||
|
||||
8) News changes the structure of your brain [...] The more news we consume, the more we are exercising the neural circuits devoted to skimming and multitasking while ignoring those used for reading and thinking deeply [...] Your attention is set on fast-breaking events, so you hunger for more data about them [...] [this] feeds compulsive information-seeking behavior (CISB) [and long term potentiation (LTP)]
|
||||
|
||||
9) News is a waste of time [...] Information is no longer a scarce commodity. But attention is.
|
||||
|
||||
10) News separates reputation from achievement [...] people become famous for reasons that have little relevance to our lives
|
||||
|
||||
11) News is produced by journalists [...] Fewer than ten percent of the news stories are original. Fewer than one percent are truly investigative
|
||||
|
||||
12) Reports and forecasts can be or are wrong [...] Incorrect forecast are not only useless, they are harmful
|
||||
|
||||
13) News is manipulative [...] News is the perfect Trojan horse. Few bits of news arrive without a hidden
|
||||
agenda [...] It sets the public agenda
|
||||
|
||||
14) News makes us passive [...] **News stories are overwhelmingly about things you cannot influence** [...] it can lead to passivity and a sense of victimhood. The scientific term is learned helplessness
|
||||
|
||||
15) News gives us the illusion of caring [...] [it] delivers the illusion of care but doesn’t get us anywhere [...] we are not connected because we consume news
|
||||
|
||||
16) News kills creativity [...] Things we already know severely impact creativity [...] If you want to come up with old solutions, read news
|
||||
|
||||
//Isn’t it inhumane not to care about Haiti? Your shtick feels pretty cold.//
|
||||
|
||||
Is it inhumane not to care about horrific things happening on other planets? The point is: You can’t care about everything in the universe, on the earth, in your country, not even in your city. Nor should you.
|
||||
|
||||
//Where is the compassion?//
|
||||
|
||||
Let me state this even stronger: Caring without action is inhumane. It gives us the illusion of making the world a better place. Truth is, we do it for us. We revel in the marinade of caring. What does it change? It makes us feel good (humane if you like) but doesn’t help a thing. [...] Empathy – if it remains empathy – is useless.
|
||||
|
||||
http://www.dobelli.com/en/essays/news-diet/
|
||||
https://web.archive.org/web/20180106154431/http://www.dobelli.com/en/essays/news-diet/
|
||||
https://arstechnica.com/science/2018/07/in-open-offices-workers-chat-70-less-are-less-productive-and-email-more/?comments=1&post=35658503#comment-35658503
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2018"
|
||||
+++
|
||||
# How to order glasses online
|
||||
|
||||
## My measurements
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
# Photography
|
||||
|
||||
+++
|
||||
title = "Photography"
|
||||
updated = "2019"
|
||||
+++
|
||||
## "Beginner" vs "expert" is a false dichotomy
|
||||
|
||||
There is no camera for "beginners". It doesn't make any sense to recommend a camera based on skill level at all. Instead, getting into photography should go something like this:
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,4 +1,8 @@
|
|||
# Fascism
|
||||
+++
|
||||
title = "Fascism"
|
||||
updated = "2019"
|
||||
+++
|
||||
|
||||
|
||||
## Definition
|
||||
**Fascism** is a political ideology defined by the following:
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
+++
|
||||
updated = "2019"
|
||||
+++
|
||||
|
||||
# Policy
|
||||
|
||||
## 'It’s a miracle': Helsinki's radical solution to homelessness
|
||||
|
@ -8,5 +12,4 @@ Finland is the only EU country where homelessness is falling. Its secret? Giving
|
|||
|
||||
> As in many countries, homelessness in Finland had long been tackled using a staircase model: you were supposed to move through different stages of temporary accommodation as you got your life back on track, with an apartment as the ultimate reward.
|
||||
|
||||
|
||||
> “We decided to make the housing unconditional,” says Kaakinen. “To say, look, you don’t need to solve your problems before you get a home. Instead, a home should be the secure foundation that makes it easier to solve your problems.”
|
|
@ -1,4 +1,7 @@
|
|||
# Radicalization
|
||||
+++
|
||||
title = "Radicalization"
|
||||
updated = "2018"
|
||||
+++
|
||||
|
||||
## The three factors of radicalization
|
||||
|
||||
|
@ -10,7 +13,7 @@
|
|||
|
||||
-- [<cite>"The psychology of how someone becomes radicalized"</cite> (Angela Fritz, <i>The Washington Post</i>, 2018 Nov 1)](https://www.washingtonpost.com/science/2018/11/01/psychology-how-someone-becomes-radicalized/?noredirect=on&utm_term=.bb1c34780f0b)
|
||||
|
||||
# Deradicalization tactics
|
||||
## Deradicalization tactics
|
||||
|
||||
>Weilnboeck says one lesson successful facilitators have learned is to avoid engaging in debates about politics or religious doctrine with those they are trying to deradicalize.
|
||||
>
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,3 +1,5 @@
|
|||
+++
|
||||
+++
|
||||
# Gotchas
|
||||
|
||||
{{<toc>}}
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
AS2-Core says
|
||||
|
||||
> An Activity Streams Document is a JSON document whose root value is an Activity Streams Object of any type [...] and whose MIME media type is `application/activity+json` [...] Implementations SHOULD consider the `application/ld+json; profile="https://www.w3.org/ns/activitystreams"` media type as being equivalent to `application/activity+json`.
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Note vs Article
|
||||
|
||||
Discussion: <https://socialhub.activitypub.rocks/t/resolving-the-note-vs-article-distinction/258>
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Activity
|
||||
|
||||
an Activity is just an object that has an `actor`
|
|
@ -1,3 +1,5 @@
|
|||
+++
|
||||
+++
|
||||
# Actor
|
||||
|
||||
an actor is just something that has `inbox` and `outbox`
|
||||
|
@ -76,4 +78,8 @@ seems to have a switch-case for Application Group Organization Person Service, b
|
|||
|
||||
https://github.com/Chocobozzz/PeerTube/blob/develop/shared/models/activitypub/activitypub-actor.ts
|
||||
|
||||
seems to have required fields `type` `id` `following` `followers` `inbox` `outbox` `preferredUsername` `url` `name` `endpoints.sharedInbox` `summary` `attributedTo` `publicKey` `publicKey.id` `publicKey.owner` `publicKey.publicKeyPem` [whew that's a lot!]
|
||||
seems to have required fields `type` `id` `following` `followers` `inbox` `outbox` `preferredUsername` `url` `name` `endpoints.sharedInbox` `summary` `attributedTo` `publicKey` `publicKey.id` `publicKey.owner` `publicKey.publicKeyPem` [whew that's a lot!]
|
||||
|
||||
other code spots:
|
||||
|
||||
- https://github.com/Chocobozzz/PeerTube/blob/5070a9956052ed494077bb5e308eedd13e964799/server/helpers/custom-validators/activitypub/actor.ts#L24
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Flag
|
||||
|
||||
used for reports
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,13 +1,18 @@
|
|||
+++
|
||||
+++
|
||||
|
||||
# Tags
|
||||
|
||||
Tags are a property of Objects, stored in the `tag` array.
|
||||
|
||||
From <https://www.w3.org/TR/activitystreams-vocabulary/#dfn-tag>
|
||||
|
||||
- URI: https://www.w3.org/ns/activitystreams#tag
|
||||
- Notes: One or more "tags" that have been associated with an objects. A tag can be any kind of Object. The key difference between attachment and tag is that the former implies association by inclusion, while the latter implies associated by reference.
|
||||
- Domain: Object
|
||||
- Range: Object | Link
|
||||
**URI:** https://www.w3.org/ns/activitystreams#tag
|
||||
**Notes:** One or more "tags" that have been associated with an objects. A tag can be any kind of Object. The key difference between attachment and tag is that the former implies association by inclusion, while the latter implies associated by reference.
|
||||
**Domain:** Object
|
||||
**Range:** Object | Link
|
||||
|
||||
{{<toc>}}
|
||||
|
||||
## Tagging Objects {#objects}
|
||||
|
||||
|
@ -19,20 +24,20 @@ An example application would be the Instagram or Facebook "tag a person in this
|
|||
|
||||
```json
|
||||
{
|
||||
"id": "https://social.example/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b",
|
||||
"type": "Image",
|
||||
"url": "https://cdn.social.example/1578798509203652608.jpg",
|
||||
"tag": [
|
||||
"https://facebook.com/users/1"
|
||||
]
|
||||
"id": "https://social.example/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b",
|
||||
"type": "Image",
|
||||
"url": "https://cdn.social.example/1578798509203652608.jpg",
|
||||
"tag": [
|
||||
"https://facebook.com/users/1"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
```json
|
||||
{
|
||||
"id": "https://facebook.com/users/1",
|
||||
"type": "Person",
|
||||
"name": "Mark Zuckerberg"
|
||||
"id": "https://facebook.com/users/1",
|
||||
"type": "Person",
|
||||
"name": "Mark Zuckerberg"
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -56,21 +61,21 @@ Consider the following Article:
|
|||
|
||||
```json
|
||||
{
|
||||
"@context": [
|
||||
"https://www.w3.org/ns/activitystreams"
|
||||
],
|
||||
"@context": [
|
||||
"https://www.w3.org/ns/activitystreams"
|
||||
],
|
||||
|
||||
"id": "https://social.trwnh.com/about",
|
||||
"type": "Article",
|
||||
"content": "<marquee><p>My homepage is <a href=\"https://trwnh.com\" rel=\"me\">trwnh.com</a></p></marquee>",
|
||||
"tag": [
|
||||
{
|
||||
"type": "Link",
|
||||
"name": "trwnh.com",
|
||||
"href": "https://trwnh.com",
|
||||
"rel": ["me"]
|
||||
}
|
||||
]
|
||||
"id": "https://social.trwnh.com/about",
|
||||
"type": "Article",
|
||||
"content": "<marquee><p>My homepage is <a href=\"https://trwnh.com\" rel=\"me\">trwnh.com</a></p></marquee>",
|
||||
"tag": [
|
||||
{
|
||||
"type": "Link",
|
||||
"name": "trwnh.com",
|
||||
"href": "https://trwnh.com",
|
||||
"rel": ["me"]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -84,22 +89,22 @@ In Misskey, a quote is a post that embeds a copy of another post below it. Using
|
|||
|
||||
```json
|
||||
{
|
||||
"@context": [
|
||||
"https://www.w3.org/ns/activitystreams"
|
||||
],
|
||||
"@context": [
|
||||
"https://www.w3.org/ns/activitystreams"
|
||||
],
|
||||
|
||||
"id": "https://example.com/@alice/statuses/1578798374936652608",
|
||||
"type": "Note",
|
||||
"content": "<p>This post is pretty cool <a href=\"https://trwnh.com/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b\">RE: https://trwnh.com/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b</a></p>",
|
||||
"tag": [
|
||||
{
|
||||
"type": "Link",
|
||||
"name": "RE: https://trwnh.com/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b",
|
||||
"href": "https://trwnh.com/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b",
|
||||
"mediaType": "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"",
|
||||
"rel": ["https://misskey-hub.net/ns#_misskey_quote"]
|
||||
}
|
||||
]
|
||||
"id": "https://example.com/@alice/statuses/1578798374936652608",
|
||||
"type": "Note",
|
||||
"content": "<p>This post is pretty cool <a href=\"https://trwnh.com/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b\">RE: https://trwnh.com/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b</a></p>",
|
||||
"tag": [
|
||||
{
|
||||
"type": "Link",
|
||||
"name": "RE: https://trwnh.com/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b",
|
||||
"href": "https://trwnh.com/objects/e9c427d8-cef1-48bd-ab89-59a6df29673b",
|
||||
"mediaType": "application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\"",
|
||||
"rel": ["https://misskey-hub.net/ns#_misskey_quote"]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -116,21 +121,26 @@ General pseudocode may look something like this:
|
|||
```py
|
||||
# Extract custom emojis from tag array
|
||||
tags = Object.tag
|
||||
CONTENT_TYPE = 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"'
|
||||
ObjectLinks = [tag for tag in tags where tag.mediaType == CONTENT_TYPE]
|
||||
REQUEST_TYPE = 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"'
|
||||
RESPONSE_TYPE = 'application/activity+json'
|
||||
ObjectLinks = [
|
||||
tag
|
||||
for tag in tags
|
||||
where tag.mediaType in set(REQUEST_TYPE, RESPONSE_TYPE)
|
||||
]
|
||||
|
||||
for Link in ObjectLinks:
|
||||
|
||||
# The purpose of object links is to know that you can fetch an object with ActivityPub:
|
||||
Object = http.GET(
|
||||
Link.href,
|
||||
headers={
|
||||
'Accept': CONTENT_TYPE
|
||||
}
|
||||
)
|
||||
|
||||
# You can now process the object link in some way,
|
||||
# for example by creating deep links to be resolved within the local application
|
||||
|
||||
# The purpose of object links is to know that you can fetch an object with ActivityPub:
|
||||
Object = http.GET(
|
||||
Link.href,
|
||||
headers={
|
||||
'Accept': REQUEST_TYPE
|
||||
}
|
||||
)
|
||||
|
||||
# You can now process the object link in some way,
|
||||
# for example by creating deep links to be resolved within the local application
|
||||
```
|
||||
|
||||
The text of FEP-e232 may be found at <https://codeberg.org/fediverse/fep/src/branch/main/feps/fep-e232.md>
|
||||
|
@ -147,20 +157,20 @@ Consider the following Note:
|
|||
|
||||
```json
|
||||
{
|
||||
"@context": [
|
||||
"https://www.w3.org/ns/activitystreams"
|
||||
],
|
||||
"@context": [
|
||||
"https://www.w3.org/ns/activitystreams"
|
||||
],
|
||||
|
||||
"id": "https://example.com/@alice/hello-world",
|
||||
"type": "Note",
|
||||
"content": "<p>Hello @bob</p>",
|
||||
"tag": [
|
||||
{
|
||||
"type": "Mention",
|
||||
"name": "@bob",
|
||||
"href": "https://example.com/@bob"
|
||||
}
|
||||
]
|
||||
"id": "https://example.com/@alice/hello-world",
|
||||
"type": "Note",
|
||||
"content": "<p>Hello @bob</p>",
|
||||
"tag": [
|
||||
{
|
||||
"type": "Mention",
|
||||
"name": "@bob",
|
||||
"href": "https://example.com/@bob"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -176,7 +186,7 @@ A sub-type of Link that refers to a `#topic`, typically used for associating the
|
|||
|
||||
#### Implementation details {#hashtag-implementation}
|
||||
|
||||
<p class="callout warning">Not officially part of the ActivityPub context definition, but still assumed to be included in the ActivityStreams `as:` namespace by most implementations (for historical reasons). Implementations should manually define `as:Hashtag` in their JSON-LD `@context`.</p>
|
||||
<p class="callout hint warning">Not officially part of the ActivityPub context definition, but still assumed to be included in the ActivityStreams `as:` namespace by most implementations (for historical reasons). Implementations should manually define `as:Hashtag` in their JSON-LD `@context`.</p>
|
||||
|
||||
The `href` typically links to a collection of all objects tagged with the same Hashtag.
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2018"
|
||||
+++
|
||||
# Build Notes
|
||||
|
||||
## ASUS Z170I Gaming
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2019"
|
||||
+++
|
||||
# Linux laptop
|
||||
i'm using an asus zenbook infinity (ux301la-dh71t) for this. main challenges of laptops are being limited to 1 monitor, needing to set up hotkeys, and other such stuff.
|
||||
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2021"
|
||||
+++
|
||||
### Mailpile
|
||||
- selfhosted mail archive?
|
||||
- more of a webmail client?
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2018"
|
||||
+++
|
||||
# Gorilla Glass
|
||||
|
||||
Gorilla Glass is a brand of glass made by Corning and frequently used to manufacture smartphones. This page lists some of the details of each generation, such as chemical makeup, durability, scratch resistance, shatter resistance, and changes to these between generations.
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2020"
|
||||
+++
|
||||
# Open Web
|
||||
|
||||
The open web is built on multiple technologies recommended by the W3C. This page is dedicated to taking notes about protocols and standards, and basic details of their implementation.
|
||||
|
@ -14,9 +17,9 @@ Microformats are used to define the Semantic Web, which aims to make machine-rea
|
|||
|
||||
## Dynamic content
|
||||
|
||||
### Indieweb
|
||||
### IndieWeb
|
||||
|
||||
The goal of the Indieweb project is to allow websites to be used as full-fledged substitutes for other services. The ideal indiewebsite would be able to self-host media content in multiple post types, serve as an authentication for logging into other services, and be used as a person's identity. Indieweb strategies include using your domain name as your identity, self-hosting your own data on that domain, syndicating copies of your content to silo services, and maintaining actually permanent permalinks. http://indieweb.org
|
||||
The goal of the IndieWeb project is to allow websites to be used as full-fledged substitutes for other services. The ideal indiewebsite would be able to self-host media content in multiple post types, serve as an authentication for logging into other services, and be used as a person's identity. Indieweb strategies include using your domain name as your identity, self-hosting your own data on that domain, syndicating copies of your content to silo services, and maintaining actually permanent permalinks. http://indieweb.org
|
||||
|
||||
### ActivityPub
|
||||
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2021"
|
||||
+++
|
||||
## foundational concepts
|
||||
- regular grammars, subject-verb-object, and the actor system
|
||||
- addressing and identity
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2020"
|
||||
+++
|
||||
# Tasks
|
||||
|
||||
## rough overview
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2022-12-15"
|
||||
+++
|
||||
# set up woodpecker ci with gitea on arch linux
|
||||
|
||||
assuming you already have a working gitea and are only one person, idk
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2020"
|
||||
+++
|
||||
# Websites
|
||||
|
||||
## css block vs inline directions
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = "2019"
|
||||
+++
|
||||
# XMPP
|
||||
|
||||
## xmpp upcoming things
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
+++
|
||||
+++
|
|
@ -1,4 +1,9 @@
|
|||
# What's wrong with address books
|
||||
+++
|
||||
title = "What's wrong with address books"
|
||||
updated = "2019-08-20"
|
||||
+++
|
||||
|
||||
<https://mastodon.social/@trwnh/102648053339382526>
|
||||
|
||||
Addresses are not owned. They are leased.
|
||||
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
+++
|
||||
updated = 2020
|
||||
+++
|
||||
# What's wrong with Mastodon
|
||||
|
||||
list of things that irk me about my day-to-day experience:
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
+++
|
||||
+++
|
||||
# What's wrong with SNS
|
||||
|
||||
Too many assumptions, too much collapsing and subsuming of things that should be separate.
|
||||
|
||||
For example, an account, a user, and a profile are all treated as the same thing when they are not. A status is assumed to only ever be attached to one person. The URLs for all of this all depend on each other.
|
||||
|
||||
No. Bad.
|
||||
|
||||
Here's what to do instead:
|
||||
|
||||
- account = set of credentials used for logging in. may be email and password, 2FA, TOTP, whatever.
|
||||
|
|
|
@ -2,9 +2,8 @@
|
|||
<hr>
|
||||
<div class="container">
|
||||
{{ if eq .Kind "page" }}
|
||||
<p class="lastmod">Last modified <datetime class="date">{{ .Lastmod.Format "Mon Jan 2, 2006" }}</datetime><!--span class="edit-link"><br><a href='{{if eq .Site.Params.forge "github"}}{{printf "https://github.com/%s/edit/%s/%s/%s" .Site.Params.repo .Site.Params.branch .Site.Language.ContentDir .File.Path}}{{else if eq .Site.Params.forge "gitea"}}{{printf "%s/%s/_edit/%s/%s/%s" .Site.Params.forgeUrl .Site.Params.repo .Site.Params.branch (cond (isset .Site.Language "ContentDir") .Site.Language.ContentDir "content") .File.Path}}{{else}}#{{end}}'>Edit this page</a></span--></p>
|
||||
<p class="lastmod">Last modified <datetime class="date">{{ or .Page.Params.updated (.Lastmod.UTC.Format "Mon Jan 2, 2006 at 15:04 MST") }}</datetime><!--span class="edit-link"><br><a href='{{if eq .Site.Params.forge "github"}}{{printf "https://github.com/%s/edit/%s/%s/%s" .Site.Params.repo .Site.Params.branch .Site.Language.ContentDir .File.Path}}{{else if eq .Site.Params.forge "gitea"}}{{printf "%s/%s/_edit/%s/%s/%s" .Site.Params.forgeUrl .Site.Params.repo .Site.Params.branch (cond (isset .Site.Language "ContentDir") .Site.Language.ContentDir "content") .File.Path}}{{else}}#{{end}}'>Edit this page</a></span--></p>
|
||||
{{ end }}
|
||||
</div>
|
||||
</footer>
|
||||
{{ partial "search/search-index.html" . }}
|
||||
|
||||
|
|
|
@ -18,4 +18,5 @@
|
|||
<style>
|
||||
a[href="#top"] {display: none;}
|
||||
</style>
|
||||
{{ partial "search/search-index.html" . }}
|
||||
{{ end }}
|
Loading…
Reference in a new issue