summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* Typo in Readme.adoc HEAD masterLou-M2022-08-251-1/+1
| | | Corrected a small typo in "frontend"
* fix(bahnhofshalle): use new logo for favicon as wellsternenseemann2022-05-261-0/+0
|
* feat(bahnhofshalle): logo links to openlab websitesternenseemann2022-05-241-1/+3
|
* fix(bahnhofshalle): prevent header overflowing, left alignsternenseemann2022-05-242-10/+29
| | | | | | | | | | | | | | - Justify in the center instead of spacing around on small devices, we don't want to have an odd space between logo and text. - Use em sizes in the header. - No longer hard code the header height, instead only fix font size and image size. The header can (in practice) now be flowed to three lines on very small screens (logo, flipdot-, gschichtler) without the bottom border ending up in the wrong place. h1 is still aligned properly in the middle of its container by setting the containers min-height and making it a flex box.
* feat(bahnhofshalle): use new logo and new logo color for linkssternenseemann2022-05-242-1/+1
|
* feat(nixos): expose as nixosModule on the top levelsternenseemann2022-02-271-0/+2
|
* chore(nix/nixpkgs-pinned): 2021-06-10 -> 2022-02-22sternenseemann2022-02-271-3/+3
|
* refactor: use subdirectories directly instead of relying on rootSrcsternenseemann2022-02-274-17/+19
| | | | | | | | The problem with rootSrc is that it changes whenever something (that isn't covered by .gitignore) in the tree changes. This means that after _any_ change all derivations need to be rebuild. By using the subdirectories we need as a starting point instead of the filtered root source, we can avoid this.
* doc(bahnhofshalle): document JS requirement in FAQsternenseemann2022-02-272-6/+20
| | | | | | | | Since we are cross-referencing an FAQ section, we also make this convenient by adding ids for all headings and highlighting the currently targeted heading with an underline. This ensurse that it's clear which section to read when clicking on a link even when the screen may not jump around on even normal sized screens.
* chore(bahnhofshalle): set javascript mode in emacs for es6 filesternenseemann2022-02-271-0/+1
|
* fix(bahnhofshalle): delete superfluous closing tagsternenseemann2022-02-271-1/+0
|
* refactor(bahnhofshalle): use esbuild over parcel-bundlersternenseemann2022-02-276-42/+49
| | | | | | | | | | parcel-bundler is a bit of an annoyance, as it has a million of dependencies (in typical js fashion) and is not built by NixOS's Hydra. An alternative to parcel-bundler is esbuild which is written in Go. It, however, doesn't support transpiling ES6 to ES5 which we'll accept for the lessened deployment annoyances. All modern browsers support ES6 anyways (especially the subset we are using).
* chore(ci): update actionssternenseemann2022-02-211-3/+3
|
* fix(nixos): bind mount ld-nix.so.preload if it existssternenseemann2022-02-211-1/+1
| | | | | This means that a (dynamically) linked service will respect alternative allocator backends if they are configured, for example.
* refactor(nixos): use builtins.storeDir over hard coded /nix/storesternenseemann2022-02-211-1/+1
|
* refactor(nixos): use LoadCredential to pass secrets to servicesternenseemann2022-02-211-11/+15
| | | | | This allows one to restrict permissions on the files even more as only systemd needs to be able to read them.
* fix(nixos): allow @file-system syscallssternenseemann2022-02-211-5/+2
| | | | | | Otherwise ld-linux.so will get SIGSYS-ed, since we create a TemporaryFileSystem and mount everything readonly anyway, this is not really too terrible to allow.
* chore(warteraum): fix typosternenseemann2022-02-211-1/+1
|
* feat(nixos): select derivations via configurationsternenseemann2021-06-162-19/+43
| | | | This doesn't require the user to specify the cumbersome `_module.args`.
* fix(nixos): relax SystemCallFilter for the dynamic linkersternenseemann2021-06-161-1/+16
| | | | | We need to add a few file system related syscalls, so the dynamic linker won't get killed if we use a dynamically linked executable.
* fix(nixos): fix sandboxingsternenseemann2021-06-162-7/+28
| | | | | | | | | | | | Due to a typo, previously the filesystem was accessible. Now we need can't use `InaccessiblePaths` anymore, since it doesn't allow nesting with `BindReadOnlyPaths`. Thus we need to switch to `TemporaryFileSystem` which unfortunately doesn't seem to work with `DynamicUser`. With a new warteraum-specific user we can run warteraum in a filesystem that only contains `/nix/store`, the secret files and vital things like `/proc`, `/dev` etc.
* feat(warteraum): read tokens and salt from filessternenseemann2021-06-1615-131/+254
| | | | | | | | | | | | | | | | Instead of compiling salt and tokens in, read both from files that are specified as environment variables WARTERAUM_SALT_FILE and WARTERAUM_TOKENS_FILE. hashtoken has also been adjusted to read the salt from a specified salt file (the first argument). It also now outputs the token in raw form instead of C syntax. Intended usage is hashtoken `/path/to/salt token >> /path/to/tokens`. Disadavantage of this is that deleting tokens is somewhat cumbersome and only really doable with a hex editor. The NixOS service now expects saltFile and tokensFile instead of salt and tokens as a string and a list of strings respectively.
* fix(warteraum): fix token generation in buildsternenseemann2021-06-141-0/+1
| | | | need hashtoken to be able to run it…
* chore(gitattributes): reflect node2nix removalsternenseemann2021-06-141-1/+0
|
* refactor(default.nix): take parcel-bundler from pkgssternenseemann2021-06-145-7793/+20
| | | | | This avoids checking in millions of lines generated by node2nix which are already in nixpkgs anyways.
* chore(nixpkgs-pinned): bump to nixos-unstable 2021-06-10sternenseemann2021-06-141-3/+8
|
* fix(nix/warteraum): correct path to header containing saltsternenseemann2021-04-181-2/+2
|
* refactor(warteraum): move authentication code into its own filesternenseemann2021-04-186-35/+45
|
* feat(warteraum-static): build using clangsternenseemann2021-04-181-1/+1
| | | | | Using the default version since the versioned llvm stdenvs don't have the static adapters applied: https://github.com/NixOS/nixpkgs/pull/118313
* chore(warteraum): build with LLVM 12sternenseemann2021-04-181-1/+1
|
* chore(nixpkgs-pinned): bump to nixos-unstable 2021-04-17sternenseemann2021-04-181-3/+3
|
* doc(README): update building instructionssternenseemann2021-04-181-6/+2
|
* chore(warteraum): port build system to GNU makesternenseemann2021-04-1812-166/+77
| | | | | | | | | | make is what people already use and it integrates better with nix, so lets just use it as well. I haven't yet figured out how to do cleanly implement a build system with redo without a thousand annoying little shell scripts. The downside of this is that GNU make is sometimes too lazy when incrementally building and doesn't rebuild stuff when it really should.
* doc(README): typo fixsternenseemann2020-12-081-1/+1
|
* doc(README): finally add note about bug bountysternenseemann2020-12-081-1/+6
|
* chore(gitignore): ignore redo .lock filessternenseemann2020-12-071-0/+1
|
* fix(emitjson): add missing header inclusionssternenseemann2020-12-071-0/+1
|
* feat(anzeigetafel): use unifont pcf fontsternenseemann2020-12-011-1/+1
| | | | | | | | | This *should* contain more codepoints than the truetype font, however the desired effect hasn't been achieved: we still have no emojis. I suspect this is an issue with PIL's ImageFont. However I haven't confirmed that the pcf in fact does contain these glyphs.
* fix(clients): make FlipdotGschichtlerError behave like a proper Exceptionsternenseemann2020-12-011-0/+7
|
* test(warteraum): fix 401 expected exception checkingsternenseemann2020-12-011-2/+3
|
* refactor(warteraum): make trim_whitespace accept a http_string_tsternenseemann2020-11-301-16/+20
|
* test(warteraum): fix reporting if valgrind reports errorssternenseemann2020-11-301-4/+4
|
* test(warteraum): add integration testssternenseemann2020-11-295-2/+203
| | | | | | | | | | | | | | Test: * response formats * queue properties * authentication in a sanity-check way using our python client library and pytest. Also we run the warteraum server inside valgrind (which makes the integration tests really slow unfortunately) in order to sanity check for memory leaks.
* feat(default.nix): build new python packages, refactorsternenseemann2020-11-295-102/+140
| | | | | | | | | | | | | * move auxiliary nix files into nix/ * add nix/version.nix as a global version for this repository * build flipdots.script as a python package * move warteraum derivation into its own file * remove with pkgs; prefix everything from nixpkgs explicitly * expose own version of python3 with our own pythonPackages added * build anzeigetafel as a python application * use subdirectories of rootSrc as source instead of the whole rootSrc with sourceRoot changed to minimize rebuilds where possible (bahnhofshalle, anzeigetafel, python packages)
* feat(flipdots): add setup.py to install flipdots.scriptssternenseemann2020-11-291-0/+9
|
* refactor(anzeigetafel): use flipdot_gschichtler for API requestssternenseemann2020-11-293-30/+32
|
* feat(clients): add python client library for REST APIsternenseemann2020-11-293-0/+96
|
* doc(api): document 415 codes where possiblesternenseemann2020-11-241-0/+3
|
* feat(warteraum): trim trailing and leading whitespace of text inputsternenseemann2020-11-241-0/+30
|
* feat(warteraum): impose max length on req body and text inputsternenseemann2020-11-241-5/+23
|