New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #30245 (closed defect: invalid)

Opened 4 years ago

Last modified 4 years ago

Macports incorrectly copies gzip file from local filesystem

Reported by: lgillentine@… Owned by: macports-tickets@…
Priority: Low Milestone:
Component: base Version: 1.9.2
Keywords: Cc: ryandesign@…
Port:

Description

A portfile I created to install Berkely DB XML (dbxml) has revealed an interesting issue. It seems that when the {master_sites} directive in a Portfile points to a directory in the local filesystem, the gzipped source is copied over incorrectly.

Here is my /opt/local/var/macports/distfiles/dbxml directory, where the zipped source gets copied during the extract phase:

lee@l:/opt/local/var/macports/distfiles/dbxml> ls -la
total 8
drwxr-xr-x   3 root  admin   102 Jul 19 16:15 .
drwxr-xr-x  90 root  admin  3060 Jul 19 17:39 ..
-rw-r--r--   1 root  admin   820 Jul 19 16:15 dbxml-2.5.16.tar.gz

And here is a directory with a copy of the original .tar.gz:

lee@l:~/Desktop/t> ls -la
total 103168
drwxr-xr-x   3 lee  staff       102 Jul 19 17:58 .
drwx------+ 84 lee  staff      2856 Jul 19 17:17 ..
-rw-rw-rw-@  1 lee  staff  52819154 Dec 15  2010 dbxml-2.5.16.tar.gz

The original gzipped source is much larger than the gzipped source that makes its way into opt/local

However

The only reason I discovered this is because I wrote a Portfile that only works with my local filesystem, so this is an edge case in the extreme.

Attachments

main.log (3.3 KB) - added by lgillentine@… 4 years ago.
Port install log
Portfile (1.6 KB) - added by lgillentine@… 4 years ago.

Change History

Changed 4 years ago by lgillentine@…

Port install log

Changed 4 years ago by lgillentine@…

comment:1 Changed 4 years ago by lgillentine@…

  • Cc lgillentine@… added

Cc Me!

comment:2 Changed 4 years ago by jmr@…

  • Keywords gzip, port extract phase removed
  • Cc lgillentine@… removed

Is there any way to get the distfile for this without creating an account with Oracle?

comment:3 Changed 4 years ago by pixilla@…

This seems to work for master_sites
http://download-east.oracle.com/berkeley-db/

You can also put the file into distfiles manually and port will find it and not try to fetch it from elsewhere.

rm /opt/local/var/macports/distfiles/dbxml/dbxml-2.5.16.tar.gz
cp ~/Desktop/t/dbxml-2.5.16.tar.gz /opt/local/var/macports/distfiles/dbxml/

comment:4 Changed 4 years ago by jmr@…

I can't reproduce the problem. I changed the master_sites to point to my desktop, put the distfile there, corrected the checksums, and successfully ran port build. I am running 2.0 so I guess it's possible 1.9.2 is broken.

comment:5 follow-up: ↓ 6 Changed 4 years ago by ryandesign@…

  • Cc ryandesign@… added

The log says:

:info:extract gzip: /opt/local/var/macports/distfiles/dbxml/dbxml-2.5.16.tar.gz: not in gzip format

If not in gzip format, what format is the file in? What are its contents? I assume the bug does not exist as described; I assume you instead downloaded an HTML file, computed its checksums, and put them in the Portfile, which of course doesn't work.

comment:6 in reply to: ↑ 5 Changed 4 years ago by lgillentine@…

Replying to ryandesign@…:

The log says:

:info:extract gzip: /opt/local/var/macports/distfiles/dbxml/dbxml-2.5.16.tar.gz: not in gzip format

If not in gzip format, what format is the file in? What are its contents? I assume the bug does not exist as described; I assume you instead downloaded an HTML file, computed its checksums, and put them in the Portfile, which of course doesn't work.

You are totally correct, as running strings on the partial file in the distfiles/ gives me an html file. How I downloaded an html file and called it dbxml-2.5.16 -- I have no idea.. But thanks to pixilla's download link, I now have a completely working Portfile. Is there a way to commit this working Portfile back to the main port list? I based this port file off another uncommited portfile: #24429

Thanks!

comment:7 Changed 4 years ago by jmr@…

  • Status changed from new to closed
  • Resolution set to invalid

OK. You can attach your portfile to the other ticket.

Note: See TracTickets for help on using tickets.