Commit graph

299 commits

Author SHA1 Message Date
Griffin Smith
21690c644b fix(panettone): Automatically reconnect to ldap
Wrap all ldap access in a macro that automatically reconnects and
retries operations that fail due to a connection error, to handle the
case where the ldap server restarts while we still have an open
connection.

Fixes: #44
Change-Id: I4859cf509106e480f97fed17e7f08e0eea909352
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1871
Tested-by: BuildkiteCI
Reviewed-by: eta <eta@theta.eu.org>
2020-08-31 23:03:45 +00:00
Griffin Smith
de851ec08b feat(panettone): Add nav to the top of the page as well
The absence of the navbar containing the "all issues" and "log out"
links from the top of the page has been a common complaint - initially I
disagreed, but after some time thinking about it I've come around. This
adds the same nav - with the "All Issues" link and the "Log Out" link -
to the top of every page, and also fixes a bug where query params would
prevent the "All Issues" link from being hidden on the "All Issues"
page, which looked especially weird when they were right next to each other.

Change-Id: I1d07175fa07aee057ddd140a6864d01342fbb7ef
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1868
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
2020-08-29 16:43:59 +00:00
Griffin Smith
96ea76bd59 feat(panettone): Add styling for blockquotes
Style blockquotes (which show up in rendered markdown) similarly to how
github does, by rendering a 5px-wide margin to the left with some
padding.

Fixes: #48
Change-Id: I79aa3b6cda5d928885c2cc36f504009232252c17
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1869
Tested-by: BuildkiteCI
Reviewed-by: eta <eta@theta.eu.org>
2020-08-29 01:47:33 +00:00
Griffin Smith
74a6a9c817 feat(panettone): Increase session timeout to 90 days
The default was really annoyingly short - 90 days feels perfectly fine
for what we want, though we may want to increase even further.

Fixes: #19
Change-Id: I917abd95c4925f8491cd2be7cd87d91bb6621153
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1867
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-08-28 21:51:23 +00:00
Griffin Smith
1d9a2cac09 feat(panettone): Configure a session secret
Load a SESSION_SECRET env var and set it as the hunchentoot session
secret if present, so that restarting panettone doesn't destroy all
sessions due to the secret getting regenerated.

Refs: #19
Change-Id: Ia2c633fa998e128ecece66e824df01c430da8235
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1866
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
2020-08-28 21:51:23 +00:00
glittershark
1fd633dffd fix(web/panettone): revert "implement shorthand issue URLs"
This reverts commit 3115113854.

Reason for revert: this is causing all issues to return a 404 - reverting until we can get it working.

Change-Id: I5f3c5ec3b24f245a1f7ef12645200d16ed0f1b35
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1721
Tested-by: BuildkiteCI
Reviewed-by: edef <edef@edef.eu>
2020-08-09 19:02:07 +00:00
edef
3115113854 feat(web/panettone): implement shorthand issue URLs
Fix #32

Change-Id: I6ccec959201673850b4b56a44734a2874aad5856
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1648
Reviewed-by: glittershark <grfn@gws.fyi>
Reviewed-by: edef <edef@edef.eu>
Tested-by: BuildkiteCI
2020-08-08 18:23:53 +00:00
Griffin Smith
117e7316a0 fix(web/panettone): Fix more calls to (id nil) in new issue form
Change-Id: Id514d80e00005b7b7eb2f305e92af33ca70d6964
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1594
Tested-by: BuildkiteCI
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-08-03 13:40:47 +00:00
Griffin Smith
708e94532d fix(web/panettone): Fix new issue form
Passing a nil issue to this was breaking because you can't get the id of
nil. I am too used to clojure.

Change-Id: Icf76cbb23d902ec59fa97c21b134936fa40eb43e
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1593
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-08-03 13:25:22 +00:00
Griffin Smith
7aebba7531 feat(web/panettone): Add direct anchor links to comments
Fixes: #31
Change-Id: I5a8228229eb2b68bdfc5addd305ab055443aa5a6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1581
Reviewed-by: lukegb <lukegb@tvl.fyi>
Tested-by: BuildkiteCI
2020-08-02 02:57:41 +00:00
Griffin Smith
b6bab664db feat(web/panettone): Allow editing issues
Allow editing both the subject and the body of issues, recording events
indicating the edit and displaying those events in the issue history.

Fixes: #14
Change-Id: I9ed05271ce9bf6bda4e56f15e249c0f28c862b27
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1517
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-08-02 02:08:39 +00:00
Griffin Smith
c29f60a350 fix(web/panettone): Don't try to markdownify events
Events - which are interleaved with comments - don't have bodies, so
they can't be converted to markdown.

Change-Id: Iba818b95dab59cae5a08c8b4eca94955e11e584b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1509
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-08-01 02:37:34 +00:00
Griffin Smith
37540b3ed7 feat(web/panettone): Render issues+comments as Markdown
Use the new cheddar markdown endpoint to render issue bodies and comment
bodies as JSON. I've checked, and this *also* appears to be XSS
safe (yay)

Change-Id: Ib4b19fd581b0cf40ba03f5d13443535d17df6632
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1500
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-07-31 15:21:18 +00:00
Griffin Smith
94796399e2 feat(web/panettone): Display issue history
Display the history of an issue (which currently is just opening and
closing) inline with the issue's comments on the issue show page

Change-Id: Id167bceef765cb4c24e86983d1dcd6624d0e5956
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1497
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-31 02:05:49 +00:00
Griffin Smith
8e7ba41a34 feat(web/panettone): Log when users change issue statuses
Log in the database, in a way that will generalize to tracking edit
history as well, when users change the status of an issue. To facilitate
easily knowing who is currently authenticated (without introducing a
circular dependency) the authentication-relaated code has also been
factored out into its own package, which is nice because we want to
replace that sooner rather than later anyway.

Fixes: #13
Change-Id: I65a544fab660ed1c295ee8f6b293e0d4945a8203
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1496
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-31 02:05:49 +00:00
Griffin Smith
14a8142f76 feat(web/panettone): persist original-uri through failed auth
Even if the user fails to log in, maintain the original-uri param if
present, so that if they eventually succeed at logging in they still get
where they were originally trying to get.

Change-Id: I2faa5eced002ab899c803cf19095cea76897d92d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1499
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-31 02:05:27 +00:00
Griffin Smith
f46aa2a20c feat(web/panettone): Redirect to original URL after login
Add an original-uri query param to the target of the Log In link
pointing at the current URL, so that when the user eventually
successfully logs in they are redirected to the page they were
originally on

Fixes: #21
Change-Id: I75ed7b75fa00b1b09c8b26bf4dcf5bc6b6d7f53a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1498
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-31 02:05:27 +00:00
Griffin Smith
e8f893ee10 refactor(web/panettone): Remove prevalence
Now that we've migrated over all the data to postgresql, we can get rid
of cl-prevalence as a dependency from Panettone along with all code that
mentions it.

Change-Id: I945f50a88fea5770aac5b4a058342b8269c0bea2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1495
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-07-29 01:57:49 +00:00
Griffin Smith
b2c34c4ba3 fix(web/panettone): Fix reference to undefined function
I have been. Very tired.

Change-Id: Iab9d21e53630be092080cc73196da90534b06553
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1490
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-28 01:35:25 +00:00
Griffin Smith
d4c9a8afda fix(panettone): Add missing util.lisp to build
Change-Id: Id2fdd84145712d75f23844ad1ececa835cec6a84
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1487
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-28 00:37:32 +00:00
Griffin Smith
14c4ed99e1 feat(panettone): Use postgres as the storage backend
Switch from cl-prevalence to postgres (via postmodern) as the storage
backend for panettone. The first time the application starts up after
this commit, it will (idempotently) initialize the db schema and migrate
over all data from the prevalence snapshot to the database - the plan is
then to get rid of the prevalence classes and dependency once that's
deployed.

Change-Id: I4f35707efead67d8854f1c224ef67f8471620453
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1467
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: eta <eta@theta.eu.org>
2020-07-28 00:32:48 +00:00
Griffin Smith
696924b5ef feat(web/panettone): Add dev helpers for postgres db
Add a docker-compose file and lorri-based direnv for aiding in
running and connecting to a postgres database during development of
panettone.

Change-Id: I319eee52b52cd48e1f3d2e32c558989768dc19d8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1465
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
Reviewed-by: eta <eta@theta.eu.org>
2020-07-26 21:55:41 +00:00
Griffin Smith
273053dbf3 fix(web/panettone): Don't log backtraces
The default hunchentoot behavior is to log all local variables when
logging lisp backtraces - this is nice for debugging, but means that if
we hit an error when checking for auth with the ldap server we log the
password provided by the user. No good! Let's just turn off logging of
backtraces for now.

Change-Id: Ibc4242e3e0f974ac53fffc482d3724b0547425ab
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1471
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-26 21:44:49 +00:00
Griffin Smith
6cbaf5dac0 chore(web/panettone): ignore .fasl files
Sly spits these out as a result of the various compile commands, but we
don't want them committed.

Change-Id: I6f45b6de6dc978667a0575d0ed361c573045ef92
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1464
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
2020-07-26 20:12:37 +00:00
Griffin Smith
850f6fc27b feat(web/panettone): Make responsive
Make the site responsive, by making all the hard :widths we were using
into :max-widths, and adding a viewport meta tag.

Change-Id: I02f054f81ff57fbd1c4603b179b2104367f03e3b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1415
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-25 02:38:43 +00:00
Griffin Smith
ece66d081b fix(web/panettone): Fix html5 compliance
- who:html-mode needs to be html5 rather than HTML5 apparently, even
  though the documentation says otherwise
- wrap content in an :html tag with the :lang "en" attribute

Fixes: #22
Change-Id: I58ff8947d17ac02659e4c8d98155f57127ec7005
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1421
Tested-by: BuildkiteCI
Reviewed-by: isomer <isomer@tvl.fyi>
2020-07-24 23:39:38 +00:00
Griffin Smith
e191e0afad feat(web/panettone): Make issues visible publicly
Make auth optional on the index, closed-issues, and view-issue pages,
and only render the various buttons (close issue, new issue, make
comment, etc.) if the user is authenticated.

Fixes: #5
Change-Id: I0a2aaf4a7cc4c5ef0494cc183410f00d2a3b7e06
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1414
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-24 16:41:44 +00:00
Griffin Smith
3e033637b4 feat(web/panettone): Add a Log Out link to the footer
Generalize the rendering of the footer nav, and add a Log Out button to
the right.

Change-Id: I107e2370fd8f12949218ecacb611649a48abd738
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1413
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-24 16:41:44 +00:00
Griffin Smith
156c68698b feat(web/panettone): Add "All Issues" link on issue page
This was something that was complained about verbally - if someone gets
a link to an issue directly it's nice to be able to click on a link to
view all issues.

Change-Id: Id4e0c7208edc51980c6577bb10e6c6dea1e7ab55
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1412
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-07-24 15:50:40 +00:00
Griffin Smith
ed8fed5baa feat(web/panettone): Redirect to original URI after login
Once the user authenticates, redirect them to the original URI they were
trying to get to

Fixes: #7
Change-Id: Id7c8cbe3547923f6c4c5faed180ea8ea6528fddd
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1411
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-07-24 15:50:40 +00:00
Griffin Smith
fba4d145f8 feat(web/panettone): Add issue subject to page title
Fixes: #8
Change-Id: I5513018e6d4908881a3522a24764729f2638b521
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1408
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-07-24 01:01:43 +00:00
Griffin Smith
add588e634 feat(web/panettone): Disallow comments with an empty body
Change-Id: Ic77a0caf419389e8460bf7e5688293f3a588caa4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1405
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-07-24 01:01:43 +00:00
Griffin Smith
943a4c9214 feat(web/panettone): Disallow issues with an empty subject
Disallow creating issues with an empty subject, and render a nice(ish)
alert box indicating the error.

Change-Id: I2857923dc0eb7702c85cd1974a73270ca27720fc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1404
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
2020-07-24 01:01:43 +00:00
Griffin Smith
6bdd191cbf fix(web/panettone): Fix failure on invalid username
Handle if the username submitted to the login form is one of a
nonexistent user, rather than returning a 500

Fixes: #1
Change-Id: Iebc68dea3c91dc928e4386cb172d3c1515fb1556
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1402
Tested-by: BuildkiteCI
Reviewed-by: kanepyork <rikingcoding@gmail.com>
2020-07-23 22:53:18 +00:00
Griffin Smith
d8a0bd9e75 fix(web/panettone): Put snapshot in the right place
For some reason cl-prevalence tries to put the snapshot in the *parent
directory* of the directory that's passed to make-prevalence-system.
This is icky, but this should work around it

Fixes: #2
Fixes: #3
Fixes: #4
Change-Id: I8300246275887653586108cd7b3b033df3bca203
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1401
Tested-by: BuildkiteCI
Reviewed-by: isomer <isomer@tvl.fyi>
2020-07-23 22:30:44 +00:00
Griffin Smith
bd3c19320a feat(web/panettone): Add issue statuses
Add support for issue statuses, which is currently a trivial groupoid of
open and closed. On the show page for open issues there's a Close
button, and on the show page for closed issues there's a Reopen button.
In addition, the index page is filtered by open issues only and there's
a link to view closed issues.

Change-Id: I6c0c3d2e874b1c801e9e06c804f5c1b12db5dbdc
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1352
Tested-by: BuildkiteCI
Reviewed-by: glittershark <grfn@gws.fyi>
2020-07-23 22:20:00 +00:00
Griffin Smith
a107d8e335 feat(web/panettone): Add support for comments
Add a new-comment form and list all issue comments on the issue page

Change-Id: Ia74083484614ba0ca0f2879276f717f709d0f42f
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1351
Tested-by: BuildkiteCI
Reviewed-by: eta <eta@theta.eu.org>
2020-07-23 22:20:00 +00:00
Griffin Smith
d445136140 feat(web/panettone): Add initial styles
Take an initial crack at styling most of the Panettone application,
taking inspiration from the styles from todo.tvl.fyi and tvl.fyi itself.
This uses the LASS CSS library, after a brief attempt at using css-lite
which I ended up not going with because I don't like the library's
design very much, and also it's not compatible with sbcl's (safety
3) (some macroexpansions SETQ undeclared variables).

Change-Id: I054402e4c68ae1e99884d5164e6e2fc39d2779ff
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1350
Tested-by: BuildkiteCI
Reviewed-by: eta <eta@theta.eu.org>
2020-07-23 22:20:00 +00:00
Griffin Smith
d3b7de0783 feat(web/panettone): Display who opened issues and when
Add a line to the issue show page displaying who opened the issue and
when, the latter formatted in dottime.

Change-Id: Ie70d7fd9e62ae92f9a479969d4ea21daddccee40
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1345
Reviewed-by: glittershark <grfn@gws.fyi>
Tested-by: BuildkiteCI
2020-07-23 22:20:00 +00:00
Griffin Smith
974c2e05af feat(web/panettone): Read config from env
Read the port and data directory from environment variables, in
preparation for deploying as a systemd unit to Whitby

Change-Id: I066dced7b7926b6bdc77132d13a4da6c886b20e8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1338
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-23 22:09:15 +00:00
Griffin Smith
fa01f515e2 feat(web/panettone): The start of a very simple issue tracker
Initial commit for Panettone, a very simple issue tracker for TVL. In
its current state this launches a web server with authenticates with our
ldap server, and supports listing and creating issues via static html
pages and simple forms.

We've been needing an issue tracker for a while now, but none of the
options out there seem very good - or there are some good ones, but
they're AGPL licensed and we don't want to deal with them. Rather than
muck around with Trac or Bugzilla, we've decided to write our own.

Change-Id: I704f0996d15199329bbd5450f3d959046bf13973
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1337
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-23 19:47:38 +00:00
Vincent Ambo
16823d075c feat(todolist): Add anchors for each user on the page
This makes it possible to link to the TODOs for a specific user on https://todo.tvl.fyi.

Change-Id: Ibcb43235be187265cda55776582d043a84c96ead
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1301
Reviewed-by: ericvolp12 <ericvolp12@gmail.com>
Tested-by: BuildkiteCI
2020-07-20 11:33:07 +00:00
Vincent Ambo
259750277a feat(web/todolist): Implement a "todo-list" page generator
This invokes ripgrep & jq to construct a list of TODOs from known
users across depot sources, and dumps it into a static page that we
can serve.

The structure is relatively simple, but it might be useful. See here
for an example of what this looks like:

https: //tazj.in/blobs/todos.png
Change-Id: I1edef56606273584ab886b9e762c8ed4d210919d
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1296
Tested-by: BuildkiteCI
Reviewed-by: Alyssa Ross <hi@alyssa.is>
2020-07-19 23:40:42 +00:00
Cameron Kingsbury
8065004ae3 docs(web/tvl): update tvl graph
Change-Id: I60d90f59839bb68a1ae95770c014932e9e7afa51
Reviewed-on: https://cl.tvl.fyi/c/depot/+/940
Tested-by: BuildkiteCI
Reviewed-by: tazjin <mail@tazj.in>
2020-07-12 00:04:42 +00:00
Vincent Ambo
351ed4f044 fix(tazjin/homepage): Fix configuration settings after page moves
My personal pages have moved out of //web, and various changes were
necessary to keep everything working.

Change-Id: I2f81fdd8ba2ce2ce6fea7e329bbdcda6092cc8a6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/604
Reviewed-by: tazjin <mail@tazj.in>
2020-06-26 19:33:35 +00:00
Vincent Ambo
a2cbbedc65 chore(tazjin): Move //web/blog & //web/homepage to my userdir
Change-Id: I96a2620ffb1d9e98a1d8ce7d97f2c4f58c2dbfd3
Reviewed-on: https://cl.tvl.fyi/c/depot/+/603
Reviewed-by: tazjin <mail@tazj.in>
2020-06-26 19:33:35 +00:00
Vincent Ambo
a46ffd85f5 chore(web): Remove tazblog_lisp
This isn't actually used for anything.

Change-Id: Ief1128e934b1626189453abe3564cb64e1fe5a95
Reviewed-on: https://cl.tvl.fyi/c/depot/+/602
Reviewed-by: tazjin <mail@tazj.in>
2020-06-26 19:33:35 +00:00
Griffin Smith
ecd922a97f refactor(web/tvl): Point code link to Sourcegraph
Since this is replacing cgit now

Change-Id: I72da8cb30ed70445eb90adf38bb24d4f7b9782a8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/573
Reviewed-by: tazjin <mail@tazj.in>
2020-06-24 15:25:20 +00:00
nyanotech
9b5b88ae6c feat(web/tvl): Add nyanotech to tvl graph
Change-Id: I3ce5184c688f75c3f7207023cd284cd5a1edd93d
2020-06-19 02:02:28 +00:00
Vincent Ambo
37bbc43146 feat(camden): Move cgit to code.tvl.fyi
Moves the host at which cgit is served to 'code.tvl.fyi'.

Also updates related projects that link to this, most importantly:

* Hound's & Gerrit's cgit link bases have been updated
* besadii is updated to request CI builds for the new location

Change-Id: I44e3e584010ac29cc913ebb1a197c996eb024d80
Reviewed-on: https://cl.tvl.fyi/c/depot/+/71
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-06-12 01:14:21 +00:00
Vincent Ambo
dd66480635 chore(cgit-taz): Point cgit at Gerrit's depot copy
Change-Id: I842ab14269cac18cddeec2f6f9b8140daa40bc0b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/22
Reviewed-by: lukegb <lukegb@tvl.fyi>
2020-06-11 22:09:45 +00:00
Vincent Ambo
94846503c5 fix(web/tvl): s/The V/tazjin's v/ 2020-06-04 01:14:58 +01:00
Vincent Ambo
b2797c3304 chore(web/tvl): Remove people I don't know directly
Quoting myself from IRC, for those who missed it:

-------------

Alright, some of you might be wondering what 'UNDERGOING CHANGES'
means. The gist of it is that TVL has kind of departed from what it
was originally (a place for friends of mine to hang out) by growing a
little too fast, and I've decided to do a bit of a reboot.

What this means is that for most people I don't know directly, I'll be
asking you to leave (I'll +v/-v accordingly) and see if we can get the
original TVL crowd back before opening it for a wider audience again.
The "opening hours" (heh) will also be more restricted again.

Some people will be a little unhappy about this, but the good news is
that you can easily make your own Meet and use that! Some folks even
started an alternative EU-daytime lounge already. But for now, with
this particular one, it'll be s/The V/tazjin's V/.

----------------
2020-06-04 01:13:06 +01:00
Profpatsch
31464d6bca fix(web/tvl): Add self-reference to the TVL site
Recursion go href=
2020-06-03 17:43:29 +01:00
Vincent Ambo
ec96658dce chore(web/tvl): Remove direct link to TVL Meet from website
People who're already here know where it is. There's also
tvl.fyi/meet/ but we don't advertise that.

This is primarily because I'm unhappy with the influx of people at the
moment and it seems like a way to throttle it, in combination with
making the IRC channel invite-only.
2020-05-17 00:35:37 +01:00
erin
dd7e5e0377 feat(web/tvl): Add erin to TVL
From 2c0942a0bddaa2686d5e19c521c004484989734e Mon Sep 17 00:00:00 2001
From: erin <erin@generalprogramming.org>
Date: Wed, 13 May 2020 14:48:55 -0700
Subject: feat(web/tvl): Add nepeat to TVL
2020-05-15 00:44:17 +01:00
İlteriş Yağıztegin Eroğlu
0be487a5e0 feat(web/tvl): Added linuxgemini to baby
I can send my ID to check eligibility thanks

Signed-off-by: linuxgemini <ilteris@asenkron.com.tr>
2020-05-12 18:41:00 +01:00
İlteriş Yağıztegin Eroğlu
98473d21ca feat(web/tvl): Added linuxgemini and ave
Sending again due to the merge of the awaited subgraph patch.

Signed-off-by: linuxgemini <ilteris@asenkron.com.tr>
2020-05-11 02:27:48 +01:00
Luke Granger-Brown
0b95afa9e9 refactor(web/tvl): factor out common styles 2020-05-11 01:00:41 +01:00
Sergiusz Bazanski
0e2138f949 feat(web/tvl): add hswaw community to TVL graph 2020-05-10 23:35:55 +01:00
Leah Neukirchen
327e42024c feat(web/tvl): add muccc community to TVL graph 2020-05-09 20:13:45 +01:00
Vincent Ambo
8486d2ace5 feat(web/tvl): Add jooiiee's website 2020-05-06 00:28:44 +01:00
hexchen
31832e0107 feat(web/tvl): Add hexchen to tvl.fyi graph 2020-05-05 22:31:40 +01:00
Kane York
92c3910dcf chore(web/tvl): fix sorting 2020-05-03 15:17:07 +01:00
Kane York
3a8429769b feat(web/tvl): add kanepyork to TVL graph 2020-05-03 15:16:11 +01:00
Vincent Ambo
25dd720787 feat(web/tvl): add hyperfekt to TVL graph 2020-05-03 01:02:15 +01:00
Cynthia Revström
82099b9319 feat(web/tvl): add artemist to TVL graph 2020-05-03 00:59:07 +01:00
Cynthia Revström
235280ceaa feat(web/tvl): add Eric to TVL graph 2020-05-03 00:59:01 +01:00
Vincent Ambo
fb872e424c feat(web/tvl): Add Q 2020-04-27 20:40:11 +01:00
Vincent Ambo
1af9a8eb53 chore(web/blog): Remove draft flag from nixery-layers post 2020-04-25 14:32:11 +01:00
Vincent Ambo
38bc8cb4cc feat(web/blog): Add Nixery layering design as a blog post
Marked as a draft until I've verified that this looks good.
2020-04-25 14:30:27 +01:00
Sergiusz Bazanski
47cbac7513 feat(web/tvl): document q3k 2020-04-24 01:04:27 +01:00
Vincent Ambo
eaa172c7aa feat(web/tvl): Yet another newcomer ... 2020-04-23 22:30:32 +01:00
Luis Ressel
f2d8370a9a feat(web/tvl): Add two secondary links for myself 2020-04-23 21:34:31 +01:00
Vincent Ambo
2426ffc604 feat(web/tvl): Add another round of newcomers 2020-04-23 16:26:01 +01:00
Vincent Ambo
0674e3f125 feat(web/tvl): More virus for the virus lounge
... I'm not insane
2020-04-22 22:23:20 +01:00
Vincent Ambo
51d3c5b92a feat(web/tvl): Add newcomers to the graph 2020-04-22 21:55:04 +01:00
Vincent Ambo
eeff42a7c1 fix(web/tvl): Set graph height to 'auto'
because the web ... otherwise there's weird spacing around the graph.
2020-04-22 00:15:44 +01:00
Vincent Ambo
9a666bbed5 fix(web/tvl): Elevate edef to have a direct edge 2020-04-22 00:11:21 +01:00
Griffin Smith
1a88352470 feat(web/tvl): add ac's website
AC's got a website! I found it!
2020-04-21 18:01:03 +01:00
Cynthia Revström
83f2cf7cd8 feat(web/tvl): Add baby url
Meow!
2020-04-21 12:50:13 +01:00
Vincent Ambo
2fb8336764 fix(web/tvl): Fix display names for some people 2020-04-21 04:41:53 +01:00
Vincent Ambo
92921e58af feat(web/tvl): Add some more homepage links 2020-04-21 04:38:04 +01:00
Vincent Ambo
3cf5a0541d feat(web/tvl): Add links for "hub" nodes as well 2020-04-21 04:29:21 +01:00
Vincent Ambo
fad370f0c1 style(web/tvl): Reword the note about clickable links 2020-04-21 04:24:08 +01:00
Vincent Ambo
e4676a2e0d fix(web/tvl): Embed SVG file directly into the source
Without this, the links in the graph are not clickable.
2020-04-21 04:07:40 +01:00
Vincent Ambo
7647516751 fix(web/tvl): Fix graphviz syntax (*coughs*) 2020-04-21 04:04:52 +01:00
Vincent Ambo
848aca8580 feat(web/tvl): Add clickable homepage links for most people 2020-04-21 04:03:33 +01:00
Vincent Ambo
38712efe0e style(web/tvl): Center some elements, as is tradition 2020-04-21 03:47:54 +01:00
Vincent Ambo
1faf44b3b3 feat(web/tvl): Add rendered graphviz graph to the page 2020-04-21 03:38:30 +01:00
Vincent Ambo
4683b24e14 feat(web/tvl): Add a button to join TVL 2020-04-21 03:26:04 +01:00
Vincent Ambo
5faaf48f60 feat(web/homepage): Add entry for the TVL page 2020-04-21 03:22:21 +01:00
Vincent Ambo
31004dfc46 fix(web/tvl): Use correct stylesheet name 2020-04-21 03:19:16 +01:00
Vincent Ambo
557b6b0c5b feat(web/tvl): Add initial homepage for TVL 2020-04-21 03:16:17 +01:00
Vincent Ambo
cb62e87b77 chore(web/tvl): Bootstrap static assets for TVL page 2020-04-21 03:03:33 +01:00
Vincent Ambo
eab4f0e9c0 style(web/homepage): Shorten description for TWiV 2020-03-29 22:36:00 +01:00
Vincent Ambo
2776474686 feat(web/homepage): Link to TWiV 2020-03-29 22:34:10 +01:00
Vincent Ambo
95b0a8a187 docs(web/blog): Light editing on the unpublished Emacs post 2020-02-22 01:58:33 +00:00
Vincent Ambo
4bbbb58cb5 chore: Rename pkgs->depot in all Nix file headers 2020-02-21 13:54:53 +00:00
Vincent Ambo
f60eb6c3c7 refactor(web/cgit-taz): Serve depot from disk location on camden 2020-02-12 01:03:31 +00:00
Vincent Ambo
b5c50f4699 refactor(web): Let //web/ derivations build static pages only
Removes nginx configuration built by the web targets (with the
exception of the includable block used to set up redirects for old
blog URLs).
2020-02-11 19:31:20 +00:00
Vincent Ambo
042df0b523 docs(web/blog): Add some TODO entries for the draft 2020-02-10 01:34:54 +00:00
Vincent Ambo
541306f1bd docs(web/blog): Rewrite some style issues in the Emacs post 2020-02-10 01:24:34 +00:00
Vincent Ambo
9f75c91adc feat(web/blog): Add draft blog post on Emacs
This post is a draft, i.e. not linked from the index. It's not a
secret, but if you do find it through this commit before its
publication please don't share it too widely yet.
2020-02-10 00:29:51 +00:00
Vincent Ambo
b56b3db2f4 style(web/homepage): Highlight <kbd> elements like buttons 2020-02-10 00:08:53 +00:00
Vincent Ambo
9ed53f4201 fix(web/homepage): Make .uncoloured-link work again 2020-02-10 00:08:43 +00:00
Vincent Ambo
1e770f5d88 feat(web/blog): Add support for draft & unlisted posts
Posts with either `draft = true;` or `listed = false;` will no longer
be included in index generation and will have a warning callout
inserted at the top of the page urging people not to share the links
to them.
2020-02-09 21:44:48 +00:00
Vincent Ambo
0bc2f8995e style(web/blog): Minor formatting fixes in Watchguard post 2020-02-09 21:24:53 +00:00
Vincent Ambo
30e8f59d02 style(web/homepage): Overflow long code lines into scroll bars 2020-02-09 21:24:31 +00:00
Vincent Ambo
bd2d96d053 chore(web/blog): Move Watchguard images into static assets
Rather than sending user data to imgur ... lets get rid of all the
external stuff!
2020-02-09 21:16:03 +00:00
Vincent Ambo
de9f51de82 chore(web/blog): Remove duplicate CSS file 2020-02-09 21:06:37 +00:00
Vincent Ambo
386692d39d chore(web/homepage): Configure caching for fonts & images 2020-02-09 21:05:03 +00:00
Vincent Ambo
74a78de081 style(web/homepage): Unify page max-width at 800px 2020-02-09 20:52:14 +00:00
Vincent Ambo
fb1b4b9bd3 style(web/homepage): Use somewhat livelier colours
The previous ones looked kind of dull. These are from my gruber-darker
rainbow-delimiters theme.
2020-02-09 13:39:12 +00:00
Vincent Ambo
b836a0df28 feat(web/homepage): Add styling for Cheddar callouts 2020-02-09 13:02:14 +00:00
Vincent Ambo
c3d930aa7f docs(web/blog): Update best-tools post with new phone 2020-02-09 12:06:46 +00:00
Vincent Ambo
a8fa0edd72 feat(web/homepage): Add an entry for the Principia Discordia 2020-02-09 12:01:23 +00:00
Vincent Ambo
ac2c9b7e87 style(web/homepage): Wrap links around the entire entry
This makes it much easier to click on them. Required some style
reshuffling to satisfy CSS.
2020-02-09 02:20:41 +00:00
Vincent Ambo
1fa3316ca1 fix(web/homepage): Fix redirect setup
- all www.* traffic -> non-www
- redirect old blog entries without including the port
2020-02-09 01:48:59 +00:00
Vincent Ambo
05ab6825b3 chore(web): Delete //web/tazblog
Deleting this code feels strange. This project has been around for a
decade, and despite occasionally needing a bunch of tweaks it had aged
well and worked fine for a very long time.

I've reached a strange point where I don't really feel like using
Haskell anymore, and every interaction with this project in recent
years has been fighting dependency management tooling for Haskell, or
dealing with strange build problems.

The simple fact is that the service never really did anything other
than render Markdown dynamically, and at this point I can do that much
better with //tools/cheddar instead.

So, tazblog-hs, it's time to say goodbye. Rest in peace!
2020-02-09 00:43:40 +00:00
Vincent Ambo
9fc9b58301 feat(web): Add a favicon to homepage & blog 2020-02-09 00:43:00 +00:00
Vincent Ambo
a791d5e359 fix(web/homepage): Minor style fixes that were lost 2020-02-09 00:31:31 +00:00
Vincent Ambo
9d9e088943 feat(web/homepage): Add entries for the depot itself & journaldriver 2020-02-09 00:31:19 +00:00
Vincent Ambo
4b5ca24f81 feat(web/blog): Move 'best-tools' doc into a real blog post 2020-02-09 00:31:06 +00:00
Vincent Ambo
0fd762e2d0 fix(web/homepage): Ensure old blog links keep working 2020-02-09 00:30:51 +00:00
Vincent Ambo
69b6ff26c3 feat(web/homepage): Add entries for nixery, kontemplate, dottime 2020-02-09 00:12:22 +00:00
Vincent Ambo
949c75e1bd style(web/homepage): Flip colours for misc/blog 2020-02-09 00:12:13 +00:00
Vincent Ambo
75969d886d feat(web/homepage): Add templating for entries on the homepage
Adds the actual insertion of entries into the homepage, subtly
colour-coding different types of entries.
2020-02-09 00:02:10 +00:00
Vincent Ambo
39854d71b2 refactor(web): Serve static assets to //web/homepage
Shuffles around the nginx locations that are served to ensure that all
static content will be served from tazj.in/static (including for the
blog).
2020-02-09 00:01:07 +00:00
Vincent Ambo
e6002f95cd feat(web/homepage): Add static assets for new homepage
Adds the Jetbrains Mono font and the WIP CSS file for the homepage
and (soon) the blog.
2020-02-08 22:22:37 +00:00
Vincent Ambo
cce872e397 feat(web/homepage): Add Nix code to assemble the index page
This is not yet fully functional, but going in the right direction.

Some concepts are introduced:

* There is a light theme (used for blog entry pages) and a dark
  theme (used for the homepage itself)
* Entries can be either blog posts, projects or miscellaneous things
  that I want to link people to (possibly with a comment)

It might be interesting to add pages that filter to specific types, or
some such, which should be relatively easy to do.

Note that the layouts of entries are not actually done yet.
2020-02-08 22:21:06 +00:00
Vincent Ambo
7935957938 refactor(web): Move nginx setup to //web/homepage
The homepage is going to be the landing page for all content, whether
it be blog posts or other stuff.
2020-02-08 14:06:57 +00:00
Vincent Ambo
8e9fb73958 refactor(web/blog): Use timestamps for dates instead of strings
This lets me easily create an ordered list of entries if the homepage
is designed to list both blog posts and other content.
2020-02-08 13:47:47 +00:00
Vincent Ambo
cc2c130352 feat(web/blog): Check in blog posts that I want to keep 2020-02-08 13:34:22 +00:00
Vincent Ambo
15b871806b feat(web/blog): Add Nix-based static blog generator
This introduces a derivation which builds an instance of nginx
statically serving my blog posts, though as of now no indexes are
being generated and no XML feed is available.

This is just the initial draft of this setup and not yet what shall be
yielded in the end.
2020-02-08 13:33:13 +00:00
Vincent Ambo
176b3458b0 feat(web/tazblog_lisp): Implement retrieval of blog posts from DNS
This is mostly equivalent to the Haskell implementation, with the
primary difference that the Lisp DNS library does not support caching
yet.
2020-01-27 02:11:55 +00:00
Vincent Ambo
0447ef57ba feat(web/cgit-taz): Use cheddar's about filter for about pages
Following this change, Markdown files in the tree view will be
rendered as highlighted Markdown sources.
2020-01-19 23:54:30 +00:00
Vincent Ambo
8d8932840e chore(web/cgit-taz): Use in-tree cgit version instead
Drops the previous patch setup to use //third_party/cgit instead.
2020-01-12 02:53:01 +00:00
Vincent Ambo
9e67451750 chore(web/cgit-taz): Remove patches which have been integrated
These patches now live as commits at //third_party/cgit
2020-01-11 23:47:41 +00:00
Vincent Ambo
b34a576c19 chore(cgit-taz): Hide remote branches
With the sync-gcsr changes from the previous commits remote branches
are turned into local branches anyways.
2019-12-30 05:13:54 +01:00
Vincent Ambo
9ad4796538 feat(cgit-taz): Add patches for subtree about/ handling
1. Generate links to subtree about pages.
2. Render README files in subtrees, too.
2019-12-21 23:36:39 +00:00
Vincent Ambo
42564b3956 chore(third_party): Remove pulldown-cmark again 2019-12-21 14:51:52 +00:00
Vincent Ambo
34e2570a8c feat(cgit-taz): Use cheddar as the about-filter
This will render about pages using the Comrak renderer defined in
Cheddar.

Note that due to the way its implemented this will have one
interesting behaviour: Markdown files in the tree will *also* be
rendered as HTML.

I will need to see how that works out before deciding whether or not
to disable it.
2019-12-21 14:50:21 +00:00
Vincent Ambo
cbc3409ce0 feat(cgit-taz): Make use of cheddar for syntax highlighting 2019-12-21 04:57:55 +00:00
Vincent Ambo
bec4eb23d0 feat(cgit-taz): Use pulldown-cmark as the about filter
It renders GitHub-flavoured Markdown, which is nice for most
use-cases.
2019-12-21 03:01:41 +00:00
Vincent Ambo
746666a694 style(cgit-taz): Embed repository logo 2019-12-20 21:18:53 +00:00
Vincent Ambo
cf044be96b fix(cgit): Configure mimetype-file correctly 2019-12-20 21:17:51 +00:00
Vincent Ambo
49fd50bc8a feat(cgit-taz): Enable some convenience features in cgit
Hopefully file following actually works for directories, too!
2019-12-20 20:47:35 +00:00
Vincent Ambo
03bfe08e1d chore: Significantly restructure folder layout
This moves the various projects from "type-based" folders (such as
"services" or "tools") into more appropriate semantic folders (such as
"nix", "ops" or "web").

Deprecated projects (nixcon-demo & gotest) which only existed for
testing/demonstration purposes have been removed.

(Note: *all* builds are broken with this commit)
2019-12-20 20:18:41 +00:00