about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorFilesLines
2019-08-22 r/51 chore(blog): Minor changes to integrate DNS based backendVincent Ambo5-21/+18
2019-08-22 r/50 feat(tazblog): Implement entry fetching from DNSVincent Ambo1-20/+119
Not all error cases are properly handled yet, stay tuned.
2019-08-21 r/49 feat(tazblog): Add a Nix shell expression that includes GHC with depsVincent Ambo1-0/+11
2019-08-21 r/48 refactor(tazblog): Directly instantiate Resolver when launchingVincent Ambo2-7/+25
Caching behaviour is tied to the resolver.
2019-08-21 r/47 chore(tazblog): Introduce dependency on 'dns'Vincent Ambo2-2/+3
2019-08-20 r/46 chore(tazblog): Introduce dependency on 'cache'Vincent Ambo3-19/+23
2019-08-20 r/45 feat(tools): Introduce ormolu for formatting Haskell codeVincent Ambo3-3/+9
2019-08-20 r/44 chore(tazblog): Replace BlogDB with stubs for DNS-based storageVincent Ambo10-560/+115
Removes acid-state specific code and the former BlogDB module, in its stead the new BlogStorage module contains stubs for the functions that will be filled in with DNS-based storage. This code is unformatted and will not currently serve a working blog.
2019-08-19 r/43 chore(tools/blog_cli): Shorten metadata key namesVincent Ambo1-5/+5
Every character counts because I want to keep metadata below 255 bytes.
2019-08-19 r/42 refactor(tools/blog_cli): More sensible chunk encoding as recordsVincent Ambo1-17/+17
Instead of many rrdatas in one record, make many records!
2019-08-19 r/41 feat(tools): Add a horrifying tool to write blog posts into DNSVincent Ambo7-0/+350
2019-08-19 r/40 feat(infra/k8s): Add in-cluster tazblog deployment via NixeryVincent Ambo2-0/+22
First deployment actually using a Nixery image and `gitHEAD`. This does not actually serve a working blog for various reasons. The current storage mechanism (acid-state) isn't really appropriate anymore and I'll need to change that soon.
2019-08-19 r/39 chore(infra/k8s): Bump Nixery image to Cachix-enabled oneVincent Ambo2-2/+2
2019-08-19 r/38 feat(third_party): Add nixery with Cachix configurationVincent Ambo2-1/+22
2019-08-16 r/37 fix(infra/k8s): Always pull a Nixery imageVincent Ambo1-0/+1
2019-08-16 r/36 feat(infra/k8s): Deploy Nixery instance to clusterVincent Ambo2-0/+80
2019-08-16 r/35 feat(infra/gcp): Add Terraform configuration for GKE & friendsVincent Ambo2-0/+90
Sets up Terraform itself, a GKE cluster, a storage bucket and all the other little things required to get the basics running.
2019-08-16 r/34 feat(tools): Add kontemplateVincent Ambo3-2/+8
2019-08-15 r/33 feat(tools): Add Terraform 0.12 to local toolsVincent Ambo3-0/+5
This is pre-configured with the GCP provider.
2019-08-15 r/32 chore(tools): Remove bazel & ghcVincent Ambo3-8/+0
2019-08-15 r/31 chore: Remove remaining Bazel-related filesVincent Ambo504-52993/+0
2019-08-15 r/30 chore(nix): Remove overridden GHCVincent Ambo1-28/+13
We're not going down the Bazel route here, so this is not going to be necessary.
2019-08-15 r/29 chore(services/gemma): Mark package as brokenVincent Ambo1-0/+5
2019-07-04 r/28 chore: Add very basic .gitignoreVincent Ambo1-0/+5
2019-07-04 r/27 feat(tazblog): Add Bazel build configurationVincent Ambo1-0/+86
Adds a build configuration using rules_haskell and rules_nixpkgs with all dependencies coming from the centrally configured GHC in the project root.
2019-07-04 r/26 feat(direnv): Add REPO_ROOT variable in workspaceVincent Ambo1-0/+1
Makes it quick & easy to do things from the root.
2019-07-04 r/25 refactor(tazblog): Move required GHC extensions into sourceVincent Ambo5-26/+50
Necessary because Cabal is going away.
2019-07-04 r/24 fix(build): Work around rules_nixpkgs repository setupVincent Ambo1-0/+1
Specifying a local repository from a Nix file is expected to be referencing an external nixpkgs source. However, in this monorepo setup the root of the repository itself is the Nix package set and a workaround in the `external` folder is required to import it into Bazel.
2019-07-04 r/23 fix(bazel): Always use Haskell toolchain from NixVincent Ambo1-0/+2
2019-07-04 r/22 feat(tools): Add custom GHC with dependencies to envVincent Ambo2-0/+4
2019-07-04 r/21 feat(build): Introduce pre-packaged GHC with dependencies via NixVincent Ambo2-2/+27
This uses the Nix infrastructure's Haskell setup to create a GHC derivation that comes with all required Haskell packages, fetched & built via Nix. Downstream packages that want to make use of Haskell dependencies need them to be added to this list.
2019-07-04 r/20 fix(bazel): Ensure that CC toolchain from Nix is usedVincent Ambo1-1/+9
2019-07-04 r/19 feat(build): Add WORKSPACE configuration for BazelVincent Ambo1-0/+39
This sets up Haskell & Nix rules in the workspace.
2019-07-04 r/18 feat(third_party/bazel): Check in rules_nixpkgs from TweagVincent Ambo23-0/+1371
2019-07-04 r/17 feat(third_party/bazel): Check in rules_haskell from TweagVincent Ambo479-0/+51484
2019-07-04 r/16 feat(tools): Add symlinks for bazel & stylish-haskellVincent Ambo2-0/+2
2019-07-04 r/15 fix(nix): Ensure package set is callable with/without argsVincent Ambo1-2/+2
When instantiating a Nix package via Bazel, the package set is called with an empty map as the argument. From the Nix REPL or the dispatch script, however, the package set is called without arguments. This change adds a catch-all optional argument in the package set which ensures that both use-cases are supported (similar to what nixpkgs itself does).
2019-07-04 r/14 feat(dotenv): Set NIX_PATH for entire workspaceVincent Ambo1-0/+1
2019-07-04 r/13 fix(tools): Ensure dispatch script passes arguments correctlyVincent Ambo1-15/+15
2019-07-02 r/12 feat(tools): Add dispatcher script to transparently access toolsVincent Ambo3-0/+36
Initial version of tool provider via Nix. This requires two separate steps for adding a new tool: 1. New symlink in tools/bin to point at the dispatch script. 2. Mapping of tool to Nix package set attribute in dispatch script.
2019-07-02 r/11 feat(git-appraise): Add Nix build configurationVincent Ambo3-0/+23
2019-07-02 r/10 feat(third_party): Check in git-appraiseVincent Ambo38-0/+7300
2019-07-02 r/9 merge(infra): Embed infrastructure configuration into monorepoVincent Ambo12-0/+3872
This contains DNS and NixOS module configuration.
2019-07-02 refactor(infra): Move infrastructure into monorepo structureVincent Ambo13-3/+0
2019-07-02 r/8 fix(tazblog): Ensure build works with MonadFail changesVincent Ambo2-10/+11
This updates some old code that makes assumptions via pattern matching to instead make assumptions via a Prelude function. This is known to be safe as it has been running fine for almost a decade now, but the recent MonadFail changes broke the build.
2019-06-29 r/7 chore(build): Add Gemma to package setVincent Ambo1-0/+1
Note that this does not actually build right now because Elm has done a thing again to break the universe and it requires massive changes to the application to make it work again.
2019-06-29 r/6 merge(gemma): Integrate Gemma into monorepoVincent Ambo11-0/+1373
2019-06-29 refactor(gemma): Move Gemma source into monorepo stuctureVincent Ambo11-0/+0
2019-06-29 r/5 docs(third_party): Add READMEVincent Ambo1-0/+13
2019-06-29 r/4 feat(build): Add top-level package index fileVincent Ambo1-0/+17