diff options
| -rw-r--r-- | cmd/rescribe/getembeds.go | 55 | ||||
| -rw-r--r-- | cmd/rescribe/main.go | 2 | 
2 files changed, 57 insertions, 0 deletions
diff --git a/cmd/rescribe/getembeds.go b/cmd/rescribe/getembeds.go new file mode 100644 index 0000000..b2b5392 --- /dev/null +++ b/cmd/rescribe/getembeds.go @@ -0,0 +1,55 @@ +// Copyright 2021 Nick White. +// Use of this source code is governed by the GPLv3 +// license that can be found in the LICENSE file. + +// +build ignore + +// this downloads the needed files to embed into the binary, +// and is run by `go generate` +package main + +import ( +	"fmt" +	"io" +	"os" +	"path" +	"net/http" +) + +func dl(url string) error { +	fn := path.Base(url) + +	f, err := os.Create(fn) +	if err != nil { +		return fmt.Errorf("Error creating file %s: %v", fn, err) +	} +	defer f.Close() + +	r, err := http.Get(url) +	if err != nil { +		return fmt.Errorf("Error getting url %s: %v", url, err) +	} +	defer r.Body.Close() + +	_, err = io.Copy(f, r.Body) +	if err != nil { +		return fmt.Errorf("Error saving %s: %v", fn, err) +	} + +	return nil +} + +func main() { +	urls := []string { +		"https://rescribe.xyz/rescribe/embeds/tessdata.20210622.zip", +		"https://rescribe.xyz/rescribe/embeds/tesseract-w32-v5.0.0-alpha.20210506.zip", +	} +	for _, v := range urls { +		fmt.Printf("Downloading %s\n", v) +		err := dl(v) +		if err != nil { +			fmt.Printf("Error downloading %s: %v\n", v, err) +			os.Exit(1) +		} +	} +} diff --git a/cmd/rescribe/main.go b/cmd/rescribe/main.go index 3325282..c000190 100644 --- a/cmd/rescribe/main.go +++ b/cmd/rescribe/main.go @@ -7,6 +7,8 @@  // a single book by the pipeline into one command.  package main +//go:generate go run getembeds.go +  import (  	"archive/zip"  	"bytes"  | 
