wow
This commit is contained in:
parent
e762d73f06
commit
68d2af6dc4
3 changed files with 79 additions and 11 deletions
|
|
@ -33,6 +33,10 @@
|
|||
reverse_proxy localhost:9794
|
||||
'';
|
||||
|
||||
virtualHosts."wiki.icetang.xyz".extraConfig = ''
|
||||
reverse_proxy localhost:51337
|
||||
'';
|
||||
|
||||
virtualHosts."pve.hikari.icn.mizuki.guru".extraConfig = ''
|
||||
reverse_proxy https://10.11.8.100:8006 {
|
||||
header_up X-Real-Ip {remote_host}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,75 @@
|
|||
{ inputs, pkgs, ... }:
|
||||
|
||||
let
|
||||
nodeModules = pkgs.stdenvNoCC.mkDerivation {
|
||||
pname = "cfwithoutincident-node-modules";
|
||||
version = "1.0.50";
|
||||
src = inputs.cfwithoutincident;
|
||||
|
||||
nativeBuildInputs = [ pkgs.bun ];
|
||||
dontConfigure = true;
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
export HOME="$TMPDIR/home"
|
||||
export BUN_INSTALL_CACHE_DIR="$TMPDIR/bun-cache"
|
||||
mkdir -p "$HOME" "$BUN_INSTALL_CACHE_DIR"
|
||||
|
||||
bun install \
|
||||
--frozen-lockfile \
|
||||
--ignore-scripts \
|
||||
--no-progress \
|
||||
--production
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p "$out"
|
||||
cp -R node_modules "$out/"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
# Bun dependencies are fetched in this fixed-output derivation, so the
|
||||
# regular build remains network-independent and reproducible.
|
||||
dontFixup = true;
|
||||
outputHash = "sha256-FrYyXCpzunrA92NQ9ffrmjJaPTFiTlCsW8OXdpt4m28=";
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
};
|
||||
|
||||
cfwithoutincident = pkgs.stdenvNoCC.mkDerivation {
|
||||
pname = "cfwithoutincident";
|
||||
version = "1.0.50";
|
||||
src = inputs.cfwithoutincident;
|
||||
|
||||
nativeBuildInputs = [ pkgs.bun ];
|
||||
dontConfigure = true;
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
cp -R ${nodeModules}/node_modules .
|
||||
bun build --compile --minify src/index.ts --outfile cfwithoutincident
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dm755 cfwithoutincident "$out/bin/cfwithoutincident"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
dontFixup = true;
|
||||
};
|
||||
in
|
||||
{
|
||||
systemd.services.cfwithoutincident = {
|
||||
description = "Cloudflare Status D-Day dashboard";
|
||||
|
|
@ -11,21 +81,12 @@
|
|||
Type = "simple";
|
||||
User = "imnyang";
|
||||
Group = "users";
|
||||
WorkingDirectory = "/var/lib/cfwithoutincident";
|
||||
Environment = [
|
||||
"PORT=31774"
|
||||
];
|
||||
ExecStartPre = [
|
||||
"${pkgs.coreutils}/bin/cp -r ${inputs.cfwithoutincident}/. /var/lib/cfwithoutincident/"
|
||||
"${pkgs.bun}/bin/bun install --frozen-lockfile"
|
||||
];
|
||||
ExecStart = "${pkgs.bun}/bin/bun run src/index.ts";
|
||||
ExecStart = "${cfwithoutincident}/bin/cfwithoutincident";
|
||||
Restart = "always";
|
||||
RestartSec = 5;
|
||||
StateDirectory = "cfwithoutincident";
|
||||
StateDirectoryMode = "0755";
|
||||
};
|
||||
|
||||
path = [ pkgs.bun ];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -43,7 +43,10 @@ in
|
|||
"github.com/RussellLuo/caddy-ext/ratelimit@v0.3.0"
|
||||
"github.com/neodyme-labs/user_agent_parse@v0.0.1"
|
||||
];
|
||||
hash = "sha256-r4MgRk8HpKYx7f8FmA3PKgD/5ZNTIHpQvlE+zRbP0lw=";
|
||||
hash = {
|
||||
"x86_64-linux" = "sha256-r4MgRk8HpKYx7f8FmA3PKgD/5ZNTIHpQvlE+zRbP0lw=";
|
||||
"aarch64-linux" = "sha256-AfCiPSLCrZeKRJV6CRE6ps96lyinbgxaVnEpwLXPHMk=";
|
||||
}.${pkgs.stdenv.hostPlatform.system};
|
||||
};
|
||||
globalConfig = ''
|
||||
admin unix//run/caddy/admin.socket
|
||||
|
|
|
|||
Loading…
Reference in a new issue