Commit graph

16759 commits

Author SHA1 Message Date
Vincent Ambo
94570aa83f feat(main): Implement serving of manifests by digest
Modifies the layer serving endpoint to be a generic blob-serving
endpoint that can handle both manifest and layer object "types".

Note that this commit does not yet populate the CAS with any
manifests.
2020-10-27 15:29:11 +01:00
Vincent Ambo
cbbf45b5cb refactor(storage): Rename ServeLayer -> Serve
This is going to be used for general content-addressed objects, and is
not layer specific anymore.
2020-10-27 15:29:11 +01:00
Vincent Ambo
5ce745d104 refactor(main): Split HTTP handlers into separate functions
There is a new handler coming up to fix #102 and I want to avoid
falling into the classic Go trap of creating thousand-line functions.
2020-10-27 14:03:14 +01:00
Vincent Ambo
4ce32adfe8 fix(build): Work around arbitrary new maxLayers restriction 2020-10-27 13:16:38 +01:00
Vincent Ambo
ad0541940f fix(build): Completely remove Cachix from build setup
Installing Cachix started failing on ARM64.
2020-10-27 13:16:38 +01:00
Griffin Smith
254ddc45f8 fix(gs/mugwump): Add missing scheme to grafana datasource
Change-Id: I954fcca422f2e1325c2455cb1c4d77d53673901f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2061
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
92a371499b feat(gs/mugwump): Only run nix GC monthly
Change-Id: I3b81fe5a76c26e42fb6d2937ce980e12964d70b9
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2060
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
5e5a582134 refactor(gs/mugwump): Only one buildkite builder
There's just not enough juice in this machine to run more than one.

Change-Id: I6e6afc86337ca023e718023e4789fc29b6d8e175
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2059
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
f9125971c2 feat(gs/system): Only enable remote builders on chupacabra
Don't enable whitby+nixbuild as remote builders on every machine (eg not
mugwump), only chupacabra

Change-Id: I8aa8f20d76da4ec0d8caa64ef04697b7e76cbc03
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2058
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
f13e88ab07 feat(gs/home): Add script to rebuild mugwump
Eventually this should be generalized, but for now this is good enough +
nice to have

Change-Id: Icca815b651cfb6f8f0cd2d6a1f64e56c63d2fef5
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2057
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Griffin Smith
af86d08ba8 feat(gs/emacs): Enable lua
Change-Id: Iff1eed338323a49de504a02f870e17eeedde57d3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2056
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-23 15:23:52 +00:00
Elis Hirwing
2a6be2b484 feat(tvl-slapd): add etu to slapd
Change-Id: I39ecf2167fd65f305853bf0e48c6208d94a5bf1f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2055
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-10-22 13:26:25 +00:00
Ben Cartwright-Cox
d4fc093383 fix(tvl-ebooks): Update code to bring up to date with reality
Fixes include:

1) users can now opt out of being mkov'd, instead their messages
will be ascii blocked out.

2) highlights are avoided, by learning names from the main tvl
channel and adding a dot after the first char, for example:

> 21:31:35 <•eta-eb> m.ulti: bas1l we quickly connect controller is mostly agreed

3) highlight avoidance is now stored in redis, to avoid restarts
from destroying the map and causing a bunch of highlights
upon restart

Change-Id: I1055992aab3a06aa1f4ba937fc3ef45f2f78cedc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2054
Tested-by: BuildkiteCI
Reviewed-by: cynthia <cynthia@tvl.fyi>
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: ben <tvl@benjojo.co.uk>
2020-10-20 22:26:23 +00:00
Vincent Ambo
e9e42d5d20 feat(web/tvl): Add graph nodes for AfRA & friends
Change-Id: Iac50cea9277167b28695dd908af66548e0e414b1
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2052
Tested-by: BuildkiteCI
Reviewed-by: edef <edef@edef.eu>
2020-10-20 22:04:33 +00:00
Vincent Ambo
6100e44e72 feat(web/tvl): Accommodate the passage of time in TVL's graph
Some overdue updates: People leaving, people joining. Not all new
people are in here yet either, but you have to start somewhere.

Change-Id: I66dfae443f60d090c02c619d09c12599b936b2dc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2051
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-10-20 16:44:00 +00:00
htbf
41f1b01ba4 feat(tvl-slapd): add htbf
Change-Id: I6da03700708bcafc4f476b01c0a27d27fb85cc4a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2050
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-10-18 02:20:19 +00:00
Griffin Smith
df77855beb feat(gs/system): Setup for yubikey
Install some packages and enable the necessary services + udev stuff to
make yubikeys usable

Change-Id: I8aee8a8b06895880c8195f02fb57b1216a5fdffc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2049
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
963088aff6 feat(gs/system): Install htop on all systems
In this case mostly so I can have it on mugwump

Change-Id: Ifa24caf607b30c1d034f4a9e7044ece88fcee38e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2048
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
703407b2d4 feat(gs/chupacabra): Use mugwump as a binary cache
Since buildkite is running on there, it'll be nice to be able to
download things. Obviously if this laptop ever becomes a laptop again
this'll have to go away (or just become the external domain)

Change-Id: I5fc49c061dbf79f8d523244bcf822e8d96fa6d42
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2047
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
3d610828a3 feat(gs/chupacabra): Include desktop module
I accidentally dropped this when reconfiguring things around to get
mugwump working, and when I rebuilt my x session turned off!

Change-Id: I252c90b6f4d796fef1f8183739fcc8dbfdd0fbf4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2046
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
c83b7e7da3 fix(gs/mugwump): Make nginx scraper play well with SSL
Having SSL on all the vhosts in nginx breaks the prometheus scraper with
the default config, since because it's targeting a different domain the
cert validation fails. It's pointing at localhost, so it's fine to just
have it not validate.

Change-Id: I1cbddc73335d4fa060115c253d69e27059a3113f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2045
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
8cb7118f7d feat(gs/mugwump): Add some buildkite agents
Add a couple of buildkite agents, based off of the config we're using
for whitby (thanks!) for building my own projects that are closed
source.

Change-Id: I2c73538595002fdf4116f534dc9a5806f17e0558
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2044
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
199738955c feat(wigglydonke.rs): Make image the width of the page
The default size is a little bit large

Change-Id: I9f7096cdf9f9ba8433e6ead6124bdc04fc88877b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2043
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
bb6e1b8c07 feat(wigglydonke.rs): Add image
The one I had downloaded before was empty, accidentally

Change-Id: I37c2ce8c556aa3f728ee675ccf14ace8416dcca4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2042
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-13 03:35:02 +00:00
Griffin Smith
28df5a585b feat(gs/mugwump): wigglydonke.rs
Kids Love Wiggly Donkers!

Change-Id: I1d37ecc88dd81d91e05fb597155bb91b93f1bccb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2041
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-12 18:50:58 +00:00
Griffin Smith
db66e1d010 feat(gs/mugwump): Enable prometheus-fail2ban-exporter
Change-Id: I200f206b609675632ad6103c84cc37b629ef9708
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2025
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-12 18:50:58 +00:00
William Carroll
2290aac2a8 Tweak styles
Add spacing to help the app breathe.
2020-10-11 16:47:31 +01:00
William Carroll
767fed75c3 Support multiple HabitTypes
I could have and should have broken this change into smaller pieces, but when I
came up for air, I had changed too much, and most of the changes are
intermingled. Oh well... this is an exciting change!

Include habits for:
- Morning
- Evening
- Payday (the 25th)
- First of the Month
- First of the Year

Since the Morning and Evening routines might be a bit noisy, I'm excluding them
from the output using a flag, `include{Morning,Evening}`, which I support in the
UI to toggle their visibility.

I made *much* more progress on this app that I expected to today, and I *think*
-- short of supporting a database and a server -- I'm close to
being *completely* finished.

Wahoo!
2020-10-11 16:40:10 +01:00
William Carroll
abf1875934 Support Msg to clear all completed tasks
Add a simple button to clear all completed tasks.
2020-10-11 15:39:01 +01:00
William Carroll
79cf42abd5 Render time remaining in UI
Show the number of minutes remaining before completing all of the tasks.
2020-10-11 15:17:20 +01:00
William Carroll
5684608fed Move tailwind function into Utils module
Instead of accepting `List (String, Int)`, accept `List Strategy` where
`Strategy` defines whether or not the string of selectors should be applied to
the element.

I'm also renaming it `class` so I can just use `Utils.class`; `tailwind` has
little to do with the function itself.
2020-10-11 14:59:42 +01:00
William Carroll
1c8a8f5d2c Expand Habit type
Include:

- habitType: Daily, Weekly, Yearly... what's the trigger?
- minutesDuration: Estimation of how long it'll take to complete
2020-10-11 14:58:49 +01:00
William Carroll
ea0cd01e18 Watch a few movies
Here's what I watched:
- Ran
- Children of Heaven
- Lawrence of Arabia

Only 78/250 movies to go!
2020-10-11 10:28:46 +01:00
William Carroll
05d52e403c Tweak styles
- Change header to blue
- Change habit to gray when completed
- Prefer app font for footer instead of monospaced font
2020-10-11 10:24:11 +01:00
William Carroll
0a15ea7366 Create UI module for common components
Create UI.elm to house components like `button`, which is a simple HTML button
with `focus:outline-none` applied as a `class`, which is an accessibility
feature that I don't need for this touch-screen application.

I like this pattern more than my more opinionated patterns for UI modules in Elm
where I'd define all of the arguments as a record type (i.e. kwargs).
2020-10-11 10:15:03 +01:00
William Carroll
106457de4b Prefer handwritten font
Use the Google Fonts API to fetch a handwritten font, which gives the app a
modicum of personality. There are more "best practices" ways to do this, such
as:

- Download the font once, and include it in the bundle
- Extend the Tailwind configure to recognize the font
- Ditch the inline <style> block

But I don't need the performance benefits that the first bullet provides. And
the second two bullets are more relevant for a larger application with more than
one font. So I think in this case, the easiest solution is best.

Also:
- Use `container` and `mx-auto` to constrain content for wide screens
2020-10-11 10:09:15 +01:00
William Carroll
19fbdad1c0 Support viewing different days
Allow users to browse the habits of the other days of the week.
2020-10-10 18:20:24 +01:00
William Carroll
487232d1aa Ensure weekday is updated
This ensures us that our view is consistent within ~1 minute of reality.
2020-10-10 17:34:14 +01:00
William Carroll
7d425de48d Tweak styles
- Increase font size for header
- Prefer a bulleted list
- Reduce horizontal padding
2020-10-10 17:31:34 +01:00
William Carroll
bfbe7dc988 Add a footer
With personal information and information about the project's stack.
2020-10-10 17:31:00 +01:00
William Carroll
df8e45681d Remove Nap from Saturday; prefer Yin Yoga
Since Warm Yin Yoga is at 15:00, it's difficult to attend that *and* nap.
2020-10-10 17:30:22 +01:00
William Carroll
9d331f3077 Begin working on Habit Screens project
Created a small MVP for digitizing my weekly habits. Much more to come.

Lots of things happening:

- Copied the boilerplate to get started
- Added a brief project-level README
- Outlined my ambitions in design.md

See README and design.md for more context on this project.
2020-10-10 17:04:24 +01:00
William Carroll
02ce74eada Add elm-format-on-save-mode to elm-mode-hook
Instead of calling this manually.
2020-10-10 17:03:08 +01:00
Griffin Smith
ca4d698cb0 feat(gs/mugwump): Add prometheus+grafana
Add config for prometheus+grafana to mugwump, served at metrics.gws.fyi
with an Acme SSL cert.

Change-Id: Icc22b5079a24edbc4469233e938f926d92f63eb3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2024
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Griffin Smith
bc8bac74d7 feat(gs/system): Install dnsutils
Change-Id: I577b42abe76c7be3434e7ca4f34bcf84a4a6e6bc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2023
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Griffin Smith
3a4b4568bb feat(gs/home): Install gh
Change-Id: I13d918565b9a46b3e5e11936e5b7787e9ecce719
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2022
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Griffin Smith
ccce934454 feat(gs/home): Alias ec=emacsclient
Change-Id: Ia6633731dbd26c842830f548f909a37a129a7477
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2021
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Griffin Smith
6a65d73731 feat(gs/home): Add ssh host alias for home
Change-Id: Ie3a6ce172eccba3040210c581313981cdd79e2eb
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2020
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-10-05 14:48:58 +00:00
Cynthia Revström
df6a1d47d2 chore(tvl-slapd): use ARGON2 for cynthia
Change-Id: I81efffe384644cc2d2a625fc96ef5264dedd76ea
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2019
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-10-05 13:00:59 +00:00
William Carroll
fbd5e7fb18 Remove evil dependency from window-manager.el
When `keybindings` requires `window-manager`, the `evil-want-integration`
warning emerges. If I remove the `evil` dependency from `window-manager`, it
resolves the issue.
2020-10-04 18:27:38 +01:00