Work machines should prefer `/hadrian` and personal machines should prefer
`/depot`.
Change-Id: I03b605cc5ce233767146d83f14f368863897cf8b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6368
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
There might be a better way to do this using `direnv`'s `use_nix` and shlevy's
`nix-buffer` Elisp package, but I'm doing this for now.
Change-Id: I4246c519f39eea1bde3191762b184b37d30fbeed
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6049
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
I wonder if there's an Elisp linter that can catch these errors at nix-build
time.
Change-Id: Ib54e1e57e46ef81021fc373ceecab5a729646472
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6048
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
This only somewhat works, and I don't really need it.
Change-Id: I4e78e5fd49ec07e6cb90a3feef8a4c87cb7b7707
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6047
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
CI couldn't catch this because the dependency is discovered at runtime, and
there were no tests consuming `list-concat`. Added the tests and removed the
usage of `-concat`.
Change-Id: I5bcce9aa8170001a9d35c104da09374ab30ffbc5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6043
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
new functions:
- duplicate
- last
- delete
- wrap
also:
- drop support for `list-head` (in favor of `list-first`)
- add optional arg to first
Change-Id: If3c48d4749a3bc5a853995996fa02a65a4076a10
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6041
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Let's just roll with the TVL conventions
Change-Id: I1b90421ca7d9ad0d1ebbe922afdc62f80f0d5e97
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6033
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Include asciinema, which is only valid for 7d because their email authentication
appears broken at the moment:
https: //github.com/asciinema/asciinema-server/issues/347#issuecomment-1203063694
Change-Id: I33a38586a6660cd8c89bd9aff2d2a452e3c61a0b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6032
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Support mutable variant of `struct-update`. Also remove the `dash` dependency in
`tests.el`.
Change-Id: I76fc809e96b7cbbd3b39fd16db339cb62eab002c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6027
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Restore `clipmenu.el` functionality!
After running `sudo rebuild-system` I still needed to
`systemctl --user start clipmenu`, which I didn't expect. Maybe this will DWIM
after a reboot.
Change-Id: I51550561c5b6d253cd52790749d07a2e3e72aecc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6024
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Would be nice to remove the top-level `if` statement, but I can't be bothered to
debug the first unit test without that workaround.
Change-Id: I4ba576bda915eeb11f9fbfeb5d95d8e5668fd0bd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6022
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
These have passed the test of time.
Change-Id: I9ae2cfe0b29b0e63f9e98f158840bd0e5ba53bed
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6019
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Pretty useful (but still needs some polishing) library for working with `vterm`,
which I use on a daily basis.
Change-Id: Ic6693f52ad9b16b0b4dd1338aedeeccd6ff15379
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6017
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
According to SourceGraph, this is unused, but I'm checking it in for historical
purposes.
Change-Id: I24bcb1c71a9f6de527bb54057cf13d01493c45bf
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6016
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Another Elisp library that I wrote during my manic experience of switching to
EXWM.
Change-Id: I652f5c7228332a7f5822bd408a0c0be8f7bc4b4f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6018
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
This was one of my original dumping grounds for Elisp functions. Nice to
demolish it.
Change-Id: I18102f04690131e66ec0d4362f8305e56e7a6ed7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6015
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Not sure how useful this package is, *but* I'm packaging everything I have now,
and then in a separate CL I can refactor and remove various libs.
Change-Id: Id106539b19244ea1586198992c7ce0d65a0a242b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6014
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
More fixes along the way
Change-Id: I6b62eb0545981c2792d6c70089fe81324ba2dbf0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6010
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
I miss this mode (especially when writing lisp).
Change-Id: I4ebcd5011fd1abb67270214f292a3b883b8c0ca8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6007
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Attempting to use `depot.tools.releases.filteredGitPush` for the first
time. Exciting!
Change-Id: I620140b0454128ea2ca51496a7d653ee4219104e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6006
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
This feature can be pretty annoying. I'm still not sure why when I have two
side-by-side dired buffers both close when I visit the parent
directory (pressing my "-" kbd).
Change-Id: I31419a975efb8dd08198febf1a442324c5947446
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6005
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
This will likely break a few things since I've changed the names of a few
functions to reflect their mutative APIs.
Change-Id: If6279999fba50813b68e66d7713c12afd209eb90
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6004
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
I was getting false-positive ERT test results because I forgot to use the
`should` macro in my assertions. I discovered this when debugging a subtle bug
in cycle.el that depends on `list-contains?` return `t` or `nil` instead of
truthy or falsy values.
Change-Id: Ibbf89fd1c4f50f86d5efcaa4cd87280b97e111ce
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6003
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Mostly just a wrapper around s.el (for now?). Eventually I'd like to prune the
dependency on dash.el (and maybe s.el).
Change-Id: I5c2ba256524bedd93fcd13933fdbd95b1ddff6f8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6002
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Originally I set-out to package `al.el`, but as I started traversing the
dependencies, I needed to package increasingly more packages. I refactored some
of these to prune their dependencies to slay this hydra before it turned into a
never-ending project. I have mixed feelings about this.
I also introduced `ert` and unit tests into my Elisp packaging, so it'll be nice
to have build-time tests that run when Emacs updates land in depot.
Change-Id: I2756dc60888b80255a495e08ae61bd547e6b3db2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5998
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
The end-goal is to package all of my Elisp libraries. Why?
- More granular builds/tests
- More explicitly defined dependencies
- Separate personal configuration from library code
- Ease distribution
Change-Id: I2507d129d3a0b3bf0cfe70b9790536a8b2093b96
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5969
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Another short post about strange encounters in sysadmin-land.
Change-Id: Ie71ca36553440d706ff808af91bed8e09008f909
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5944
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Shared between `ava` and `tarasco`. Also define `lib/default.nix` to share
utility functions like `usermod` between NixOS configurations.
Change-Id: I65b8d37520426e164c9d5f722bee4731a3c6e641
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5942
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
See post for more information :)
Change-Id: I1e2c1e3997d895fd64f225b5f0bc91f5b26d3e96
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5940
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
The overflow-x was a bit embarrassing. I also touched-up other things while I
was getting my hands dirty in the CSS.
Change-Id: I7bfdbb0ab05c67f35fb11672b3dfc29b6c5a53d1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5927
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Read the blog post for more information :)
Change-Id: I46a2f8ec9dc0a6546062e645f34186aa9195c70f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5907
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
The blog functions render the title from `posts.nix` already.
Change-Id: I68b35039d6fbf3bc342cfe772e919d126f3ac08e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5906
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
This has been sloppy for awhile...
While I'm at it modularize some of my Nginx configuration.
Side note: might be time to decouple the Terraform provisioning stuffs from the
NixOS configuration, and this feels *too* tightly coupled.
Change-Id: Ida0da5462d938b956571321a67ba1f026fb0a7de
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5902
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Inspired by Profpatsch's "Notes", here's a short post about a thing that
happened today...
Note: I'd like a way to convert `git log --format=%b` into blog
posts (maybe). Maybe some commit metadata like `POST=true`
Change-Id: I492c48c81891d9f64da8c8149d0d2bfa864ed731
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5889
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Line was too long
Change-Id: I62c4454307f89e089f7d4cda0721f6b9d8029ced
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5900
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
I was being warned while running `sudo rebuild-system`.
Change-Id: Ie8b730760e069086c2ef88f8edf00887cbbb5c93
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5627
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Tailscale is warning about this in `nix-build` via `trace`.
Change-Id: Ia44100f5a3cd12fbf9fd10dbf40bef10805aff12
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5749
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
See the comment or other CLs I've made in the past about earlyoom.
Change-Id: Ia4c0c61784aa3e76644de91a95e8b9fbdd743b54
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5748
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
This naughty RealTek wireless module crashes my machine. I'm also moving other
`boot`-prefixed options out of `hardware.nix` and into `default.nix`. In
general, I'm not *really* a fan of the distinction between the two files in the
first place.
Change-Id: Iabdc776afc78f00971f426c5931b7235c8c0ee20
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5747
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
These docs get stale pretty often. Maybe my installation should be similar
like...
```shell
$ # pseudocode
$ nix-build https://code.tvl.fyi/depot.tar -A users.wpcarro.baseSystem
```
...where that automates more toil 🤷
Change-Id: I548142d9dff284afeb233ecf23036655b7f7c2df
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5744
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Named after the Mexican restaurant, El Tarasco, in El Porto, which I live 3m
walking distance from.
Change-Id: I2cd4b68eaa974ad6c8fec73e0566bc0b831c57a8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5743
Reviewed-by: wpcarro <wpcarro@gmail.com>
Reviewed-by: tazjin <tazjin@tvl.su>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
I broke LVM (Logical Volume Manager - maybe?) when I did the following:
```shell
$ HOSTNAME=ava sudo rebuild-system
$ sudo reboot now
```
I had to rollback to the initial NixOS version and try again.
Change-Id: If90e5e23767392202425181be986f81deb5ddff7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5742
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Thank you for your service
Change-Id: I2e13aa7c28f461e80bd7ffcbc13cbe79594e0aee
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5741
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Strange start to my Monday where I spent ~2h debugging my hanging
NixOS. Strangely I'm not sure I made any changes to my configuration to trigger
this, and I was finding this hard to reproduce:
- graphical X sessions hung (once when opening Chrome)
- TTYs hung (during `nix-build` and `rebuild-system`)
Per kn's recommendations whenever a system is hanging, see if it's reachable
over the network (e.g. SSH). Since I didn't have my laptop, I downloaded Termius
on my iPhone, which I used to mosh into ava, which is a surprisingly nice UX.
I suspect my machine (with only 8GB of RAM) was OOMing, but I'm not
certain. Thanks to grfn I installed `earlyoom`. For more commentary, check-out
Profpatsch's blog post about this: https://profpatsch.de/notes/preventing-oom
What went well:
- Thankfully I installed a Matrix client on my iPhone last week, which allowed
me to troubleshoot with the #tvl folks
AIs:
- I'd like some instrumentation like Prometheus, Loki (`journald`, `dmesg`), so
that I can accumulate troubleshooting information that isn't destroyed when I
reboot my machine (which I did 1/2-dozen times today).
- Consider adding `git` metadata to `system.nixos.label` to get more useful
information in a GRUB/EFI context.
More unknowns:
- Why can't I switch back to EFI (from GRUB) for my bootloader?
Change-Id: Ie2a5a15f5c0ead346d50e331fa2937f8f3453960
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5625
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
More common CLI utilities that I expect to be available as defaults.
Change-Id: I59c5492f3dc007aaea5bfb7b01d5f842ced0d6c9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5564
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
I "think" this belongs in `wpc-language-support.el`, because I need it mostly to
render `*.hcl` files.
Change-Id: I93106c4912699245449328608c12d4f7c74b4fff
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5563
Tested-by: BuildkiteCI
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
This has been useful while developing my NixOS installer.
Change-Id: I45fd5e1647248a6ebf277ffff3638587d8cc695d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5559
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
More tools I didn't know I'd ever become acquainted with until I started
supporting Windows Servers: remmina - for RDPing.
Change-Id: Id861535c4a6bc6d6223ce21e5da60c627c8995b3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5557
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
This allows me to use my device as a router (or in Tailscale terms: as an "exit
node").
Change-Id: I994e6c104c246364118155e934b11969a4d7066e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5555
Reviewed-by: wpcarro <wpcarro@gmail.com>
Autosubmit: wpcarro <wpcarro@gmail.com>
Tested-by: BuildkiteCI
Changes:
* updated keycloak configuration for new version
* migrate to emacs28 outside of //users, re-add emacs27 but with a
warning attached urging people to migrate
Change-Id: I3e5765a63934541f72f6c4a8673d3b4671850c93
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5501
Tested-by: BuildkiteCI
Autosubmit: tazjin <tazjin@tvl.su>
Reviewed-by: wpcarro <wpcarro@gmail.com>