imnyang/nix-flakes
Watch
1
0
Fork
You've already forked nix-flakes
0
This commit is contained in:
암냥 2026-10-13 07:30:42 +09:00
commit 8593aae296
5 changed files with 1419 additions and 12 deletions

View file

@ -25,6 +25,10 @@
reverse_proxy 10.11.8.102:9080
'';
virtualHosts."orbitrender-exp.mizuki.guru".extraConfig = ''
reverse_proxy 10.20.30.192:3000
'';
virtualHosts."plutos.dazzle.st".extraConfig = ''
reverse_proxy localhost:13000
'';
@ -33,6 +37,13 @@
reverse_proxy localhost:9794
'';
virtualHosts."wiki.icetang.xyz".extraConfig = ''
reverse_proxy localhost:51337 {
header_up X-Real-IP {client_ip}
header_up X-Forwarded-For {client_ip}
}
'';
virtualHosts."pve.hikari.icn.mizuki.guru".extraConfig = ''
reverse_proxy https://10.11.8.100:8006 {
header_up X-Real-Ip {remote_host}

View file

@ -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 ];
};
}