-mkdir -p src/$mod_name
-mv *.go go.* src/$mod_name
-
-mods="
-go.cypherpunks.ru/recfile
-go.cypherpunks.ru/tai64n
-golang.org/x/sys
-golang.org/x/term
-lukechampine.com/blake3
-"
-
-for mod in $mods; do
- mod_path=$(sed -n "s# // indirect## ; s#^ \($mod\) \(.*\)\$#\1@\2#p" src/$mod_name/go.mod)
- [ -n "$mod_path" ]
- mkdir -p src/$mod
- ( cd $GOPATH/pkg/mod/$mod_path ; tar cf - --exclude ".git*" * ) | tar xfC - src/$mod
- chmod -R +w src/$mod
-done
-
-for mod in github.com/klauspost/cpuid; do
- mod_path=$(sed -n "s#^\($mod\) \(.*\) h1:.*\$#\1@\2#p" src/$mod_name/go.sum | sed /go.mod/d | sort -n -r | sed -n 1p)
- [ -n "$mod_path" ]
- mkdir -p src/$mod
- ( cd $GOPATH/pkg/mod/$mod_path ; tar cf - --exclude ".git*" * ) | tar xfC - src/$mod
- chmod -R +w src/$mod
-done
-
-cat > $tmp/includes <<EOF
-golang.org/x/sys/AUTHORS
-golang.org/x/sys/CONTRIBUTORS
-golang.org/x/sys/go.mod
-golang.org/x/sys/internal/unsafeheader
-golang.org/x/sys/LICENSE
-golang.org/x/sys/PATENTS
-golang.org/x/sys/README.md
-golang.org/x/sys/unix
-golang.org/x/term
-EOF
-tar cfCI - src $tmp/includes | tar xfC - $tmp
-rm -fr src/golang.org $tmp/includes
-mv $tmp/golang.org src
-
-rm -r src/golang.org/x/sys/unix/linux
-rm -r src/github.com/klauspost/cpuid/private src/github.com/klauspost/cpuid/testdata
+mkdir -p src
+mv *.go go.* src
+cd src
+go mod vendor
+modvendor -v -copy="**/*_test.go **/private-gen.go **/main.go **/vectors.json **/gen.go"
+rm -rf vendor/golang.org/x/sys/plan9 vendor/golang.org/x/sys/windows
+find vendor/golang.org/x/sys -name "*_test.go" -delete
+find . \( -name .gitignore -o -name .travis.yml \) -delete
+cd ..