Summary: | [new port] net/yggdrasil: Experimental end-to-end encrypted self-arranging IPv6 network | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Neil Alexander <freebsd> | ||||||||
Component: | Individual Port(s) | Assignee: | Yuri Victorovich <yuri> | ||||||||
Status: | Closed FIXED | ||||||||||
Severity: | Affects Only Me | CC: | dmgk, freebsd, yuri | ||||||||
Priority: | --- | Keywords: | feature, needs-qa | ||||||||
Version: | Latest | Flags: | koobs:
maintainer-feedback+
|
||||||||
Hardware: | Any | ||||||||||
OS: | Any | ||||||||||
URL: | https://yggdrasil-network.github.io/ | ||||||||||
Attachments: |
|
Description
Neil Alexander
2019-03-17 18:24:49 UTC
Created attachment 202940 [details]
SHAR file
Has correct maintainer email address now.
Is there an ETA on review for new packages? Hi, Thank you for your submission, there are a few issues with the port: - It doesn't currently build in poudriere because neither $HOME nor $GOCACHE is set by default: =======================<phase: build >============================ ===> Building for yggdrasil-0.3.5 mkdir /wrkdirs/usr/ports/net/yggdrasil/work/.gocache cd /wrkdirs/usr/ports/net/yggdrasil/work/yggdrasil-go-0.3.5 && PKGNAME=yggdrasil PKGVER=0.3.5 ./build Building: yggdrasil failed to initialize build cache at /nonexistent/.cache/go-build: mkdir /nonexistent: permission denied Building: yggdrasilctl failed to initialize build cache at /nonexistent/.cache/go-build: mkdir /nonexistent: permission denied The easiest fix would be to update the build target to ${SETENV} ${MAKE_ENV} before calling build: cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} PKGNAME=${PORTNAME} PKGVER=${PORTVERSION} ./build - All dependencies will need to be vendored by the upstream or added to GH_TUPLE (same commit ids/tags as specified in go.mod, devel/modules2tuple can help with GH_TUPLE generation) - ${INSTALL_PROGRAM} already does the stripping, no need to do this again in post-install - Config files should go to ${PREFIX}/etc, not /etc Hi Dmitri Thanks for the concise response. I'll make some changes and submit a new patch soon. I am a little confused about GH_TUPLE and vendoring. I was under the impression that when module support is enabled in Go, vendoring directories are ignored. Is GH_TUPLE a replacement for the other GH_ variables and, if so, should it really contain an entry for every other Go dependency? Is it not sufficient to let Go deal with the modules itself? (In reply to Neil Alexander from comment #4) Correct, building in module-aware more will require -mod=vendor (or GOFLAGS=-mod=vendor). There are a few examples of this in the ports tree e.g devel/go-git or net/syncthing. GH_TUPLE is a shortcut for setting other GH_ vars in a compact way. Because network access is not allowed during the build, all dependencies must be downloaded beforehand (unless they were already vendored by the upstream). Currently there's no support for automatic dependencies download by the `go build` - it'll appear to work when building with make but will fail in poudriere. @Neil Beyond portlint, we strongly recommend QA'ing ports using poudriere, which helps to pick up many issues. Details and instructions: https://www.freebsd.org/doc/en/books/porters-handbook/testing-poudriere.html Created attachment 203984 [details]
SHAR file
Hi Dmitri, Kubilay, Really appreciate both of your input and feedback. I've attached a new SHAR file which is tested and working in Poudriere on my machine. I hope this is better! Hi all, Is there an update on whether the newly updated package is suitable now? Thanks in advance! Committed with minor changes. Thank you for your submission! A commit references this bug: Author: yuri Date: Sat Aug 3 23:38:05 UTC 2019 New revision: 508037 URL: https://svnweb.freebsd.org/changeset/ports/508037 Log: New port: net/yggdrasil: Experimental end-to-end encrypted self-arranging IPv6 network PR: 236607 Submitted by: Neil Alexander <freebsd@neilalexander.dev> Changes: head/net/Makefile head/net/yggdrasil/ head/net/yggdrasil/Makefile head/net/yggdrasil/distinfo head/net/yggdrasil/files/ head/net/yggdrasil/files/yggdrasil.in head/net/yggdrasil/pkg-descr |