Portable software as a general rule is written in poor languages. AutoHotkey, AutoIt and NSIS are the three main languages in use, because they allow people to moderately easily produce not enormous binaries and have a surprisingly low initial learning curve (though later on you hit plenty of walls with them; none of them is suited as a general purpose programming language).
I speak this as the developer of the PortableApps.com Launcher, which I did in NSIS as the launchers already in use were NSIS, and as size matters a lot (that killed things like Python outright, though using the RPython parts of PyPy with the garbage collector ripped out would have worked---I checked it out and was able to successfully compile <100KB executables; D was disqualified for some reason I do not recall, Go for its heavy runtime even after ripping out the Unicode tables, &c.), and as I was not at all comfortable in C or C++ at the time.
I rather suspect that a large part of the reason for the apparently poor language choice is that the people that develop and use such things are strongly predominantly young people who are having to rove from computer to computer; as they get older, they tend to end up with a machine of their own and so no longer need portable apps. I don't any more, for example (and I don't use Windows any more either). The developers of these things are in consequence similarly young and have not yet learned good sense in programming (I include myself in that category, though I reckon the PortableApps.com Launcher to contain best-of-class engineer in the portable software space---five years later, at age 22, I am surprisingly unashamed of it, though now I would write it in Rust; I should try that one of these years).
Did they find a developer to replace the last guy? He wanted out and needed someone to pick up the slack. I thought it is worth noting here. That was a while ago. So is the project still alive and kicking?
I have no personal knowledge of this project at all, but that post is from over a year ago and the latest commits are from 2 months ago... which would make me think yes, but nothing under src has been touched in 3 years... so... I guess I still have no idea.
VirtualBox needs several kernel drivers installed and needs to start several services: if the drivers and services are not already installed you’ll need administrator rights to run Portable-VirtualBox.
So that's absolutely useless. If you've got admin rights, you can install whatever you want. If you don't, well...
Was just wondering the same thing. Do you know of any other portable solution that would allow me to have a graphical shell (Linux distribution or Windows) and just basically have emulator + vm on a flash drive ready to be launched anywhere, without admin rights?
It would be theoretically possible to do it all in user-land (needing no direct kernel access), but for an arbitrary OS to work pretty much absolutely everything including the CPU would have to be emulated so it would be very very slow compared to bare metal. Think DOSBox and similar.
With changes to the guest OS it gets better: more can be done relatively native. Have a look at "user mode linux" for a good example of that There were attempts to make this work under Windows but I think those projects died pretty quickly as people just used kernel mode vitualisers instead for efficiency so there wasn't massive interest (cooperative Linux is somewhere between: it works in a similar manner to UML but requires admin access).
There is another Portable VirtualBox distribution[1] that normally does not install any service or driver. Only if you want to use a "Bridge Network" you need to install the drivers. I usually work with "NAT" option and in that case you don't need to install anything.
Would be interesting if one could package a (Linux) virtual machine into executable that could run on Windows without installing any drivers. Something like CoLinux but maybe more limited.
I like having a multipartitioned USB 3.0 device even when going back & forth between Windows & various Linuxes.
It's been live USB for me for over a decade now, and the hardware for fast boot times has finally arrived with
USB 3.0.
It only takes less than a minute to reboot to a different OS using a Bootux Multibootable USB stick.
PC does not even have to contain a HDD.
I've used VM's but there ain't nothing like the real thing baby ;-)
Native BIOS booting to active partitions is so fundamental, and now so potentially disruptive that it had to be replaced by UEFI if nothing else just to put some hurdles in the way.
That would actually be very easy to create. Most Linux installers are happy to install to a USB stuck and most PCs with happily boot from one. I have a working Debian setup install on a large stick, created form the standard install procedure, that I use for diagnostics - adding vbox (or KVM or Xen or ...) to that would be the same as adding it to any other Linux setup and you could then add a set of VMs that can be selected to start automatically on boot (rigging the boot process as needed to give you the choice at the appropriate point). For much better performance at a price, get a good mSATA SSD and USB3 enclosure instead of using a bog-standard USB stick.
Something like http://blog.laptopmag.com/usb-stick-contains-dual-core-compu... would be more realistic. With USB3, you could even avoid hdmi port and turn your computer into a dumb "keyboard, screen, storage, network". Is it possible to have full access to a USB peripheral without administrator rights ?
I've been using Portable VirtualBox for the last few years. It works wonderfully. It's really convenient to carry around on a USB stick. As long as you're using basic NAT on the machines they work perfect. I've not been able to run the machines 'headless' though. Otherwise, if you're like me, and carry your entire software suite on your USB, this is perfect.
24 comments
[ 3.1 ms ] story [ 53.3 ms ] threadI speak this as the developer of the PortableApps.com Launcher, which I did in NSIS as the launchers already in use were NSIS, and as size matters a lot (that killed things like Python outright, though using the RPython parts of PyPy with the garbage collector ripped out would have worked---I checked it out and was able to successfully compile <100KB executables; D was disqualified for some reason I do not recall, Go for its heavy runtime even after ripping out the Unicode tables, &c.), and as I was not at all comfortable in C or C++ at the time.
I rather suspect that a large part of the reason for the apparently poor language choice is that the people that develop and use such things are strongly predominantly young people who are having to rove from computer to computer; as they get older, they tend to end up with a machine of their own and so no longer need portable apps. I don't any more, for example (and I don't use Windows any more either). The developers of these things are in consequence similarly young and have not yet learned good sense in programming (I include myself in that category, though I reckon the PortableApps.com Launcher to contain best-of-class engineer in the portable software space---five years later, at age 22, I am surprisingly unashamed of it, though now I would write it in Rust; I should try that one of these years).
http://www.vbox.me/blog/portable-virtualbox-needs-a-new-main...
So that's absolutely useless. If you've got admin rights, you can install whatever you want. If you don't, well...
With changes to the guest OS it gets better: more can be done relatively native. Have a look at "user mode linux" for a good example of that There were attempts to make this work under Windows but I think those projects died pretty quickly as people just used kernel mode vitualisers instead for efficiency so there wasn't massive interest (cooperative Linux is somewhere between: it works in a similar manner to UML but requires admin access).
[1] http://portableappz.blogspot.com/2012/08/virtualbox-4120-801...
It's been live USB for me for over a decade now, and the hardware for fast boot times has finally arrived with USB 3.0.
It only takes less than a minute to reboot to a different OS using a Bootux Multibootable USB stick.
PC does not even have to contain a HDD.
I've used VM's but there ain't nothing like the real thing baby ;-)
Native BIOS booting to active partitions is so fundamental, and now so potentially disruptive that it had to be replaced by UEFI if nothing else just to put some hurdles in the way.