init
This commit is contained in:
commit
da6f1270b8
|
@ -0,0 +1 @@
|
||||||
|
public/
|
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
title: "{{ replace .Name "-" " " | title }}"
|
||||||
|
date: {{ .Date }}
|
||||||
|
draft: true
|
||||||
|
---
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
baseURL = "."
|
||||||
|
languageCode = "en-us"
|
||||||
|
title = "blog // ~ben"
|
||||||
|
theme = "gruvbox"
|
||||||
|
uglyurls = true
|
||||||
|
|
||||||
|
[taxonomies]
|
||||||
|
tag = "tags"
|
|
@ -0,0 +1,40 @@
|
||||||
|
---
|
||||||
|
title: '4k gaming with a gtx1080ti'
|
||||||
|
date: 201710021609.26
|
||||||
|
tags:
|
||||||
|
- '4k-gaming'
|
||||||
|
- 'pc-master-race'
|
||||||
|
- 'gtx1080ti'
|
||||||
|
---
|
||||||
|
|
||||||
|
i recently picked up a gtx1080ti on newegg (and a 4k monitor earlier in
|
||||||
|
the summer on prime day). i can't stop playing the witcher 3. even
|
||||||
|
though it's a couple years old, it just looks so good. plus, the story
|
||||||
|
and gameplay are incredible as well. i find myself dreaming about the
|
||||||
|
game and longing to play it when i'm not. i'll have to say it is
|
||||||
|
definitively the best game i've ever played.
|
||||||
|
|
||||||
|
some of the other games that i'm looking forward to exploring more of in
|
||||||
|
4k are:
|
||||||
|
|
||||||
|
- destiny 2
|
||||||
|
- prey
|
||||||
|
- overwatch (not that this will look insanely good, it will just be
|
||||||
|
super silky smooth)
|
||||||
|
- fallout 4
|
||||||
|
- battlefield 1
|
||||||
|
- dishonored
|
||||||
|
- dishonored 2
|
||||||
|
- dying light
|
||||||
|
- battlefront
|
||||||
|
- pubg
|
||||||
|
- doom (2016)
|
||||||
|
- gta5
|
||||||
|
- just cause 3
|
||||||
|
- hellblade: senua's sacrifice
|
||||||
|
- watch dogs 2
|
||||||
|
- many others
|
||||||
|
|
||||||
|
tags: [4k-gaming](tag_4k-gaming.html),
|
||||||
|
[pc-master-race](tag_pc-master-race.html),
|
||||||
|
[gtx1080ti](tag_gtx1080ti.html)
|
|
@ -0,0 +1,21 @@
|
||||||
|
---
|
||||||
|
title: '8values'
|
||||||
|
date: 201801031241.09
|
||||||
|
tags:
|
||||||
|
- '8values'
|
||||||
|
- 'ideology'
|
||||||
|
- 'politics'
|
||||||
|
---
|
||||||
|
|
||||||
|
not that i'm very surprised by this, but i took the quiz again (after
|
||||||
|
losing my results url) and got these results.
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/8values.png)
|
||||||
|
|
||||||
|
[take the quiz here](https://8values.github.io)
|
||||||
|
|
||||||
|
[my results again as a
|
||||||
|
link](https://8values.github.io/results.html?e=95.7&d=92.6&g=78.5&s=92.3)
|
||||||
|
|
||||||
|
tags: [8values](tag_8values.html), [ideology](tag_ideology.html),
|
||||||
|
[politics](tag_politics.html)
|
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
title: 'blog // ~ben'
|
||||||
|
---
|
||||||
|
|
||||||
|
a blog about tildes and stuff
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
title: ''
|
||||||
|
date:
|
||||||
|
tags:
|
||||||
|
---
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
title: ''
|
||||||
|
date:
|
||||||
|
tags:
|
||||||
|
---
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
---
|
||||||
|
title: 'antiwitze'
|
||||||
|
date: 201711271658.17
|
||||||
|
tags:
|
||||||
|
- 'german'
|
||||||
|
- 'jokes'
|
||||||
|
- 'antiwitze'
|
||||||
|
---
|
||||||
|
|
||||||
|
- uebern berg ist schneller als zu fuss sagte der wanderer und schwamm
|
||||||
|
los
|
||||||
|
- Was ist der Unterschied zwischen einem Vogel? Beide Beine sind
|
||||||
|
gleich lang. Besonders das linke.
|
||||||
|
- Nachts ist es kälter als draußen.
|
||||||
|
- Wer später bremst, fährt länger schnell.
|
||||||
|
- Cola schmeckt besser als aus dem Glas!!!
|
||||||
|
- Zu Fuß ist schneller als übern Berg!
|
||||||
|
- Was ist weiss und wandert den Berg hinauf? Eine Lawine mit Heimweh.
|
||||||
|
|
||||||
|
tags: [german](tag_german.html), [jokes](tag_jokes.html),
|
||||||
|
[antiwitze](tag_antiwitze.html)
|
|
@ -0,0 +1,19 @@
|
||||||
|
---
|
||||||
|
title: 'bashblog and your gopherhole'
|
||||||
|
date: 201807221144.03
|
||||||
|
tags:
|
||||||
|
- 'tilde'
|
||||||
|
- 'blog'
|
||||||
|
---
|
||||||
|
|
||||||
|
i've created [a repo](https://git.tildeverse.org/meta/bashblog) for the
|
||||||
|
tilde.team customizations to
|
||||||
|
[bashblog](https://github.com/cfenollosa/bashblog).
|
||||||
|
|
||||||
|
it will now make sure that your ~/public\_gopher exists and symlink your
|
||||||
|
blog into it with a nice gophermap to list all the markdown styled
|
||||||
|
posts.
|
||||||
|
|
||||||
|
try it out and let me know if there are any problems!
|
||||||
|
|
||||||
|
tags: [tilde](tag_tilde.html), [blog](tag_blog.html)
|
|
@ -0,0 +1,15 @@
|
||||||
|
---
|
||||||
|
title: 'blog update'
|
||||||
|
date: 201711272048.10
|
||||||
|
tags:
|
||||||
|
- 'blog'
|
||||||
|
- 'update'
|
||||||
|
---
|
||||||
|
|
||||||
|
sorry for the blast of posts. i recreated them from a wordpress blog on
|
||||||
|
[motd.org](http://motd.org).
|
||||||
|
|
||||||
|
i plan on posting some random thoughts here from time to time. thanks
|
||||||
|
for checking in.
|
||||||
|
|
||||||
|
tags: [blog](tag_blog.html), [update](tag_update.html)
|
|
@ -0,0 +1,48 @@
|
||||||
|
---
|
||||||
|
title: 'Christian Morgenstern – “verkehrte Welt”'
|
||||||
|
date: 201711271652.49
|
||||||
|
tags:
|
||||||
|
- 'german'
|
||||||
|
- 'words'
|
||||||
|
- 'poetry'
|
||||||
|
- 'nonsense'
|
||||||
|
---
|
||||||
|
|
||||||
|
Dunkel war’s der Mond schien helle, Schnee bedeckt die grüne Flur als
|
||||||
|
ein Auto blitzeschnelle, langsam um die Ecke fuhr.
|
||||||
|
|
||||||
|
Drinnen saßen stehend Leute, schweigend ins Gespräch vertieft, als ein
|
||||||
|
totgeschossner Hase, auf der Sandbank Schlittschuh lief.
|
||||||
|
|
||||||
|
Und der Wagen fuhr im Trabe, rückwärts einen Berg hinauf. Droben zog ein
|
||||||
|
alter Rabe grade eine Turmuhr auf.
|
||||||
|
|
||||||
|
Ringsumher herrscht tiefes schweigen und mit fürchterlichem Krach,
|
||||||
|
spielen in des Grases Zweigen zwei Kamele lautlos Schach.
|
||||||
|
|
||||||
|
Und auf einer roten Parkbank, die blau angestrichen war, saß ein
|
||||||
|
blondgelockter Jüngling mit kohlrabenschwarzem Haar.
|
||||||
|
|
||||||
|
Neben ihm ne alte Schrulle, zählte kaum erst 16 Jahr, In der Hand ne’
|
||||||
|
Butterstulle, die mit Schmalz bestrichen war.
|
||||||
|
|
||||||
|
Droben auf dem Apfelbaume, der sehr süße Birnen trug, hing des Frühlings
|
||||||
|
letzte Pflaume und an Nüssen noch genug.
|
||||||
|
|
||||||
|
Von der regennassen Straße wirbelte der Staub empor und der Junge bei
|
||||||
|
der Hitze mächtig an den Ohren fror.
|
||||||
|
|
||||||
|
Beide Hände in den Taschen hielt er sich die Augen zu. Denn er konnte
|
||||||
|
nicht ertragen, wie nach Veilchen roch die Kuh.
|
||||||
|
|
||||||
|
Holder Engel, süßer Bengel, furchtbar liebes Trampeltier. Du hast Augen
|
||||||
|
wie Sardellen, alle Ochsen gleichen Dir.
|
||||||
|
|
||||||
|
Und zwei Fische liefen munter, durch das Blaue Kornfeld hin. Endlich
|
||||||
|
ging die Sonne unter und der graue Tag erschien.
|
||||||
|
|
||||||
|
Und das alles dichtet Goethe Als er in der Morgenröte Liegend auf dem
|
||||||
|
Nachttopf saß Und dabei die Zeitung las.
|
||||||
|
|
||||||
|
tags: [german](tag_german.html), [words](tag_words.html),
|
||||||
|
[poetry](tag_poetry.html), [nonsense](tag_nonsense.html)
|
|
@ -0,0 +1,18 @@
|
||||||
|
---
|
||||||
|
title: 'cold'
|
||||||
|
date: 201801050949.42
|
||||||
|
tags:
|
||||||
|
- 'cold'
|
||||||
|
- 'weather'
|
||||||
|
- 'winter'
|
||||||
|
- 'snow'
|
||||||
|
---
|
||||||
|
|
||||||
|
why is it so cold
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/Screenshot_20180105-094720.png)
|
||||||
|
|
||||||
|
i'm so done with winter
|
||||||
|
|
||||||
|
tags: [cold](tag_cold.html), [weather](tag_weather.html),
|
||||||
|
[winter](tag_winter.html), [snow](tag_snow.html)
|
|
@ -0,0 +1,57 @@
|
||||||
|
---
|
||||||
|
title: 'default branch name'
|
||||||
|
date: 202101101526.29
|
||||||
|
tags:
|
||||||
|
- 'git'
|
||||||
|
- 'linux'
|
||||||
|
- 'dev'
|
||||||
|
---
|
||||||
|
|
||||||
|
changing git’s default branch name has come up recently as an easy
|
||||||
|
action we can take to update our language and remove harmful ideas from
|
||||||
|
our daily usage.
|
||||||
|
|
||||||
|
i’m concerned that this effort to change the language used is ultimately
|
||||||
|
a symbolic gesture to avoid scrutiny into actual change (notably
|
||||||
|
github’s push for this change and continued contracts with ICE).
|
||||||
|
|
||||||
|
however, it’s an easy change to make.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
let’s have a look at how to change it for new repos:
|
||||||
|
|
||||||
|
mkdir -p ~/.config/git/template
|
||||||
|
echo "ref: refs/head/main" > ~/.config/git/template/HEAD
|
||||||
|
git config --global init.templateDir ~/.config/git/template
|
||||||
|
|
||||||
|
note that you can put this template dir anywhere you like.
|
||||||
|
|
||||||
|
you can also set this system-wide (not just for your user) in
|
||||||
|
/usr/share, but note that this might get overriden by package updates.
|
||||||
|
|
||||||
|
echo "ref: refs/head/main" | sudo tee /usr/share/git-core/templates/HEAD
|
||||||
|
|
||||||
|
the next time you `git init`, you’ll be on a branch named main.
|
||||||
|
|
||||||
|
to change an existing repo, you can use the `-m` switch of `git-branch`:
|
||||||
|
|
||||||
|
git checkout master
|
||||||
|
git branch -m master main
|
||||||
|
|
||||||
|
push with `-u` to your remote if needed and update the default branch in
|
||||||
|
the repo settings in the hosting platform of choice.
|
||||||
|
|
||||||
|
it’s a relatively easy change, but don’t kid yourself that it makes any
|
||||||
|
real impact. go protest, [donate and sign
|
||||||
|
petitions](https://blacklivesmatter.carrd.co/), and get out there to fix
|
||||||
|
the actual problems.
|
||||||
|
|
||||||
|
## update:
|
||||||
|
|
||||||
|
as of git 2.28, there’s a new configuration option and you don’t need to
|
||||||
|
use the templateDir option:
|
||||||
|
|
||||||
|
git config --global init.defaultBranch main
|
||||||
|
|
||||||
|
tags: [git](tag_git.html), [linux](tag_linux.html), [dev](tag_dev.html)
|
|
@ -0,0 +1,49 @@
|
||||||
|
---
|
||||||
|
title: 'dns shenanigans post-mortem'
|
||||||
|
date: 201808141503.49
|
||||||
|
tags:
|
||||||
|
- 'linux'
|
||||||
|
- 'sysadmin'
|
||||||
|
- 'tilde'
|
||||||
|
- 'dns'
|
||||||
|
---
|
||||||
|
|
||||||
|
let's start by saying i probably should have done a bit more research
|
||||||
|
before diving head-first into this endeavor.
|
||||||
|
|
||||||
|
i've been thinking about transferring my domains off google domains for
|
||||||
|
some time now, as part of my personal goal to self host and limit my
|
||||||
|
dependence on google and other large third-party monstrosities. along
|
||||||
|
that line, i asked for registrar recommendations.
|
||||||
|
[~tomasino](https://tomasino.tilde.team) responded with
|
||||||
|
[namesilo](https://namesilo.com). i found that they had $3.99
|
||||||
|
registrations for .team and .zone domains, which is 1/10th the cost of
|
||||||
|
the $40 registration on google domains.
|
||||||
|
|
||||||
|
i started out by getting the list of domains from the google console. 2
|
||||||
|
or 3 of them had been registered within the last 60 days, so i wasn't
|
||||||
|
able to transfer those just yet. i grabbed all the domain unlock codes
|
||||||
|
and dropped them into namesilo. i failed to realize that the dns panel
|
||||||
|
on google domains would disappear as soon as it went through, but more
|
||||||
|
importantly that the nameservers would be left pointing to the old
|
||||||
|
defunct google domains ones.
|
||||||
|
|
||||||
|
i updated the nameservers as soon as i realized this error from the
|
||||||
|
namesilo panel. some of the domains propagated quickly. others, not so
|
||||||
|
much. tilde.team was still in a state of flux between the old and new
|
||||||
|
nameservers.
|
||||||
|
|
||||||
|
in a rush to get the dns problem fixed, and under recommendation from
|
||||||
|
several people on irc, i decided to switch the nameservers for
|
||||||
|
tilde.team and tilde.zone to cloudflare, leaving another layer of flux
|
||||||
|
for the dns to be stuck in...
|
||||||
|
|
||||||
|
of the five domains that i moved to cloudflare, 3 returned with a dnssec
|
||||||
|
error, claiming that i needed to remove the DS record from that zone.
|
||||||
|
d'oh!
|
||||||
|
|
||||||
|
i removed the dnssec from those affected domains, so we should be good
|
||||||
|
to go as soon as it all propagates through the fickle beast that is dns.
|
||||||
|
|
||||||
|
tags: [linux](tag_linux.html), [sysadmin](tag_sysadmin.html),
|
||||||
|
[tilde](tag_tilde.html), [dns](tag_dns.html)
|
|
@ -0,0 +1,15 @@
|
||||||
|
---
|
||||||
|
title: ''
|
||||||
|
date: 201712051325.47
|
||||||
|
tags:
|
||||||
|
- 'music'
|
||||||
|
- 'lyrics'
|
||||||
|
- 'words'
|
||||||
|
---
|
||||||
|
|
||||||
|
> i've got nothing to say don't be a coconut
|
||||||
|
|
||||||
|
Ask Me Anything - The Strokes (on First Impressions of Earth)
|
||||||
|
|
||||||
|
tags: [music](tag_music.html), [lyrics](tag_lyrics.html),
|
||||||
|
[words](tag_words.html)
|
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
title: 'dotfiles'
|
||||||
|
date: 201807221926.26
|
||||||
|
tags:
|
||||||
|
- 'linux'
|
||||||
|
- 'dotfiles'
|
||||||
|
- 'git'
|
||||||
|
---
|
||||||
|
|
||||||
|
finally got around to updating my
|
||||||
|
[dotfiles](https://git.tilde.team/ben/dotfiles) to use gnu stow. i
|
||||||
|
adapted [~tomasino's
|
||||||
|
makefile](https://github.com/jamestomasino/dotfiles/blob/master/Makefile)
|
||||||
|
for use with the configs that i'm keeping with it.
|
||||||
|
|
||||||
|
now i just need to figure out why my ssh config doesn't copy/symlink my
|
||||||
|
config to ~/.ssh when it already exists.
|
||||||
|
|
||||||
|
tags: [linux](tag_linux.html), [dotfiles](tag_dotfiles.html),
|
||||||
|
[git](tag_git.html)
|
|
@ -0,0 +1,15 @@
|
||||||
|
---
|
||||||
|
title: 'fun words in german'
|
||||||
|
date: 201711271650.40
|
||||||
|
tags:
|
||||||
|
- 'german'
|
||||||
|
- 'words'
|
||||||
|
- 'linguistics'
|
||||||
|
---
|
||||||
|
|
||||||
|
- Tschechisches Streichholzschächtelchen
|
||||||
|
- Rindfleischettikettierungsüberwachungsaufgabensübertragungsgesetz
|
||||||
|
- Donaudampfschifffahrtsgesellschaftskapitän
|
||||||
|
|
||||||
|
tags: [german](tag_german.html), [words](tag_words.html),
|
||||||
|
[linguistics](tag_linguistics.html)
|
|
@ -0,0 +1,39 @@
|
||||||
|
---
|
||||||
|
title: 'general update'
|
||||||
|
date: 202002032006.43
|
||||||
|
tags:
|
||||||
|
- 'update'
|
||||||
|
- 'sysadmin'
|
||||||
|
---
|
||||||
|
|
||||||
|
it's been quite a long time since i posted anything here on this blog.
|
||||||
|
|
||||||
|
i've been playing with [gruvbox-css](https://github.com/xe/gruvbox-css),
|
||||||
|
decided to switch my blog to use it and finally realized it's been
|
||||||
|
almost a year since i posted anything at all.
|
||||||
|
|
||||||
|
i don't have anything in particular to post today so i figured it would
|
||||||
|
be good to give a general update since the last time i posted.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
we've moved physical hosts again ([/news
|
||||||
|
post](https://tilde.team/news/028_back_up)), which is now a vm on a
|
||||||
|
large dedicated machine i rent from
|
||||||
|
[ovh](%20https://www.ovh.com/world/dedicated-servers/infra/infra-2/). my
|
||||||
|
current vm setup is proxmox, which i'm quite happy with. the new box is
|
||||||
|
pricier but has a lot more resources and room to grow.
|
||||||
|
|
||||||
|
it appears that i haven't posted anything in so long that i don't yet
|
||||||
|
have any pictures of my dog on my blog!
|
||||||
|
|
||||||
|
i got her last may (2019) and she's the best. she's an english springer
|
||||||
|
spaniel and her name is Hope.
|
||||||
|
|
||||||
|
[![hope](https://bhh.sh/pub/photos/doggos/hope6.jpg)](%20https://bhh.sh/pub/photos/doggos/?filter=hope)
|
||||||
|
click the photo to see some more!
|
||||||
|
|
||||||
|
otherwise, i've just been hanging out on irc, so stop by and say hello
|
||||||
|
:)
|
||||||
|
|
||||||
|
tags: [update](tag_update.html), [sysadmin](tag_sysadmin.html)
|
|
@ -0,0 +1,38 @@
|
||||||
|
---
|
||||||
|
title: 'git remotes with ssh aliases'
|
||||||
|
date: 201801121330.26
|
||||||
|
tags:
|
||||||
|
- 'git'
|
||||||
|
- 'ssh'
|
||||||
|
---
|
||||||
|
|
||||||
|
did you know that `~/.ssh/config` aliases work for git remotes??
|
||||||
|
|
||||||
|
~/.ssh/config
|
||||||
|
|
||||||
|
Host gh
|
||||||
|
HostName github.com
|
||||||
|
User git
|
||||||
|
IdentityFile ~/.ssh/gh_key
|
||||||
|
|
||||||
|
you can now use `gh:username/repo` as the remote in place of
|
||||||
|
`git@github.com:username/repo`, which is much shorter and easier to type
|
||||||
|
many times!
|
||||||
|
|
||||||
|
`git clone gh:benharri/learngit`
|
||||||
|
|
||||||
|
there are many other use cases for the `ssh_config` file. for example,
|
||||||
|
here is my config for the tilde machine for easy ssh connections.
|
||||||
|
|
||||||
|
Host tilde
|
||||||
|
HostName tilde.team
|
||||||
|
User ben
|
||||||
|
|
||||||
|
then use `ssh tilde` to start a new ssh session. this also works with
|
||||||
|
`scp`: try something like this `scp file.txt tilde:workspace/.` in place
|
||||||
|
of `scp file.txt ben@tilde.team:workspace/.`
|
||||||
|
|
||||||
|
the ssh\_config file is super useful. check `man ssh_config` for a full
|
||||||
|
list of options!
|
||||||
|
|
||||||
|
tags: [git](tag_git.html), [ssh](tag_ssh.html)
|
|
@ -0,0 +1,31 @@
|
||||||
|
---
|
||||||
|
title: 'hey dere bub!'
|
||||||
|
date: 201712131912.51
|
||||||
|
tags:
|
||||||
|
- 'heyderebub'
|
||||||
|
- 'podcast'
|
||||||
|
---
|
||||||
|
|
||||||
|
if you haven't checked it out yet, give [my new
|
||||||
|
podcast](https://heyderebub.com) a listen!
|
||||||
|
|
||||||
|
[![heyderebub
|
||||||
|
logo](https://heyderebub.com/images/itunes_image.jpg)](https://heyderebub.com)
|
||||||
|
|
||||||
|
[episode
|
||||||
|
5](https://heyderebub.com/?name=2017-12-13_hey_dere_bub_ep__5.mp3) was
|
||||||
|
uploaded today.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
we're on [twitter](https://twitter.com/heyderebub),
|
||||||
|
[facebook](https://facebook.com/heyderebub), and of course [our own
|
||||||
|
website](https://heyderebub.com)
|
||||||
|
|
||||||
|
give us a shout on twitter or [shoot us an
|
||||||
|
email](mailto:hello@heyderebub.com) and let us know what you thought and
|
||||||
|
if there is anything you'd like us to talk about in the future.
|
||||||
|
|
||||||
|
thanks!
|
||||||
|
|
||||||
|
tags: [heyderebub](tag_heyderebub.html), [podcast](tag_podcast.html)
|
|
@ -0,0 +1,22 @@
|
||||||
|
---
|
||||||
|
title: 'hi there'
|
||||||
|
date: 201710021611.13
|
||||||
|
tags:
|
||||||
|
- 'linux'
|
||||||
|
- 'sysadmin'
|
||||||
|
- 'ubuntu'
|
||||||
|
- 'tilde'
|
||||||
|
---
|
||||||
|
|
||||||
|
welcome to my tildeblog
|
||||||
|
|
||||||
|
you are here.
|
||||||
|
|
||||||
|
i like to mess around with linux sysadmin shtuff.
|
||||||
|
[tilde.team](https://tilde.team) is my baby. let me know if you want to
|
||||||
|
get involved.
|
||||||
|
|
||||||
|
thanks for being awesome. keep it up.
|
||||||
|
|
||||||
|
tags: [linux](tag_linux.html), [sysadmin](tag_sysadmin.html),
|
||||||
|
[ubuntu](tag_ubuntu.html), [tilde](tag_tilde.html)
|
|
@ -0,0 +1,76 @@
|
||||||
|
---
|
||||||
|
title: 'italy'
|
||||||
|
date: 201809201732.33
|
||||||
|
tags:
|
||||||
|
- 'travel'
|
||||||
|
---
|
||||||
|
|
||||||
|
i just got back from a 10-day backpacking trip to italy and i'd like to
|
||||||
|
share some of the photos i took!
|
||||||
|
|
||||||
|
the travel plan was rome -> venice -> florence -> naples ->
|
||||||
|
pompei/vesuvius -> capri -> amalfi
|
||||||
|
|
||||||
|
this is the roman forum (with colosseum in the background) as seen from
|
||||||
|
the palatine.
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/roman-forum.jpg)
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
here's me standing next to the same piece of ancient rome as i did the
|
||||||
|
last time i visited in 2015. see [my github
|
||||||
|
profile](https://github.com/benharri)
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/threeyearslater.jpg)
|
||||||
|
|
||||||
|
the inside of st. pete's basilica. climbed the 551 steps to the top of
|
||||||
|
it for a crazy view of rome.
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/st-petes.jpg)
|
||||||
|
|
||||||
|
venice was the next stop. this is the grand canal.
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/venice-grand-canal.jpg)
|
||||||
|
|
||||||
|
we visited all the main museums in firenze (aka florence, but firenze is
|
||||||
|
far cooler). this is the view from the roof of our hostel.
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/firenze.jpg)
|
||||||
|
|
||||||
|
after arriving in naples, we headed out to see vesuvius and the ruins of
|
||||||
|
pompei. i'm not sure why pompei has an extra 'i' in english, but it only
|
||||||
|
has one in modern-day italian. look at the ruts left from the ancience
|
||||||
|
chariots in the basalt stone!
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/pompei-ruts.jpg)
|
||||||
|
|
||||||
|
here see vesuvius from pompei's main square.
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/vesuvius-from-pompei.jpg)
|
||||||
|
|
||||||
|
we did a tour around the island of capri. (think capri pants, caprese
|
||||||
|
salads, etc). we also took a chairlift to the top of the island for the
|
||||||
|
stunning view. unfortunately, photos just don't show the scale and sheer
|
||||||
|
drop from the cliff.
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/capri-rocks.jpg)
|
||||||
|
|
||||||
|
this is the view from our airbnb in amalfi. it was quite a pain to get
|
||||||
|
to... but it was worth it!
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/airbnb-view.jpg)
|
||||||
|
|
||||||
|
here's me and [~supercock789](https://tilde.team/~supercock789/)
|
||||||
|
somewhere along the path of the gods.
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/italy/me-and-nick.jpg)
|
||||||
|
|
||||||
|
what a whirlwind! i'm pretty sure we visited all the major tourist
|
||||||
|
attractions in the cities that we visited. and in quite a short time!
|
||||||
|
|
||||||
|
there are [a few extra photos here](https://bhh.sh/pub/photos/italy/)
|
||||||
|
|
||||||
|
thanks for stopping by!
|
||||||
|
|
||||||
|
tags: [travel](tag_travel.html)
|
|
@ -0,0 +1,14 @@
|
||||||
|
---
|
||||||
|
title: 'Joe on Sporty-ball-z'
|
||||||
|
date: 201711271651.42
|
||||||
|
tags:
|
||||||
|
- 'thought-of-the-day'
|
||||||
|
- 'quotes'
|
||||||
|
---
|
||||||
|
|
||||||
|
For every nerd calling something sportsball there needs to be a jock
|
||||||
|
that walks into a library and yells “WHAT’S UP WITH ALL THESE WORD
|
||||||
|
BURGERS”
|
||||||
|
|
||||||
|
tags: [thought-of-the-day](tag_thought-of-the-day.html),
|
||||||
|
[quotes](tag_quotes.html)
|
|
@ -0,0 +1,14 @@
|
||||||
|
---
|
||||||
|
title: 'links to save for later'
|
||||||
|
date: 201710201618.28
|
||||||
|
tags:
|
||||||
|
- 'links'
|
||||||
|
- 'bookmarks'
|
||||||
|
- 'save-for-later'
|
||||||
|
---
|
||||||
|
|
||||||
|
[cool pics](http://novatogatorop.com/gallery/alaska) [gatsby
|
||||||
|
ssg](https://gatsbyjs.org) [tachyons](http://tachyons.io)
|
||||||
|
|
||||||
|
tags: [links](tag_links.html), [bookmarks](tag_bookmarks.html),
|
||||||
|
[save-for-later](tag_save-for-later.html)
|
|
@ -0,0 +1,31 @@
|
||||||
|
---
|
||||||
|
title: 'loading...'
|
||||||
|
date: 201712211609.45
|
||||||
|
tags:
|
||||||
|
- 'jokes'
|
||||||
|
- 'humor'
|
||||||
|
---
|
||||||
|
|
||||||
|
```
|
||||||
|
const loadingmsgs = [
|
||||||
|
"Proving P=NP...",
|
||||||
|
"Computing 6 x 9...",
|
||||||
|
"Mining Bitcoin...",
|
||||||
|
"Dividing by 0...",
|
||||||
|
"Initializing Skynet...",
|
||||||
|
"[REDACTED]",
|
||||||
|
"Downloading more RAM...",
|
||||||
|
"Ordering 1s and 0s...",
|
||||||
|
"Navigating neural network...",
|
||||||
|
"Importing machine learning...",
|
||||||
|
"Issuing Alice and Bob one-time pads...",
|
||||||
|
"Generating random sequence from key inputs while trying to exit vim...",
|
||||||
|
"for i in range(additional): Pylon()",
|
||||||
|
"(creating unresolved tension...",
|
||||||
|
"Symlinking vim to nano and ed...",
|
||||||
|
];
|
||||||
|
```
|
||||||
|
|
||||||
|
[sauce](https://twitter.com/0xdade/status/943573845469827072)
|
||||||
|
|
||||||
|
tags: [jokes](tag_jokes.html), [humor](tag_humor.html)
|
|
@ -0,0 +1,29 @@
|
||||||
|
---
|
||||||
|
title: 'lxd networking and additional IPs'
|
||||||
|
date: 201807261534.50
|
||||||
|
tags:
|
||||||
|
- 'linux'
|
||||||
|
- 'sysadmin'
|
||||||
|
- 'ubuntu'
|
||||||
|
---
|
||||||
|
|
||||||
|
now that tilde.team is on a fancy-shmancy new dedi server, i've tried to
|
||||||
|
get a secondary IP address assigned to a lxd container (which i plan to
|
||||||
|
use for my personal stuff). lxd shows that the secondary IP is being
|
||||||
|
picked up by that container, but i'm still seeing the host machine's IP
|
||||||
|
as the external address.
|
||||||
|
|
||||||
|
i'm not sure how i'll need to configure the network settings on the host
|
||||||
|
machine (now that we're running ubuntu 18.04 and it uses netplan for
|
||||||
|
configs and not /etc/network/interfaces). another confusing thing is
|
||||||
|
that the main config in /etc/netplan says that the network config is
|
||||||
|
handled by systemd-networkd...
|
||||||
|
|
||||||
|
at least i have through the end of the year when my current vps runs out
|
||||||
|
to get this up and running.
|
||||||
|
|
||||||
|
ping me on [irc](https://tilde.chat) or [email](mailto:ben@tilde.team)
|
||||||
|
if you have experience with this.
|
||||||
|
|
||||||
|
tags: [linux](tag_linux.html), [sysadmin](tag_sysadmin.html),
|
||||||
|
[ubuntu](tag_ubuntu.html)
|
|
@ -0,0 +1,58 @@
|
||||||
|
---
|
||||||
|
title: 'mastodon postgres upgrade fun'
|
||||||
|
date: 202010281631.39
|
||||||
|
tags:
|
||||||
|
- 'sysadmin'
|
||||||
|
- 'tilde'
|
||||||
|
- 'social-networks'
|
||||||
|
---
|
||||||
|
|
||||||
|
howdy friends!
|
||||||
|
|
||||||
|
if you’re a mastodon user on [tilde.zone](https://tilde.zone) (the
|
||||||
|
tildeverse mastodon instance), you might’ve noticed some downtime
|
||||||
|
recently.
|
||||||
|
|
||||||
|
here’s a quick recap of what went down during the upgrade process.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
we run the current stable version of postgresql from the [postgres apt
|
||||||
|
repos](https://wiki.postgresql.org/wiki/Apt). postgres
|
||||||
|
[13](https://www.postgresql.org/docs/release/13.0/) was released
|
||||||
|
recently and the apt upgrades automatically created a new cluster
|
||||||
|
running 13.
|
||||||
|
|
||||||
|
the database for mastodon has gotten quite large (about 16gb) which
|
||||||
|
complicates this upgrade a bit. this was my inital plan:
|
||||||
|
|
||||||
|
- drop the 13 cluster created by the apt package upgrades
|
||||||
|
- upgrade the 12-main cluster to 13
|
||||||
|
- drop the 12 cluster
|
||||||
|
|
||||||
|
these steps appeared to work fine, but closer inspection afterwards led
|
||||||
|
me to discover that the new cluster had ended up with `SQL_ASCII`
|
||||||
|
encoding somehow. this is not a situation we want to be in. time to fix
|
||||||
|
it.
|
||||||
|
|
||||||
|
here’s the new plan:
|
||||||
|
|
||||||
|
- stop mastodon
|
||||||
|
` for i in streaming sidekiq web; do systemctl stop mastodon-$i; done`
|
||||||
|
|
||||||
|
- dump current database state ` pg_dump mastodon_production > db.dump`
|
||||||
|
|
||||||
|
- drop and recreate cluster with utf8 encoding
|
||||||
|
` pg_dropcluster 13 main --stop pg_createcluster --locale=en_US.UTF8 13 main --start`
|
||||||
|
|
||||||
|
- restore backup
|
||||||
|
` sudo -u postgres psql -c "create user mastodon createdb;" sudo -u mastodon createdb -E utf8 mastodon_production sudo -u mastodon psql < db.dump`
|
||||||
|
|
||||||
|
i’m still not 100% sure how the encoding reverted to ascii but it seems
|
||||||
|
that the locale was not correctly set while running the apt upgrades…
|
||||||
|
|
||||||
|
if this happens to you, hopefully this helps you wade out while keeping
|
||||||
|
all your data :)
|
||||||
|
|
||||||
|
tags: [sysadmin](tag_sysadmin.html), [tilde](tag_tilde.html),
|
||||||
|
[social-networks](tag_social-networks.html)
|
|
@ -0,0 +1,23 @@
|
||||||
|
---
|
||||||
|
title: 'mastodon'
|
||||||
|
date: 201712221628.45
|
||||||
|
tags:
|
||||||
|
- 'social-networks'
|
||||||
|
- 'mastodon'
|
||||||
|
- 'tilde'
|
||||||
|
---
|
||||||
|
|
||||||
|
hi everyone.
|
||||||
|
|
||||||
|
i started hosting a [mastodon](https://joinmastodon.org) instance at
|
||||||
|
[social.tilde.team](https://social.tilde.team).
|
||||||
|
|
||||||
|
check it out if you want some federated open source social goodness :)
|
||||||
|
|
||||||
|
send me a toot [@ben@tilde.team](https://social.tilde.team/@ben) (from
|
||||||
|
any mastodon instance!)
|
||||||
|
|
||||||
|
thanks!
|
||||||
|
|
||||||
|
tags: [social-networks](tag_social-networks.html),
|
||||||
|
[mastodon](tag_mastodon.html), [tilde](tag_tilde.html)
|
|
@ -0,0 +1,17 @@
|
||||||
|
---
|
||||||
|
title: 'more drone photos'
|
||||||
|
date: 201807152315.46
|
||||||
|
tags:
|
||||||
|
- 'dji'
|
||||||
|
- 'drone'
|
||||||
|
- 'photography'
|
||||||
|
---
|
||||||
|
|
||||||
|
i finally got my drone out this summer to take some more pics!
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/drone/DJI_0097.thumb.jpg)
|
||||||
|
|
||||||
|
[more here](https://bhh.sh/pub/photos/drone/)
|
||||||
|
|
||||||
|
tags: [dji](tag_dji.html), [drone](tag_drone.html),
|
||||||
|
[photography](tag_photography.html)
|
|
@ -0,0 +1,31 @@
|
||||||
|
---
|
||||||
|
title: 'net neutrality vote today'
|
||||||
|
date: 201712140626.55
|
||||||
|
tags:
|
||||||
|
- 'net-neutrality'
|
||||||
|
- 'internet'
|
||||||
|
---
|
||||||
|
|
||||||
|
Everybody! We only have UNTIL TOMORROW to fight the FCC & the repeal of
|
||||||
|
\#NetNeutrality! Repealing Net Nutrality would result in an unequal
|
||||||
|
access to online content including research, social/political
|
||||||
|
organizing, and personal media. It would also allow powerhouse companies
|
||||||
|
providing internet to charge more for regular quality internet, and
|
||||||
|
charge certain users more than others. HERE'S A WAY TO ACT - takes less
|
||||||
|
than a minute.
|
||||||
|
|
||||||
|
1. Go to [gofccyourself.com](http://gofccyourself.com) (the shortcut
|
||||||
|
John Oliver made to the hard-to-find FCC comment page)
|
||||||
|
2. Click on the 17-108 link (Restoring Internet Freedom)
|
||||||
|
3. Click on "express"
|
||||||
|
4. Be sure to hit "ENTER" after you put in your name & info so it
|
||||||
|
registers.
|
||||||
|
5. In the comment section write, "I strongly support net neutrality
|
||||||
|
backed by Title 2 oversight of ISPs."
|
||||||
|
6. Click to submit, done. - Make sure you hit submit at the end!
|
||||||
|
|
||||||
|
**Copy and paste this into your own status update!** Seriously, this is
|
||||||
|
simple and so important. Do it.
|
||||||
|
|
||||||
|
tags: [net-neutrality](tag_net-neutrality.html),
|
||||||
|
[internet](tag_internet.html)
|
|
@ -0,0 +1,63 @@
|
||||||
|
---
|
||||||
|
title: 'networking nonsense'
|
||||||
|
date: 201902110240.20
|
||||||
|
tags:
|
||||||
|
- 'tilde'
|
||||||
|
- 'linux'
|
||||||
|
- 'sysadmin'
|
||||||
|
---
|
||||||
|
|
||||||
|
i've recently been working on setting up [drone
|
||||||
|
ci](https://drone.tildegit.org) on the tilde.team machine. however,
|
||||||
|
there's been something strange going on with the networking on there.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
starting up drone with
|
||||||
|
[docker-compose](https://tildegit.org/tildeverse/drone/src/branch/master/docker-compose.yml)
|
||||||
|
didn't seem to be working: `netstat -tulpn` showed the port binding
|
||||||
|
properly to 127.0.0.1:8888 but i was completely unable to get anything
|
||||||
|
from it (using curl the nginx proxy that was to come).
|
||||||
|
|
||||||
|
i ended up scrapping docker on the ~team box itself and moving it into a
|
||||||
|
lxd container (pronounced "lex-dee") with nesting enabled.
|
||||||
|
|
||||||
|
this got us in to another problem that had been seen before when using
|
||||||
|
nginx to proxy to apps running in other containers. requests were
|
||||||
|
dropped intermittently, sometimes hanging for upwards of 30 seconds.
|
||||||
|
|
||||||
|
getting frustrated with this error, i tried to reproduce it on another
|
||||||
|
host. both the docker-proxy and nginx->lxd proxies work on the first
|
||||||
|
try yielded no clues as to where things were going wrong.
|
||||||
|
|
||||||
|
in a half-awake stupor last saturday evening, i decided to try rule out
|
||||||
|
ipv6 by disabling it system-wide. as is expected for sleepy work, it
|
||||||
|
didn't fix the problem and created more in the process.
|
||||||
|
|
||||||
|
feeling satisfied that the problem didn't lie with ipv6, i re-enabled
|
||||||
|
it, only to find that i was unable to bind nginx to my allocated /64. i
|
||||||
|
may or may not have ranted a bit about this on irc but i was able to get
|
||||||
|
it back up and running by restarting systemd-networkd.
|
||||||
|
|
||||||
|
one step forwards broke something and now we're back to where we started
|
||||||
|
with the original problem of the intermittent hangups to the lxd
|
||||||
|
container.
|
||||||
|
|
||||||
|
seeing my troubles on irc, [jchelpau](https://tilde.team/~jchelpau/)
|
||||||
|
offered to help dig in to the problem with a a fresh set of eyes. he
|
||||||
|
noted right away that pings over ipv6 to the containers worked fine, but
|
||||||
|
ipv4 did not.
|
||||||
|
|
||||||
|
we ended up looking at the firewall configurations, only to find that
|
||||||
|
one of the subnets i blocked after november's [nmap
|
||||||
|
incident](november-13-post-mortem.html) included lxdbr0's subnet (the
|
||||||
|
bridge device used by lxd).
|
||||||
|
|
||||||
|
now that i made the exeption for lxdbr0, everything is working as
|
||||||
|
expected!
|
||||||
|
|
||||||
|
thanks to [fosslinux](https://tilde.team/~fosslinux/) and
|
||||||
|
[jchelpau](https://tilde.team/~jchelpau/) for their debugging help!
|
||||||
|
|
||||||
|
tags: [tilde](tag_tilde.html), [linux](tag_linux.html),
|
||||||
|
[sysadmin](tag_sysadmin.html)
|
|
@ -0,0 +1,27 @@
|
||||||
|
---
|
||||||
|
title: 'no more google'
|
||||||
|
date: 201808142336.05
|
||||||
|
tags:
|
||||||
|
- 'linux'
|
||||||
|
- 'net-neutrality'
|
||||||
|
---
|
||||||
|
|
||||||
|
not sure if this is appropriately tagged, but i didn't feel like making
|
||||||
|
a new one.
|
||||||
|
|
||||||
|
i figured i should probably get some notes down about moving off google.
|
||||||
|
|
||||||
|
to start, i'll get a list of the things i was able to easily replace:
|
||||||
|
|
||||||
|
- gmail => [@tilde.team mail](https://tilde.team/wiki/?page=email)
|
||||||
|
- google drive => [syncthing](https://syncthing.net) (with a
|
||||||
|
persistent node running on my personal vps)
|
||||||
|
|
||||||
|
i'm still using:
|
||||||
|
|
||||||
|
- gplay music/youtube
|
||||||
|
- google maps (open streetmap isn't good enough to replace it)
|
||||||
|
- google photos - but this is going to be replaced long-term with
|
||||||
|
syncthing
|
||||||
|
|
||||||
|
tags: [linux](tag_linux.html), [net-neutrality](tag_net-neutrality.html)
|
|
@ -0,0 +1,33 @@
|
||||||
|
---
|
||||||
|
title: 'Nonsense'
|
||||||
|
date: 201711271655.29
|
||||||
|
tags:
|
||||||
|
- 'nonsense'
|
||||||
|
- 'words'
|
||||||
|
---
|
||||||
|
|
||||||
|
I hole-hardedly agree, but allow me to play doubles advocate here for a
|
||||||
|
moment. For all intensive purposes I think you are wrong. In an age
|
||||||
|
where false morals are a diamond dozen, true virtues are a blessing in
|
||||||
|
the skies. We often put our false morality on a petal stool like a bunch
|
||||||
|
of pre-Madonnas, but you all seem to be taking something very valuable
|
||||||
|
for granite. So I ask of you to mustard up all the strength you can
|
||||||
|
because it is a doggy dog world out there. Although there is some merit
|
||||||
|
to what you are saying it seems like you have a huge ship on your
|
||||||
|
shoulder. In your argument you seem to throw everything in but the kids
|
||||||
|
Nsync, and even though you are having a feel day with this I am here to
|
||||||
|
bring you back into reality. I have a sick sense when it comes to these
|
||||||
|
types of things. It is almost spooky, because I cannot turn a blonde eye
|
||||||
|
to these glaring flaws in your rhetoric. I have zero taller ants when it
|
||||||
|
comes to people spouting out hate in the name of moral righteousness.
|
||||||
|
You just need to remember what comes around is all around, and when
|
||||||
|
supply and command fails you will be the first to go. Make my words,
|
||||||
|
when you get down to brass stacks it doesn’t take rocket appliances to
|
||||||
|
get two birds stoned at once. It’s clear who makes the pants in this
|
||||||
|
relationship, and sometimes you just have to swallow your prize and
|
||||||
|
accept the facts. You might have to come to this conclusion through
|
||||||
|
denial and error but I swear on my mother’s mating name that when you
|
||||||
|
put the petal to the medal you will pass with flying carpets like it’s a
|
||||||
|
peach of cake.
|
||||||
|
|
||||||
|
tags: [nonsense](tag_nonsense.html), [words](tag_words.html)
|
|
@ -0,0 +1,67 @@
|
||||||
|
---
|
||||||
|
title: 'november 13 post mortem'
|
||||||
|
date: 201811132020.33
|
||||||
|
tags:
|
||||||
|
- 'post-mortem'
|
||||||
|
- 'linux'
|
||||||
|
- 'sysadmin'
|
||||||
|
---
|
||||||
|
|
||||||
|
we had something of an outage on november 13, 2018 on tilde.team.
|
||||||
|
|
||||||
|
i awoke, not suspecting anything to be amiss. as soon as i logged in to
|
||||||
|
check my email and irc mentions, it became clear.
|
||||||
|
|
||||||
|
tilde.team was at the least inaccessible, and at the worst, down
|
||||||
|
completely. according the message in my inbox, there hade been an
|
||||||
|
attempted "attack" from my IP.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
> We have indications that there was an attack from your server. Please
|
||||||
|
> take all necessary measures to avoid this in the future and to solve
|
||||||
|
> the issue.
|
||||||
|
|
||||||
|
at this point, i have no idea what could have happened over night while
|
||||||
|
i'm sleeping. the timestamp shows that it arrive only 30 minutes after
|
||||||
|
i'd turned in for the night.
|
||||||
|
|
||||||
|
when i finally log on in the morning to check mails and irc mentions, i
|
||||||
|
find that i'm unable to connect to tilde.team... strange, but ok; time
|
||||||
|
to troubleshoot. i refresh the [webmail](https://mail.tilde.team) to see
|
||||||
|
what i'm missing. it ends up failing to find the server. even stranger!
|
||||||
|
i'd better get the mails off my phone if they're on my @tilde.team mail!
|
||||||
|
|
||||||
|
here, i launch in to full debugging mode: what command was it? who ran
|
||||||
|
it?
|
||||||
|
|
||||||
|
search `~/.bash_history` per user was not very successful. nothing i
|
||||||
|
could find was related to net or map. i had checked
|
||||||
|
`sudo grep nmap /home/*/.bash_history` and many other commands.
|
||||||
|
|
||||||
|
at this point, i had connected with other ~teammates across other irc
|
||||||
|
nets ([\#!](https://hashbang.sh/), [~town](https://tilde.town), etc).
|
||||||
|
among suggestions to check `/var/log/syslog`, `/var/log/kern.log`, and
|
||||||
|
`dmesg`, i finally decided to check `ps`. `ps -ef | grep nmap` yielded
|
||||||
|
nmap on an obscured uid and gid, which is shortly established to belong
|
||||||
|
to a container i had provisioned for [~fosslinux](/~fosslinux/).
|
||||||
|
|
||||||
|
i'm not considering methods of policing access to any site over port 80
|
||||||
|
and port 443. this is crazy. how do you police `nmap` when it isn't
|
||||||
|
scanning on every port?
|
||||||
|
|
||||||
|
after a bit of shit-talking and reassurance from other sysadmins, i
|
||||||
|
reexamined and realized that [~fosslinux](/~fosslinux/) had only run
|
||||||
|
`nmap` for addresses in the `10.0.0.0/8` space. the `10/8` address space
|
||||||
|
is intended to not be addressable outside the local space. how could
|
||||||
|
[hetzner](https://hetzner.com) have found out about a localhost network
|
||||||
|
probe!?
|
||||||
|
|
||||||
|
finally, after speaking with more people than i expected to speak with
|
||||||
|
in one day, i ended up sending three different support emails to hetzner
|
||||||
|
support, which finally resulted in them unlocking the ip.
|
||||||
|
|
||||||
|
it's definitely time to research redundancy options!
|
||||||
|
|
||||||
|
tags: [post-mortem](tag_post-mortem.html), [linux](tag_linux.html),
|
||||||
|
[sysadmin](tag_sysadmin.html)
|
|
@ -0,0 +1,14 @@
|
||||||
|
---
|
||||||
|
title: 'otm'
|
||||||
|
date: 201802151333.16
|
||||||
|
tags:
|
||||||
|
- 'podcast'
|
||||||
|
---
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/IMG_20180215_121947.jpg)
|
||||||
|
|
||||||
|
just heard the [latest
|
||||||
|
episode](https://www.wnyc.org/story/safety-net-just-got-a-little-less-safe)
|
||||||
|
of on the media. this is a super helpful guide i found on their twitter.
|
||||||
|
|
||||||
|
tags: [podcast](tag_podcast.html)
|
|
@ -0,0 +1,18 @@
|
||||||
|
---
|
||||||
|
title: 'pan galactic gargle blaster'
|
||||||
|
date: 201712071641.40
|
||||||
|
tags:
|
||||||
|
- 'beer'
|
||||||
|
- 'hhgtg'
|
||||||
|
---
|
||||||
|
|
||||||
|
short's brewery released another batch of their pan galactic gargle
|
||||||
|
blaster imperial IPA. i had one last night and was very excited to have
|
||||||
|
it once again.
|
||||||
|
|
||||||
|
> “The Hitch-Hiker's Guide to the Galaxy also mentions alcohol. It says
|
||||||
|
> that the best drink in existence is the Pan Galactic Gargle Blaster,
|
||||||
|
> the effect of which is like having your brains smashed out with a
|
||||||
|
> slice of lemon wrapped round a large gold brick.”
|
||||||
|
|
||||||
|
tags: [beer](tag_beer.html), [hhgtg](tag_hhgtg.html)
|
|
@ -0,0 +1,38 @@
|
||||||
|
---
|
||||||
|
title: 'phoenix'
|
||||||
|
date: 201802261157.10
|
||||||
|
tags:
|
||||||
|
- 'internet'
|
||||||
|
- 'dev'
|
||||||
|
---
|
||||||
|
|
||||||
|
inspired by [oodsnet](http://oods.net), (and my pull request to add
|
||||||
|
[darkmode](https://github.com/exezin/oodsnet/pull/5)), i started to
|
||||||
|
create my own tilde.team fork (now
|
||||||
|
[forum.tilde.team](https://forum.tilde.team/)).
|
||||||
|
|
||||||
|
the first step was to switch out the css to the [tilde.team
|
||||||
|
standard](https://tilde.team/css/) and update the classes for bootstrap.
|
||||||
|
once i got it going and integrated with the tilde.team linux auth
|
||||||
|
service, i asked other tildeans for input and suggestions.
|
||||||
|
|
||||||
|
[~micaiah](/~micaiah/) was interested in helping, but also wanted to
|
||||||
|
learn a new language and/or framework, so we decided to start over,
|
||||||
|
recreating the entire forum with
|
||||||
|
[elixir/phoenix](http://phoenixframework.org). we'd discussed elixir
|
||||||
|
previously, but never had a convincing use case to force us to learn it.
|
||||||
|
|
||||||
|
the project is live, with the source code on
|
||||||
|
[github](https://github.com/tilde-team/forum).
|
||||||
|
|
||||||
|
the thing that i'm most impressed with is the speed of the erlang
|
||||||
|
runtime :D
|
||||||
|
|
||||||
|
check out these response times. sub-millisecond!?!?!
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/photos/phx.png)
|
||||||
|
|
||||||
|
give it a look, and [join the tilde.team](https://tilde.team/signup) if
|
||||||
|
you want to come hang out!
|
||||||
|
|
||||||
|
tags: [internet](tag_internet.html), [dev](tag_dev.html)
|
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
title: 'pop quiz'
|
||||||
|
date: 201801161726.40
|
||||||
|
tags:
|
||||||
|
- '4k-gaming'
|
||||||
|
- 'gaming'
|
||||||
|
- 'gtx1080ti'
|
||||||
|
- 'pc-master-race'
|
||||||
|
---
|
||||||
|
|
||||||
|
is this real?
|
||||||
|
|
||||||
|
![4k witcher
|
||||||
|
3](https://bhh.sh/pub/photos/The%20Witcher%203%20Screenshot%202017.09.12%20-%2023.44.17.73.png)
|
||||||
|
|
||||||
|
hint: it's not. it's the witcher 3. and it looks like a real place.
|
||||||
|
|
||||||
|
tags: [4k-gaming](tag_4k-gaming.html), [gaming](tag_gaming.html),
|
||||||
|
[gtx1080ti](tag_gtx1080ti.html),
|
||||||
|
[pc-master-race](tag_pc-master-race.html)
|
|
@ -0,0 +1,55 @@
|
||||||
|
---
|
||||||
|
title: 'proactive redundancy'
|
||||||
|
date: 201811151839.26
|
||||||
|
tags:
|
||||||
|
- 'sysadmin'
|
||||||
|
- 'tilde'
|
||||||
|
---
|
||||||
|
|
||||||
|
after the [fiasco](november-13-post-mortem.html) earlier this week, i've
|
||||||
|
been taking steps to minimize the impact if tilde.team were to go down.
|
||||||
|
it's still a large spof (single-point-of-failure), but i'm reasonably
|
||||||
|
certain that at least the irc net will remain up and functional in the
|
||||||
|
event of another outage.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
the first thing that i set up was a handful of additional ircd nodes:
|
||||||
|
see [the tilde.chat wiki](https://tilde.chat/wiki/?page=servers) for a
|
||||||
|
full list. slash.tilde.chat is on my personal vps, and bsd.tilde.chat is
|
||||||
|
hosted on the bsd vps that i set up for tilde.team.
|
||||||
|
|
||||||
|
i added the ipv4 addresses for these machines, along with the ip for
|
||||||
|
yourtilde.com as A records for tilde.chat, creating a dns round-robin.
|
||||||
|
`host tilde.chat` will return all four. requesting the dns record will
|
||||||
|
return any one of them, rotating them in a semi-random fashion. this
|
||||||
|
means that when connecting to tilde.chat on 6697 for irc, you might end
|
||||||
|
up on any of `{your,team,bsd,slash}.tilde.chat`.
|
||||||
|
|
||||||
|
this creates the additional problem that visiting the [tilde.chat
|
||||||
|
site](https://tilde.chat) will end up at any of those 4 machines in much
|
||||||
|
the same way. for the moment, the site is deployed on all of the boxes,
|
||||||
|
making site setup issues hard to
|
||||||
|
[debug](https://tildegit.org/tildeverse/tilde.chat/issues/8). the
|
||||||
|
solution to this problem is to use a subdomain as the roundrobin host,
|
||||||
|
as other networks like freenode do (see `host chat.freenode.net` for the
|
||||||
|
list of servers).
|
||||||
|
|
||||||
|
i'm not sure how to make any of the other services more resilient. it's
|
||||||
|
something that i have been and will continue to research moving forward.
|
||||||
|
|
||||||
|
the other main step that i have taken to prevent the same issue from
|
||||||
|
happening again was to configure the firewall to drop outgoing requests
|
||||||
|
to the subnets as defined in [rfc
|
||||||
|
1918](https://tools.ietf.org/html/rfc1918).
|
||||||
|
|
||||||
|
i'd like to consider at least this risk to be mitigated.
|
||||||
|
|
||||||
|
thanks for reading,
|
||||||
|
|
||||||
|
~ben
|
||||||
|
|
||||||
|
**update**: the round robin host is now *irc*.tilde.chat, which resolves
|
||||||
|
the site issues that we were having, due to the duplicated deployments.
|
||||||
|
|
||||||
|
tags: [sysadmin](tag_sysadmin.html), [tilde](tag_tilde.html)
|
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
title: 'quote of the day'
|
||||||
|
date: 201802130955.06
|
||||||
|
tags:
|
||||||
|
- 'quotes'
|
||||||
|
---
|
||||||
|
|
||||||
|
Be Alert! - the world needs more Lerts.
|
||||||
|
|
||||||
|
tags: [quotes](tag_quotes.html)
|
|
@ -0,0 +1,57 @@
|
||||||
|
---
|
||||||
|
title: 'raid nonsense'
|
||||||
|
date: 201901131328.45
|
||||||
|
tags:
|
||||||
|
- 'tilde'
|
||||||
|
- 'sysadmin'
|
||||||
|
---
|
||||||
|
|
||||||
|
last week i did some
|
||||||
|
[maintenance](https://tilde.team/news/?page=025_raid_reboot) on the
|
||||||
|
tilde.team box. probably should have written about it sooner but i
|
||||||
|
didn't make time for it until now.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
the gist of the problem was that the default images provided by
|
||||||
|
[hetzner](https://hetzner.com) default to raid1 between the available
|
||||||
|
disks. our box has two 240gb SSDs, which resulted in 200gb usable space
|
||||||
|
for /. it also defaulted to giving us a huge swap partition which i deem
|
||||||
|
unnecessary for a box with 64gb ram.
|
||||||
|
|
||||||
|
the only feasible solution that i've found involved using the rescue
|
||||||
|
system and the
|
||||||
|
[installimage](https://wiki.hetzner.de/index.php/Installimage/en)
|
||||||
|
software to reconfigure the disk partitions.
|
||||||
|
|
||||||
|
[deepend](https://yourtilde.com/~deepend/) recently upgraded to a
|
||||||
|
beefier dedi (more threads and more disk space) and had a bit of
|
||||||
|
contract time on the old one. he offered to let me use it as a staging
|
||||||
|
box for the meantime while i reinstalled and reconfigured my raid
|
||||||
|
settings.
|
||||||
|
|
||||||
|
i've migrated tilde.team twice before (from linode -> woothosting
|
||||||
|
-> hetzner -> and now back to hetzner on the same box) using a
|
||||||
|
slick little rsync that i've put together.
|
||||||
|
|
||||||
|
` rsync -auHxv --numeric-ids \ --exclude=/etc/fstab \ --exclude=/etc/network/* \ --exclude=/proc/* \ --exclude=/tmp/* \ --exclude=/sys/* \ --exclude=/dev/* \ --exclude=/mnt/* \ --exclude=/boot/* \ --exclude=/root/* \ root@oldbox:/* /`
|
||||||
|
|
||||||
|
as long as the destination and source boxen are running the same
|
||||||
|
distro/version, you should be good to go after rebooting the destination
|
||||||
|
box!
|
||||||
|
|
||||||
|
the only thing to watch out for is running databases. it happened to me
|
||||||
|
this time with mysql. there were 3 pending transactions that were left
|
||||||
|
open during the rsync backup. it kept failing to start after i got the
|
||||||
|
box back up, along with all the other services that depend on it.
|
||||||
|
|
||||||
|
eventually i was able to get mysqld back up and running in recovery mode
|
||||||
|
(basically read-only) and got a mysqldump of all databases. i then
|
||||||
|
purged all existing mysql data, reinstalled mariadb-server, and restored
|
||||||
|
the mysqldump. everything came up as expected and we were good to go!
|
||||||
|
|
||||||
|
the raid is now in a raid0 config, leaving us with 468gb (not GiB)
|
||||||
|
available space. thanks for tuning in to this episode of sysadmin
|
||||||
|
adventures!
|
||||||
|
|
||||||
|
tags: [tilde](tag_tilde.html), [sysadmin](tag_sysadmin.html)
|
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
title: 'Thought of the day'
|
||||||
|
date: 201711271649.29
|
||||||
|
tags:
|
||||||
|
- 'thought-of-the-day'
|
||||||
|
---
|
||||||
|
|
||||||
|
things are not what they appear to be. nor are they otherwise.
|
||||||
|
|
||||||
|
tags: [thought-of-the-day](tag_thought-of-the-day.html)
|
|
@ -0,0 +1,11 @@
|
||||||
|
---
|
||||||
|
title: 'thought of the day'
|
||||||
|
date: 201711271656.36
|
||||||
|
tags:
|
||||||
|
- 'thought-of-the-day'
|
||||||
|
---
|
||||||
|
|
||||||
|
why do they tell us to use the stairs in case of fire? shouldn't we be
|
||||||
|
using a fire extinguisher?
|
||||||
|
|
||||||
|
tags: [thought-of-the-day](tag_thought-of-the-day.html)
|
|
@ -0,0 +1,12 @@
|
||||||
|
---
|
||||||
|
title: 'thought of the day'
|
||||||
|
date: 201712031347.36
|
||||||
|
tags:
|
||||||
|
- 'thought-of-the-day'
|
||||||
|
- 'words'
|
||||||
|
---
|
||||||
|
|
||||||
|
everything in the universe either is or isn't a potato.
|
||||||
|
|
||||||
|
tags: [thought-of-the-day](tag_thought-of-the-day.html),
|
||||||
|
[words](tag_words.html)
|
|
@ -0,0 +1,13 @@
|
||||||
|
---
|
||||||
|
title: 'Thought of the Day'
|
||||||
|
date: 201711271654.07
|
||||||
|
tags:
|
||||||
|
- 'nonsense'
|
||||||
|
- 'quotes'
|
||||||
|
---
|
||||||
|
|
||||||
|
“Arguing with religious people – It’s like playing chess with a pigeon;
|
||||||
|
no matter how good I am at chess, the pigeon is just going to knock over
|
||||||
|
the pieces, crap on the board and strut around victorious” – Anonymous
|
||||||
|
|
||||||
|
tags: [nonsense](tag_nonsense.html), [quotes](tag_quotes.html)
|
|
@ -0,0 +1,10 @@
|
||||||
|
---
|
||||||
|
title: 'thought of the day'
|
||||||
|
date: 201711271658.50
|
||||||
|
tags:
|
||||||
|
- 'thought-of-the-day'
|
||||||
|
---
|
||||||
|
|
||||||
|
wherever you go, there you are
|
||||||
|
|
||||||
|
tags: [thought-of-the-day](tag_thought-of-the-day.html)
|
|
@ -0,0 +1,37 @@
|
||||||
|
---
|
||||||
|
title: 'tilde.team news'
|
||||||
|
date: 201806131507.45
|
||||||
|
tags:
|
||||||
|
- 'tilde'
|
||||||
|
- 'sysadmin'
|
||||||
|
---
|
||||||
|
|
||||||
|
hey hi hello!
|
||||||
|
|
||||||
|
it seems that i haven't written anything on my blog in quite a while...
|
||||||
|
|
||||||
|
time to fix that! i've been quite busy in the last month or so with a
|
||||||
|
lot of new ideas an energy for tilde.team.
|
||||||
|
|
||||||
|
after rediscovering my account on tilde.town, i hopped in the irc there
|
||||||
|
and my enthusiasm translated into a couple new members over here on the
|
||||||
|
~team.
|
||||||
|
|
||||||
|
our irc has been somewhat more active recently which is awesome:)
|
||||||
|
|
||||||
|
some of the new updates in the last month:
|
||||||
|
|
||||||
|
- [tildegit (our own gitea instance)](https://git.tilde.team)
|
||||||
|
- [tildemail](https://mail.tilde.team) with postfix and dovecot for
|
||||||
|
smtp/imap as well as local command line mail in mutt and alpine
|
||||||
|
- [`tilde`](https://git.tildeverse.org/team/tilde-launcher) user
|
||||||
|
script wrapper with submission and approval flows
|
||||||
|
- [password auth disabled](https://tilde.team/wiki/?page=ssh)
|
||||||
|
|
||||||
|
i'd like to make use of our new mailserver, so shoot me some
|
||||||
|
[mail](mailto:ben@tilde.team). i never get enough personal mail. it's
|
||||||
|
all still privacy policy update notices. :(
|
||||||
|
|
||||||
|
see you soon!
|
||||||
|
|
||||||
|
tags: [tilde](tag_tilde.html), [sysadmin](tag_sysadmin.html)
|
|
@ -0,0 +1,27 @@
|
||||||
|
---
|
||||||
|
title: 'tildeverse.org'
|
||||||
|
date: 201807152309.22
|
||||||
|
tags:
|
||||||
|
- 'tilde'
|
||||||
|
- 'internet'
|
||||||
|
- 'links'
|
||||||
|
- 'git'
|
||||||
|
---
|
||||||
|
|
||||||
|
since the last time i wrote a post here, i've registered the
|
||||||
|
tildeverse.org domain and started moving some services over that were
|
||||||
|
already intended for tildeverse use.
|
||||||
|
|
||||||
|
among those are [gitea](https://git.tildeverse.org) and [the new link
|
||||||
|
aggregator](https://links.tildeverse.org) (which runs the same source as
|
||||||
|
[lobste.rs](https://github.com/lobsters/lobsters)).
|
||||||
|
|
||||||
|
i've also started a phlog in my
|
||||||
|
[gopherhole](https://gopher.tilde.team/tilde.team/~ben) with
|
||||||
|
[~tomasino's](/~tomasino) new
|
||||||
|
[burrow](https://github.com/jamestomasino/burrow) gopherhole tool!
|
||||||
|
|
||||||
|
i'll try to post a bit more often too with updates from the tildeverse!
|
||||||
|
|
||||||
|
tags: [tilde](tag_tilde.html), [internet](tag_internet.html),
|
||||||
|
[links](tag_links.html), [git](tag_git.html)
|
|
@ -0,0 +1,102 @@
|
||||||
|
---
|
||||||
|
title: 'tools and services'
|
||||||
|
date: 202003031402.47
|
||||||
|
tags:
|
||||||
|
- 'tilde'
|
||||||
|
- 'sysadmin'
|
||||||
|
---
|
||||||
|
|
||||||
|
inspired by [tomasino](https://tomasino.org)'s recent
|
||||||
|
[post](%20https://labs.tomasino.org/freelancing-tools-services/), i'd
|
||||||
|
like to detail some of the stuff that i rent and use.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## recurring costs
|
||||||
|
|
||||||
|
some of these are monthly, others are annual
|
||||||
|
|
||||||
|
- [server
|
||||||
|
rental](https://www.ovh.com/world/dedicated-servers/infra/infra-2/)
|
||||||
|
- $135/month, 64gb model, 2yr contract discount
|
||||||
|
- [proxmox](https://www.proxmox.com) - my preferred hypervisor. i find
|
||||||
|
it useful enough and worth paying the annual license to use the
|
||||||
|
official package mirrors - $80/year
|
||||||
|
- domains - includes [tilde-related ones](https://tilde.wiki/domains)
|
||||||
|
and my personal ones (about 10 or so) - about 30 domains totaling
|
||||||
|
$500/year
|
||||||
|
- offsite backups at [rsync.net](https://www.rsync.net/) - i use the
|
||||||
|
[borg offering](%20https://www.rsync.net/products/attic.html) for a
|
||||||
|
discount since versioning is handled by my backup software - between
|
||||||
|
$60-$70/year
|
||||||
|
|
||||||
|
my out of pocket expenses are a little over $2k per year.
|
||||||
|
|
||||||
|
note that i use the server and backups for personal stuff in addition to
|
||||||
|
tilde related things.
|
||||||
|
|
||||||
|
the current expenses are totally manageable as is, but if you've got
|
||||||
|
some spare cash and want to pitch in towards tilde hosting costs, i have
|
||||||
|
a [donate page](%20https://bhh.sh/donate).
|
||||||
|
|
||||||
|
## software i run, use, and maintain
|
||||||
|
|
||||||
|
these are all free/open source.
|
||||||
|
|
||||||
|
#### operating systems
|
||||||
|
|
||||||
|
- [ubuntu](https://ubuntu.com)
|
||||||
|
- [debian](https://debian.org)
|
||||||
|
- [alpine linux](https://alpinelinux.org)
|
||||||
|
- [freebsd](https://freebsd.org)
|
||||||
|
|
||||||
|
#### platforms/software
|
||||||
|
|
||||||
|
these are things that i run and maintain for tilde.team and the
|
||||||
|
tildeverse
|
||||||
|
|
||||||
|
- [mastodon](https://joinmastodon.org):
|
||||||
|
[tilde.zone](https://tilde.zone)
|
||||||
|
- [pleroma](https://pleroma.social):
|
||||||
|
[pleroma.tilde.zone](https://pleroma.tilde.zone)
|
||||||
|
- [nextcloud](https://nextcloud.com):
|
||||||
|
[cloud.tilde.team](https://cloud.tilde.team)
|
||||||
|
- [gitea](https://gitea.io): [tildegit](https://tildegit.org)
|
||||||
|
- [inspircd](http://inspircd.org), [anope](http://anope.org):
|
||||||
|
[tilde.chat](https://tilde.chat)
|
||||||
|
- [postfix](http://www.postfix.org/), [dovecot](https://dovecot.org/),
|
||||||
|
[rspamd](https://rspamd.com/),
|
||||||
|
[rainloop](https://www.rainloop.net/): [tilde.team
|
||||||
|
email](https://mail.tilde.team)
|
||||||
|
- [cryptpad](https://github.com/xwiki-labs/cryptpad):
|
||||||
|
[pad.t.o](https://pad.tildeverse.org)
|
||||||
|
- [privatebin](https://privatebin.info/):
|
||||||
|
[paste.t.o](https://paste.tildeverse.org)
|
||||||
|
- [0x0](https://github.com/lachs0r/0x0): [ttm.sh](https://ttm.sh)
|
||||||
|
- [lobsters](https://github.com/lobsters/lobsters):
|
||||||
|
[tilde.news](https://tilde.news)
|
||||||
|
- [tt-rss](https://tt-rss.org/): [rss.t.o](https://rss.tildeverse.org)
|
||||||
|
- [drone](https://drone.io):
|
||||||
|
[drone.tildegit.org](https://drone.tildegit.org)
|
||||||
|
- [mailman](https://docs.mailman3.org/en/latest/):
|
||||||
|
[lists.t.o](https://lists.tildeverse.org)
|
||||||
|
|
||||||
|
#### our own software
|
||||||
|
|
||||||
|
there are also a handful of other sites that we've written
|
||||||
|
collaboratively among tildeverse peeps:
|
||||||
|
|
||||||
|
- [quotes db](https://tildegit.org/tildeverse/quotes): [see it
|
||||||
|
live](https://quotes.tilde.chat)
|
||||||
|
- [tildeverse zine](https://tildegit.org/tildeverse/zine): [see it
|
||||||
|
live](https://zine.tildeverse.org)
|
||||||
|
|
||||||
|
see the [tildeverse org](https://tildegit.org/tildeverse) and [team
|
||||||
|
org](https://tildegit.org/team) on tildegit for more projects :)
|
||||||
|
|
||||||
|
this has diverged a bit from my costs into all the stuff that i do. i
|
||||||
|
suppose that means that the main cost is my time and energy. in general,
|
||||||
|
these things are hands-off in the day-to-day and only take time when
|
||||||
|
there are updates or something breaks.
|
||||||
|
|
||||||
|
tags: [tilde](tag_tilde.html), [sysadmin](tag_sysadmin.html)
|
|
@ -0,0 +1,16 @@
|
||||||
|
---
|
||||||
|
title: 'upsides of new dns nameservers'
|
||||||
|
date: 201808141505.38
|
||||||
|
tags:
|
||||||
|
- 'dns'
|
||||||
|
- 'linux'
|
||||||
|
- 'tilde'
|
||||||
|
---
|
||||||
|
|
||||||
|
- no more google
|
||||||
|
- no more google
|
||||||
|
- automated certbot validation for letsencrypt wildcard certs!! no
|
||||||
|
more manual TXT records every three months!
|
||||||
|
|
||||||
|
tags: [dns](tag_dns.html), [linux](tag_linux.html),
|
||||||
|
[tilde](tag_tilde.html)
|
|
@ -0,0 +1,22 @@
|
||||||
|
---
|
||||||
|
title: 'utterances'
|
||||||
|
date: 201809052134.13
|
||||||
|
tags:
|
||||||
|
- 'blog'
|
||||||
|
---
|
||||||
|
|
||||||
|
i somehow stumbled upon [utterances](https://utteranc.es) today at
|
||||||
|
lunch. (i think someone had it forked on their github page).
|
||||||
|
|
||||||
|
no matter how i found it, i still decided to add it to my blog here with
|
||||||
|
[bashblog](https://tildegit.org/team/bashblog). utterances is a
|
||||||
|
commenting system that leverages github issues. so, for example a
|
||||||
|
comment on [a
|
||||||
|
post](https://tilde.team/~ben/blog/upsides-of-new-dns-nameservers.html)
|
||||||
|
shows up on github [like
|
||||||
|
this](https://github.com/benharri/tilde/issues/1#issuecomment-418732788).
|
||||||
|
|
||||||
|
now we just need to figure out if it can be pointed at a gitea instance
|
||||||
|
like [tildegit](https://tildegit.org). might be time for a PR!
|
||||||
|
|
||||||
|
tags: [blog](tag_blog.html)
|
|
@ -0,0 +1,28 @@
|
||||||
|
---
|
||||||
|
title: 'vr'
|
||||||
|
date: 201712181336.04
|
||||||
|
tags:
|
||||||
|
- 'vr'
|
||||||
|
- 'virtual-reality'
|
||||||
|
- 'gaming'
|
||||||
|
---
|
||||||
|
|
||||||
|
i picked up an oculus rift after my last paycheck :P
|
||||||
|
|
||||||
|
it was half christmas present. these are some of the games that i'm most
|
||||||
|
excited for:
|
||||||
|
|
||||||
|
- elite dangerous
|
||||||
|
- lone echo / echo arena
|
||||||
|
- dirt rally
|
||||||
|
- gun club vr
|
||||||
|
- eagle flight
|
||||||
|
- robo recall
|
||||||
|
|
||||||
|
have you played any other cool vr games lately? are there any that i
|
||||||
|
should check out?
|
||||||
|
|
||||||
|
let me know!
|
||||||
|
|
||||||
|
tags: [vr](tag_vr.html), [virtual-reality](tag_virtual-reality.html),
|
||||||
|
[gaming](tag_gaming.html)
|
|
@ -0,0 +1,36 @@
|
||||||
|
---
|
||||||
|
title: 'webassembly'
|
||||||
|
date: 201801171309.13
|
||||||
|
tags:
|
||||||
|
- 'wasm'
|
||||||
|
- 'dev'
|
||||||
|
- 'internet'
|
||||||
|
---
|
||||||
|
|
||||||
|
according to [this
|
||||||
|
post](https://hacks.mozilla.org/2018/01/making-webassembly-even-faster-firefoxs-new-streaming-and-tiering-compiler/)
|
||||||
|
on the mozilla blog, we will be able to compile wasm as it streams into
|
||||||
|
the browser in much the same way that images are decoded. this is a huge
|
||||||
|
game changer from the current paradigm of loading javascript completely
|
||||||
|
before being able to parse and compile it.
|
||||||
|
|
||||||
|
> JavaScript code is much more expensive, byte for byte, than an image,
|
||||||
|
> because of the time spent parsing and compiling it. It's possible to
|
||||||
|
> parse and compile wasm as fast as it comes over the network, which
|
||||||
|
> makes it much more like an image than JavaScript code. Game changer!
|
||||||
|
>
|
||||||
|
> — Yehuda Katz (@wycats) [December 19,
|
||||||
|
> 2017](https://twitter.com/wycats/status/942908325775077376?ref_src=twsrc%5Etfw)
|
||||||
|
|
||||||
|
this will make [so many
|
||||||
|
things](https://github.com/WebAssembly/design/blob/master/UseCases.md)
|
||||||
|
possible in the browser that never were before!
|
||||||
|
|
||||||
|
i decided to follow this
|
||||||
|
[tutorial](http://webassembly.org/getting-started/developers-guide/) and
|
||||||
|
ended up with [this](https://tilde.team/~ben/wasm/hello.html).
|
||||||
|
|
||||||
|
i don't know what to do next. any ideas?
|
||||||
|
|
||||||
|
tags: [wasm](tag_wasm.html), [dev](tag_dev.html),
|
||||||
|
[internet](tag_internet.html)
|
|
@ -0,0 +1,95 @@
|
||||||
|
---
|
||||||
|
title: 'weechat setup'
|
||||||
|
date: 201811162311.30
|
||||||
|
tags:
|
||||||
|
- 'irc'
|
||||||
|
- 'linux'
|
||||||
|
- 'weechat'
|
||||||
|
---
|
||||||
|
|
||||||
|
so you decided to switch from irssi to weechat?
|
||||||
|
|
||||||
|
what options do you need to set? what plugins? what scripts?
|
||||||
|
|
||||||
|
i'll go over some of the most essential of these, and share my full
|
||||||
|
configs.
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
## options
|
||||||
|
|
||||||
|
- `logger.level.irc` the default is 9, which includes joins and parts.
|
||||||
|
in most cases you can set this to 3, which only includes messages
|
||||||
|
- `weechat.look.buffer_notify_default` the default here is "all",
|
||||||
|
which will add joins and parts to your hotlist. set it to "message".
|
||||||
|
- `weechat.look.confirm_quit` set this to on. you'll thank me when you
|
||||||
|
type `/quit` and mean `/close`
|
||||||
|
- `weechat.look.highlight` add a comma-separated list of names/terms
|
||||||
|
you'd like to trigger a highlight here
|
||||||
|
- `weechat.look.prefix_align_max` set this to something between 10
|
||||||
|
and 20. otherwise, long nicks will crush your available screen real
|
||||||
|
estate.
|
||||||
|
- `buflist.format.indent` try something like
|
||||||
|
`${color:237}${if:${buffer.next_buffer.local_variables.type}=~^(channel|private)$?├:└}`
|
||||||
|
- `buflist.format.number` if you want to skip the . or space after the
|
||||||
|
number, set it to `${color:green}${number}`
|
||||||
|
- `irc.look.color_nicks_in_names` set this to on
|
||||||
|
- `irc.look.color_nicks_in_nicklist` set this to on
|
||||||
|
- `irc.look.server_buffer` set this to independent to prevent
|
||||||
|
automatic merges with the core weechat buffer. especially useful if
|
||||||
|
you plan on using
|
||||||
|
[autosort.py](https://weechat.org/scripts/source/autosort.py.html/)
|
||||||
|
- `irc.server_default.autoconnect` set this to on so you don't have to
|
||||||
|
set it for every new network you add.
|
||||||
|
|
||||||
|
## scripts
|
||||||
|
|
||||||
|
these scripts can be managed with the built in `/script` tool. press i,
|
||||||
|
then enter on the selected script to install it.
|
||||||
|
|
||||||
|
- [highmon.pl](https://weechat.org/scripts/source/highmon.pl.html/) -
|
||||||
|
set aside a buffer to list the places your nick has been mentioned
|
||||||
|
- [colorize\_nicks.py](https://weechat.org/scripts/source/colorize_nicks.py.html/) -
|
||||||
|
show nicks in chat with colors
|
||||||
|
- [go.py](https://weechat.org/scripts/source/go.py.html/) - fuzzy
|
||||||
|
quick jump by buffer number of channel name
|
||||||
|
- [autojoin.py](https://weechat.org/scripts/source/autojoin.py.html/) -
|
||||||
|
use `/autojoin --run` to save all the channels you're currently in
|
||||||
|
to be autojoined the next time you start weechat
|
||||||
|
- [autosort.py](https://weechat.org/scripts/source/autosort.py.html/) -
|
||||||
|
use this script in tandem with irc.look.server\_buffer=independent
|
||||||
|
to keep you channel and server list in order
|
||||||
|
- [colorize\_lines.pl](https://weechat.org/scripts/source/colorize_lines.pl.html/) -
|
||||||
|
i use this script to highlight the entire line of messages i've been
|
||||||
|
mentioned in. check the options in the source or with
|
||||||
|
`/help colorize_lines`
|
||||||
|
- [grep.py](https://weechat.org/scripts/source/grep.py.html/) -
|
||||||
|
quickly search history and buffers with `/grep`
|
||||||
|
|
||||||
|
## the rest of my configs
|
||||||
|
|
||||||
|
you can find the rest of my configs
|
||||||
|
[here](https://tildegit.org/ben/dotfiles/src/branch/master/weechat/.weechat).
|
||||||
|
|
||||||
|
if you have any questions, feel free to ping me on irc. i'm benharri on
|
||||||
|
freenode and ben on [tilde.chat](https://tilde.chat)
|
||||||
|
|
||||||
|
## screenshot
|
||||||
|
|
||||||
|
here's a screenshot of my current configs
|
||||||
|
|
||||||
|
![](https://bhh.sh/pub/screenies/weechat.png)
|
||||||
|
|
||||||
|
## bonus
|
||||||
|
|
||||||
|
if you have an existing setup, you can check the config changes you've
|
||||||
|
made with `/set diff`
|
||||||
|
|
||||||
|
additionally, feel free to [use my
|
||||||
|
.gitignore](https://tildegit.org/ben/dotfiles/src/branch/master/weechat/.weechat/.gitignore),
|
||||||
|
add your ~/.weechat to source control, and compare.
|
||||||
|
|
||||||
|
hope you've enjoyed customizing your weechat!
|
||||||
|
|
||||||
|
tags: [irc](tag_irc.html), [linux](tag_linux.html),
|
||||||
|
[weechat](tag_weechat.html)
|
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
title: 'where to find me elsewhere on the web'
|
||||||
|
date: 201711281622.42
|
||||||
|
tags:
|
||||||
|
- 'social'
|
||||||
|
- 'contact'
|
||||||
|
---
|
||||||
|
|
||||||
|
- [email](mailto:ben@tilde.team)
|
||||||
|
- [wire](https://wire.com) @bharris
|
||||||
|
- [matrix/riot](http://riot.im) @benh:matrix.org
|
||||||
|
- [telegram](https://t.me/bharris)
|
||||||
|
- [twitter](https://twitter.com/nebsirrah)
|
||||||
|
- [keybase](https://keybase.io/bharris)
|
||||||
|
- [my personal site](https://benharr.is)
|
||||||
|
- [github](https://github.com/benharri)
|
||||||
|
- [gitlab](https://gitlab.com/benharri)
|
||||||
|
- [tilde~ben](/~ben/)
|
||||||
|
|
||||||
|
tags: [social](tag_social.html), [contact](tag_contact.html)
|
|
@ -0,0 +1,44 @@
|
||||||
|
---
|
||||||
|
title: 'white pride vs black pride'
|
||||||
|
date: 201803071649.51
|
||||||
|
tags:
|
||||||
|
- 'politics'
|
||||||
|
---
|
||||||
|
|
||||||
|
What White Nationalists Don't Get
|
||||||
|
|
||||||
|
A common and seemingly reasonable argument for white pride or white
|
||||||
|
nationalism is: why cant I be proud of my culture?
|
||||||
|
|
||||||
|
Well, you can. Always have been able to. We have Irish pride
|
||||||
|
celebrations, we have German drinking festivals, we have Serbian food
|
||||||
|
festivals. Any European culture you can think of has multiple
|
||||||
|
organizations in North America dedicated to taking pride in their
|
||||||
|
heritage and NO ONE gives them shit for it.
|
||||||
|
|
||||||
|
But, you see, when you start talking white pride, that's not a culture.
|
||||||
|
That's a skin color. There is no white culture, never was. There is no
|
||||||
|
pan-European culture, never was. Europe is a continent, not a culture or
|
||||||
|
ethnicity.
|
||||||
|
|
||||||
|
Now, some of you are probably about to go, but wait! Black pride! How is
|
||||||
|
that okay? Well, easy. Go find a black person and ask them if their
|
||||||
|
ancestors were slaves. When you find one who says yes, proceed to ask
|
||||||
|
them what country in Africa were your ancestors from? Do you know what
|
||||||
|
their answer will probably be? I don't know. This is because their
|
||||||
|
culture was taken from them. It was beaten out of them. They were
|
||||||
|
enslaved, Christianized, and then white washed. The one unifying feature
|
||||||
|
they have as a people is that history of slavery and that history of
|
||||||
|
being black. They cant have Liberian pride, or Congolese pride, or
|
||||||
|
insert African country pride because they have no fucking idea where
|
||||||
|
their ancestors came from other than the broad region of West Africa.
|
||||||
|
|
||||||
|
Meanwhile us white people can often trace our ancestors to specific
|
||||||
|
cities and regions. I can trace my mothers maiden name to a single
|
||||||
|
fucking village in Ireland. I know where I came from. I don't have white
|
||||||
|
culture, I have Irish culture.
|
||||||
|
|
||||||
|
So that's why white pride makes you an asshole but black pride actually
|
||||||
|
makes sense.
|
||||||
|
|
||||||
|
tags: [politics](tag_politics.html)
|
|
@ -0,0 +1,20 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2021 Ben Harris
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||||
|
this software and associated documentation files (the "Software"), to deal in
|
||||||
|
the Software without restriction, including without limitation the rights to
|
||||||
|
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||||
|
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||||
|
subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||||
|
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||||
|
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||||
|
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@ -0,0 +1,2 @@
|
||||||
|
+++
|
||||||
|
+++
|
|
@ -0,0 +1,11 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="{{ .Site.LanguageCode }}">
|
||||||
|
{{- partial "head.html" . -}}
|
||||||
|
<body>
|
||||||
|
<main>
|
||||||
|
{{- partial "header.html" . -}}
|
||||||
|
{{- block "main" . }}{{- end }}
|
||||||
|
{{- partial "footer.html" . -}}
|
||||||
|
</main>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,10 @@
|
||||||
|
{{ define "main" }}
|
||||||
|
<h1>posts</h1>
|
||||||
|
{{ range .Pages }}
|
||||||
|
<article>
|
||||||
|
<h2>{{ .Title }}</h2>
|
||||||
|
{{ .Content }}
|
||||||
|
</article>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
{{ define "title" }}
|
||||||
|
{{ .Title }} – {{ .Site.Title }}
|
||||||
|
{{ end }}
|
||||||
|
{{ define "main" }}
|
||||||
|
<h1>{{ .Title }}</h1>
|
||||||
|
|
||||||
|
{{ .Content }}
|
||||||
|
|
||||||
|
<script src="https://utteranc.es/client.js"
|
||||||
|
repo="benharri/tilde"
|
||||||
|
issue-term="title"
|
||||||
|
crossorigin="anonymous"
|
||||||
|
theme="github-dark"
|
||||||
|
async>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
{{ end }}
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
<article>
|
||||||
|
<div>
|
||||||
|
<h2><a href="{{ .RelPermalink }}">{{ .Title }}</a></h2>
|
||||||
|
{{ .Summary }}
|
||||||
|
</div>
|
||||||
|
{{ if .Truncated }}
|
||||||
|
<div>
|
||||||
|
<a href="{{ .RelPermalink }}">read more...</a>
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
||||||
|
</article>
|
|
@ -0,0 +1,14 @@
|
||||||
|
{{ define "header" }}
|
||||||
|
{{ partial "header.html" . }}
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ define "content" }}
|
||||||
|
<h1>{{ .Title }}</h1>
|
||||||
|
{{ .Content }}
|
||||||
|
|
||||||
|
<!-- range all pages sorted by their title -->
|
||||||
|
{{ range sort .Site.Taxonomies.tags }}
|
||||||
|
<a class="badge badge-tag-list-page" href="{{ .Page.Permalink }}">{{ .Page.Title }} ({{ .Count }})</a>
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
{{ define "main" }}
|
||||||
|
<header class="homepage-header">
|
||||||
|
<h1>{{ .Title }}</h1>
|
||||||
|
{{ with .Params.subtitle }}
|
||||||
|
<span class="subtitle">{{ . }}</span>
|
||||||
|
{{ end }}
|
||||||
|
</header>
|
||||||
|
<div class="homepage-content">
|
||||||
|
{{ .Content }}
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
{{ range first 10 .Pages }}
|
||||||
|
{{ .Render "summary" }}
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
||||||
|
{{ end }}
|
|
@ -0,0 +1,3 @@
|
||||||
|
<footer>
|
||||||
|
CC by-nc-nd <a href="https://tilde.team/~ben/">~ben</a> — <a href="mailto:ben@tilde.team">ben@tilde.team</a>
|
||||||
|
</footer>
|
|
@ -0,0 +1,7 @@
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<link rel="stylesheet" type="text/css" href="https://tilde.team/~ben/gruvbox/gruvbox.min.css">
|
||||||
|
<title>{{ block "title" . }}{{ .Site.Title }}{{ end }}</title>
|
||||||
|
</head>
|
||||||
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
main {
|
||||||
|
-webkit-font-feature-settings: "liga" on, "calt" on;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
text-rendering: optimizeLegibility;
|
||||||
|
font-family: 'JetBrains Mono', 'Input Mono', monospace;
|
||||||
|
max-width: 38rem;
|
||||||
|
padding: 2rem;
|
||||||
|
margin: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media only screen and (max-device-width: 736px) {
|
||||||
|
main {
|
||||||
|
padding: 0rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
::selection {
|
||||||
|
background: #d3869b;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
background: #282828;
|
||||||
|
color: #ebdbb2;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
background-color: #3c3836;
|
||||||
|
padding: 1em;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
a, a:active, a:visited {
|
||||||
|
color: #e491b6;
|
||||||
|
background-color: #1d2021;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1, h2, h3, h4, h5 {
|
||||||
|
margin-bottom: .1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote {
|
||||||
|
border-left: 1px solid #bdae93;
|
||||||
|
margin: 0.5em 10px;
|
||||||
|
padding: 0.5em 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
# theme.toml template for a Hugo theme
|
||||||
|
# See https://github.com/gohugoio/hugoThemes#themetoml for an example
|
||||||
|
|
||||||
|
name = "Gruvbox"
|
||||||
|
license = "MIT"
|
||||||
|
licenselink = "https://github.com/yourname/yourtheme/blob/master/LICENSE"
|
||||||
|
description = ""
|
||||||
|
homepage = "http://example.com/"
|
||||||
|
tags = []
|
||||||
|
features = []
|
||||||
|
min_version = "0.41"
|
||||||
|
|
||||||
|
[author]
|
||||||
|
name = ""
|
||||||
|
homepage = ""
|
||||||
|
|
||||||
|
# If porting an existing theme
|
||||||
|
[original]
|
||||||
|
name = ""
|
||||||
|
homepage = ""
|
||||||
|
repo = ""
|
Loading…
Reference in New Issue