# -*- 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.5.4 v revision 1 categories fuse maintainers {i0ntempest @i0ntempest} openmaintainer license MIT description Encrypted overlay filesystem written in Go long_description {*}${description} homepage https://nuetzlich.net/gocryptfs/ checksums ${distname}${extract.suffix} \ rmd160 2a0ba82fb109678bbaa82cc158f23b9ccd73f539 \ sha256 bbdfb574ad08faed19b724022bc167b00236967c742b23c25f95f8c31837342c \ size 1383575 set gitversionfuse "v2.5.0" 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.6.2 \ rmd160 2e73489ef5df0c80857f2e854f212400c63a7da2 \ sha256 61d9765f556a9242bf6c7574cc1191555b1e15fbabb433e329939db4be2b5309 \ size 59483 \ github.com/kylelemons/godebug \ lock d65d576e9348 \ rmd160 929cd615eff16a0c5ba2145b809b10016587a387 \ sha256 9cbb2db613bd3a62e2e3f39776c690fb0d2c320d2aa5391868ad16d2de28c10c \ size 14796 \ 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 a8fbef71692c8d95a14ade1592b3d618615f279c \ sha256 ab934cda6d2c4413857a285e4b00bcb69bbcee6a9d458bc2e5763d14e0fc770a \ size 198796 \ github.com/davecgh/go-spew \ lock v1.1.0 \ rmd160 0303eae19a01f38fe314921fd965e4d09b9ef3ad \ sha256 810a597004388d68bb92d8aa612375419ba1080dd5fc2c66dd41b58f0ba4442c \ size 42348 \ github.com/aperturerobotics/jacobsa-crypto \ lock v1.0.2 \ rmd160 b63c554b9cc30fae17a120fcb145d453893f1c8d \ sha256 64203a607c71eb2fe8751a4ecbd6521c01a7b2f0c00bee27f5fd8d01408d8b3d \ size 3656426 # 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.]+)}