Commit graph

9278 commits

Author SHA1 Message Date
Vincent Ambo
c905e4b69f fix(3p/cpp/googleapis): Add protos for Stackdriver Logging
Adds the proto definitions required for the Stackdriver Logging API.
This compiles, but I'm unsure whether it's actually correct because
there seems to be a lot of copy & paste in the build setup.
2020-02-26 15:27:22 +00:00
Vincent Ambo
4c0e565fe1 feat(tools/emacs): Install cmake-mode 2020-02-26 15:20:41 +00:00
Vincent Ambo
366526eab1 feat(3p/cpp/googleapis): Add Nix build instructions 2020-02-26 15:06:37 +00:00
Vincent Ambo
7166b3dd23 fix(3p/cpp/googleapis): Use googleapis proto files provided by Nix
Updates the build process for googleapis in C++ to read the proto
sources from the GOOGLEAPIS_DIR environment variable (injected by Nix)
instead of attempting to download them at build time.
2020-02-26 15:05:47 +00:00
Vincent Ambo
4bdb118d6e Add 'third_party/cpp/googleapis/' from commit 'c873fd3aa14fb0d8696588117b5f79693381ba3c'
git-subtree-dir: third_party/cpp/googleapis
git-subtree-mainline: 438050b3d9
git-subtree-split: c873fd3aa1
2020-02-26 14:22:16 +00:00
Vincent Ambo
438050b3d9 feat(third_party): Add dependencies for Google's C++ API libs 2020-02-26 14:21:46 +00:00
Carlos O'Ryan
c873fd3aa1
feat: add storage protos (#39) 2020-02-25 14:35:22 -05:00
Carlos O'Ryan
c1713cb00d
feat: update protos to 2020-02-25 version (#37)
Update the dependencies based on the new protos.
2020-02-25 13:20:33 -05:00
Vincent Ambo
bbab6cd1c1 feat(tools/emacs): Use patched rcirc 2020-02-24 16:40:43 +00:00
Vincent Ambo
190378ad05 feat(3p/emacs/rcirc): Implement support for IRCv3 server-time
This adds very basic capability[0] and message tag[1] support to rcirc
which is used to implement support for the IRCv3 server-time[2] spec.

During connection setup, the server is asked to list its capabilities
and the `server-time` capability is then blindly requested from
it (the CAP handler code does not check whether server-time is
actually part of the listed capabilities). rcirc does not need to know
whether this negotiation succeeded, because server time tags will
either be sent or not.

By default rcirc prints all timestamps at current-time. A new variable
`rcirc-last-message-time` has been added which, if set, overrides this
timestamp. It is set by the message handler after parsing IRCv3 tags.

Thanks to William Cummings for nudging me in the direction of his post
about adding ZNC playback support to rcirc[4], from which some parts
of this code were taken.

This has been tested with IRCCloud's bouncers.

[0]: https://ircv3.net/specs/core/capability-negotiation
[1]: https://ircv3.net/specs/extensions/message-tags
[2]: https://ircv3.net/specs/extensions/server-time-3.2.html
2020-02-24 16:35:10 +00:00
Vincent Ambo
6380c168c9 chore(third_party/emacs): Check in upstream rcirc
This is the unmodified rcirc package from Emacs 26.3
2020-02-24 16:31:57 +00:00
Vincent Ambo
9c6fb6abb8 chore(third_party): Bump nixos-unstable channel 2020-02-24 16:29:47 +00:00
Vincent Ambo
95b0a8a187 docs(web/blog): Light editing on the unpublished Emacs post 2020-02-22 01:58:33 +00:00
Vincent Ambo
5faa737ead fix(ops/besadii): Remove branch tag after checking for it
... oops. The problem with working on besadii is that testing it
always lags one commit behind.
2020-02-21 23:35:42 +00:00
Vincent Ambo
0c117fe8f4 docs: Include besadii in README, remove sync-gcsr 2020-02-21 23:33:53 +00:00
Vincent Ambo
a2bb8a7e1d fix(ops/besadii): Do not trigger builds for deleted branches 2020-02-21 23:30:05 +00:00
Vincent Ambo
28560fcf8a fix(ops/besadii): Include branch name in build note 2020-02-21 23:27:41 +00:00
Vincent Ambo
ca7c8fe9f0 fix(ops/besadii): Clone from git.tazj.in, not git.camden.* 2020-02-21 23:20:22 +00:00
Vincent Ambo
892418db8f merge(feat/besadii): Integrate besadii at //ops/besadii
This tool supersedes the previous //ops/sync-gcsr, which no longer
exists.

Besadii runs as a git post-receive hook and triggers builds for the
depot on sourcehut. Builds are only triggered for branches, not for
tags.

The sourcehut token is read from /etc/secrets where it has been
manually placed on camden.

Besadii was a hutt kajidic, and also part of the Hutt Clan.
2020-02-21 23:17:31 +00:00
Vincent Ambo
5ed68f0f6b fix(ops/besadii): Only trigger builds for branches 2020-02-21 23:16:28 +00:00
Vincent Ambo
8fe90430ee chore(ops/besadii): Pin git version used in besadii 2020-02-21 23:13:53 +00:00
Vincent Ambo
c689df0dc7 fix(ops/besadii): Replace slashes in branch names
Submitting a build with a branch containing a slash (which is common
for my branches) returns this error:

    Invalid tag name, tags must use lowercase alphanumeric characters,
    underscores, dashes, or dots

This commit replaces all slashes with underscores to work around that.
2020-02-21 23:06:19 +00:00
Vincent Ambo
21b76cb023 feat(ops/besadii): Run 'git update-server-info' at startup
Since besadii is effectively the entire post-receive hook, it also
needs to do the entire job of the hook.
2020-02-21 22:58:34 +00:00
Vincent Ambo
8377fd48f5 fix(ops/besadii): Send auth token in correct format 2020-02-21 22:51:40 +00:00
Vincent Ambo
28563a747c chore(build): Build besadii in CI
(ironic)
2020-02-21 22:48:08 +00:00
Vincent Ambo
59d02771b5 refactor(ops/besadii): Log to syslog instead of stdout 2020-02-21 22:46:34 +00:00
Vincent Ambo
dcbe3d1f9b feat(ops/besadii): Use post-receive hook input to trigger builds
Parses the input passed to besadii from git to extract ref updates and
trigger builds.
2020-02-21 22:32:23 +00:00
Vincent Ambo
5058f3928a feat(ops/besadii): Read sourcehut token from secrets file on disk 2020-02-21 22:31:57 +00:00
Vincent Ambo
0a34810e27 chore(ops/besadii): Fail if sourcehut token is unset 2020-02-21 22:09:23 +00:00
Vincent Ambo
80c6680eda feat(ops/besadii): Refactored tool to trigger sourcehut builds
Refactors //ops/sync-gcsr which was previously responsible for
synchronising the git repository between GCSR and the git.tazj.in cgit
instance to simply be responsible for triggering builds on sourcehut.

This program is intended to run as a git post-update hook.

Note: Not yet feature complete, as interpolation of concrete git
values and also sourcehut secrets is missing.
2020-02-21 22:05:43 +00:00
Vincent Ambo
d657e878fa merge: Add june's cgit patches to //third_party/cgit
june maintains some patches on https://git.causal.agency/cgit/log/
that seem sensible to include in this tree.
2020-02-21 21:05:08 +00:00
C. McEnroe
cd8a9f7b27 feat(cgit/ui-commit): show subject in page title 2020-02-21 21:03:03 +00:00
C. McEnroe
b503c2afcf feat(cgit/ui-tree): show symlink targets in tree listing
Add links to symbolic link targets in tree listings, formatted like
"ls -l".  Path normalization collapses any ".." components of the link.
2020-02-21 21:03:01 +00:00
C. McEnroe
6932c431bb feat(cgit/ui-tree): don't link to blame for binary blobs 2020-02-21 21:02:57 +00:00
C. McEnroe
37b0b37771 feat(cgit/ui-blame): bail if blob is binary
This avoids piping binary blobs through the source-filter.
2020-02-21 21:02:46 +00:00
Vincent Ambo
68d1d87a9b fix(ops/nixos/camden): Add missing quote in nginx config 2020-02-21 16:12:48 +00:00
Vincent Ambo
25d8e7ce25 feat(ops/nixos/camden): Modify nginx log format
This log format contains more structured and correctly typed
information, which I can now use for dashboards and stuff in Stackdriver.
2020-02-21 16:10:08 +00:00
Vincent Ambo
1e51a2135d fix(ops/nixos/camden): Configure nginx to not log hostnames
Hostname prefixes break JSON serialisation, leading to useless
Stackdriver Logging entries.
2020-02-21 16:01:54 +00:00
Vincent Ambo
703aebe6a9 feat(ops/nixos/camden): Install jq 2020-02-21 15:43:07 +00:00
Vincent Ambo
6e4df43f62 feat(ops/nixos/camden): Forward logs to Stackdriver Logging
Enables the journaldriver service to forward logs into a "home"
log-stream in the "tazjins-infrastructure" project.

The service account key for camden has been placed on the machine
manually.
2020-02-21 15:35:51 +00:00
Vincent Ambo
7290a18cb1 chore(ops/nixos/nugget): Remove input-fonts package
My default font is now Jetbrains Mono everywhere.
2020-02-21 13:54:53 +00:00
Vincent Ambo
3d1f568ddb fix(fun/amsterdump): Fix call to os.Getenv
Not sure how this broken version ended up committed ...
2020-02-21 13:54:53 +00:00
Vincent Ambo
f2235ba0ae feat(build): Add //fun and //ops/nixos projects to CI builds 2020-02-21 13:54:53 +00:00
Vincent Ambo
4bbbb58cb5 chore: Rename pkgs->depot in all Nix file headers 2020-02-21 13:54:53 +00:00
Vincent Ambo
5d9d84f4cf refactor: Pass the depot as an argument named 'depot'
This change, which I've been meaning to do for a while, renames the
attributes passed by readTree to things in the tree so that:

* the depot root is now 'depot'
* depot.third_party is additionally passed as 'pkgs' (for
  compatibility with exported subtrees)
2020-02-21 12:45:43 +00:00
Eelco Dolstra
2097983218
Doh 2020-02-18 21:30:31 +01:00
Eelco Dolstra
2f0122b23c
Disable the progress bar if $TERM == dumb or unset
Fixes #3363.

(cherry picked from commit d8fd31f50ff55f7f334a2b9e58a82570e82ec28d)
2020-02-18 18:36:33 +01:00
Eelco Dolstra
db3d3a5618
Build with large config Boehm GC
(cherry picked from commit 583d06385de82ab5c7fc77d26cd138d3c6d5f4b5)
2020-02-18 18:02:58 +01:00
Eelco Dolstra
91030eae50
Enable debug symbols
(cherry picked from commit f46bc0e8eb079f7d2613bfabfbcff31f4401b42c)
2020-02-18 18:00:54 +01:00
Eelco Dolstra
8950ae95a4
Disable shellcheck
It's broken at the moment: https://hydra.nixos.org/build/105746055

Also it pulls in GHC which is a pretty big dependency.

(cherry picked from commit b4e260d887441fde9ab568dff7c21a77d7cff904)
2020-02-18 16:57:46 +01:00