lite version without vbox
PoC for Lite version
- we create two files now
- I suggest having separate names e.g. "Toolbox2docker" and "Toolbox2docker-lite" (this is reflected in the installed Apps on windows)
- We have to change the AppId to a new Random Guid (as Toolbox2docker-lite creates a new directory and this can cause issues when - stupid - users installs the full on an existing lite version and the way around)
- For security reasons - you as maintainer - please create a random guid (in the Docker.windows file) and don't use "my magic string from a random dude" of the internet is not trustworthy
AppId={{FC4417F0-D7F3-48DB-BCE1-F5ED5BAFFD91}looked somehow odd - as it has only one closing bracket - but it's correct https://stackoverflow.com/posts/61174457/revisions (please double check - I am no expert).
Ping me if I need to add changes.
Things that need looking into: windows/Toolbox.iss -> virtualbox in arrays still deciding whether to use seperate make targets
Things that need looking into: windows/Toolbox.iss -> virtualbox in arrays still deciding whether to use seperate make targets
We should (maybe) consider doing that on mac, too.
I am not 100% sure. The days o x86_64 macs might be over. So even touchting that might be not worth the time.
I don't think that many developers have a need to run Toolbox2Docker on macOS.
Things that need looking into: windows/Toolbox.iss -> virtualbox in arrays still deciding whether to use seperate make targets
We should (maybe) consider doing that on mac, too.
I am not 100% sure. The days o x86_64 macs might be over. So even touchting that might be not worth the time.
I don't think that many developers have a need to run Toolbox2Docker on macOS.
He, He , I use macOS. Haven't used windows for development since 2021.
Docker CLI is compiled for macOS arm64 and I can build docker-machine for macOS arm64 as well. That just leaves creating an arm64 port of boot2docker. As I don't have a modern arm based mac just lot of Intel macs this hasn't been a priority.
I use UTM on my M1 mac mini. It's super simple to setup a arm64 Linux.
You just have todo a:
- install Debian/Ubuntu in UTM
wget https://download.docker.com/mac/static/stable/aarch64/docker-20.10.24.tgz -o docker.tgz && tar xf docker.tgzexport DOCKER_HOST=ssh://<ip-of-linux-in-utm>docker run hello-world
I have no idea how vbox (arm64 - if such a thing exists) compares to UTM.
Correct me if I am wrong - for this PR I doubt that we have to care about a macOS Lite version.
I use UTM on my M1 mac mini. It's super simple to setup a arm64 Linux.
You just have todo a:
- install Debian/Ubuntu in UTM
wget https://download.docker.com/mac/static/stable/aarch64/docker-20.10.24.tgz -o docker.tgz && tar xf docker.tgzexport DOCKER_HOST=ssh://<ip-of-linux-in-utm>docker run hello-worldI have no idea how vbox (arm64 - if such a thing exists) compares to UTM.
No arm for Virtualbox.
Correct me if I am wrong - for this PR I doubt that we have to care about a macOS Lite version.
No macOS for this PR.
Is there anything missing?
Do I have todo anything to make progress here?
Is there anything missing?
There are virtualbox references all over the Installer in Toolbox.iss in the windows directory. This needs to be looked at when I have time.
Do I have todo anything to make progress here?
Ensure that the installer looks and functions correctly if you're able to.
Is there anything missing?
There are virtualbox references all over the Installer in Toolbox.iss in the windows directory. This needs to be looked at when I have time.
Yes but we simply disable them via sed. We don't display them in the UI and we don't package anything in the setup.
Do I have todo anything to make progress here?
Ensure that the installer looks and functions correctly if you're able to.
The functions are there - but we never call them.
- We can make Toolbox.iss and ToolboxLite.iss. I highly question the value of splitting the files.
- We can also bring in (yet another tool) to generate Toolbox.iss and ToolboxLite.iss - I also question the value of this approach.
- We might use partial files and use cat to join Toolbox.iss from a ToolboxLite.iss + ToolboxVMpartials.iss - I also question the value of this approach :)
This is also ugly - because it's doesn't look like a magic string - it is a magic string.
RUN if [ "$VARIANT" = "-lite" ]; then \
sed -i 's|^#define MyAppName "Toolbox2docker"|#define MyAppName "Toolbox2docker'$VARIANT'"|g' Toolbox.iss; \
sed -i 's|^AppId=.*$|AppId={{5DFD8320-1E10-11EF-9E35-0800200C9A66}|g' Toolbox.iss; \
sed -i 's|^Name: vbox_ndis5;|// Name: vbox_ndis5;|g' Toolbox.iss; \
sed -i 's|^Name: "VirtualBox";|// Name: "VirtualBox";|g' Toolbox.iss; \
sed -i 's|^Source: "{#virtualBoxMsi}"|// Source: "{#virtualBoxMsi}"|g' Toolbox.iss; \
sed -i 's|Wizardform\.ComponentsList\.|// Wizardform\.ComponentsList\.|g' Toolbox.iss; \
fi && \
wine ../innosetup/ISCC.exe Toolbox.iss /DMyAppVersion=$INSTALLER_VERSION /DMixpanelToken=$MIXPANEL_TOKEN
Any progress here?
Any progress here?
Any updates here?