Commit graph

16131 commits

Author SHA1 Message Date
Profpatsch
71fe30a87c feat(users/Profpatsch): add ytextr, a sandboxed yt-dlp wrapper
Change-Id: Id0992e5c1f52ac2c95444721c7565a66ef484e2b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4836
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2022-01-09 12:52:09 +00:00
Vincent Ambo
ebd5c3ad15 feat(hanebuschtag): add grunzelgewunzel
Change-Id: I37533d7ca9b7b35187e94544ec281c333f92bd97
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4837
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2022-01-09 12:49:55 +00:00
Profpatsch
052dea774d feat(users/Profpatsch/nix-home): create gc root on stow
Change-Id: Ifda8273502f6f4bef0739005319ee6993cb328c8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4835
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2022-01-09 09:32:01 +00:00
Profpatsch
fed41f4959 feat(users/Profpatsch): set up stow for nix-home
nix-home is (hopefully) gonna be a home-manager alternative for my
home directory.

Files are symlinked into the home directory via GNU stow (since that
is a tried and tested tool), so first step is to set up the base code
for that.

Implements a small tool that reads a single environment variable and
prints it to stdout.

Change-Id: Ifa3fd9f9e1cedc52c3002196d3971b02cb840e80
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4832
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
Autosubmit: Profpatsch <mail@profpatsch.de>
2022-01-09 09:32:01 +00:00
Vincent Ambo
e1044c1559 chore(tazjin/tverskoy): persist audacity directories
mostly to persist the configuration, which pins the tmpdir to a
sensible (persistent) location

Change-Id: I69693ed3a198b4aec281e53c5f7add4d0d8df657
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4834
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2022-01-09 09:08:31 +00:00
William Carroll
50e79b2d04 fix(wpcarro/blog): Sort blog posts by date DESC
Show the most recently published blog posts first.

Change-Id: Iacc9b2964552e8c0327a05a85c4fc5cbc8741f09
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4833
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-01-09 03:13:53 +00:00
Vincent Ambo
bae8e8d26c feat(tazjin/tverskoy): Install audacity
Change-Id: I49b0bc23d83f7aac3d60ed72dcc759cdf9779154
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4831
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: tazjin <tazjin@tvl.su>
2022-01-08 16:30:44 +00:00
William Carroll
1e730c859d fix(wpcarro/all-systems): Remove diogenes from my top-level systems
When `findSystem` attempts to evaluate `system.config.networking.hostName`,
diogenes (because I've refactored its definition) causes the following error:

> You're trying to declare a value of type `string'
> rather than an attribute-set for the option
> `system'!

Change-Id: Ib23cb9aa9cadc1f71ad3369c903e587762d12cc0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4830
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: lukegb <lukegb@tvl.fyi>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
2022-01-08 10:04:00 +00:00
William Carroll
8735b9df86 docs(wpcarro/blog): Use "today" in the call to date
Now I can copy-paste without replacing the placeholder
date-string (i.e. "2020-04-02").

Change-Id: Ie4ee843b495447a2d4b7e6634114b81b3fc0a50e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4822
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2022-01-08 06:24:03 +00:00
William Carroll
9e22c512b5 fix(wpcarro/emacs): Temporarily prefer Monospace to JetBrainsMono
When I migrated to /depot I removed JetBrainsMono from my monorepo. This is fine
on NixOS machines because I'm depending on JetBrainsMono through Nix
configuration. But for non-NixOS machines (my work machines), I cannot do
this.

Until I've thought of how I'd like to support this, I'm doing to use Monospace,
which should be available on all of my machines.

Change-Id: Icd0cd641526246d40b8d971907c63c7f32ef1c3d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4821
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2022-01-08 06:23:51 +00:00
William Carroll
7c558f7c53 fix(wpcarro/emacs): Redefine bookmark-install-kbd as public fn
I originally refactored this by inlining it as a lambda function, but I was
ignoring the fact that my work machines relied on it because I have Elisp code
in google-briefcase that calls `bookmark-install-kbd`.

Change-Id: I03804250fdfdc22be1445718a061a46461eb9af8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4820
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2022-01-08 06:23:51 +00:00
William Carroll
a21da10b16 feat(wpcarro/clitools): Add simple_vim to my clitools
I'm considering `alias vim=simple_vim`, but I'm not sure yet.

Change-Id: Ia6d625d4925939f4e5c6088a8b4067870c1a2522
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4819
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2022-01-08 06:23:38 +00:00
William Carroll
afa1f2c18b feat(wpcarro/tools): Set nowrap for simple_vim
Change-Id: Ia6342032e6b7e7ffbba65b35158d311d3b0a2e9c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4818
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2022-01-08 06:22:14 +00:00
William Carroll
885f3fb60a feat(wpcarro/blog): Publish "2FA and Gmail's \"Send mail as\""
Small blog post about how I configured myself out of my personal email.

Change-Id: Ibb8834b2150f94dba5f46a8ea634e7e9813b76a5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4817
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
2022-01-08 06:22:14 +00:00
William Carroll
3a9cab6ba2 feat(wpcarro/emacs): Define KBDs for tab, backtab for deadgrep
This makes the UI a bit more interactive.

Change-Id: I756e098fff78d2a71a56cf0ea73240f90821dbab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4813
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:18:03 +00:00
William Carroll
e0dbc1ae59 feat(wpcarro/emacs): Pass --{hidden,follow} flags to rg
These are useful defaults.

Change-Id: Ife4a7f559c9599ba3b846eea7e757266afd7ceae
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4805
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:17:02 +00:00
William Carroll
07d1f9449b fix(wpcarro/emacs): Ensure debug-on-error is globally set
I'm still a bit confused about the nuances between the myriad of ways to handle
variables in Emacs...

- `setq`
- `setq-default`
- `setq-local`
- `defvar`
- `defcustom`
- `defconst`
- `customize-set-variable`
- `make-local-variable`
- `make-variable-buffer-local`
- `kill-local-variable`

...but after running some experiments, this triggers the Emacs debugger when an
error is encountered (e.g. either *in* `init.el` or another package that is
evaluated during `init.el`'s evaluation).

Change-Id: I00d543735b1d816462ba18bad23867865d7af80e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4812
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:15:35 +00:00
William Carroll
df9a698c09 fix(wpcarro/emacs): Disable edebug's "h" KBD
...so that I can move left while debugging.

Change-Id: I7124da76dc51b0b5ca22a7e4a13482fc8da30150
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4811
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:10:33 +00:00
William Carroll
5b1864422f feat(wpcarro/git): Ignore private-keys-v1.d
From `man gpg`:

> --secret-keyring file
>      This is an obsolete option and ignored.  All secret keys are stored in
>      the ‘private-keys-v1.d’ directory below the GnuPG home directory.

Change-Id: I1178c3d4a1aafa10e058db15d293b906ea402a05
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4807
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:10:32 +00:00
William Carroll
4c51588850 refactor(wpcarro/emacs): Tidy-up bookmark.el
TL;DR:
- Prefer dash.el
- Remove "current project" bookmark
- Prefer named functions instead of lambdas to (hopefully) improve `which-key`

Change-Id: I090bf372316702f313284a80af9dd076dbf270a3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4806
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:10:32 +00:00
William Carroll
821b60a2c9 refactor(wpcarro/emacs): Remove KBD logic from buffer.el
Part of an overall cleaning:
- remove tests from library files
- move KBDs from library files to top-level keybindings.el

Change-Id: I0fb80aa4a8d5cc77ee7ecca6206d5e4d62c93491
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4801
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:06:29 +00:00
William Carroll
51a8faad74 chore(wpcarro/emacs): Remove tests from buffer.el
More cleaning...

Change-Id: I4ff450879f0cda9b3a8e8dab61519a4d8c342c91
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4800
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:06:29 +00:00
William Carroll
33e3f2f66a feat(wpcarro/emacs): Prefer Vim style of word-searching
In my opinion the following versions of compound words should be searched
similarly...

- `testingThisOut`   (camel case)
- `TestingThisOut`   (class case)
- `testing_this_out` (snake case)
- `testing-this-out` (kebab case)

...but Emacs's default searching treats the snake and kebab cases differently,
which makes it difficult to search for buffer-local occurrences of symbols in
Python, Elisp (among other languages).

This has been bothering me for some time. I must've attempted to fix this awhile
ago by using `setq` (when I should've used `customize-set-variable`, which makes
me wonder: how much of my configuration is flaky because I'm using `setq` where
I should be using `customize-set-variable`?

For more context about this change, see `describe-variable` for
`evil-symbol-word-search`.

Change-Id: Ie03f0da119f59e04abc5de3143aa6edaf6115168
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4804
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:00:27 +00:00
William Carroll
89a5d93b24 feat(wpcarro/emacs): Enhance markdown editing experience
See comments in the code for context.

Change-Id: I0791222881788b89612359c0b3b263dc7dc9bd63
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4803
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:00:26 +00:00
William Carroll
9098920f0a feat(wpcarro/scratch): create a proof-of-concept blockchain server
> You cannot get educated by this self-propagating system in which people study
> to pass exams, and teach others to pass exams, but nobody knows anything.  You
> learn something by doing it yourself, by asking questions, by thinking, and by
> experimenting.
> - Richard Feynman

In the spirit of learning by doing, I decided to implement a simple blockchain
server. More work remains, but I'm tired after working on this for ~2-3h. I'd
like to reimplement this from memory using a statically typed language like
Haskell. I'd also like to implement node
discovery (https://en.bitcoin.it/wiki/Satoshi_Client_Node_Discovery) because
that is still something I don't quite understand. But I'm signing-off for
now...

Change-Id: I74f424e7f52ffbf81eaad420d7d5205da66d33b5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4802
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 06:00:26 +00:00
William Carroll
afabc77f74 feat(wpcarro/emacs): Include *scratch* and *Messages*
While these aren't technically source code buffers, but the purpose of
`buffer-ivy-source-code` is to create a list of buffers I likely want to switch
to, which includes these.

Change-Id: If3f7b6afa6282a3fb8d0d4a3f7aa4ee64287df65
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4799
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:55:23 +00:00
William Carroll
02db464030 fix(wpcarro/emcas): Debug "Logout" command
gLinux doesn't use `lightdm.service` (you can confirm this by seeing if
`lightdm` is listed in the units reported by calling `systemctl`). I found
`gdm` (i.e. Gnome Display Manager), and it appears that calling...

```shell
systemctl restart gdm.service
```

...does the trick.

Change-Id: Iff47d20db57ce11138f9af943fe64cc18068f5bb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4798
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:55:22 +00:00
William Carroll
4977ffacb0 fix(wpcarro/simple_vim): Debug simple_vim
No need to `mkDerivation` when I'm already using `writeShellScriptBin`. Also:
prefer `<CR>` instead of `<Enter>` for consistency reasons.

Change-Id: Ida8ecec0bd4e3e8c0fbb1ea34eefd61a0fefb4bc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4797
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:55:21 +00:00
William Carroll
54d3cc78dd fix(wpcarro/emacs): Change display.el to use Display Port
I switched cables recently.

Change-Id: I6026cf6598f857e02c29a039885336fb3c147ecb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4796
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:55:20 +00:00
William Carroll
aa348226a2 feat(wpcarro/emacs): Define new device
For my latest workstation.

Change-Id: Idd18c07f05f2afdf57fde25a5aad627759ca1643
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4795
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:55:20 +00:00
William Carroll
3693221522 chore(wpcarro): Update README.md
Format GPG section to (hopefully) improve readability.

Change-Id: Ief731ea640efc2233cc691b0b06a46500eef5672
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4794
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:53:42 +00:00
William Carroll
a415bdaeb5 feat(wpcarro/gpg): Zip output from configs/.gnupg/export.sh
This makes it easier to `scp` to the new host.

Change-Id: If746a71204c97255547b579252622005b4d13b20
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4793
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:53:42 +00:00
William Carroll
fad38387af feat(wpcarro/cryptopals): Support repeating key cipher
I think this is a form of symmetric encryption where the passphrase (e.g. "ICE")
is repeated (e.g. "ICEICEICEICEI...") until it matches the length of the
cleartext string; after that, the two byte-strings are XOR'd against one another
and then encoded as hexadecimal creating the ciphertext.

Change-Id: Ib148f06d6c42a41377d1df1f0738d77da935a9f6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4789
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:51:16 +00:00
William Carroll
7aaddb3d31 fix(wpcarro/cryptopals): Update cleartext scoring algorithm
Create a frequency table of alphabetic characters by reading each character in
"Alice in Wonderland"; use this frequency table to score cleartext when decoding
ciphers.

Change-Id: Id322af64d792c15231a1a02794f396c46196c207
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4788
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:51:15 +00:00
William Carroll
7ab4493c75 refactor(wpcarro/emacs): Prefer $PATH resolution of scrot
...instead of the harder dependency on the installation location.

Change-Id: Ifdde2ab8b3b6069c653012ad5599007d4467a188
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4815
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:47:14 +00:00
William Carroll
ff6e1adb8a fix(wpcarro/emacs): Support inserting "+" in a vterm terminal
Much better :)

Change-Id: Ib8efd5db04ae011f634dcd952fdd5875905ec3e6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4814
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:47:13 +00:00
William Carroll
f1fbddb121 fix(wpcarro/emacs): Restore ability to paste in visual mode
I filed an issue with evil in case there's a potential bug-fix or feature:
https://github.com/emacs-evil/evil/issues/1537

Change-Id: Ia9293b59696ac693f9bffb4d3505ea8fa2d59784
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4810
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:42:11 +00:00
William Carroll
ea21339e5f feat(wpcarro/emacs): prefer shorter tab-width
The default of eight spaces seemed excessive.

Change-Id: Id5cbbdc557a7b1d467c7c20390f58b00045a50cf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4809
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:42:10 +00:00
William Carroll
7c3fef10d9 refactor(wpcarro/emacs): Prefer simpler project-find-file
This version better interacts with google3.

Change-Id: Ib65618dbdc7d76a27479a4e0cfc52c079537dc64
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4808
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:42:10 +00:00
William Carroll
c022f2ba2e feat(wpcarro/diogenes): Support monsterpoker.app
Deploy dummy Shopify site as both a learning exercise and proof-of-concept for
Raf's card game, Monster Poker.

Change-Id: I7bc91dcbf4e171c5e169140f5e9d811303e1285f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4787
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:33:06 +00:00
William Carroll
9ea66aee06 chore(wpcarro/diogenes): Update README to consume deploy-diogenes
Fixing stale documentation

Change-Id: I607dc69377a4db6f9a4a35e39793486c20a8cb4c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4786
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:33:05 +00:00
William Carroll
f9e3ff80af fix(wpcarro/diogenes): Ensure PTR has trailing dot
For example see how Google does it:

```shell
$ dig google.com
142.250.64.206
$ dig -x 142.250.64.206
mia07s56-in-f14.1e100.net. # <- trailing dot
```

Change-Id: I300ffdc03cc740628a4f07f7822e8fadaf12a57a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4755
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:33:03 +00:00
William Carroll
ca6be786a1 chore(wpcarro/website): Templatize website
Preferring billandhiscomputer.com in lieu of wpcarro.dev. wpcarro is a bit of a
tough username for others to remember and for me to say out-loud (it usually
involves me spelling it and explaining to others why Carroll is missing
2x-Ls). I think it's time for a change.

During the transition, I don't want to deal with stale links to
https://wpcarro.dev, so I'm templatizing more of my website and blog so that
these values can be replaced.

Expect more forthcoming changes.

Change-Id: Ic2f5519e6b0d76fcb8b737bf50009e8388f1b178
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4754
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:33:02 +00:00
William Carroll
44f20ea810 feat(wpcarro/diogenes): Support PTR record configuration
This support reverse-DNS lookups.

I encountered a problem where I accidentally deleted my instance's
`nat_ip` (external, ephemeral IP). I needed to run...

```shell
terraform apply -replace=google_compute_instance.diogenes
```

...which invalidates terraform's local cache of the state. I believe this used
to be called `terraform taint`. Things are mostly WAI, with one known issue:
quasselcore and billandhiscomputer.com complain about missing SSL certs, but I
believe this is a race-condition. Calling...

```shell
systemctl restart quassel.service
```

...resolves the issue for quassel. Unfortunately the same doesn't work for
nginx.service, but after a bit of time https://billandhiscomputer.com "just
works". Clearly I'm not sure what's going on here. At least not yet...

Change-Id: I9f059655cb6e83d56618b77cfe4ed38283614ef6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4753
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:33:01 +00:00
William Carroll
d6725296ca fix(wpcarro/diogenes): Ensure quassel can read ACME cert
Add quassel to the nginx group because only user=acme and group=nginx can read
/var/lib/acme/*

Change-Id: If456b8ebf43ee098cd8007c3c6235c78c1071250
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4752
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:33:01 +00:00
William Carroll
6500fb551f feat(wpcarro): Define deploy-diogenes helper
TL;DR:
- Mimmick depot's bin -> __dispatch.sh for personal utils
- Define deploy-diogenes to more tighten my feedback loop

Change-Id: I2b12a1c32a955574f5be5d4f38025bd97e9c7b77
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4751
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:31:56 +00:00
William Carroll
d24eef0735 fix(wpcarro/terraform): Drop source_tags (prefer source_ranges)
source_tags means:

> the firewall will apply only to traffic with source IP that belongs to a tag
> listed in source tags.

This mechanism exists (presumably) for local networking between instances that I
manage. For ingress traffic, I'd like to open these ports to the wider
internet.

Change-Id: If0963c853f10f3c205581cce100671714a5f6a3a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4750
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:31:54 +00:00
William Carroll
ff0552c758 feat(wpcarro/nixos): Include whois in my coreutils
More DNS debugging tools

Change-Id: I5ac192a1f8811149ae3eb0133c7d06496753248b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4749
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:31:53 +00:00
William Carroll
504a409bd2 fix(wpcarro/diogenes): Launch billandhiscomputer.com
These are now available at https://billandhiscomputer.com. I still need to
update the website copy and transfer wpcarro.dev over from Google Domains. I
think I prefer billandhiscomputer (username bill, bill_and_his_computer,
bill-and-his-computer, the_real_bill), so I may deprecate wpcarro. We'll see...

Change-Id: Ia7831ee4813e2cf639047d22d59d302a50e06e66
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4748
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:31:51 +00:00
William Carroll
39e59c740d feat(wpcarro/diogenes): Nixify diogenes's Terraform configuration
TL;DR:
- Define googleCloudVM function to provision NixOS VMs on Google Cloud.
- Consume googleCloudVM in diogenes/default.nix
- Define README.md for basic usage instructions (subject to change).
- Delete diogenes's HCL
- Remove `diogenesSystem` from meta.targets

I'm still having trouble with DNS:
- I need to transfer the Google Domains config to Cloud DNS
- `host billandhiscomputer.com` is NXDOMAIN, so I don't trust my tf DNS config
- This is preventing me from getting SSL certs, which blocks my website, quassel

Change-Id: If315876c96298e83a5953f13b62784d2f65a1024
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4747
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
2022-01-08 05:31:50 +00:00