User:Notes.whatthefuck.computer

About Me
I am Ryan Rix. I exist in various places. I have a pile of domains that I am trying to slim down, and am building tools to make my statically-generated website indieweb compatible.

I have a very goofy interesting computing setup that leads me down a path of supporting mostly statically generated tooling and libre software that I run and control, but I am also a huge proponent of using Matrix.org as a decentralized data layer to communicate with smarter, personally controlled pieces of software. I am exploring the intersection of ideas like Matrix and the IndieWeb.

Currently my meatbody exists in Oakland, California. My homepage has a real biography that you can read, along with a pile of 'rel=me' to other places I am me at.

Domain Cleanup and 2016 website redesign
The goal at the end of this is to have two domains:

A portfolio/project hosting site (whatthefuck.computer)
This site replaces doc.rix.si my current project portfolio/todolist site with basically the same things but nicer looking.


 * Rewrite wtf.comp/blog URLs to notes.wtf.comp pages
 * Rewrite doc.rix.si pages to wtf.comp pages.

This page will progressively enhance supporting text-only www browsers like EWW and fancy graphical www browsers like Chrome and Firefox with some sparkly CSS and JavaScripts in a way that doesn't make me frustrated when using it.

My miniblog (notes.whatthefuck.computer)

 * Move all of my blog posts under here and use mfblog or whatever I end up calling it to generate it.
 * Support regenerating the index without regenerating every single blog page
 * See how stupid an idea it is to implement a micropub listener in elnode to wire up OwnYourGram and OwnYourResponses to it.
 * It might be easier to set up a thing that consumes micropub and exposes them as RSS, as we can then automate the org-mode half of it
 * Set up an emacs on shell01 running sico s
 * Sico capture templates for easy to use h-entry types
 * text posts
 * u-photos and u-videos that can just get fed an Matrix photo (or a string like "last photo") and push it in to my blog

Arcology
Arcoloy is a static-site generator for Emacs Org-mode. It's pretty much entirely tailored to my usecases, but could be useful to other human beings. Basically generate an index of posts, each is a heading in a single Org-mode file, pull metadata and generate pages annotated with microformats. I have written about Arcology using Arcology here.

How to Use
Arcology is an Emacs library that was designed by and has only been used by me. As a result, it is probably really darn obtuse to use if you aren't me. In short, you should know roughly how to use Org-mode and the Emacs customize interface, and then know the obscure rules to markup your posts to be matched as various post-types in Arcology:


 * Arcology will only export headings or files that have an EXPORT tag.
 * Tagging is done with "Ctrl-c Ctrl-c"
 * Properties are set with "Ctrl-c Ctrl-x p"
 * Attaching files is done with "Ctrl-c Ctrl-x a"

You'll want to create your own Templates, which unfortunately don't have inheritance, but it's a start.


 * Tag a post as READ to create a read post.
 * Tag a post as CHECKIN and call M-x arcology-checkin-get-venue-id while your cursor is inside of it to create a checkin
 * Create a post and add a P-RSVP property to it to create an rsvp
 * Video posts are created by either:
 * Adding a YOUTUBE-URL property with a full URL to a youtube video (the full URL with a ?watch in it like https://www.youtube.com/watch?v=RXQCrOEx1-g)
 * Attaching an ogv, mkv or mp4 file to an entry
 * Tag a post as LIKE and have a U-LIKE-OF property pointing to the post to like.
 * Steps posts (how many steps you've walked) are STEPS tagged posts.
 * jam posts are created by adding JAM to a tag; it'll take the heading and shove it in to a YouTube search URL since my Memacs LastFM scraper only gives me MusicBrainz IDs
 * review posts are created by tagging a page as REVIEW with a P-RATING property with a number between 1 and 5, and a P-ITEM property with the full h-item markup to the item you are reviewing.
 * notes are entries without any body text
 * articles are entries with body text.

Functions

 * [DONE] Copy static files (favicon, js, css)
 * [DONE] Generate an index
 * List of post titles with permalinks to them
 * h-card for IndieAuth &c
 * [DONE] Generate post pages
 * HTML title
 * Clean (don't use the HTML)
 * Post HTML
 * Support all IndieWeb post types possible
 * h-entry
 * [DONE] support for u-photo, u-video, u-audio based on org-mode attachments
 * [NEXT] support for u-in-reply-to, u-repost-of, u-like-of based on org-mode property table
 * [NEXT] support for p-comment, p-rsvp based on org-mode property table
 * [DONE] h-review
 * [NEXT] h-event can be inferred if a post has an Active Timestamp
 * Generate post RSS Feeds
 * DONE Syndicate an entry with bridgy
 * Automatically republish the entry with the rel=syndication links included.

Edit the IWC wiki with Emacs
You can use mediawiki.el to edit the IWC wiki with a bit of work. Since the site uses IndieAuth, there is no Username/Password combination, you can't just say "Hey mediawiki.el log in for me".

Log in with your favorite graphical www browser and use a web inspector to grab the indiewebcamp_session cookie, then put this dope as frick elisp in a scratch buffer and evaluate it.

(add-to-list 'mediawiki-site-alist '("IndieWebCamp" "https://indiewebcamp.com/wiki/" "nil" "nil" ""				  "Main Page") (setq mediawiki-site "IndieWebCamp") (url-cookie-store "indiewebcamp_session" "" nil "indiewebcamp.com" "/" t)

This will work until the session cookie is invalidated with a browser logout. It's, uh, janky, but it works.