Commit graph

22 commits

Author SHA1 Message Date
William Carroll
79b5fce68a Scatter blog post ideas for "Let's Learn Nix"
I may not use any of these. I'm just scrawling notes as blog posts to see if
anything sticks.
2020-03-17 22:42:22 +00:00
William Carroll
862c695900 Work on "Let's Learn Nix: Dotfiles" blog post
It has been awhile since I have written a tutorial. I have spent 2-3 hours
working on this post, but I think I need to spend another 2-3 hours before I
publish it.

I expect to be able to write these posts faster as I practice.

I would like to create a few resources that I can reuse in each article for
things like:
- "Let's Learn Nix" reproducibility: Where I list all of the tutorials'
  dependencies: nix version, <nixpkgs> version, OS type and version, etc.
- Haskell type signature convention for Nix
- Ad hoc vs. declarative configuration for Nix
- Troubleshooting Nix: <nixpkgs> search, nix repl, searching the Nix codebase
2020-03-16 20:17:24 +00:00
William Carroll
ea4bf1ba96 Remove UK qualifier to London
Vincent tells me that saying "London, UK" is a very *American* thing to do. I
think that is his polite way of telling me that it's naive.
2020-03-13 23:14:03 +00:00
William Carroll
e93248bc31 Fix broken link to @tazjin's Twitter
Link to @tazjin's Twitter instead of @dmjio's Twitter.
2020-03-13 23:10:06 +00:00
William Carroll
02721a25a7 Init the "Let's Learn Nix" blog series
I'm creating a short blog series to help newcomers learn Nix.
2020-03-13 23:03:42 +00:00
William Carroll
3c73f73517 Remove the "Professional Emacs" blog post
I don't intend to finish this blog post and since my blog is live, I'd rather
not show it on the internet.
2020-03-11 22:58:46 +00:00
William Carroll
c026f1a4c5 Add drafts for future blog posts
- caffeine.md: an explanation of my theory that caffeine antagonizes
  mindfulness.
- nix-and-hugo.md: a short tutorial explaining how I use Nix, the package
  manager and Hugo, the static site generator, to host my blog.
- self-hosting.md: explain how I installed NixOS on my used Acer laptop.
2020-03-11 22:54:50 +00:00
William Carroll
c06d93a275 Ad Google AdSense script to blog.wpcarro.dev
I'm adding Google Ads to my blog to:
- learn more about Google AdSense
- attempt to offset the my advertising costs for learn.wpcarro.dev

I may need to surround the <script></script> tags with markup to positions the
ads optimally. I will publish this first, see what it looks like without any
markup, and then progress.
2020-03-10 13:27:11 +00:00
William Carroll
a37e10ced5 Lint hugo Tailwind theme
My Emacs automatically trims trailing whitespace when I save a buffer. As a
result, this diff appears whenever I edit the baseof.html file. Instead of
continuing to ignore the diff, I'm committing it.
2020-03-10 13:27:11 +00:00
William Carroll
118b7b9668 Draft blog post about March's cell phone challenge
Started working on my debut blog post about giving up my cell phone during
march.

I'd like to publish this post by the end of the month, once I conclude the
experiment. At that time, I'd like to change the voice of some the content to be
past test. For now, I'm dumping ideas here while they're fresh in my mind. I
will refine and prune the final post later.
2020-03-10 13:27:11 +00:00
William Carroll
1fbdec0d6a Initialize //blog with lorri
To create new posts, I run...
```shell
hugo new name-of-post.md
```

While writing posts, I run...
```shell
hugo serve -D
```

I need hugo available on PATH environment variable, which lorri provides.
2020-03-10 13:27:11 +00:00
William Carroll
1e75f709ee Update Tailwind theme
Thing I changed:
- prefer a white background
- simplify the footer text

Other things that I'd like to change:
- use JetBrains Mono for the mono-font
2020-03-10 13:27:11 +00:00
William Carroll
220c6d138b Rename my-first-post
I created this file while following Hugo's quick-start tutorial. When I publish
a blog post, I will delete this file.
2020-03-10 13:27:11 +00:00
William Carroll
b929a6bb57 Nixify hugo deployment
Create a derivation for building the static files of my blog.
2020-03-09 15:35:12 +00:00
William Carroll
6e4c721be5 Add 'blog/themes/tailwind/' from commit '2cf446f4ef7bdcc4303ebcb0a3062e87cde4928b'
git-subtree-dir: blog/themes/tailwind
git-subtree-mainline: d206a2812f
git-subtree-split: 2cf446f4ef
2020-03-09 13:31:09 +00:00
William Carroll
d206a2812f Prefer hugo for blog.wpcarro.dev
Instead of creating my own static website generator, I'm trying Hugo. Huge is a
newer alternative to Jekyll. So far, I like what I see.

- Ignoring /blog/public since this is where `huge -D` generates the static
  assets.
- Using a TailwindCSS theme.
- Creating a dumby post about Emacs to test deployments.
- Deleting all Common Lisp and Nix code that powered my previous, half-baked
  blog.
2020-03-09 13:27:35 +00:00
William Carroll
9e0fdd3973 Remove default values for Nix expression parameters
I'm not sure if this commit breaks everything in my monorepo. I think it
will.

Why am I doing this? Perhaps it's a bad idea. I don't fully understand how
readTree works. My ignorance is costing me hours of time spent debugging. In an
effort to better understand readTree, I'm removing the default values for my Nix
expression parameters, which I believe have preventing errors from surfacing.
2020-03-01 22:32:24 +00:00
William Carroll
184404d542 Add deploy.nix to blog
Adding a deploy.nix to output docker images based on the <briefcase>.blog
derivation. See the deploy/README.md docs for more information.
2020-01-31 16:30:56 +00:00
William Carroll
755554176d Consolidate injected dependencies
Move the three injected dependencies into one.
2020-01-31 16:30:25 +00:00
William Carroll
265d202908 Render pandoc output to index.html
Using index.html allows us to use the Google AdSense script and extend the
styling by adding a CSS stylesheet.
2020-01-31 16:13:22 +00:00
William Carroll
837cfe07c7 Rename dotfiles -> briefcase
Renaming my mono-repo briefcase.

I first introduced this commit in master, but it introduced a bug where one of
two things would happen:

1. Emacs wouldn't start and would crash X.
2. Emacs would start but my keyboard wouldn't work.

I learned some valuable debugging skills in the process. Here are some of them:

When my keyboard was broken, I wanted to control my computer using my
laptop. Thankfully this is possible by using `x2x`, which forward X events from
the SSH client to the SSH host.

```shell
> # I'm unsure if this is the *exact* command
> ssh -X desktop x2x -west :0.0
```

Git commit-local bisecting. I didn't need to do a `git bisect` because I knew
which commit introduced the bug; it was HEAD, master. But -- as you can see from
the size of this commit -- there are many changes involved. I wanted to binary
search through the changes, so I did the following workflow using `magit`:

- git reset --soft HEAD^
- git stash 1/2 of the files changed
- re-run `nix-env -f ~/briefcase/emacs -i`
- restart X session
- If the problem persists, the bug exists in the non-stashed files. Repeat the
  process until you find the bug.

In my case, the bug was pretty benign. Calling `(exwm/switch "Dotfiles")` at the
bottom of `window-manager.el` was failing because "Dotfiles" is the name of a
non-existent workspace; it should've been `(exwm/switch "Briefcase")`.

There may have been more problems. I changed a few other things along the way,
including exposing the env vars BRIEFCASE to `wpcarros-emacs` inside of
`emacs/default.nix`.

The important part is that this was a valuable learning opportunity, and I'm
glad that I'm walking away from the two days of "lost productivity" feeling
actually productive.
2020-01-31 15:27:48 +00:00
William Carroll
5c9079a410 Splice ./universe directory into ./
Manually merging:
- README.md: I added the description from universe/README.md into the heading of
  dotfiles/README.md.
- .envrc: dotfiles/.envrc was a superset of universe/.envrc
- .gitignore: Adding some of the ignored patterns from universe/.gitignore to
  dotfiles/.gitignore

Everything else here should be a simple rename.
2020-01-29 14:43:20 +00:00