feat(corp/rih): implement initial frontend application
This doesn't actually submit anything to the (not-yet-existing) backend, but will help the designers figure out what we're actually looking for here. Change-Id: I680d88151fb0706953f18eb6256da6f205da7ffb Reviewed-on: https://cl.tvl.fyi/c/depot/+/8489 Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
This commit is contained in:
parent
3b33c19a9c
commit
99c7896637
10 changed files with 2057 additions and 0 deletions
52
corp/rih/default.nix
Normal file
52
corp/rih/default.nix
Normal file
|
@ -0,0 +1,52 @@
|
|||
{ lib, pkgs, ... }:
|
||||
|
||||
let
|
||||
wasmRust = pkgs.rust-bin.stable.latest.default.override {
|
||||
targets = [ "wasm32-unknown-unknown" ];
|
||||
};
|
||||
|
||||
cargoToml = with builtins; fromTOML (readFile ./Cargo.toml);
|
||||
|
||||
wasmBindgenMatch =
|
||||
cargoToml.dependencies.wasm-bindgen == "= ${pkgs.wasm-bindgen-cli.version}";
|
||||
|
||||
assertWasmBindgen = assert (lib.assertMsg wasmBindgenMatch ''
|
||||
Due to instability in the Rust WASM ecosystem, the trunk build
|
||||
tool enforces that the Cargo-dependency version of `wasm-bindgen`
|
||||
MUST match the version of the CLI supplied in the environment.
|
||||
|
||||
This can get out of sync when nixpkgs is updated. To resolve it,
|
||||
wasm-bindgen must be bumped in the Cargo.toml file and cargo needs
|
||||
to be run to resolve the dependencies.
|
||||
|
||||
Versions of `wasm-bindgen` in Cargo.toml:
|
||||
|
||||
Expected: '= ${pkgs.wasm-bindgen-cli.version}'
|
||||
Actual: '${cargoToml.dependencies.wasm-bindgen}'
|
||||
''); pkgs.wasm-bindgen-cli;
|
||||
|
||||
deps = with pkgs; [
|
||||
binaryen
|
||||
sass
|
||||
wasmRust
|
||||
trunk
|
||||
assertWasmBindgen
|
||||
];
|
||||
|
||||
in
|
||||
pkgs.rustPlatform.buildRustPackage rec {
|
||||
pname = "rih-frontend";
|
||||
version = "canon";
|
||||
src = lib.cleanSource ./.;
|
||||
cargoLock.lockFile = ./Cargo.lock;
|
||||
|
||||
buildPhase = ''
|
||||
export PATH=${lib.makeBinPath deps}:$PATH
|
||||
mkdir home
|
||||
export HOME=$PWD/.home
|
||||
env
|
||||
trunk build --release -d $out
|
||||
'';
|
||||
|
||||
dontInstall = true;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue