Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2019-08-25 | r/61 chore(tools): Remove ormolu from tools | Vincent Ambo | 2 | -4/+0 | |
The Ormolu derivation is too large to be instantiated on-demand. I've resorted to installing this tool into my profile instead. | |||||
2019-08-25 | r/60 chore(tazblog): Format source files with ormolu | Vincent Ambo | 5 | -151/+187 | |
Ormolu's formatting is quite annoying (it uses a lot of unnecessary vertical space and doesn't align elements), but I can't be bothered to do manual formatting - especially because whatever formatting haskell-mode in Emacs produces seems to depend on an opaque state machine or something. | |||||
2019-08-25 | r/59 feat(build): Add Terraform from unstable channel | Vincent Ambo | 1 | -7/+18 | |
2019-08-25 | r/58 chore(gcp): Enable Cloud DNS service | Vincent Ambo | 1 | -0/+1 | |
2019-08-23 | r/57 fix(gemma): Almost fix Gemma build by porting an old Elm | Vincent Ambo | 2 | -8/+15 | |
This pulls in an old version of Elm from NixOS 17.09 which can still build the Elm code in Gemma. However, the Common Lisp build is now broken in some other way. | |||||
2019-08-23 | r/56 chore(k8s): More tazblog replicas | Vincent Ambo | 1 | -1/+1 | |
2019-08-23 | r/55 refactor(tazblog): Move blog configuration to envvars | Vincent Ambo | 2 | -22/+24 | |
The port and resource directory are now specified via environment variables and a wrapper script is created by Nix that sets the resource path and so on correctly. | |||||
2019-08-23 | r/54 fix(tazblog): Remove debug trace | Vincent Ambo | 1 | -2/+1 | |
2019-08-23 | r/53 fix(blog_cli): Quote JSON output for post dates | Vincent Ambo | 1 | -2/+6 | |
2019-08-23 | r/52 feat(blog_cli): Add flag to set post date and serialise as date only | Vincent Ambo | 1 | -5/+25 | |
2019-08-22 | r/51 chore(blog): Minor changes to integrate DNS based backend | Vincent Ambo | 5 | -21/+18 | |
2019-08-22 | r/50 feat(tazblog): Implement entry fetching from DNS | Vincent Ambo | 1 | -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 deps | Vincent Ambo | 1 | -0/+11 | |
2019-08-21 | r/48 refactor(tazblog): Directly instantiate Resolver when launching | Vincent Ambo | 2 | -7/+25 | |
Caching behaviour is tied to the resolver. | |||||
2019-08-21 | r/47 chore(tazblog): Introduce dependency on 'dns' | Vincent Ambo | 2 | -2/+3 | |
2019-08-20 | r/46 chore(tazblog): Introduce dependency on 'cache' | Vincent Ambo | 3 | -19/+23 | |
2019-08-20 | r/45 feat(tools): Introduce ormolu for formatting Haskell code | Vincent Ambo | 3 | -3/+9 | |
2019-08-20 | r/44 chore(tazblog): Replace BlogDB with stubs for DNS-based storage | Vincent Ambo | 10 | -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 names | Vincent Ambo | 1 | -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 records | Vincent Ambo | 1 | -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 DNS | Vincent Ambo | 7 | -0/+350 | |
2019-08-19 | r/40 feat(infra/k8s): Add in-cluster tazblog deployment via Nixery | Vincent Ambo | 2 | -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 one | Vincent Ambo | 2 | -2/+2 | |
2019-08-19 | r/38 feat(third_party): Add nixery with Cachix configuration | Vincent Ambo | 2 | -1/+22 | |
2019-08-16 | r/37 fix(infra/k8s): Always pull a Nixery image | Vincent Ambo | 1 | -0/+1 | |
2019-08-16 | r/36 feat(infra/k8s): Deploy Nixery instance to cluster | Vincent Ambo | 2 | -0/+80 | |
2019-08-16 | r/35 feat(infra/gcp): Add Terraform configuration for GKE & friends | Vincent Ambo | 2 | -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 kontemplate | Vincent Ambo | 3 | -2/+8 | |
2019-08-15 | r/33 feat(tools): Add Terraform 0.12 to local tools | Vincent Ambo | 3 | -0/+5 | |
This is pre-configured with the GCP provider. | |||||
2019-08-15 | r/32 chore(tools): Remove bazel & ghc | Vincent Ambo | 3 | -8/+0 | |
2019-08-15 | r/31 chore: Remove remaining Bazel-related files | Vincent Ambo | 504 | -52993/+0 | |
2019-08-15 | r/30 chore(nix): Remove overridden GHC | Vincent Ambo | 1 | -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 broken | Vincent Ambo | 1 | -0/+5 | |
2019-07-04 | r/28 chore: Add very basic .gitignore | Vincent Ambo | 1 | -0/+5 | |
2019-07-04 | r/27 feat(tazblog): Add Bazel build configuration | Vincent Ambo | 1 | -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 workspace | Vincent Ambo | 1 | -0/+1 | |
Makes it quick & easy to do things from the root. | |||||
2019-07-04 | r/25 refactor(tazblog): Move required GHC extensions into source | Vincent Ambo | 5 | -26/+50 | |
Necessary because Cabal is going away. | |||||
2019-07-04 | r/24 fix(build): Work around rules_nixpkgs repository setup | Vincent Ambo | 1 | -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 Nix | Vincent Ambo | 1 | -0/+2 | |
2019-07-04 | r/22 feat(tools): Add custom GHC with dependencies to env | Vincent Ambo | 2 | -0/+4 | |
2019-07-04 | r/21 feat(build): Introduce pre-packaged GHC with dependencies via Nix | Vincent Ambo | 2 | -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 used | Vincent Ambo | 1 | -1/+9 | |
2019-07-04 | r/19 feat(build): Add WORKSPACE configuration for Bazel | Vincent Ambo | 1 | -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 Tweag | Vincent Ambo | 23 | -0/+1371 | |
2019-07-04 | r/17 feat(third_party/bazel): Check in rules_haskell from Tweag | Vincent Ambo | 479 | -0/+51484 | |
2019-07-04 | r/16 feat(tools): Add symlinks for bazel & stylish-haskell | Vincent Ambo | 2 | -0/+2 | |
2019-07-04 | r/15 fix(nix): Ensure package set is callable with/without args | Vincent Ambo | 1 | -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 workspace | Vincent Ambo | 1 | -0/+1 | |
2019-07-04 | r/13 fix(tools): Ensure dispatch script passes arguments correctly | Vincent Ambo | 1 | -15/+15 | |
2019-07-02 | r/12 feat(tools): Add dispatcher script to transparently access tools | Vincent Ambo | 3 | -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. |