diff --git a/content/about.md b/content/about.md index c2bf190..abd7701 100644 --- a/content/about.md +++ b/content/about.md @@ -7,10 +7,9 @@ date: 2020-07-16T21:42:33-07:00 This is a static site generated using [Hugo](https://gohugo.io/). There's a public repo for this site -[here](https://git.alejandr0angul0.dev/alejandro-angulo/alejandr0angul0.dev). -Nothing fancy going on. I'm planning on using this site as a sort of personal -documentation. Hopefully what I write here will be useful to whoever stumbles -upon it. +[here](https://github.com/alejandro-angulo/alejandr0angul0.dev). Nothing fancy +going on. I'm planning on using this site as a sort of personal documentation. +Hopefully what I write here will be useful to whoever stumbles upon it. For you vim fans, this site supports scrolling vertically with vim bindings (as long as you allow this site to run javascript). As of now the following are @@ -25,8 +24,7 @@ supported: I'm Alejandro Angulo, a code monkey living in the Los Angeles area. When I'm not ~~introducting bugs~~ writing beautiful, performant code I like [working on -random personal -projects](https://git.alejandr0angul0.dev/alejandro-angulo/qmk_firmware/), +random personal projects](https://github.com/alejandro-angulo/qmk_firmware/), going to the gym, and hanging out with my wife and our chihuahua. ## Contact diff --git a/content/posts/dotfiles.md b/content/posts/dotfiles.md index 4aafbe8..32ed969 100644 --- a/content/posts/dotfiles.md +++ b/content/posts/dotfiles.md @@ -7,32 +7,25 @@ keywords = ["dotfiles"] showFullContent = false +++ -Not too long ago I had completely different configurations across different -computers. Terminal color schemes between computers weren't consistent. Git was -configured slightly differently between all computers. Lucky for me, there's a -program that's well suited for this task: -[stow](https://www.gnu.org/software/stow/). +Not too long ago I had completely different configurations across different computers. Terminal color schemes between computers +weren't consistent. Git was configured slightly differently between all computers. Lucky for me, there's a program that's well +suited for this task: [stow](https://www.gnu.org/software/stow/). -Special thanks to [Brandon Invergo](http://brandon.invergo.net/) for [his blog -post](http://brandon.invergo.net/news/2012-05-26-using-gnu-stow-to-manage-your-dotfiles.html) -documenting how he uses stow to manage dotfiles. +Special thanks to [Brandon Invergo](http://brandon.invergo.net/) for +[his blog post](http://brandon.invergo.net/news/2012-05-26-using-gnu-stow-to-manage-your-dotfiles.html) documenting how he uses +stow to manage dotfiles. ## Git & Stow -Before I found stow I was using a [purely git-based -workflow](https://git.alejandr0angul0.dev/alejandro-angulo/dotfiles-bak). It -worked but it was a little clunky keeping a git repo at the root of my home -directory. One minor annoyance was that the repo's README would show up in my -home directory whenever I ran `ls` (minor, I know, but it didn't feel _right_ to -me). I was always a little paranoid that I would accidentally commit some secret -inside of `~/.cache` too. +Before I found stow I was using a [purely git-based workflow](https://github.com/alejandro-angulo/dotfiles-bak). It worked but it +was a little clunky keeping a git repo at the root of my home directory. One minor annoyance was that the repo's README would show +up in my home directory whenever I ran `ls` (minor, I know, but it didn't feel _right_ to me). I was always a little paranoid that +I would accidentally commit some secret inside of `~/.cache` too. -My [updated -workflow](https://git.alejandr0angul0.dev/alejandro-angulo/dotfiles/tree/0af75c92fdbf908f9445bfbaf5e07b0e223db97d) -still uses git but I no longer maintain a repo at the root of my home folder. -Instead, I use stow to manage symlinks for me. My directory structure is cleaner -now with a directory for each set of configuration files (below are my git and -[terminal emulator](https://alacritty.org/) configurations). +My [updated workflow](https://github.com/alejandro-angulo/dotfiles/tree/0af75c92fdbf908f9445bfbaf5e07b0e223db97d) still uses git +but I no longer maintain a repo at the root of my home folder. Instead, I use stow to manage symlinks for me. My directory +structure is cleaner now with a directory for each set of configuration files (below are my git and [terminal +emulator](https://alacritty.org/) configurations). ```zsh ❯ tree -a git alacritty @@ -49,22 +42,20 @@ alacritty 4 directories, 3 files ``` -Installing the configurations for those two programs is as easy as running `stow --t ~ alacritty && stow -t ~ git`. +Installing the configurations for those two programs is as easy as running `stow -t ~ alacritty && stow -t ~ git`. ## Handling Plugins (and Plugin Managers) There are some utilities ([vundle](https://github.com/VundleVim/Vundle.vim), -[base16-shell](https://github.com/chriskempson/base16-shell), [Oh My -ZSH](https://github.com/ohmyzsh/ohmyzsh), etc) that I want to have available -regardless of my underlying system's environment. I set up submodules in my git -repo for these utilities so that I have those utilities available without having -to go through my system's package manager (brew, apt, yay, etc). +[base16-shell](https://github.com/chriskempson/base16-shell), [Oh My ZSH](https://github.com/ohmyzsh/ohmyzsh), etc) that I want to +have available regardless of my underlying system's environment. I set up submodules in my git repo for these utilities so that I +have those utilities available without having to go through my system's package manager (brew, apt, yay, etc). -As an added bonus, I can rely on plugin managers to pull in the bulk of my -dependencies without cluttering up my git repo with a bunch of submodules. +As an added bonus, I can rely on plugin managers to pull in the bulk of my dependencies without cluttering up my git repo with a +bunch of submodules. -```zsh ❯ tree -a -L 3 vim +```zsh +❯ tree -a -L 3 vim vim ├── .vim │   ├── bundle @@ -100,26 +91,22 @@ vim vim/.vim/bundle/Vundle.vim ``` -Instead of setting up submodules for each individual vim plugin I only have a -submodule for vundle (a vim plugin manager) and then I run `vim +PluginInstall -+qall` to pull in my vim plugins. +Instead of setting up submodules for each individual vim plugin I only have a submodule for vundle (a vim plugin manager) and then +I run `vim +PluginInstall +qall` to pull in my vim plugins. ## Special Snowflake Configurations -There are some cases where I don't want to use the exact same configuration -across all my devices. I've found that this situation comes up in one of two -cases: +There are some cases where I don't want to use the exact same configuration across all my devices. I've found that this situation +comes up in one of two cases: - device-specific configuration - environment-specific configuration ### Device-Specific Configurations -I have certain configurations that are device-specific. For example, I have a -`sway` configuration but there are slight differences between my laptop and -desktop because the output configuration isn't the same (one display vs multiple -displays). To handle this I have `sway-carbon` and `sway-gospel` directories in -my dotfiles repo. +I have certain configurations that are device-specific. For example, I have a `sway` configuration but there are slight +differences between my laptop and desktop because the output configuration isn't the same (one display vs multiple displays). To +handle this I have `sway-carbon` and `sway-gospel` directories in my dotfiles repo. ```zsh ❯ tree -a sway* @@ -145,23 +132,20 @@ sway-gospel 9 directories, 6 files ``` -My main sway configuration has this line `include ~/.config/sway/includes/*` -which loads all files inside of `~/.config/sway/includes/`. My `sway-carbon` and -`sway-gospel` configurations will place the correct device-specific -configuration once stowed. +My main sway configuration has this line `include ~/.config/sway/includes/*` which loads all files inside of +`~/.config/sway/includes/`. My `sway-carbon` and `sway-gospel` configurations will place the correct device-specific configuration +once stowed. ### Environment-Specific Configurations -I don't use the same set of programs on all my devices. Sometimes there's no -need to install something everywhere (I wouldn't use my sway configuration on a -device running OS X). Sometimes I just want to play around with a new program -first before deciding it's something that I want to install everywhere. +I don't use the same set of programs on all my devices. Sometimes there's no need to install something everywhere (I wouldn't use +my sway configuration on a device running OS X). Sometimes I just want to play around with a new program first before deciding +it's something that I want to install everywhere. -For example, I wanted to try out [delta](https://github.com/dandavison/delta) -for pretty git output on a personal device. The configuration for delta requires -changes to git's configuration file which depend on having `delta` in `$PATH`. -To prevent breaking things on devices, like my work computer or one of my -raspberry pi's, I updated git's configuration so that there would be fallback. +For example, I wanted to try out [delta](https://github.com/dandavison/delta) for pretty git output on a personal device. The +configuration for delta requires changes to git's configuration file which depend on having `delta` in `$PATH`. To prevent +breaking things on devices, like my work computer or one of my raspberry pi's, I updated git's configuration so that there would +be fallback. ```ini [pager] @@ -171,5 +155,4 @@ raspberry pi's, I updated git's configuration so that there would be fallback. show = "$(which delta 2>/dev/null) | less" ``` -So now on devices with delta installed that'll be used, otherwise less will be -used. +So now on devices with delta installed that'll be used, otherwise less will be used. diff --git a/content/posts/now-with-more-nix.md b/content/posts/now-with-more-nix.md index 22f6d02..e86ba6c 100644 --- a/content/posts/now-with-more-nix.md +++ b/content/posts/now-with-more-nix.md @@ -12,7 +12,7 @@ showFullContent = false It's been about a year since my last post into the void. Since [my last post](/posts/dotfiles) I've completely overhauled how my computers are configured. I now have [a nix -flake](https://git.alejandr0angul0.dev/alejandro-angulo/dotfiles) to manage my personal +flake](https://github.com/alejandro-angulo/dotfiles) to manage my personal machines. I'm going all in on nix and wanted to update the deployment process for this site to use nix flakes as well. @@ -22,7 +22,7 @@ It's been a while since I touched anything on this site and I didn't have any of the right packages installed to work on this. I could have installed programs like [hugo](https://gohugo.io/) system-wide. But, since I have been tinkering with nix, I wanted to use [a flake to manage all the -things](https://git.alejandr0angul0.dev/alejandro-angulo/alejandr0angul0.dev/blob/b8174db2150f3ac9925f8450bc75264678cf06c9/flake.nix) +things](https://github.com/alejandro-angulo/alejandr0angul0.dev/blob/b8174db2150f3ac9925f8450bc75264678cf06c9/flake.nix) needed for development (including writing posts). Here's what the devenv configuration looked like at the time I was writing this @@ -166,7 +166,7 @@ into `$out`. This site is deployed to an S3 bucket just like before switching over to using nix. However, I don't need to use docker containers anymore and can use nix fully. Here's the [github actions -configuration](https://git.alejandr0angul0.dev/alejandro-angulo/alejandr0angul0.dev/blob/97a655bc0c3e18f8c8921b90f14f87f5a07ae837/.github/workflows/ci.yml) +configuration](https://github.com/alejandro-angulo/alejandr0angul0.dev/blob/97a655bc0c3e18f8c8921b90f14f87f5a07ae837/.github/workflows/ci.yml) at the time of writing. ```yaml