-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] update freebsd vagrant box to lastest release (11.1) #4803
Conversation
folder sharing is unreliable, e.g. no nfs server on host, sshfs plugin not installed or rsync binary missing. for building crystal inside vagrant sharing the folder is just overkill, so just clone from upstream and disable folder sharing.
freebsd comes with /bin/sh as well, so use this to suppress 'export: command not found' warnings. removed comment about boehm-gc as there is boehm-gc-threaded package we are using.
c.vm.network "private_network", type: "dhcp" | ||
c.vm.synced_folder ".", "/vagrant", type: "nfs" | ||
c.vm.synced_folder ".", "/vagrant", disabled: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The vagrant box isn't used just for building, it can be used for debugging too. If I'm debugging I absolutely want a shared folder so that I can edit the files in the vm using the editor on the host.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok, i'll revert that change.
thanks
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually the original version only linked the git repositories. I think that's wrong too as the host still doesn't have access to the files on the client directly. This was likely done to stop .build
from being shared. Perhaps allowing $(O)
in the makefile to be modified and setting env automatically to place the VM .build
outside the shared directory is the best idea.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the upstream Vagrantfile clones /vagrant (which is the shared folder) to /home/vagrant/crystal. i'm on nixos here and getting nfs folder sharing to work is a PITA. would it be ok to introduce an environment variable that disables folder sharing?
so i would set VAGRANT_DISABLE_SHARED to true and the box comes up cleanly in my case. the default doesn't change.
i will also look into making ${O} configurable, but will open a second issue for this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tosmi surely all you need is the nfsd
binary on your path?
@bcardiff can we close this PR? |
This PR updates the Vagrantfile for building crystal with FreeBSD 11.1 and fixes #4802. The following changes are implement