15.6 Application of Jails & /usr/ports/distfiles

I have to add this tar into my distfiles inside a jail. When I do it on the base OS I have no problems and the port builds.

When I put the file where I think it should go the port build is broken. I get this message
Found saved configuration for diablo-jdk-
just before it tells me to down load the file and put it in /usr/ports/distfiles.

I cannot put it in disfiles from my jail and from outside the jail I can not seem to find the right place.

My jails are setup with this example in the Handbook.
It should go into /home/j/mroot/usr/ports/distfiles if you have a ports tree there too.
In that dir I have these files
Makefile distinfo files pkg-descr pkg-plist

I put the file in there again and tried to install it from my jail. The same stop happened. I then went back to my Base and looked into that directory again and I got this.
i386# cd /home/j/mroot/usr/ports/distfiles
/home/j/mroot/usr/ports/distfiles: Not a directory.
Thats weird because I had no problems copying the file into it or entering the directory before I tried installing it from my jail.

I'm rebooting and trying again.
When you extracted jails by handbook, the /usr/ports/distfiles must be empty (or not exist)
You may populate new /usr/ports tree for each jail:
jexec <jid> csh
portsnap fetch extract
where is jid - Jail ID in "jls" output strings
and then mount through nullfs /usr/ports/distfiles to jail:

mkdir -p /home/j/mroot/usr/ports/distfiles
mount_nullfs /usr/ports/distfiles /home/j/mroot/usr/ports/distfiles

PS: for compile java inside jail, devfs must be present and accessible in jail
Thanks it now installs fine.

However I have another problem because I wanted this for a jail. I can not find the right combination to put these file a /usr/ports/disfiles and get my jails to know its there.

Here another thread:

I tried what DocSlice suggested but those commands didn't work. I'm looking into more before I report there. I didn't want to swamp you with the jail too.
No problems doing this:
jexec 5 csh
portsnap fetch extract

i386# jexec 5 csh
forum# portsnap fetch extract


i386# mkdir -p /home/j/mroot/usr/ports/distfiles
mkdir: /home/j/mroot/usr/ports/distfiles: File exists

i386# mount_nullfs /usr/ports/distfiles /home/j/mroot/usr/ports/distfiles
mount_nullfs: /usr/home/j/mroot/usr/ports/distfiles: not a directory

can I remove this /home/j/mroot/usr/ports/distfiles and remake the dir.
paulfrottawa said:
Can I remove this /home/j/mroot/usr/ports/distfiles and remake the dir.
Yes, it's currently a file when it should be a directory. Just remove that distfiles file and mkdir distfiles.
That started the build.
===> Verifying install for /usr/local/libdata/pkgconfig/xi.pc in /usr/ports/x11/libXi
===> Vulnerability check disabled, database not found
mkdir: /usr/ports/distfiles/xorg: Read-only file system
*** Error code 1

I'll see if I can still build ports in the other jails.

No I can not.
===> Vulnerability check disabled, database not found
=> nano-2.0.9.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
=> /usr/ports/distfiles is not writable by you; cannot fetch.
*** Error code 1

It work before.

No big deal however Im just playing with it.

I'm going to remove that dir. again use your previous
mkdir -p /home/j/mroot/usr/ports/distfiles
mount_nullfs /usr/ports/distfiles /home/j/mroot/usr/ports/distfiles

Na same problem
mkdir: /usr/ports/distfiles/xorg: Read-only file system
*** Error code 1
To make things easier I'm going to rebuild my jails and we'll try again if you like. Its better to get these jail applications down.
Turn out to be no problem. Inside the jail i could place the source into.

cd /usr/ports/java/diablo-jdk16 && make install clean


This is a new install maybe I couldn't do this before. It seems like a no brainier.
My doing I suppose but there it is SOLVED.