mirror of
https://git.sr.ht/~magic_rb/dotfiles
synced 2024-12-02 04:56:14 +01:00
aff0158ef7
Signed-off-by: magic_rb <magic_rb@redalder.org>
62 lines
1.9 KiB
Nix
62 lines
1.9 KiB
Nix
{inputs, ...}: {
|
|
flake.nixngConfigurations.mautrixSignal = inputs.nixng.nglib.makeSystem {
|
|
system = "x86_64-linux";
|
|
name = "mautrix-signal";
|
|
inherit (inputs) nixpkgs;
|
|
config = {
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}: {
|
|
dumb-init = {
|
|
enable = true;
|
|
type.services = {};
|
|
};
|
|
|
|
init.services.mautrix-signal = {
|
|
enabled = true;
|
|
shutdownOnExit = true;
|
|
script = pkgs.writeShellScript "mautrix-signal" ''
|
|
DATA_DIR="/var/lib/mautrix-signal"
|
|
CONFIG_FILE="$DATA_DIR/config.yaml"
|
|
REGISTRATION_FILE="/var/lib/registrations/mautrix-signal.yaml"
|
|
DB_FILE="$DATA_DIR/sqlite.db"
|
|
|
|
cp ${./mautrix-signal.yaml} "$CONFIG_FILE" ; chmod 755 "$CONFIG_FILE"
|
|
|
|
[ -e "$REGISTRATION_FILE" ] || \
|
|
${lib.getExe' pkgs.mautrix-signal "mautrix-signal"} -c "$CONFIG_FILE" -r "$REGISTRATION_FILE" -g
|
|
sed -i \
|
|
-e 's/@AS_TOKEN@/'"$(${lib.getExe pkgs.yq} -r '.as_token' "$REGISTRATION_FILE")/" \
|
|
-e 's/@HS_TOKEN@/'"$(${lib.getExe pkgs.yq} -r '.hs_token' "$REGISTRATION_FILE")/" \
|
|
"$CONFIG_FILE"
|
|
${lib.getExe' pkgs.mautrix-signal "mautrix-signal"} -c "$CONFIG_FILE" -r "$REGISTRATION_FILE" -n
|
|
'';
|
|
};
|
|
|
|
init.services.signald = {
|
|
enabled = true;
|
|
shutdownOnExit = true;
|
|
script = let
|
|
locales = [
|
|
"C.UTF-8"
|
|
"en_US.UTF-8"
|
|
];
|
|
i18n = pkgs.glibcLocales.override {
|
|
inherit locales;
|
|
};
|
|
in
|
|
pkgs.writeShellScript "signald" ''
|
|
DATA_DIR="/var/lib/signald"
|
|
SOCKET_PATH="/var/run/signald/signald.sock"
|
|
mkdir -p $(dirname $SOCKET_PATH)
|
|
|
|
export LANG=en_US.UTF-8
|
|
export LOCALE_ARCHIVE=${i18n}/lib/locale/locale-archive
|
|
${lib.getExe' pkgs.signald "signald"} -d $DATA_DIR -s $SOCKET_PATH
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
}
|