move e11sync-static to it's own file
This commit is contained in:
parent
6499795df1
commit
dc72e8a2a4
32
flake.nix
32
flake.nix
@ -32,10 +32,6 @@
|
|||||||
flake-utils.lib.eachDefaultSystem (system: let
|
flake-utils.lib.eachDefaultSystem (system: let
|
||||||
pkgs = import nixpkgs {inherit system;};
|
pkgs = import nixpkgs {inherit system;};
|
||||||
|
|
||||||
appDeps = with pkgs.python3Packages; [django_5 django-compressor];
|
|
||||||
runtimeDeps = with pkgs; appDeps ++ [python3Packages.geoip2 libmaxminddb];
|
|
||||||
buildDeps = with pkgs; appDeps ++ [dart-sass];
|
|
||||||
|
|
||||||
geoip-archive = pkgs.stdenv.mkDerivation {
|
geoip-archive = pkgs.stdenv.mkDerivation {
|
||||||
name = "geoip-archive";
|
name = "geoip-archive";
|
||||||
srcs = [geoip2-asn geoip2-city geoip2-country];
|
srcs = [geoip2-asn geoip2-city geoip2-country];
|
||||||
@ -48,23 +44,8 @@
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
in rec {
|
in rec {
|
||||||
packages.e11sync-static = pkgs.stdenv.mkDerivation {
|
packages.e11sync-static = pkgs.callPackage ./pkgs/e11sync-static.nix {
|
||||||
name = "e11sync-static";
|
inherit self;
|
||||||
src = self;
|
|
||||||
nativeBuildInputs = buildDeps;
|
|
||||||
buildPhase = with pkgs; ''
|
|
||||||
mkdir -p static
|
|
||||||
export E11SYNC_STATIC_ROOT=static
|
|
||||||
export E11SYNC_DEBUG=
|
|
||||||
export E11SYNC_COMPRESS_OFFLINE=1
|
|
||||||
${python3}/bin/python3 ${self}/app/manage.py collectstatic
|
|
||||||
${python3}/bin/python3 ${self}/app/manage.py compress
|
|
||||||
|
|
||||||
${findutils}/bin/find static/CACHE -name '*.css' | \
|
|
||||||
${findutils}/bin/xargs -P''$(${coreutils}/bin/nproc) -I{} sh -c \
|
|
||||||
"${zopfli}/bin/zopfli {} && ${brotli}/bin/brotli {}"
|
|
||||||
'';
|
|
||||||
installPhase = ''mv static $out'';
|
|
||||||
};
|
};
|
||||||
packages.e11sync = pkgs.callPackage ./pkgs/e11sync.nix {
|
packages.e11sync = pkgs.callPackage ./pkgs/e11sync.nix {
|
||||||
inherit self geoip-archive;
|
inherit self geoip-archive;
|
||||||
@ -84,8 +65,15 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
devShells.default = pkgs.mkShellNoCC {
|
devShells.default = pkgs.mkShellNoCC {
|
||||||
packages = [pkgs.python3Packages.django-debug-toolbar] ++ runtimeDeps ++ buildDeps;
|
|
||||||
|
|
||||||
|
packages = with pkgs; [
|
||||||
|
python3Packages.django-debug-toolbar
|
||||||
|
python3Packages.django_5
|
||||||
|
python3Packages.django-compressor
|
||||||
|
python3Packages.geoip2
|
||||||
|
libmaxminddb
|
||||||
|
dart-sass
|
||||||
|
];
|
||||||
GEOIP_PATH = "${geoip-archive}";
|
GEOIP_PATH = "${geoip-archive}";
|
||||||
E11SYNC_DEBUG = "1";
|
E11SYNC_DEBUG = "1";
|
||||||
LOCALE_ARCHIVE = "${pkgs.glibcLocales}/lib/locale/locale-archive";
|
LOCALE_ARCHIVE = "${pkgs.glibcLocales}/lib/locale/locale-archive";
|
||||||
|
33
pkgs/e11sync-static.nix
Normal file
33
pkgs/e11sync-static.nix
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
self,
|
||||||
|
stdenv,
|
||||||
|
python3,
|
||||||
|
python3Packages,
|
||||||
|
coreutils,
|
||||||
|
zopfli,
|
||||||
|
brotli,
|
||||||
|
findutils,
|
||||||
|
dart-sass,
|
||||||
|
}:
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "e11sync-static";
|
||||||
|
src = self;
|
||||||
|
nativeBuildInputs = [
|
||||||
|
python3Packages.django_5
|
||||||
|
python3Packages.django-compressor
|
||||||
|
dart-sass
|
||||||
|
];
|
||||||
|
buildPhase = ''
|
||||||
|
mkdir -p static
|
||||||
|
export E11SYNC_STATIC_ROOT=static
|
||||||
|
export E11SYNC_DEBUG=
|
||||||
|
export E11SYNC_COMPRESS_OFFLINE=1
|
||||||
|
${python3}/bin/python3 ${self}/app/manage.py collectstatic
|
||||||
|
${python3}/bin/python3 ${self}/app/manage.py compress
|
||||||
|
|
||||||
|
${findutils}/bin/find static/CACHE -name '*.css' | \
|
||||||
|
${findutils}/bin/xargs -P''$(${coreutils}/bin/nproc) -I{} sh -c \
|
||||||
|
"${zopfli}/bin/zopfli {} && ${brotli}/bin/brotli {}"
|
||||||
|
'';
|
||||||
|
installPhase = ''mv static $out'';
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user