59 lines
1.6 KiB
Nix
59 lines
1.6 KiB
Nix
{
|
|
description = "synapse-revitalization";
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
}:
|
|
let
|
|
system = "x86_64-linux";
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
in {
|
|
devShells.x86_64-linux.default = pkgs.mkShell {
|
|
packages = with pkgs; [
|
|
python313Full
|
|
python313Packages.signedjson
|
|
python313Packages.requests
|
|
python313Packages.systemd
|
|
python313Packages.setuptools
|
|
black
|
|
];
|
|
};
|
|
|
|
nixosModules = {
|
|
synapse-revitalization = import ./module.nix self;
|
|
default = self.nixosModules.synapse-revitalization;
|
|
};
|
|
|
|
overlays = {
|
|
synapse-revitalization = (_: _: {
|
|
synapse-revitalization = self.packages.x86_64-linux.synapse-revitalization;
|
|
});
|
|
default = self.overlays.synapse-revitalization;
|
|
};
|
|
|
|
packages.x86_64-linux.synapse-revitalization = pkgs.stdenv.mkDerivation {
|
|
projectDir = ./.;
|
|
pname = "synapse-revitalization";
|
|
version = "0.1.0";
|
|
|
|
src = ./.;
|
|
|
|
installPhase =
|
|
let python = pkgs.python313.withPackages (ps: with ps; [ requests signedjson systemd ]);
|
|
script = pkgs.writeShellScript "synapse-revitalization" "${python}/bin/python $out/main.py '$1'";
|
|
in ''
|
|
mkdir -p $out/bin
|
|
cp $src/src/* $out
|
|
# cp ${script} $out/bin
|
|
cat > $out/bin/synapse-revitalization << EOF
|
|
#!/bin/sh
|
|
exec ${python}/bin/python $out/main.py "\$1"
|
|
EOF
|
|
chmod +x $out/bin/synapse-revitalization
|
|
'';
|
|
};
|
|
packages.x86_64-linux.default = self.packages.x86_64-linux.synapse-revitalization;
|
|
};
|
|
}
|