Opened 3 days ago

Last modified 26 hours ago

#71041 assigned defect

go: installs .DS_Store files when /opt/local is a symlink — at Version 1

Reported by: LiamMoy (Liam Moy) Owned by: ci42
Priority: Normal Milestone:
Component: ports Version: 2.10.2
Keywords: Cc: herbygillot (Herby Gillot)
Port: go

Description (last modified by ryandesign (Ryan Carsten Schmidt))

"go violates the layout of the ports-filesystems"

  • warning when staging, and error when activating
  • port go-1.23.2_0.darwin_23.x86_64
  • in MacPorts 2.10.2
  • when /opt/local is a symlink to another location (in this case /Volumes/usb1TBssd/opt/local)

# Console output as follows:

--->  Fetching archive for go
--->  Attempting to fetch go-1.23.2_0.darwin_23.x86_64.tbz2 from https://packages.macports.org/go
--->  Attempting to fetch go-1.23.2_0.darwin_23.x86_64.tbz2 from https://pek.cn.packages.macports.org/macports/packages/go
--->  Attempting to fetch go-1.23.2_0.darwin_23.x86_64.tbz2 from https://kmq.jp.packages.macports.org/go
--->  Fetching distfiles for go
--->  Attempting to fetch go1.23.2.src.tar.gz from https://storage.googleapis.com/golang/
--->  Attempting to fetch go1.23.2.darwin-amd64.tar.gz from https://storage.googleapis.com/golang/
--->  Verifying checksums for go
--->  Extracting go
--->  Configuring go
--->  Building go
--->  Staging go into destroot
Warning: violation by /.DS_Store
Warning: violation by /Volumes/.DS_Store
Warning: violation by /Volumes/usb1TBssd/.DS_Store
Warning: violation by /Volumes/usb1TBssd/opt/.DS_Store
Warning: violation by /Volumes/usb1TBssd/opt/local/.DS_Store
Warning: go violates the layout of the ports-filesystems!
Warning: Please fix or indicate this misbehavior (if it is intended), it will be an error in future releases!
--->  Installing go @1.23.2_0
--->  Cleaning go
[...]
--->  Dependencies to be installed: go
--->  Activating go @1.23.2_0
Error: Failed to activate go: Image error: /Volumes/usb1TBssd/.DS_Store already exists and does not belong to a registered port.  Unable to activate port go. Use 'port -f activate go' to force the activation.
    while executing
"throw registry::image-error $msg"
    ("foreach" body line 77)
    invoked from within
"foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_total_steps
                se..."
    invoked from within
"registry::write {
            foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_..."
Error: See /Volumes/usb1TBssd/opt/local/var/macports/logs/_Volumes_usb1TBssd_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_lang_go/go/main.log for details.

Change History (3)

comment:1 Changed 3 days ago by ryandesign (Ryan Carsten Schmidt)

Cc: herbygillot added
Description: modified (diff)
Owner: set to ci42
Status: newassigned
Summary: "Warning: go violates the layout of the ports-filesystems!"go: installs .DS_Store files when /opt/local is a symlink

Do you see this with other ports or only with go?

Probably no port should be installing .DS_Store files but this might be happening because of your /opt/local symlink (which is not a modification we test or recommend). According to this search there are 23 ports that install .DS_Store files but go isn't one of them.

Changed 3 days ago by LiamMoy (Liam Moy)

comparison-of-tbz2-directory-structure-where-opt-local-is-symlinked_go-vs-emacs-vs-maven

Changed 3 days ago by LiamMoy (Liam Moy)

Attachment: main.log added
Note: See TracTickets for help on using tickets.