about summary refs log tree commit diff
path: root/default.nix (follow)
AgeCommit message (Collapse)AuthorFilesLines
2020-08-28 Call readTree on all top-level, visible directories in briefcaseWilliam Carroll1-24/+25
Instead of manually maintaining the list of directories that I expose to readTree, I'm using `builtins.readDir` to get a list of all non-hidden top-level directories.
2020-08-21 Define BuildKite pipelines in NixWilliam Carroll1-0/+1
After a handful of failed attempts to run lint-secrets.sh due to a missing `git-secrets` executable on my git server, I decided that now was a good time to use Nix to define my BuildKite pipelines. TL;DR: - Delete ci/scripts directory - Define ci/pipelines/{briefcase,socrates}.nix Outside of this repository: - I logged into my admin account at git.wpcarro.dev and changed my Gitea post-receive hook to trigger the briefcase pipeline - I logged into my BuildKite account, deleted my build-briefcase pipeline, created a new briefcase pipeline that called: ```shell nix-build -A ci.pipelines.briefcase -o briefcase.yaml buildkite-agent pipeline upload briefcase.yaml ``` One day I will audit all of my ad-hoc, non-mono-repo activity (like the steps I listed above) and attempt to fit everything herein... one step at a time, though!
2020-08-20 Remove <unstable> from briefcaseWilliam Carroll1-5/+0
I don't use this anywhere, so it's time to shed more weight.
2020-08-20 Support build-briefcase.shWilliam Carroll1-1/+0
For now, I'm supporting two CI pipelines: - build-socrates - build-briefcase Conceptually, build-briefcase should cover what build-socrates does now, but eventually I would like build-socrates to call `switch-to-configuration` so that all of my websites, etc. stay fresh.
2020-08-20 Forward zoo.wpcarro.dev connections to :8000William Carroll1-0/+1
Right now the 8000 port is hard-coded into the zoo server, which isn't ideal, but "it works" (TM).
2020-08-12 Support buildHaskellWilliam Carroll1-9/+10
Use Nix and Briefcase to easily create Haskell executables. I'd eventually like to support something like: briefcase.buildHaskell.project that let me define a few top-level values (e.g. ghcExtensions) and would give me a ghci environment with the proper `.ghci` settings so that my development environment mirrored my build environment... baby steps, though.
2020-07-06 Add ref attribute to fetchGitWilliam Carroll1-5/+7
Because revs afa9ca, dc80d7 aren't in the "default" (typically "master") branch of NixOS/nixpkgs-channels, I need to specify the ref (aka branch) in order for fetchGit to resolve the rev.
2020-07-02 Clear $NIX_PATHWilliam Carroll1-4/+18
Ensure that $NIX_PATH is empty using a .envrc file. nix.dev considers references to <nixpkgs>, <briefcase>, <depot>, <unstable> to be an anti-pattern because it hinders reproducibility by introducing an implicit environment. This repository is chock-full of references to <{nixpkgs,unstable,briefcase,depot}>, so right now everything is broken.
2020-03-20 Move sandbox into websiteWilliam Carroll1-1/+0
Nest the sandbox work under ./website.
2020-03-20 Move learn to website/learnWilliam Carroll1-1/+0
Nest the learn directory in the website directory.
2020-03-20 Move blog into website/blogWilliam Carroll1-1/+0
Nest the blog work within the website directory.
2020-03-20 Add sitemap to wpcarro.devWilliam Carroll1-1/+2
- Create ./website directory - Add a sitemap to wpcarro.dev - Move covid-uk directory to sandbox directory TODO: Next sandbox, blog, and learn in the website directory
2020-03-18 Create line chart of UK confirmed corona virus casesWilliam Carroll1-0/+1
I was having trouble tracking the growth of corona virus cases in the UK. Thankfully someone is publishing some daily COVID data as JSON. I downloaded that data manually and plotted it using the chart.js library as a programming exercise with Mimi. Now I'm attempting to deploy to https://wpcarro.dev/covid-uk. TODO(wpcarro): Prefer the live API data instead my soon-to-be-stale downloaded.
2020-03-16 Create derivation for learn.wpcarro.devWilliam Carroll1-0/+1
Creating a derivation to abstract over the build process for learn.wpcarro.dev.
2020-03-13 Move wrapNonNixProgram to utils moduleWilliam Carroll1-0/+1
Define the wrapNonNixProgram in my Nix utils module.
2020-03-04 Move emacs to top-level nix expressionWilliam Carroll1-0/+1
When I run `nix-build -f '<briefcase>' -iA emacs`, readTree will define... - pkgs - depot - briefcase ...and whatever else I choose to define.
2020-03-01 Simpify top-level nix expressionWilliam Carroll1-33/+12
When I first created the monorepo, I borrowed @tazjin's monorepo's. I adapted his depot/default.nix, replacing some of his paths with my paths. This worked for me until recently. I attemped to include <briefcase/monzo_ynab/job> as a systemd unit for my NixOS machine, socrates. NixOS failed to build my changes, and I didn't fully understand my default.nix since I borrowed most of it from @tazjin. I spent the past week looking at the `fix` function. I realized that I didn't fully understand how fixed-point recursion worked. This sent me down a rabbit hole terminating with me studying the Y and Z combinators. Ironically, after understanding the `fix` function, I realized that I didn't need to use it where I was consuming it. I ended up pruning most of my configuration, which resulted in this commit. Yours truly, lambda f: (lambda x: f(x(x)))(lambda x: f(x(x)))
2020-03-01 Add nixos as top-level monorepo packageWilliam Carroll1-0/+1
I'd like to be able to call... `nix-build -E '(import <briefcase> {}).nixos.socrates'` ...as part of my efforts to wane my dependence off of `nixos-rebuild`.
2020-03-01 Remove default values for Nix expression parametersWilliam Carroll1-9/+6
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-02-12 Tidy up structure of briefcaseWilliam Carroll1-0/+1
I had a spare fifteen minutes and decided that I should tidy up my monorepo. The work of tidying up is not finished; this is a small step in the right direction. TL;DR - Created a tools directory - Created a scratch directory (see README.md for more information) - Added README.md to third_party - Renamed delete_dotfile_symlinks -> symlinkManager - Packaged symlinkManager as an executable symlink-mgr using buildGo
2020-02-10 Create gopkgs directory for golang libsWilliam Carroll1-0/+2
- Created a gopkgs directory and registered it with default.nix's readTree - Moved monzo_ynab/utils -> gopkgs - Consumed utils.go in main.go - Renamed monzo_ynab -> job
2020-01-29 Splice ./universe directory into ./William Carroll1-0/+37
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.