I just made this to be able to run dendrite-demo-yggdrasil easily on my computers.
nix-env -if https://github.com/bbigras/nix-matrix-yggdrasil/tarball/master --substituters https://nix-matrix-yggdrasil.cachix.org --trusted-public-keys nix-matrix-yggdrasil.cachix.org-1:zxDWWJFEiOxpvKHP8qoi2HS4CtHxUPPQtoWz9D66m9g=
nix-on-droid is a termux fork to use Nix on Android.
Note that quite a bit of stuff will need to be downloaded and built since I can't build for aarch64 with github actions.
It doesn't seem possible to create an account with RiotX so you'll have to use something else like regular Riot or riot-web maybe.
nix-env -if https://github.com/bbigras/nix-matrix-yggdrasil/tarball/master
Once installed check dendrite-demo-yggdrasil.
- home-manager: it's like Nix (to install stuff) but at the user level instead of system-wide.
- niv: "Painless dependencies for Nix projects". To pin dependencies' revisions.
# use the cachix cache (optional)
cachix use nix-matrix-yggdrasil
# add the repo
niv add bbigras/nix-matrix-yggdrasil
then in home.nix
I use the following. Note that ../../../nix
is a relative path to the nix
directory generated by niv
.
let
nix-matrix-yggdrasil_src = (import ../../../nix).nix-matrix-yggdrasil;
nix-matrix-yggdrasil = import nix-matrix-yggdrasil_src {};
in
{
# [...]
systemd.user.services.matrix-yggdrasil = {
Unit = {
Description = "matrix-yggdrasil";
};
Install = {
WantedBy = [ "default.target" ];
};
Service = {
ExecStart = "${nix-matrix-yggdrasil}/bin/dendrite-demo-yggdrasil -peer <insert one peer here>";
WorkingDirectory = "/home/bbigras/matrix-p2p";
Restart = "on-failure";
PrivateTmp = true;
ProtectSystem = "full";
Nice = 10;
};
};
# [...]
}
I'm bbigras
in #p2p:matrix.org