On 9/16/19 7:17 AM, William Hubbs wrote: > +# You will know the software you are packaging uses modules because > +# it will have files named go.sum and go.mod in its top-level source > +# directory. If it does not have these files, use the golang-* eclasses. > +# > +# If the software you are packaging uses modules, the next question is > +# whether it has a directory named "vendor" at the top-level of the source tree. > +# > +# If it doesn't, you need to create a tarball of what would be in the > +# vendor directory and mirror it locally. > +# If foo-1.0 is the name of your project and you have the tarball for it > +# in your current directory, this is done with the following commands: > +# > +# @CODE: > +# > +# tar -xf foo-1.0.tar.gz > +# cd foo-1.0 > +# go mod vendor > +# cd .. > +# tar -acf foo-1.0-vendor.tar.gz foo-1.0/vendor For packages that I maintain, I'd prefer to continue using EGO_VENDOR to even with packages using go.mod. I hope that this go-module.class will not preclude this sort of usage. For example, the latest go-tools ebuild uses EGO_VENDOR together with GOFLAGS="-mod=vendor": https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8cc6d401139526e2f9a6dbadbd31f0ff2387705f -- Thanks, Zac