From 974fa024a1a386290990f0f2cb9838a18f0099fe Mon Sep 17 00:00:00 2001 From: Big Duckie Date: Tue, 31 Dec 2024 02:57:14 -0700 Subject: [PATCH] Fixed issues with renamed module. --- .idea/modules.xml | 2 +- .idea/vcs.xml | 6 ++++++ README.md | 22 ++++++++++++++++------ app/cmd/serve.go | 2 +- app/routes/routes.go | 6 +++--- go.mod | 14 ++++++-------- go.sum | 18 ++++-------------- main.go | 4 ++-- 8 files changed, 39 insertions(+), 35 deletions(-) create mode 100644 .idea/vcs.xml diff --git a/.idea/modules.xml b/.idea/modules.xml index 2ab4dbb..bcac1d5 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -2,7 +2,7 @@ - + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/README.md b/README.md index a6ec698..6e41aaf 100644 --- a/README.md +++ b/README.md @@ -3,28 +3,38 @@ A tiny lightweight OPDS server with PSE support. Mainly written for those using Panels on iOS. ### Usage -To use this, just download the [Latest Release](https://github.com/sclark-dev/go-opds-pse/releases/latest) and run it via terminal. + +To use this, just download the [Latest Release](https://github.com/sclark-dev/go-opds-pse/releases/latest) and run it +via terminal. ```shell go-opds-pse -m "./manga/" serve -p 8080 ``` ### Building + To build this you'll want the latest version of Go. Doesn't use any external libraries. ### Attributions + Thanks to [dir2opds](https://github.com/dubyte/dir2opds) for the inspiration for this. ### FAQs + - Why Go? - -Well, Go is just very memory efficient. Yes, writing this in something like C would be even better, but that's a pain. My choice for Go was a cross-platform server that can be run on embedded hardware for local access to your comic/manga collection. + +Well, Go is just very memory efficient. Yes, writing this in something like C would be even better, but that's a pain. +My choice for Go was a cross-platform server that can be run even on embedded hardware for local access to your +comic/manga collection. - Is there a Web UI for this? -No. This is designed to be a very lightweight server and a UI would add a lot of bulk. However since this server just serves a basic OPDS feed, there should be plenty of clients available. Alas, the PSE support is kinda lacking. It seems like there just isn't much of a market for that. +No. This is designed to be a very lightweight server and a UI would add a lot of bulk. However since this server just +serves a basic OPDS feed, there should be plenty of clients available. Alas, the PSE support is kinda lacking. It seems +like there just isn't much of a market for that. - Does streaming use more bandwidth? -Not really. While CBZ files are compressed, *generally* the bandwidth saved by compressing JPGs and non-lossless PNGs is pretty minimal. In fact, I don' -t compress my CBZ files at all. The few hundred kilobytes it saves just isn't enough to justify the extra battery usage to decompress it on a mobile device. \ No newline at end of file +Not really. While CBZ files can be compressed, *generally* the bandwidth saved by compressing JPGs and non-lossless PNGs +is pretty minimal. In fact, I don't compress my CBZ files at all. The few kilobytes it saves just isn't enough to +justify the extra battery usage to decompress it on a mobile device. \ No newline at end of file diff --git a/app/cmd/serve.go b/app/cmd/serve.go index 74d3ab2..ecc4cd7 100644 --- a/app/cmd/serve.go +++ b/app/cmd/serve.go @@ -5,8 +5,8 @@ import ( "github.com/gorilla/mux" "github.com/patrickmn/go-cache" "github.com/urfave/cli/v2" + "go-opds-pse/app/routes" "net/http" - "opds-pse-server/app/routes" "time" ) diff --git a/app/routes/routes.go b/app/routes/routes.go index 47c583c..f9a66e0 100644 --- a/app/routes/routes.go +++ b/app/routes/routes.go @@ -10,13 +10,13 @@ import ( "github.com/patrickmn/go-cache" "github.com/samber/lo" "github.com/urfave/cli/v2" + "go-opds-pse/app/comicinfo" + "go-opds-pse/app/opds" + "go-opds-pse/app/utils" "golang.org/x/tools/blog/atom" "io" "io/fs" "net/http" - "opds-pse-server/app/comicinfo" - "opds-pse-server/app/opds" - "opds-pse-server/app/utils" "path/filepath" "slices" "sort" diff --git a/go.mod b/go.mod index f8653df..40ba77a 100644 --- a/go.mod +++ b/go.mod @@ -1,23 +1,21 @@ -module opds-pse-server +module go-opds-pse go 1.22.0 toolchain go1.22.4 require ( + github.com/creasty/defaults v1.8.0 github.com/gorilla/mux v1.8.1 - github.com/urfave/cli/v2 v2.27.4 + github.com/patrickmn/go-cache v2.1.0+incompatible + github.com/samber/lo v1.47.0 + github.com/urfave/cli/v2 v2.27.5 golang.org/x/tools v0.25.0 ) require ( - github.com/cpuguy83/go-md2man/v2 v2.0.4 // indirect - github.com/creasty/defaults v1.8.0 // indirect - github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect - github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect - github.com/patrickmn/go-cache v2.1.0+incompatible // indirect + github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect - github.com/samber/lo v1.47.0 // indirect github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect golang.org/x/text v0.16.0 // indirect ) diff --git a/go.sum b/go.sum index 10da15c..af2822e 100644 --- a/go.sum +++ b/go.sum @@ -1,24 +1,14 @@ -github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4= -github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= -github.com/creasty/defaults v1.8.0 h1:z27FJxCAa0JKt3utc0sCImAEb+spPucmKoOdLHvHYKk= +github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc= +github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creasty/defaults v1.8.0/go.mod h1:iGzKe6pbEHnpMPtfDXZEr0NVxWnPTjb1bbDy08fPzYM= -github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY= github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ= -github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 h1:SOEGU9fKiNWd/HOJuq6+3iTQz8KNCLtVX6idSoTLdUw= -github.com/lann/builder v0.0.0-20180802200727-47ae307949d0/go.mod h1:dXGbAdH5GtBTC4WfIxhKZfyBF/HBFgRZSWwZ9g/He9o= -github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 h1:P6pPBnrTSX3DEVR4fDembhRWSsG5rVo6hYhAB/ADZrk= -github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0/go.mod h1:vmVJ0l/dxyfGW6FmdpVm2joNMFikkuWg0EoCKLGUMNw= -github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc= github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/samber/lo v1.47.0 h1:z7RynLwP5nbyRscyvcD043DWYoOcYRv3mV8lBeqOCLc= github.com/samber/lo v1.47.0/go.mod h1:RmDH9Ct32Qy3gduHQuKJ3gW1fMHAnE/fAzQuf6He5cU= -github.com/urfave/cli/v2 v2.27.4 h1:o1owoI+02Eb+K107p27wEX9Bb8eqIoZCfLXloLUSWJ8= -github.com/urfave/cli/v2 v2.27.4/go.mod h1:m4QzxcD2qpra4z7WhzEGn74WZLViBnMpb1ToCAKdGRQ= +github.com/urfave/cli/v2 v2.27.5 h1:WoHEJLdsXr6dDWoJgMq/CboDmyY/8HMMH1fTECbih+w= +github.com/urfave/cli/v2 v2.27.5/go.mod h1:3Sevf16NykTbInEnD0yKkjDAeZDS0A6bzhBH5hrMvTQ= github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 h1:gEOO8jv9F4OT7lGCjxCBTO/36wtF6j2nSip77qHd4x4= github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1/go.mod h1:Ohn+xnUBiLI6FVj/9LpzZWtj1/D6lUovWYBkxHVV3aM= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= -golang.org/x/tools v0.25.0 h1:oFU9pkj/iJgs+0DT+VMHrx+oBKs/LJMV+Uvg78sl+fE= golang.org/x/tools v0.25.0/go.mod h1:/vtpO8WL1N9cQC3FN5zPqb//fRXskFHbLKk4OW1Q7rg= diff --git a/main.go b/main.go index 46c66bc..76ea996 100644 --- a/main.go +++ b/main.go @@ -2,9 +2,9 @@ package main import ( "github.com/urfave/cli/v2" + "go-opds-pse/app/cmd" "log" "mime" - "opds-pse-server/app/cmd" "os" ) @@ -14,7 +14,7 @@ func main() { app := cli.NewApp() app.Name = "go-opds-pse" app.Usage = "A lightweight OPDS server with PSE support." - app.Version = "0.0.1+dev" + app.Version = "1.0.0+dev" app.Flags = []cli.Flag{ cmd.StringFlag("manga, m", "manga", "default manga folder"), }