Commit graph

228 commits

Author SHA1 Message Date
Vincent Ambo
915a2f8464 fix(tazblog): Ensure build works with MonadFail changes
This updates some old code that makes assumptions via pattern matching
to instead make assumptions via a Prelude function.

This is known to be safe as it has been running fine for almost a
decade now, but the recent MonadFail changes broke the build.
2019-07-02 12:42:28 +01:00
Vincent Ambo
b51a53c936 chore(build): Add Gemma to package set
Note that this does not actually build right now because Elm has done
a thing again to break the universe and it requires massive changes to
the application to make it work again.
2019-06-29 14:28:41 +01:00
Vincent Ambo
e2951dc9f5 merge(gemma): Integrate Gemma into monorepo 2019-06-29 14:14:35 +01:00
Vincent Ambo
60532a541b refactor(gemma): Move Gemma source into monorepo stucture 2019-06-29 14:13:58 +01:00
Vincent Ambo
545d9a2db9 docs(third_party): Add README 2019-06-29 14:12:38 +01:00
Vincent Ambo
4cefb9256a feat(build): Add top-level package index file 2019-06-29 14:12:24 +01:00
Vincent Ambo
5c3ac08fcf feat(tazblog): Add Nix build configuration 2019-06-29 14:11:56 +01:00
Vincent Ambo
207c6dac0c merge(tazblog): Integrate blog into monorepo 2019-06-29 14:02:28 +01:00
Vincent Ambo
47f2145b5b chore(tazblog): Remove files from ye olde times 2019-06-29 14:01:28 +01:00
Vincent Ambo
85dbb4cc23 chore: Keep project root under MIT license
To comply with Google's open-source patching rules :)
2019-06-28 22:56:48 +01:00
Vincent Ambo
2373c925e1 refactor: Move tazblog into monorepo structure
It's happening!
2019-06-28 22:55:39 +01:00
Vincent Ambo
b681368217 chore: Initialize tazj.in monorepo 2019-06-28 22:50:53 +01:00
Vincent Ambo
61be253d6b feat(build): Configurable output location
For easier Nix builds!
2018-01-03 22:51:20 +01:00
Vincent Ambo
0d7f845bf5 refactor(build): Use ASDF facility for output naming
Turns out there is an easy-to-use :build-pathname parameter to set the
output binary name. This kills the hack!
2018-01-03 16:54:45 +01:00
Vincent Ambo
cc6de0f9c6 feat(nix): Add Docker building configuration 2017-12-31 17:02:56 +01:00
Vincent Ambo
48687f77d2 fix(elm): Use relative URL to access API
Now that Hunchentoot is serving the Elm frontend, Elm needs to connect
to Gemma at a relative path.

Side note: It would be useful if the frontend displayed errors that
happened :sun:
2017-12-31 17:02:13 +01:00
Vincent Ambo
bd3b2782b9 feat(lisp): Correctly set location for static assets in Nix builds
In order to let Hunchentoot serve the static assets from the correct
location, the *static-file-location* parameter is set before image
dumping based on the $out-envvar which is present during the build
process.

This can easily be set manually in the config file if required by a
user.
2017-12-31 15:31:52 +01:00
Vincent Ambo
8703b6102c feat(build): Add initial Nix-based build process
Adds a build script using ASDF's program-op to build an executable out
of the Gemma source code.

In addition a Nix derivation is provided that will both compile the
Elm source and place it in a folder, as well as create the executable.

Currently static file serving does not function as intended.
2017-12-29 16:42:10 +01:00
Vincent Ambo
5579ca7d6c feat(build): Configure ASDF program-op with entrypoint 2017-12-26 13:48:57 +01:00
Vincent Ambo
abe8419b03 docs(README): Update docs with a note about configuration 2017-12-26 11:15:27 +01:00
Vincent Ambo
e50e2acde0 docs: Add example configuration file 2017-12-26 11:13:52 +01:00
Vincent Ambo
4536e65471 feat(lisp): Implement configuration loading
Adds configuration loading from a file located at either
"/etc/gemma/config.lisp" or a path determined via the `GEMMA_CONFIG`
environment variable.

The configuration file can contain any number of deftask forms and a
single config form which determines the location at which Gemma stores
its data and also the port on which it should listen.
2017-12-26 11:13:03 +01:00
Vincent Ambo
db0e74fbd0 fix(lisp): Don't intern symbols for unregistered tasks 2017-12-24 18:05:49 +01:00
Vincent Ambo
aeeb11f1b7 Bump to LTS 9.20 2017-12-22 11:21:06 +01:00
Vincent Ambo
eadf75d86b Bump to LTS 9.11 2017-12-22 10:45:33 +01:00
Vincent Ambo
02a34a14a0 feat(lisp): Make server port configurable 2017-12-21 14:00:32 +01:00
Vincent Ambo
bf9991026a refactor(lisp): Use imported symbols with local qualification
... except hunchentoot, I like using that fully-qualified because it's
a great word.
2017-12-21 13:55:14 +01:00
Vincent Ambo
8d1c9df434 fix(lisp): Automatically snapshot after task completions 2017-12-21 01:27:06 +01:00
Vincent Ambo
a8d46a358e feat(lisp): Implement persistent storage via cl-prevalence
Uses the cl-prevalence system to store tasks on disk. The storage
location is either relative to the working directory in which the
system is started or determined (with priority) by the environment
variable `GEMMA_DATA_DIR`.
2017-12-21 01:21:11 +01:00
Vincent Ambo
51ddb8fb53 docs: Add README with project explanation and background 2017-12-20 21:43:48 +01:00
Vincent Ambo
6679b893aa chore: Add code of conduct to project 2017-12-20 21:43:32 +01:00
Vincent Ambo
b0e6491600 chore: License under GPLv3 2017-12-20 21:43:05 +01:00
Vincent Ambo
d3ce3c1568 feat(elm): Automatically poll every 15 seconds
15 seconds is potentially a bit aggressive considering that
Gemma (currently) tracks expiry times in *days*.
2017-12-20 21:17:57 +01:00
Vincent Ambo
7dbeb83f85 feat(elm): Add real button to task cards 2017-12-20 21:04:15 +01:00
Vincent Ambo
ac623e4a7d feat(elm): Add nice little texts to display time remaining 2017-12-20 20:15:10 +01:00
Vincent Ambo
304f3ae3f1 feat(elm): Implement task completion handling
Adds a clickable area to the cards that will inform the backend of a
task being completed.

This of course still looks completely terrible because I don't really
know how frontend works.
2017-12-20 20:15:09 +01:00
Vincent Ambo
6cd75ac184 feat(elm): Add initial (broken) MDL layout for tasks
The idea is that every task should be shown as an MDL "card" and have
some sort of associated action (probably more than just a click, but
that I'll look at ...).

Tasks are coloured based on their current "urgency".
2017-12-20 20:15:09 +01:00
Vincent Ambo
cf0395e37c feat(lisp): Add Hunchentoot handler for task completion 2017-12-20 20:15:09 +01:00
Vincent Ambo
ce036d7d15 fix(lisp): Sort tasks in DESCENDING order 2017-12-20 20:15:09 +01:00
Vincent Ambo
26f365271e feat(elm): Add initial logic for Gemma's Elm frontend 2017-12-20 20:15:07 +01:00
Vincent Ambo
95e4971908 feat(lisp): Initial Gemma backend implementation
Implements the initial - very simple - backend for Gemma, a
task-management app for recurring tasks.
2017-12-20 20:15:04 +01:00
Vincent Ambo
ca0d71b630 [k8s/cabal] Bump to 5.1.3 2016-02-14 01:43:22 +01:00
Vincent Ambo
b5425938d4 [stack] Bump to LTS 5.2 2016-02-13 11:47:34 +01:00
Vincent Ambo
8addea1058 [server] Serve static files at root 2016-02-13 09:20:43 +01:00
Vincent Ambo
e949c5e812 [build] Cache Docker dependencies 2015-11-29 16:52:17 +01:00
Vincent Ambo
792fe17f35 Version 5.1.2 2015-11-24 14:07:57 +01:00
Vincent Ambo
599d765903 [blog] Add a deleteEntry function, only for CLI 2015-11-24 14:07:31 +01:00
Vincent Ambo
94788f1f92 [varnish & k8s] Minor config updates 2015-11-24 14:07:20 +01:00
Vincent Ambo
35dba3b211 [5.1.1] Add meta-description tag 2015-11-23 16:36:42 +01:00
Vincent Ambo
6138a8b0f8 [varnish] Add X-Cache headers 2015-11-21 21:20:12 +01:00