Commit graph

63 commits

Author SHA1 Message Date
Vincent Ambo
f133234f78 chore(cgit-taz): Drop unused 'index' link from page top 2019-12-20 18:59:43 +00:00
Vincent Ambo
0dee62cd7b feat(cgit-taz): Enable display of remote branches in listing 2019-12-20 18:39:58 +00:00
Vincent Ambo
26a4dbdbe9 feat(cgit-taz): Enable built-in README rendering & syntax highlights
This is currently using a bunch of Python - once I have time this will
be migrated to something saner.
2019-12-20 18:39:01 +00:00
Vincent Ambo
d5c5662c5a fix(cgit-taz): Display personal email on depot 2019-12-20 18:31:34 +00:00
Vincent Ambo
1c9e3c652d fix(cgit-taz): Patch other bits of cgit that handle URLs
Turns out there were a few more things. About page handling also did
something weird, which I've swiftly removed.
2019-12-20 18:30:50 +00:00
Vincent Ambo
de309848eb feat(cgit-taz): Patch cgit to construct monorepo URLs
Effectively dropping /depot/ from all URLs.
2019-12-20 17:28:35 +00:00
Vincent Ambo
b1be226626 fix(cgit-taz): Drop /cgit.cgi prefix from vhost 2019-12-20 16:24:15 +00:00
Vincent Ambo
fbae58987b feat(cgit-taz): Display README.md for repository 2019-12-20 16:11:53 +00:00
Vincent Ambo
15076ed228 fix(sync-gcsr): Fix broken log statement 2019-12-20 14:40:21 +00:00
Vincent Ambo
2782a69a72 fix(cgit-taz): Depot checkout is no longer a bare repository
To be compatible with sync-gcsr, the `.git` folder must be referenced
directly as there is an actual worktree on the filesystem now.
2019-12-20 14:23:14 +00:00
Vincent Ambo
ba7a48af75 fix(sync-gcsr): Use local worktree & pull changes into it
Just fetching the remote of a bare repository does not update local
tracking branches, which means that changes do not become visible in
cgit.
2019-12-20 14:17:06 +00:00
Vincent Ambo
7ff4b59342 chore(cgit-taz): Remove git synchronisation from startup script
This will be moved into a sidecar container using sync-gcsr that
updates the repo periodically.
2019-12-20 14:09:34 +00:00
Vincent Ambo
7078bc7a4a feat(services/sync-gcsr): Add git synchronisation helper
Adds a tiny program that keeps a checkout of a remote git repository
in sync with a folder on the local filesystem.

This is going to be used to mirror the GCSR repository onto a local
disk for cgit serving.
2019-12-20 13:16:57 +00:00
Vincent Ambo
96794d8630 fix(cgit-taz): Force gcloud to use specific CA bundle
It doesn't like reading the bundle from /etc/ssl apparently.
2019-12-18 21:37:48 +00:00
Vincent Ambo
1677a27632 refactor(cgit-taz): Use Google Cloud SDK to authenticate repo access
Fighting SSH's peculiarities around how hard it tries to not be
scriptable is tiresome.
2019-12-18 21:05:48 +00:00
Vincent Ambo
065cb64d0a fix(cgit-taz): Create users required by SSH in the container
This might not actually work because SSH will have issues with key
permissions, presumably.
2019-12-18 20:24:20 +00:00
Vincent Ambo
c551f35b03 fix(cgit-taz): Pin SSH into image via Nix 2019-12-18 20:21:30 +00:00
Vincent Ambo
5894d521b9 fix(cgit-taz): Clone depot via SSH
Keys are provided in a Kubernetes secret.
2019-12-18 20:20:10 +00:00
Vincent Ambo
d6a653d7a3 fix(cgit-taz): Explicitly configure CA certs for git 2019-12-18 20:02:17 +00:00
Vincent Ambo
9448326b9b feat(cgit-taz): Clone depot on container launch
This makes for a pretty static server for now, but we'll get there.
2019-12-18 19:37:41 +00:00
Vincent Ambo
1e2766c612 feat(cgit-taz): Apply cgit configuration by patching thttpd
This is just an optimisation because it compiles faster v0v
2019-12-18 17:53:57 +00:00
Vincent Ambo
11022c1b88 feat(services/cgit-taz): Check in initial cgit configuration
This is currently just a test to serve examples from my local machine,
nothing more fancy than that.
2019-12-18 16:22:56 +00:00
Vincent Ambo
d4f6c5a399 chore(third_party): Bump naersk 2019-12-16 03:14:21 +00:00
Vincent Ambo
7da979124f fix(third_party): Expose various other missing dependencies 2019-12-09 03:36:50 +00:00
Vincent Ambo
46e5a23937 fix: Amend import paths to use whitelisted nixpkgs 2019-12-09 02:55:22 +00:00
Vincent Ambo
01bad09eed refactor: Introduce new layout with nixpkgs in third_party
This is not the final layout yet, but makes it so that my top-level
attribute set is no longer overlaid into nixpkgs itself.

This is useful for other people who are importing my monorepo.
2019-12-09 02:40:48 +00:00
Vincent Ambo
45d63bce17 feat(nix): Filter projects that should be built by CI
Instead of specifying CI projects manually, this filters them to move
the CI configuration into the derivations `meta` attributes.
2019-11-15 23:25:41 +00:00
Vincent Ambo
c1c379848a chore(nix): Move files around to conform to new read-tree layout
Broadly speaking, the following things are included:

* there is now a uniform `args` struct that is passed to all
  derivations, package headers have been changed appropriately
* overrides are now loaded from a separate `override` folder just
  using read-tree.nix
* third-party packages have moved into the `third_party` attribute set
2019-11-15 15:26:08 +00:00
Vincent Ambo
161f1b5e85 feat(nixcon-demo): Add CLI mode for NixCon demo
Maybe a bit more sane than trying to do a network based setup.
2019-10-26 13:50:42 +02:00
Vincent Ambo
8ffe811d46 feat(services): Add nixcon-demo service with simple web server 2019-10-26 13:27:56 +02:00
Vincent Ambo
2bc1bedd9e chore(gemma): Mark gemma as broken (again)
Something broke in one of the Lisp dependencies (again).
2019-09-22 17:20:00 +01:00
Vincent Ambo
5b446efb66 chore(tazblog): Remove more unneeded dependencies 2019-09-22 17:05:24 +01:00
Vincent Ambo
0d93594347 fix(tazblog): Explicitly allow substitutes for the blog
Not entirely sure which part of the setup set this to 'false', but
this is potentially the key for why tazblog ends up being rebuilt all
the time.
2019-09-03 00:43:49 +01:00
Vincent Ambo
cfeb6e57c7 chore(tazblog): Clean up unneeded files 2019-09-02 22:34:06 +01:00
Vincent Ambo
68d14b6cfc chore(gemma): Delete old image build configuration 2019-09-02 22:06:55 +01:00
Vincent Ambo
99ee84b477 refactor(blog): Use callPackage to import derivation 2019-09-02 16:53:54 +01:00
Vincent Ambo
4411eea11f fix(gemma): Fix build process in Nix 2019-09-02 02:14:39 +01:00
Vincent Ambo
593e96da60 chore(tazblog): Clean up unused dependencies 2019-08-25 23:21:26 +01:00
Vincent Ambo
1247848d76 refactor(tazblog): Implement HLint lints in all files 2019-08-25 23:07:43 +01:00
Vincent Ambo
561ed1fbbb chore(tazblog): Remove i18n features
The blog has been English only for a few years. Old entries that
survived the migration to DNS will still be accessible.
2019-08-25 22:53:38 +01:00
Vincent Ambo
094aafecdd chore(tazblog): Remove 'read more' feature 2019-08-25 20:22:57 +01:00
Vincent Ambo
1747df418e chore(tazblog): Format source files with ormolu
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 20:15:53 +01:00
Vincent Ambo
d3f8dd15f3 fix(gemma): Almost fix Gemma build by porting an old Elm
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 15:28:23 +01:00
Vincent Ambo
be074c6085 refactor(tazblog): Move blog configuration to envvars
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 12:03:17 +01:00
Vincent Ambo
fb930e4db7 fix(tazblog): Remove debug trace 2019-08-23 11:42:23 +01:00
Vincent Ambo
bd47122afb chore(blog): Minor changes to integrate DNS based backend 2019-08-22 18:58:11 +01:00
Vincent Ambo
c5ef3e01b2 feat(tazblog): Implement entry fetching from DNS
Not all error cases are properly handled yet, stay tuned.
2019-08-22 18:57:49 +01:00
Vincent Ambo
f298bdd183 feat(tazblog): Add a Nix shell expression that includes GHC with deps 2019-08-21 12:17:03 +01:00
Vincent Ambo
008be5c2e1 refactor(tazblog): Directly instantiate Resolver when launching
Caching behaviour is tied to the resolver.
2019-08-21 11:07:25 +01:00
Vincent Ambo
bf2efeba2d chore(tazblog): Introduce dependency on 'dns' 2019-08-21 11:07:09 +01:00