strojnadzor/flake.nix
Andrey Golovizin c0020fe276 Specify exePath
2021-02-06 13:59:40 +01:00

92 lines
2.5 KiB
Nix

{
description = "A very basic flake";
inputs = {
nixpkgs.url = "nixpkgs/nixos-20.09";
utils.url = "github:numtide/flake-utils";
pypi2nix = {
url = "github:nix-community/pypi2nix";
flake = false;
};
};
outputs = { self, nixpkgs, utils, pypi2nix }:
{
overlay = final: prev: {
strojnadzor = self.packages.${final.system}.strojnadzor;
};
nixosModules.strojnadzor = {
imports = [ ./module.nix ];
nixpkgs.overlays = [ self.overlay ];
};
nixosModule = self.nixosModules.strojnadzor;
nixosConfigurations.strojnadzor = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
self.nixosModules.strojnadzor
{
networking.hostName = "strojnadzor";
boot.isContainer = true;
services.strojnadzor.enable = true;
}
];
};
} // utils.lib.eachSystem [ "x86_64-linux" ] (
system: let
pkgs = nixpkgs.legacyPackages.${system};
python = import ./requirements.nix { inherit pkgs; };
pypi2nix' = import pypi2nix;
in
rec {
devShell = pkgs.mkShell {
name = "strojnadzor-env";
buildInputs = [
pkgs.nodejs
pypi2nix
python.interpreter
];
};
packages.strojnadzor = python.mkDerivation {
pname = "strojnadzor";
version = "0.0.1";
src = pkgs.nix-gitignore.gitignoreSource [] ./.;
buildInputs = [];
propagatedBuildInputs = with python.packages; [
aldryn-forms
django-absolute
django-cms
django-emailit
django-filer
django-sekizai
django-simple-captcha
django-treebeard
djangocms-bootstrap4
djangocms-file
djangocms-googlemap
djangocms-icon
djangocms-link
djangocms-picture
djangocms-snippet
djangocms-style
djangocms-text-ckeditor
djangocms-video
easy-thumbnails
gunicorn
python-dotenv
setuptools
];
passthru.exePath = "/bin/strojnadzor-admin";
};
defaultPackage = packages.strojnadzor;
apps.strojnadzor = utils.lib.mkApp {
drv = packages.strojnadzor;
};
defaultApp = apps.strojnadzor;
}
);
}