diff options
| author | Xe Iaso <me@xeiaso.net> | 2024-10-25 14:06:42 -0400 |
|---|---|---|
| committer | Xe Iaso <me@xeiaso.net> | 2024-10-25 14:06:42 -0400 |
| commit | afa4bc6c01297af78885bf0562e2dae7ff83605b (patch) | |
| tree | 97a1149d5646cf9b1c7aa2892d6e849c589219cc /cmd | |
| parent | 797eec6d94e193ae684db977179ea4a422b2499f (diff) | |
| download | x-afa4bc6c01297af78885bf0562e2dae7ff83605b.tar.xz x-afa4bc6c01297af78885bf0562e2dae7ff83605b.zip | |
cmd: add amano and stealthmountain
Signed-off-by: Xe Iaso <me@xeiaso.net>
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/_old/sanguisuga/.gitignore (renamed from cmd/sanguisuga/.gitignore) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/admin.go (renamed from cmd/sanguisuga/admin.go) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/config.default.ts (renamed from cmd/sanguisuga/config.default.ts) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/config.go (renamed from cmd/sanguisuga/config.go) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/config_test.go (renamed from cmd/sanguisuga/config_test.go) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/dcc.go (renamed from cmd/sanguisuga/dcc.go) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/internal/dcc/dcc.go (renamed from cmd/sanguisuga/internal/dcc/dcc.go) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/js/scripts/iptorrents.js (renamed from cmd/sanguisuga/js/scripts/iptorrents.js) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/js/scripts/subsplease.js (renamed from cmd/sanguisuga/js/scripts/subsplease.js) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/js/scripts/torrentleech.js (renamed from cmd/sanguisuga/js/scripts/torrentleech.js) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/main.go (renamed from cmd/sanguisuga/main.go) | 32 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/plex/plex.go (renamed from cmd/sanguisuga/plex/plex.go) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/sanguisuga.templ (renamed from cmd/sanguisuga/sanguisuga.templ) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/sanguisuga_templ.go (renamed from cmd/sanguisuga/sanguisuga_templ.go) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/static/alpine.js (renamed from cmd/sanguisuga/static/alpine.js) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/static/styles.css (renamed from cmd/sanguisuga/static/styles.css) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/tailwind.config.js (renamed from cmd/sanguisuga/tailwind.config.js) | 0 | ||||
| -rw-r--r-- | cmd/_old/sanguisuga/tv.go (renamed from cmd/sanguisuga/tv.go) | 0 | ||||
| -rw-r--r-- | cmd/amano/main.go | 112 | ||||
| -rw-r--r-- | cmd/stealthmountain/main.go | 152 | ||||
| -rw-r--r-- | cmd/within.website/main.go | 2 | ||||
| -rw-r--r-- | cmd/xedn/cache.go | 3 | ||||
| -rw-r--r-- | cmd/xedn/imgoptimize.go | 9 | ||||
| -rw-r--r-- | cmd/xedn/main.go | 57 |
24 files changed, 266 insertions, 101 deletions
diff --git a/cmd/sanguisuga/.gitignore b/cmd/_old/sanguisuga/.gitignore index 5841fb6..5841fb6 100644 --- a/cmd/sanguisuga/.gitignore +++ b/cmd/_old/sanguisuga/.gitignore diff --git a/cmd/sanguisuga/admin.go b/cmd/_old/sanguisuga/admin.go index 65f231f..65f231f 100644 --- a/cmd/sanguisuga/admin.go +++ b/cmd/_old/sanguisuga/admin.go diff --git a/cmd/sanguisuga/config.default.ts b/cmd/_old/sanguisuga/config.default.ts index 77d887e..77d887e 100644 --- a/cmd/sanguisuga/config.default.ts +++ b/cmd/_old/sanguisuga/config.default.ts diff --git a/cmd/sanguisuga/config.go b/cmd/_old/sanguisuga/config.go index 29e6b07..29e6b07 100644 --- a/cmd/sanguisuga/config.go +++ b/cmd/_old/sanguisuga/config.go diff --git a/cmd/sanguisuga/config_test.go b/cmd/_old/sanguisuga/config_test.go index f7d0f8c..f7d0f8c 100644 --- a/cmd/sanguisuga/config_test.go +++ b/cmd/_old/sanguisuga/config_test.go diff --git a/cmd/sanguisuga/dcc.go b/cmd/_old/sanguisuga/dcc.go index defab31..defab31 100644 --- a/cmd/sanguisuga/dcc.go +++ b/cmd/_old/sanguisuga/dcc.go diff --git a/cmd/sanguisuga/internal/dcc/dcc.go b/cmd/_old/sanguisuga/internal/dcc/dcc.go index 82d2ff3..82d2ff3 100644 --- a/cmd/sanguisuga/internal/dcc/dcc.go +++ b/cmd/_old/sanguisuga/internal/dcc/dcc.go diff --git a/cmd/sanguisuga/js/scripts/iptorrents.js b/cmd/_old/sanguisuga/js/scripts/iptorrents.js index fd45abe..fd45abe 100644 --- a/cmd/sanguisuga/js/scripts/iptorrents.js +++ b/cmd/_old/sanguisuga/js/scripts/iptorrents.js diff --git a/cmd/sanguisuga/js/scripts/subsplease.js b/cmd/_old/sanguisuga/js/scripts/subsplease.js index dd9566e..dd9566e 100644 --- a/cmd/sanguisuga/js/scripts/subsplease.js +++ b/cmd/_old/sanguisuga/js/scripts/subsplease.js diff --git a/cmd/sanguisuga/js/scripts/torrentleech.js b/cmd/_old/sanguisuga/js/scripts/torrentleech.js index 7ddfa9e..7ddfa9e 100644 --- a/cmd/sanguisuga/js/scripts/torrentleech.js +++ b/cmd/_old/sanguisuga/js/scripts/torrentleech.js diff --git a/cmd/sanguisuga/main.go b/cmd/_old/sanguisuga/main.go index 4dc9402..06efced 100644 --- a/cmd/sanguisuga/main.go +++ b/cmd/_old/sanguisuga/main.go @@ -28,7 +28,6 @@ import ( irc "github.com/thoj/go-ircevent" "go.jetpack.io/tyson" "honnef.co/go/transmission" - "tailscale.com/hostinfo" "tailscale.com/jsondb" "tailscale.com/tsnet" "within.website/x/internal" @@ -42,7 +41,6 @@ var ( dbLoc = flag.String("db-loc", "./data.json", "path to data file") tysonConfig = flag.String("tyson-config", "./config.ts", "path to configuration secrets (TySON)") externalSeed = flag.Bool("external-seed", false, "try to external seed?") - tsnetVerbose = flag.Bool("tsnet-verbose", false, "enable verbose tsnet logging") crcCheckCLI = flag.Bool("crc-check", false, "if true, check args[0] against hash args[1]") @@ -82,7 +80,6 @@ func ParseTorrentAnnouncement(input string) (*TorrentAnnouncement, error) { func main() { internal.HandleStartup() - hostinfo.SetApp("within.website/x/cmd/sanguisuga") if *crcCheckCLI { if flag.NArg() != 2 { @@ -137,34 +134,10 @@ func main() { if c.Tailscale.DataDir != nil { dataDir = *c.Tailscale.DataDir } - - srv := &tsnet.Server{ - Dir: dataDir, - AuthKey: c.Tailscale.Authkey, - Hostname: c.Tailscale.Hostname, - Logf: func(string, ...any) {}, - } - - if *tsnetVerbose { - srv.Logf = slog.NewLogLogger(slog.Default().Handler().WithAttrs([]slog.Attr{slog.String("from", "tsnet")}), slog.LevelDebug).Printf - } - - if err := srv.Start(); err != nil { - log.Fatalf("can't start tsnet server: %v", err) - } - - go func() { - ln, err := srv.Listen("tcp", ":80") - if err != nil { - log.Fatalf("can't listen on tsnet: %v", err) - } - defer ln.Close() - - log.Fatal(http.Serve(ln, http.DefaultServeMux)) - }() + _ = dataDir cl := &transmission.Client{ - Client: srv.HTTPClient(), + Client: http.DefaultClient, Endpoint: c.Transmission.URL, Username: c.Transmission.User, Password: c.Transmission.Password, @@ -206,7 +179,6 @@ func main() { db: db, bot: bot, tnet: tnet, - srv: srv, animeInFlight: map[string]*SubspleaseAnnouncement{}, } diff --git a/cmd/sanguisuga/plex/plex.go b/cmd/_old/sanguisuga/plex/plex.go index 21b5afb..21b5afb 100644 --- a/cmd/sanguisuga/plex/plex.go +++ b/cmd/_old/sanguisuga/plex/plex.go diff --git a/cmd/sanguisuga/sanguisuga.templ b/cmd/_old/sanguisuga/sanguisuga.templ index 55833bb..55833bb 100644 --- a/cmd/sanguisuga/sanguisuga.templ +++ b/cmd/_old/sanguisuga/sanguisuga.templ diff --git a/cmd/sanguisuga/sanguisuga_templ.go b/cmd/_old/sanguisuga/sanguisuga_templ.go index f2bbaea..f2bbaea 100644 --- a/cmd/sanguisuga/sanguisuga_templ.go +++ b/cmd/_old/sanguisuga/sanguisuga_templ.go diff --git a/cmd/sanguisuga/static/alpine.js b/cmd/_old/sanguisuga/static/alpine.js index e2322d5..e2322d5 100644 --- a/cmd/sanguisuga/static/alpine.js +++ b/cmd/_old/sanguisuga/static/alpine.js diff --git a/cmd/sanguisuga/static/styles.css b/cmd/_old/sanguisuga/static/styles.css index 8a4f438..8a4f438 100644 --- a/cmd/sanguisuga/static/styles.css +++ b/cmd/_old/sanguisuga/static/styles.css diff --git a/cmd/sanguisuga/tailwind.config.js b/cmd/_old/sanguisuga/tailwind.config.js index f848da1..f848da1 100644 --- a/cmd/sanguisuga/tailwind.config.js +++ b/cmd/_old/sanguisuga/tailwind.config.js diff --git a/cmd/sanguisuga/tv.go b/cmd/_old/sanguisuga/tv.go index 73273a8..73273a8 100644 --- a/cmd/sanguisuga/tv.go +++ b/cmd/_old/sanguisuga/tv.go diff --git a/cmd/amano/main.go b/cmd/amano/main.go new file mode 100644 index 0000000..98ec545 --- /dev/null +++ b/cmd/amano/main.go @@ -0,0 +1,112 @@ +package main + +import ( + "context" + "flag" + "fmt" + "log/slog" + "os" + "sync" + "time" + + jetstreamClient "github.com/bluesky-social/jetstream/pkg/client" + "github.com/bluesky-social/jetstream/pkg/client/schedulers/parallel" + jsModels "github.com/bluesky-social/jetstream/pkg/models" + "github.com/goccy/go-json" + "github.com/nats-io/nats.go" + "within.website/x/internal" +) + +var ( + jetStreamURL = flag.String("jetstream-url", "wss://jetstream2.us-east.bsky.network/subscribe", "Jetstream server to subscribe to") + natsURL = flag.String("nats-url", "nats://localhost:4222", "nats url") +) + +func main() { + internal.HandleStartup() + + slog.Info("starting up", + "jetstream-url", jetStreamURL, + "nats-url", natsURL, + ) + + nc, err := nats.Connect(*natsURL) + if err != nil { + slog.Error("can't connect to NATS", "err", err) + os.Exit(1) + } + defer nc.Close() + slog.Info("connected to NATS") + + jsCfg := jetstreamClient.DefaultClientConfig() + jsCfg.WebsocketURL = *jetStreamURL + + jscli, err := jetstreamClient.NewClient( + jsCfg, + slog.With("aspect", "jetstream"), + parallel.NewScheduler( + 1, + "amano", + slog.With("aspect", "fan-out"), + handleEvent(nc), + ), + ) + if err != nil { + slog.Error("can't set up jetstream client", "err", err) + os.Exit(1) + } + defer jscli.Scheduler.Shutdown() + + now := time.Now().UnixNano() + if err := jscli.ConnectAndRead(context.Background(), &now); err != nil { + slog.Error("can't connect to jetstream", "err", err) + os.Exit(1) + } + + slog.Info("connected to jetstream") + + mu := sync.Mutex{} + mu.Lock() + mu.Lock() +} + +func handleEvent(nc *nats.Conn) func(ctx context.Context, ev *jsModels.Event) error { + return func(ctx context.Context, ev *jsModels.Event) error { + switch ev.Kind { + case "account": + data, err := json.Marshal(ev.Account) + if err != nil { + return fmt.Errorf("can't marshal account event: %w", err) + } + + if err := nc.Publish("amano:account", data); err != nil { + return fmt.Errorf("can't publish account event: %w", err) + } + case "identity": + data, err := json.Marshal(ev.Identity) + if err != nil { + return fmt.Errorf("can't marshal identity event: %w", err) + } + + if err := nc.Publish("amano:identity", data); err != nil { + return fmt.Errorf("can't publish identity event: %w", err) + } + case "commit": + subject := fmt.Sprintf("amano:commit:%s", ev.Commit.Collection) + data, err := json.Marshal(ev.Commit) + if err != nil { + return fmt.Errorf("can't marshal commit event: %w", err) + } + + m := nats.NewMsg(subject) + m.Data = data + m.Header.Set("bsky-actor-did", ev.Did) + + if err := nc.PublishMsg(m); err != nil { + return fmt.Errorf("can't publish %q event: %w", subject, err) + } + } + + return nil + } +} diff --git a/cmd/stealthmountain/main.go b/cmd/stealthmountain/main.go new file mode 100644 index 0000000..a8a17fb --- /dev/null +++ b/cmd/stealthmountain/main.go @@ -0,0 +1,152 @@ +package main + +import ( + "context" + "flag" + "fmt" + "log/slog" + "os" + "regexp" + "time" + + comatproto "github.com/bluesky-social/indigo/api/atproto" + bskyData "github.com/bluesky-social/indigo/api/bsky" + jsModels "github.com/bluesky-social/jetstream/pkg/models" + bsky "github.com/danrusei/gobot-bsky" + "github.com/goccy/go-json" + "github.com/nats-io/nats.go" + "within.website/x/internal" +) + +const ( + PostTopic = "amano:commit:app.bsky.feed.post" +) + +var ( + blueskyAuthkey = flag.String("bsky-authkey", "", "Bluesky authkey") + blueskyHandle = flag.String("bsky-handle", "", "Bluesky handle") + blueskyPDS = flag.String("bsky-pds", "https://bsky.social", "Bluesky PDS") + natsURL = flag.String("nats-url", "nats://localhost:4222", "nats url") + + sneakPeakRegex = regexp.MustCompile("(?i)sneak peak") +) + +func main() { + internal.HandleStartup() + + slog.Info("starting up", + "have-bsky-authkey", *blueskyAuthkey != "", + "bsky-handle", *blueskyHandle, + "bsky-pds", *blueskyPDS, + "nats-url", *natsURL, + ) + + nc, err := nats.Connect(*natsURL) + if err != nil { + slog.Error("can't connect to NATS", "err", err) + os.Exit(1) + } + defer nc.Close() + slog.Info("connected to NATS") + + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + bsAgent, err := bskyAuth(ctx, *blueskyPDS, *blueskyHandle, *blueskyAuthkey) + if err != nil { + slog.Error("can't auth to bluesky", "err", err) + os.Exit(1) + } + + sub, err := nc.SubscribeSync(PostTopic) + if err != nil { + slog.Error("can't subscribe to post feed", "err", err) + os.Exit(1) + } + defer sub.Drain() + + for { + m, err := sub.NextMsg(time.Second) + if err != nil { + slog.Error("can't read message", "err", err) + continue + } + + var commit jsModels.Commit + if err := json.Unmarshal(m.Data, &commit); err != nil { + slog.Error("can't unmarshal commit", "err", err) + continue + } + + if commit.Operation == "delete" { + continue + } + + var post bskyData.FeedPost + if err := json.Unmarshal(commit.Record, &post); err != nil { + slog.Error("can't unmarshal post", "err", err) + continue + } + + if sneakPeakRegex.MatchString(post.Text) { + actorID := m.Header.Get("bsky-actor-did") + slog.Info("found a stealth mountain!", "id", commit.Rev, "actor", actorID) + reply, err := bsky.NewPostBuilder(`I think you mean "sneak peek"`).Build() + if err != nil { + slog.Error("can't build reply post", "err", err) + } + parent := comatproto.RepoStrongRef{ + LexiconTypeID: "app.bsky.feed.post", + Uri: fmt.Sprintf("at://%s/app.bsky.feed.post/%s", actorID, commit.RKey), + Cid: commit.CID, + } + root := parent + + if post.Reply != nil { + root = *post.Reply.Root + } + + reply.Reply = &bskyData.FeedPost_ReplyRef{ + Parent: &parent, + Root: &root, + } + + reply.CreatedAt = time.Now().UTC().Format(time.RFC3339) + + cid, uri, err := bsAgent.PostToFeed(ctx, reply) + if err != nil { + slog.Error("cannot post to feed", "err", err) + continue + } + + slog.Info("posted to bluesky", "bluesky_cid", cid, "bluesky_uri", uri) + } + } +} + +func bskyAuth(ctx context.Context, pds, handle, authkey string) (*bsky.BskyAgent, error) { + bluesky := bsky.NewAgent(ctx, pds, handle, authkey) + if err := bluesky.Connect(ctx); err != nil { + slog.Error("failed to connect to bluesky", "err", err) + return nil, err + } + + go func() { + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + t := time.NewTicker(5 * time.Minute) + defer t.Stop() + for range t.C { + if err := bluesky.Connect(ctx); err != nil { + slog.Error("can't reauth to bluesky", "err", err) + } + } + }() + + if err := bluesky.Connect(ctx); err != nil { + slog.Error("failed to connect to bluesky", "err", err) + return nil, err + } + + return &bluesky, nil +} diff --git a/cmd/within.website/main.go b/cmd/within.website/main.go index 8bb5c75..552d917 100644 --- a/cmd/within.website/main.go +++ b/cmd/within.website/main.go @@ -10,7 +10,6 @@ import ( "github.com/a-h/templ" "go.jetpack.io/tyson" - "tailscale.com/tsweb" "within.website/x/internal" "within.website/x/web/vanity" "within.website/x/xess" @@ -83,7 +82,6 @@ func main() { } xess.Mount(mux) - mux.HandleFunc("/debug/varz", tsweb.VarzHandler) mux.Handle("/{$}", templ.Handler( xess.Base( diff --git a/cmd/xedn/cache.go b/cmd/xedn/cache.go index 10a7d6e..b3db834 100644 --- a/cmd/xedn/cache.go +++ b/cmd/xedn/cache.go @@ -146,7 +146,6 @@ func (dc *Cache) Load(dir string, w io.Writer) error { if t.Before(now) { tx.DeleteBucket([]byte(dir)) - fileDeaths.Get(dir).Add(1) return ErrNotCached } @@ -183,7 +182,6 @@ func (dc *Cache) Load(dir string, w io.Writer) error { w.Write(data) cacheHits.Add(1) - fileHits.Add(dir, 1) return nil }) @@ -294,7 +292,6 @@ func (dc *Cache) CronPurgeDead() { return fmt.Errorf("when trying to delete bucket %s: %w", string(name), err) } - fileDeaths.Add(string(name), 1) lg.Info("deleted", "diesAt", diesAt) } diff --git a/cmd/xedn/imgoptimize.go b/cmd/xedn/imgoptimize.go index c82c362..9a4206b 100644 --- a/cmd/xedn/imgoptimize.go +++ b/cmd/xedn/imgoptimize.go @@ -22,7 +22,6 @@ import ( "github.com/gen2brain/webp" "go.etcd.io/bbolt" "golang.org/x/sync/singleflight" - "tailscale.com/metrics" ) type OptimizedImageServer struct { @@ -32,11 +31,6 @@ type OptimizedImageServer struct { group *singleflight.Group } -var ( - OISFileConversions = metrics.LabelMap{Label: "format"} - OISFileHits = metrics.LabelMap{Label: "path"} -) - func (ois *OptimizedImageServer) ServeHTTP(w http.ResponseWriter, r *http.Request) { // /sticker/character/mood/width acc := strings.Split(r.Header.Get("Accept"), ",") @@ -88,7 +82,6 @@ func (ois *OptimizedImageServer) ServeHTTP(w http.ResponseWriter, r *http.Reques w.Header().Set("Etag", fmt.Sprintf(`W/"%s"`, Hash(r.URL.Path))) w.WriteHeader(http.StatusOK) w.Write(data) - OISFileHits.Add(r.URL.Path, 1) } func (ois *OptimizedImageServer) ResizeTo(widthPixels int, character, mood, format string) ([]byte, error) { @@ -151,8 +144,6 @@ func (ois *OptimizedImageServer) ResizeTo(widthPixels int, character, mood, form return nil, fmt.Errorf("i don't know how to render to %s yet, sorry", format) } - OISFileConversions.Add(format, 1) - err = ois.DB.Update(func(tx *bbolt.Tx) error { bkt, err := tx.CreateBucketIfNotExists([]byte("sticker_cache")) if err != nil { diff --git a/cmd/xedn/main.go b/cmd/xedn/main.go index 26d579c..f1dd391 100644 --- a/cmd/xedn/main.go +++ b/cmd/xedn/main.go @@ -8,7 +8,6 @@ import ( "flag" "fmt" "image/png" - "io" "log" "log/slog" "net/http" @@ -22,10 +21,6 @@ import ( "github.com/sebest/xff" "go.etcd.io/bbolt" "golang.org/x/sync/singleflight" - "tailscale.com/hostinfo" - "tailscale.com/metrics" - "tailscale.com/tsnet" - "tailscale.com/tsweb" "within.website/x/internal" "within.website/x/internal/xesite" "within.website/x/web/fly/flymachines" @@ -39,7 +34,6 @@ var ( dir = flag.String("dir", envOr("XEDN_STATE", "./var"), "where XeDN should store cached data") staticDir = flag.String("static-dir", envOr("XEDN_STATIC", "./static"), "where XeDN should look for static assets") stableDiffusionServer = flag.String("stable-diffusion-server", "http://xe-automatic1111.internal:8080", "where XeDN should request Stable Diffusion images from (Automatic1111)") - tailscaleVerbose = flag.Bool("tailscale-verbose", false, "enable verbose tailscale logging") //go:embed index.html indexHTML []byte @@ -60,31 +54,17 @@ var ( etagMatches = expvar.NewInt("counter_xedn_etag_matches") - referers = metrics.LabelMap{Label: "url"} - fileHits = metrics.LabelMap{Label: "path"} - fileDeaths = metrics.LabelMap{Label: "path"} - fileMimeTypes = metrics.LabelMap{Label: "type"} - etags map[string]string etagLock sync.RWMutex ) func init() { etags = map[string]string{} - - expvar.Publish("gauge_xedn_referers", &referers) - expvar.Publish("gauge_xedn_file_hits", &fileHits) - expvar.Publish("gauge_xedn_file_deaths", &fileDeaths) - expvar.Publish("gauge_xedn_file_mime_type", &fileMimeTypes) - expvar.Publish("gauge_xedn_ois_file_conversions", &OISFileConversions) - expvar.Publish("gauge_xedn_ois_file_hits", &OISFileHits) } func main() { internal.HandleStartup() - hostinfo.SetApp("within.website/x/cmd/xedn") - os.MkdirAll(filepath.Join(*dir, "tsnet"), 0700) db, err := bbolt.Open(filepath.Join(*dir, "data"), 0600, &bbolt.Options{}) @@ -108,19 +88,6 @@ func main() { group: &singleflight.Group{}, } - srv := &tsnet.Server{ - Hostname: "xedn-" + os.Getenv("FLY_REGION"), - Logf: log.New(io.Discard, "", 0).Printf, - AuthKey: os.Getenv("TS_AUTHKEY"), - Dir: filepath.Join(*dir, "tsnet"), - } - - if *tailscaleVerbose { - srv.Logf = log.Printf - } - - srv.Start() - sd := &StableDiffusion{ db: db, client: &stablediffusion.Client{HTTP: http.DefaultClient, APIServer: *stableDiffusionServer}, @@ -137,26 +104,6 @@ func main() { log.Fatal(err) } - go func() { - lis, err := srv.Listen("tcp", ":80") - if err != nil { - log.Fatalf("can't listen on tsnet: %v", err) - } - - http.DefaultServeMux.HandleFunc("/debug/varz", tsweb.VarzHandler) - http.DefaultServeMux.HandleFunc("/xedn/files", dc.ListFiles) - http.DefaultServeMux.HandleFunc("/xedn/purge", dc.Purge) - http.DefaultServeMux.HandleFunc("/xesite/generations", zs.ListGenerations) - http.DefaultServeMux.HandleFunc("/xesite/nuke", zs.NukeGeneration) - http.DefaultServeMux.HandleFunc("/xesite/upload", zs.UploadNewZip) - http.DefaultServeMux.HandleFunc("/sticker/files", ois.ListFiles) - http.DefaultServeMux.HandleFunc("/sticker/purge", ois.Purge) - - defer srv.Close() - defer lis.Close() - log.Fatal(http.Serve(lis, http.DefaultServeMux)) - }() - xffMW, err := xff.Default() if err != nil { log.Fatal(err) @@ -167,7 +114,6 @@ func main() { { mux := http.NewServeMux() - mux.HandleFunc("/metrics", tsweb.VarzHandler) mux.HandleFunc("/xedn/optimize", iu.CreateImage) mux.HandleFunc("/", http.FileServer(http.Dir(filepath.Join(*dir, "uploud"))).ServeHTTP) @@ -232,9 +178,6 @@ func main() { return } - referers.Get(r.Header.Get("Referer")).Add(1) - fileMimeTypes.Get(r.Header.Get("Content-Type")).Add(1) - if err := dc.GetFile(w, r); err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) return |
