Ticket #30245 (closed defect: invalid)
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
Change History
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 formatIf 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!


Port install log