this repo has no description
4
fork

Configure Feed

Select the types of activity you want to include in your feed.

stuff

dawn b2de6f5a 269aacf6

+119 -4
+20
_sources/generated.json
··· 407 407 }, 408 408 "version": "1be6c3bde64da46d4c369135479118e62690d3d5" 409 409 }, 410 + "slopview": { 411 + "cargoLock": null, 412 + "date": "2026-04-25", 413 + "extract": null, 414 + "name": "slopview", 415 + "passthru": null, 416 + "pinned": false, 417 + "src": { 418 + "deepClone": false, 419 + "fetchSubmodules": false, 420 + "leaveDotGit": false, 421 + "name": null, 422 + "rev": "0966b6b0488d9ec48af788ac6a9f7cf1bc968305", 423 + "sha256": "sha256-rritHO9NbZAiO2X8gN1nVqK085KoswgrIPbt+WvyqR8=", 424 + "sparseCheckout": [], 425 + "type": "git", 426 + "url": "https://tangled.org/@ptr.pet/slopview" 427 + }, 428 + "version": "0966b6b0488d9ec48af788ac6a9f7cf1bc968305" 429 + }, 410 430 "stylix": { 411 431 "cargoLock": null, 412 432 "date": "2026-04-03",
+14
_sources/generated.nix
··· 270 270 }; 271 271 date = "2026-04-20"; 272 272 }; 273 + slopview = { 274 + pname = "slopview"; 275 + version = "0966b6b0488d9ec48af788ac6a9f7cf1bc968305"; 276 + src = fetchgit { 277 + url = "https://tangled.org/@ptr.pet/slopview"; 278 + rev = "0966b6b0488d9ec48af788ac6a9f7cf1bc968305"; 279 + fetchSubmodules = false; 280 + deepClone = false; 281 + leaveDotGit = false; 282 + sparseCheckout = [ ]; 283 + sha256 = "sha256-rritHO9NbZAiO2X8gN1nVqK085KoswgrIPbt+WvyqR8="; 284 + }; 285 + date = "2026-04-25"; 286 + }; 273 287 stylix = { 274 288 pname = "stylix"; 275 289 version = "6d0502ef7447090abf8b00362b5cda8ac64595b4";
+1 -1
dns/dnsconfig.js
··· 95 95 "klbr.net", 96 96 REG_NONE, 97 97 DnsProvider(DSP_PRIMARY), 98 - TRIMOUNTS(["api.compare.plc", "api.spool"]), 98 + TRIMOUNTS(["api.compare.plc", "api.spool", "bsky"]), 99 99 DZWONEK("vpn"), 100 100 VOLSINII(["plc", "relay"]), 101 101 TXT("@", "data endpoint for services and projects that fall under klbr.net."),
+3
hosts/chernobog/modules/network.nix
··· 2 2 imports = [ ../../../modules/network/dns/systemd.nix ]; 3 3 4 4 networking.useDHCP = true; 5 + 6 + # networking.firewall.enable = true; 7 + # networking.firewall.allowedTCPPorts = [22]; 5 8 }
+2 -1
hosts/chernobog/modules/tailscale.nix
··· 1 - { config, ... }: 1 + { lib, ... }: 2 2 { 3 3 imports = [ ../../../modules/network/tailscale.nix ]; 4 4 networking.firewall.checkReversePath = "loose"; 5 + services.tailscale.extraUpFlags = lib.mkForce ["--ssh"]; 5 6 }
+22
hosts/dzwonek/modules/headscale.nix/acl.nix
··· 27 27 }; 28 28 }; 29 29 }; 30 + sshRuleType = t.submodule { 31 + options = { 32 + action = l.mkOption { 33 + type = t.enum [ "accept" ]; 34 + default = "accept"; 35 + }; 36 + users = l.mkOption { 37 + type = t.listOf t.str; 38 + }; 39 + src = l.mkOption { 40 + type = t.listOf t.str; 41 + }; 42 + dst = l.mkOption { 43 + type = t.listOf t.str; 44 + }; 45 + }; 46 + }; 30 47 in 31 48 { 32 49 options = { ··· 47 64 type = t.listOf ruleType; 48 65 default = [ ]; 49 66 }; 67 + sshRules = l.mkOption { 68 + type = t.listOf sshRuleType; 69 + default = []; 70 + }; 50 71 }; 51 72 }; 52 73 ··· 58 79 tagOwners = l.mapAttrs' (k: v: l.nameValuePair "tag:${k}" v) cfg.tagOwners; 59 80 hosts = cfg.hosts; 60 81 acls = l.map (rule: if rule.proto == null then l.removeAttrs rule [ "proto" ] else rule) cfg.rules; 82 + ssh = cfg.sshRules; 61 83 } 62 84 ); 63 85 in
+9 -2
hosts/dzwonek/modules/headscale.nix/default.nix
··· 29 29 chernobog = "100.64.0.6"; 30 30 trimounts = "100.64.0.1"; 31 31 }; 32 + sshRules = [ 33 + { 34 + src = ["autogroup:member"]; 35 + dst = ["autogroup:self"]; 36 + users = ["autogroup:nonroot"]; 37 + } 38 + ]; 32 39 rules = lib.mkBefore [ 33 40 { 34 41 src = [ "group:admin" ]; ··· 50 57 dst = [ "chernobog:*" ]; 51 58 } 52 59 { 53 - src = [ admin ]; 54 - dst = [ "${admin}:*" ]; 60 + src = ["autogroup:member"]; 61 + dst = ["autogroup:self:*"]; 55 62 } 56 63 { 57 64 src = [
+43
hosts/trimounts/modules/slopview.nix
··· 1 + { terra, ... }: 2 + let 3 + port = 8000; 4 + 5 + rootDomain = "klbr.net"; 6 + domain = "bsky.${rootDomain}"; 7 + in { 8 + # users.users.slopview = { 9 + # isSystemUser = true; 10 + # group = "slopview"; 11 + # }; 12 + # users.groups.slopview = {}; 13 + 14 + # systemd.services.slopview = { 15 + # description = "slopview"; 16 + # wantedBy = ["multi-user.target"]; 17 + # after = ["network.target"]; 18 + 19 + # environment = { 20 + # PORT = toString port; 21 + # SEED_ACCOUNT = "did:plc:dfl62fgb7wtjj3fcbb72naae"; 22 + # }; 23 + 24 + # serviceConfig = rec { 25 + # ExecStart = "${terra.slopview}/bin/appview"; 26 + # User = "slopview"; 27 + # Group = "slopview"; 28 + # StateDirectory = "slopview"; 29 + # WorkingDirectory = "%S/${StateDirectory}"; 30 + # Restart = "on-failure"; 31 + # RestartSec = "5s"; 32 + # }; 33 + # }; 34 + 35 + security.acme.certs.${rootDomain}.extraDomainNames = [domain]; 36 + services.nginx.virtualHosts.${domain} = { 37 + useACMEHost = rootDomain; 38 + forceSSL = true; 39 + quic = true; 40 + kTLS = true; 41 + locations."/".proxyPass = "http://chernobog:${toString port}"; 42 + }; 43 + }
+4
nvfetcher.toml
··· 70 70 src.git = "https://tangled.org/@ptr.pet/random.wisp.place" 71 71 fetch.git = "https://tangled.org/@ptr.pet/random.wisp.place" 72 72 73 + [slopview] 74 + src.git = "https://tangled.org/@ptr.pet/slopview" 75 + fetch.git = "https://tangled.org/@ptr.pet/slopview" 76 + 73 77 ## TANGLED ## 74 78 75 79 [tangled]
+1
pkgs-set/pkgs/slopview.nix
··· 1 + {inputs, callPackage, ...}: callPackage inputs.slopview {}