# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 PortGroup golang 1.0 PortGroup fuse 1.0 go.setup github.com/rfjakob/gocryptfs 2.6.1 v revision 0 categories fuse maintainers {i0ntempest @i0ntempest} openmaintainer license MIT description Encrypted overlay filesystem written in Go long_description {*}${description} homepage https://nuetzlich.net/gocryptfs/ set gitversionfuse "v2.8.0" checksums ${distname}${extract.suffix} \ rmd160 a3624d8b272e9f32f94ad7a3f1df9814203b6082 \ sha256 8b293c77703e9a45b629a47ce16aad701a9f2f53af5a8fb6200abe274f08051c \ size 1386993 go.vendors gopkg.in/yaml.v3 \ lock 9f266ea9e77c \ rmd160 06dca2ede07b2f31c515b4711fbebc1d5359b5e4 \ sha256 e70dd42fb30b7b2d0129c5cdf0e079caaf5602cab24081fdac830ec01204fa59 \ size 86890 \ golang.org/x/term \ lock v0.29.0 \ rmd160 8897b8f4c7a32f6801b376eab03bc4d98970bb45 \ sha256 584aae20390fd14d70c64dfa2c4a35ee53b53526fd2175f02177cd391d8733ef \ size 14690 \ golang.org/x/sys \ lock v0.30.0 \ rmd160 4cd711df5da2e159b6efbb7fa42ae0a3a3f6eb53 \ sha256 76cfe40018bfa5418c1d19d47d8353c3375594013e2b2feea49f06018d2a3102 \ size 1523466 \ golang.org/x/net \ lock v0.21.0 \ rmd160 f75340f16f42b617230110603e41bd586cdef8fe \ sha256 8fed668d8604e2b59b5cf00ebc327f710e1af177eab7a73d9ddc68992cd9bea9 \ size 1487222 \ golang.org/x/crypto \ lock v0.33.0 \ rmd160 a9bb37694af13af0618980c934387320bab1234a \ sha256 e8755fe2f1785cb6047c52b28f48b4565f8d6ca32be675cb36b330b6a33d1ba9 \ size 1840770 \ github.com/stretchr/testify \ lock v1.6.1 \ rmd160 7e5b798212a8f15cd58a63985ae0b928eede8e6b \ sha256 44d77d9b5c1dc08fa710eac9bb324898210660458085cdf965b78a39b1010f2a \ size 84248 \ github.com/spf13/pflag \ lock v1.0.5 \ rmd160 2ce81608a38c6f383a35bccd24d64361df5828c9 \ sha256 7f41acdcba65b1fab5b9b633947a139f9915b60f94bdab486cdbe9d90c54f61e \ size 50815 \ github.com/sabhiram/go-gitignore \ lock 525f6e181f06 \ rmd160 dedbb7e6dcd1cf8dd5f625090fa8c6b4af8430d6 \ sha256 1966d81c0496a29d36e15731d3290bbc71be1b8ca3745a58b364d8a18972b153 \ size 8886 \ github.com/rfjakob/eme \ lock v1.1.2 \ rmd160 27b6194560dbcdfdad845bbad4d1ed456486f8e4 \ sha256 beb9d8c20398ee8bf71dfc69cd082fba1e79eac2d1ae7d031909a673ca003a45 \ size 23188 \ github.com/pmezard/go-difflib \ lock v1.0.0 \ rmd160 fc879bfbdef9e3ff50844def58404e2b5a613ab8 \ sha256 7cd492737641847266115f3060489a67f63581e521a8ec51efbc280c33fc991f \ size 11409 \ github.com/pkg/xattr \ lock v0.4.9 \ rmd160 9a3c128c3a1f66f0086c7e0991830cfec5c6407c \ sha256 58d70e46c81345035cbf3df6d6bb4a59c43c9a4c68c248801f701be5a1d79bce \ size 9642 \ github.com/moby/sys/mountinfo \ lock v0.7.2 \ rmd160 11470bb42f47fe6c862a063760a88d10d3221a04 \ sha256 99bb4c2a8a867da0f5b1bd61cd9564893776901cff05ca74b1ff9e47723ed167 \ size 69146 \ github.com/kylelemons/godebug \ lock v1.1.0 \ rmd160 917ada648e70d2e339b8ff36d2f86882d0d2efa1 \ sha256 6151c487936ab72cffbf804626228083c9b3abfc908a2bb41b1160e1e5780aaf \ size 17641 \ github.com/jacobsa/reqtrace \ lock 245c9e0234cb \ rmd160 872beac620d3eebbc1a343d1d2ca65f2dc6778bd \ sha256 e8ca3f8de13ce0f35c1cb2bb9c9be220c82f28a0a1ca80557e2afbbdf396a0c4 \ size 7808 \ github.com/jacobsa/ogletest \ lock 80d50a735a11 \ rmd160 d839d0d084bc62e25d23d65cee882b427b537c00 \ sha256 8e9eef43d47e4fc12b6e614bd6c97d102eabec107eabe72493763d45325501fd \ size 24200 \ github.com/jacobsa/oglemock \ lock e94d794d06ff \ rmd160 cee16f043ba80e59483d3bfadf783077f8239110 \ sha256 5474b9f5228d6eda866293feb9c07729a55195fabd2cd77cd1c30e5291830ad9 \ size 35506 \ github.com/jacobsa/oglematchers \ lock 141901ea67cd \ rmd160 5c5dd8416ee4a236632eaa4fc1a1e5ce737eee45 \ sha256 4a45ac5d5b5c15af45761f15e3e14f4739b1cd79cd9493ddcd4744f65edc4b52 \ size 43827 \ github.com/hanwen/go-fuse \ lock ${gitversionfuse} \ rmd160 ff14b282bca607f345e063adefa63a7db4394553 \ sha256 7113e09dc6b4986f54633506132b0f0d6a4621cc3bcbffd53c7e8e10caf478cf \ size 223717 \ github.com/davecgh/go-spew \ lock v1.1.0 \ rmd160 0303eae19a01f38fe314921fd965e4d09b9ef3ad \ sha256 810a597004388d68bb92d8aa612375419ba1080dd5fc2c66dd41b58f0ba4442c \ size 42348 \ github.com/aperturerobotics/jacobsa-crypto \ lock v1.1.0 \ rmd160 00d1922ba828943d42f05b0f796863d1ddf68e2b \ sha256 35ea86d147e1d3909ee96c8f9997038e714fdf8dfd55b8191c9d623dd747c027 \ size 3655579 # Build date should not be set to a variable value as this would prevent reproducible builds. # Not setting it results in defaulting to '0000-00-00' when using the --version flag. set builddate "build_date_not_set" set ldflags "-X \"main.GitVersion=${version}\" -X \"main.GitVersionFuse=${gitversionfuse}\" -X \"main.BuildDate=${builddate}\"" build.env-append CGO_ENABLED=0 build.args-append -ldflags="${ldflags}" \ -tags without_openssl post-build { set envargs [lmap e ${build.env} {shellescape $e}] system -W ${worksrcpath}/${name}-xray "env [join $envargs] ${build.cmd} [join ${build.args}]" } destroot { xinstall -m 0755 ${worksrcpath}/${name} ${destroot}${prefix}/bin/ xinstall -m 0755 ${worksrcpath}/${name}-xray/${name}-xray ${destroot}${prefix}/bin/ xinstall -m 0644 ${worksrcpath}/Documentation/gocryptfs.1 ${destroot}${prefix}/share/man/man1 xinstall -m 0644 ${worksrcpath}/Documentation/gocryptfs-xray.1 ${destroot}${prefix}/share/man/man1 } # According to [1] there is no benefit to build gocryptfs with openssl on M1 Macs. # According to [2] on most modern CPUs openssl provides no speed benefits. I confirmed this by tests on # my Intel i7 Macbook Pro 2019. Therefore reducing the dependencies and defaulting to build it without openssl. # [1]: https://github.com/rfjakob/gocryptfs/issues/556#issuecomment-848185514 # [2]: https://github.com/rfjakob/gocryptfs/wiki/CPU-Benchmarks variant openssl description {Build with openssl support} { PortGroup openssl 1.0 build.env-append \ PKG_CONFIG_PATH=[openssl::pkgconfig_dir] build.env-replace \ CGO_ENABLED=0 CGO_ENABLED=1 build.args-delete \ -tags without_openssl } variant doc description {Build man pages} { depends_build-append port:pandoc post-build { system -W ${worksrcpath}/Documentation "sh MANPAGE-render.bash" } } variant fs_link description "Link ${name} to a .fs bundle in /Library/Filesystems" { post-destroot { set dir /Library/Filesystems/${name}.fs/Contents/Resources xinstall -d ${destroot}${dir} ln -s ${prefix}/bin/${name} ${destroot}${dir}/mount_${name} } destroot.violate_mtree \ yes notes-append " With +fs_link, you may use \'mount -t ${name}\' and use ${name} in /etc/fstab. " } default_variants +doc # Exclude pre-release versions. github.livecheck.regex \ {([0-9.]+)}