52 lines
1.3 KiB
Nix
52 lines
1.3 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;
|
||
|
};
|
||
|
|
||
|
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;
|
||
|
};
|
||
|
}
|