diff --git a/README.md b/README.md
index d0a48fe..dcc1ff3 100644
--- a/README.md
+++ b/README.md
@@ -25,9 +25,6 @@ Other versions of some of the listed programs will probably work but it is not r
Create a postgres database using the [postgres setup script](postgres_setup.sql)
-I was too lazy to figure out how environment variables work with svelte, so you are going to have to manually change some stuff in the webui. Try searching for all instances of 'shrecked.dev' in the
-`web/` directory and replace that with whatever works best for you.
-
```sh
git clone https://git.shrecked.dev/Shrecknt/snowstorm.git
cd snowstorm
diff --git a/crates/snowstorm/src/main.rs b/crates/snowstorm/src/main.rs
index 53d2451..6249f91 100644
--- a/crates/snowstorm/src/main.rs
+++ b/crates/snowstorm/src/main.rs
@@ -119,10 +119,8 @@ async fn ping_loop(
if duration_since_last_update
> Duration::from_secs(config.scanner.mode_duration)
{
- let discovered = state.lock().await.discovered
- * config.scanner.mode_duration
- / duration_since_last_update.as_secs().max(1);
- println!("discovered {discovered} servers (extrapolated to duration)");
+ let discovered = state.lock().await.discovered;
+ println!("discovered {discovered} servers");
requester.0.send(Some((current_mode, discovered)))?;
request_state = RequestState::Requested;
println!("requesting new state");
@@ -134,6 +132,7 @@ async fn ping_loop(
(current_mode, current_addresses) = new_state;
total_addresses = current_addresses.count_addresses();
assert_ne!(total_addresses, 0);
+ println!("total addresses = {total_addresses}");
index = 0;
request_state = RequestState::None;
last_update = Instant::now();
@@ -154,6 +153,7 @@ async fn ping_loop(
(current_mode, current_addresses) = receiver.1.recv()?;
total_addresses = current_addresses.count_addresses();
assert_ne!(total_addresses, 0);
+ println!("total addresses = {total_addresses}");
index = 0;
request_state = RequestState::None;
last_update = Instant::now();
diff --git a/web/package-lock.json b/web/package-lock.json
index 66b04a3..bb4b8be 100644
--- a/web/package-lock.json
+++ b/web/package-lock.json
@@ -7,6 +7,9 @@
"": {
"name": "snowstorm",
"version": "0.0.1",
+ "dependencies": {
+ "toml": "^3.0.0"
+ },
"devDependencies": {
"@fontsource/fira-mono": "^4.5.10",
"@neoconfetti/svelte": "^1.0.0",
@@ -844,9 +847,9 @@
}
},
"node_modules/@sveltejs/kit": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-2.0.6.tgz",
- "integrity": "sha512-dnHtyjBLGXx+hrZQ9GuqLlSfTBixewJaByUVWai7LmB4dgV3FwkK155OltEgONDQW6KW64hLNS/uojdx3uC2/g==",
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-2.5.1.tgz",
+ "integrity": "sha512-TKj08o3mJCoQNLTdRdGkHPePTCPUGTgkew65RDqjVU3MtPVxljsofXQYfXndHfq0P7KoPRO/0/reF6HesU0Djw==",
"dev": true,
"hasInstallScript": true,
"dependencies": {
@@ -854,6 +857,7 @@
"cookie": "^0.6.0",
"devalue": "^4.3.2",
"esm-env": "^1.0.0",
+ "import-meta-resolve": "^4.0.0",
"kleur": "^4.1.5",
"magic-string": "^0.30.5",
"mrmime": "^2.0.0",
@@ -2598,9 +2602,9 @@
}
},
"node_modules/postcss": {
- "version": "8.4.32",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.32.tgz",
- "integrity": "sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==",
+ "version": "8.4.35",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.35.tgz",
+ "integrity": "sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==",
"dev": true,
"funding": [
{
@@ -3219,6 +3223,11 @@
"node": ">=8.0"
}
},
+ "node_modules/toml": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz",
+ "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w=="
+ },
"node_modules/totalist": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/totalist/-/totalist-3.0.1.tgz",
@@ -3299,13 +3308,13 @@
"dev": true
},
"node_modules/vite": {
- "version": "5.0.10",
- "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.10.tgz",
- "integrity": "sha512-2P8J7WWgmc355HUMlFrwofacvr98DAjoE52BfdbwQtyLH06XKwaL/FMnmKM2crF0iX4MpmMKoDlNCB1ok7zHCw==",
+ "version": "5.1.4",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-5.1.4.tgz",
+ "integrity": "sha512-n+MPqzq+d9nMVTKyewqw6kSt+R3CkvF9QAKY8obiQn8g1fwTscKxyfaYnC632HtBXAQGc1Yjomphwn1dtwGAHg==",
"dev": true,
"dependencies": {
"esbuild": "^0.19.3",
- "postcss": "^8.4.32",
+ "postcss": "^8.4.35",
"rollup": "^4.2.0"
},
"bin": {
diff --git a/web/package.json b/web/package.json
index ee6c000..bae6081 100644
--- a/web/package.json
+++ b/web/package.json
@@ -31,5 +31,8 @@
"typescript": "^5.0.0",
"vite": "^5.0.3"
},
- "type": "module"
+ "type": "module",
+ "dependencies": {
+ "toml": "^3.0.0"
+ }
}
diff --git a/web/src/app.html b/web/src/app.html
index a95d9d1..e875e86 100644
--- a/web/src/app.html
+++ b/web/src/app.html
@@ -7,8 +7,6 @@
-
-
diff --git a/web/src/lib/config.ts b/web/src/lib/config.ts
new file mode 100644
index 0000000..6f6ade2
--- /dev/null
+++ b/web/src/lib/config.ts
@@ -0,0 +1,24 @@
+import fs from "node:fs";
+import toml from "toml";
+
+const configFile = fs.readFileSync("../Snowstorm.toml");
+
+export const config: Config = toml.parse(configFile.toString());
+export type Config = {
+ database_url: string,
+ web: {
+ enabled: boolean,
+ listen_uri: boolean,
+ domain: string,
+ oauth: {
+ discord: {
+ enabled: boolean,
+ client_id: string
+ },
+ forgejo: {
+ enabled: boolean,
+ client_id: string
+ }
+ }
+ }
+};
\ No newline at end of file
diff --git a/web/src/routes/Header.svelte b/web/src/routes/Header.svelte
index bb85569..fd3ffcf 100644
--- a/web/src/routes/Header.svelte
+++ b/web/src/routes/Header.svelte
@@ -1,9 +1,14 @@
+
+
+