Comments (4)
Another problem with the current behavior is that if the box already exists and is built again, the version is incremented automatically to the next integer.
For example, I have built a Catalina box, which creates ~/.vagrant.d/boxes/macinbox/10.15.6
as expected.
But if I then build a newer version of a Catalina box (e.g., because I want to change some build-time default setting, such as --no-gui
), then the new box is created under ~/.vagrant.d/boxes/macinbox/11
.
This is not only confusing, but creates a potential conflict when we anticipate that to indicate Big Sur.
A workaround is to (re)move the box directory, or to set a custom $VAGRANT_HOME
.
But ideally, it should be possible to specify a box version independently of the macOS version, as the issue description already states.
from macinbox.
The current behavior is to automatically use the OS version (e.g. 10.15.6
), but if box with that version already exists then the first number is incremented (e.g. to 11
, then 12
, and 13
) until there is no conflict.
I hear a couple of ideas:
- Change the default to be
1.0.0
instead of the OS version - Allow the version to be set via a command-line tool
But what do people want to happen when there is a conflict? Should the box-creation fail? Should the number be incremented? Should a suffix be added, e.g. 10.15.6-2
(I'm not sure that's a valid Vagrant box version, though)?
from macinbox.
It definitely shouldn't overwrite anything and it can be pretty confusing if the version is automatically incremented. So I would say it should fail if the version already exists.
from macinbox.
options.rb:
DEFAULT_OPTION_VALUES = {
:box_format => "vmware_desktop",
:box_version => "1.0.0",
:box_name => "macinbox",
[...]
o.separator ''
o.on( '--box-format FORMAT', 'Format of the box (default: vmware_desktop)') { |v| @options[:box_format] = v }
o.on( '--box-version xx.yy.zz', 'Version string for the box') { |v| @options[:box_version] = v }
actions/install_box.rb:
def initialize(opts)
@input_box = opts[:box_path] or raise ArgumentError.new(":box_path not specified")
[...]
@box_version = opts[:box_version].to_s rescue nil
from macinbox.
Related Issues (20)
- VMware Tools not installed properly in Catalina box HOT 10
- The link to the Catalina installer said that it didn't exist in the App Store. HOT 1
- Virtualbox 6.1.3 fails to boot Catalina 10.15.2 HOT 14
- 'invalid byte sequence in US-ASCII' HOT 5
- Box created with Parallels Desktop 15.1.2 fails to boot HOT 2
- ENOENT errors when creating files HOT 9
- Catalina 10.15.4 issue - machine fails to boot with startup error HOT 2
- Software installed with user-script isn't available after boot HOT 5
- /vagrant doesn't exist, read-only? HOT 7
- Allow to specify VRAM amount HOT 2
- the vm(format .pvm) created using macinbox boot more slowly than created using parallels HOT 2
- Any way to get sound working in VirtualBox VM? HOT 2
- virtualbox: Mojave box does not boot on 2020 Macbook HOT 6
- Name VHD/VDMK files based on name of box HOT 2
- Compatibility with Big Sur HOT 13
- Catalina installer download: Update not found
- Catalina: /usr/sbin/diskutil failed with non-zero exit code: 1 HOT 3
- Install Xcode HOT 1
- Shrinking the virtual disk
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from macinbox.