[mirror] Command-line application for uploading a site to a git-pages server

Generate a password for `--challenge` if not specified.

Use the same algorithm as https://grebedoc.dev (a random UUID).

+9 -5
+1 -1
flake.nix
··· 41 41 "-s -w" 42 42 ]; 43 43 44 - vendorHash = "sha256-4Xo48Dpqzq61molFjhgu7df45544tRfjr0iM5k4dBVo="; 44 + vendorHash = "sha256-5vjUhN3lCr41q91lOD7v0F9c6a8GJj7wBGnnzgFBhJU="; 45 45 }; 46 46 in 47 47 {
+3 -2
go.mod
··· 3 3 go 1.25.0 4 4 5 5 require ( 6 - github.com/spf13/pflag v1.0.10 7 - github.com/klauspost/compress v1.18.1 6 + github.com/klauspost/compress v1.18.1 7 + github.com/spf13/pflag v1.0.10 8 + github.com/google/uuid v1.6.0 8 9 )
+2
go.sum
··· 1 + github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= 2 + github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= 1 3 github.com/klauspost/compress v1.18.1 h1:bcSGx7UbpBqMChDtsF28Lw6v/G94LPrrbMbdC3JH2co= 2 4 github.com/klauspost/compress v1.18.1/go.mod h1:ZQFFVG+MdnR0P+l6wpXgIL4NTtwiKIdBnrBd8Nrxr+0= 3 5 github.com/spf13/pflag v1.0.10 h1:4EBh2KAYBwaONj6b2Ye1GiHfwjqyROoF4RwYO+vPwFk=
+3 -2
main.go
··· 11 11 "net/url" 12 12 "os" 13 13 14 + "github.com/google/uuid" 14 15 "github.com/klauspost/compress/zstd" 15 16 "github.com/spf13/pflag" 16 17 ) ··· 108 109 switch { 109 110 case *challengeFlag || *challengeBareFlag: 110 111 if *passwordFlag == "" { 111 - fmt.Fprintf(os.Stderr, "error: no --password option specified\n") 112 - os.Exit(1) 112 + *passwordFlag = uuid.NewString() 113 + fmt.Fprintf(os.Stderr, "password: %s\n", *passwordFlag) 113 114 } 114 115 115 116 challenge := sha256.Sum256(fmt.Appendf(nil, "%s %s", siteURL.Hostname(), *passwordFlag))