Subject: Re: cygwin on a disk?
From: Sam Edge <[email-masked]>
To: [email-masked]
Date: Wed, 23 Apr 2003 14:44:42 +0100

Kevin Soandso <[email-masked]> wrote in
<[email-masked]>
in gmane.os.cygwin on Wed, 23 Apr 2003 08:26:03 -0400:

> I use cygwin at home and work all the time and I love it. Many thanks to 
> all the developers and contributors.
> 
> I have a 64MB removable USB drive, about the size of a pen. I would like 
> to minimally install cygwin on this drive and and take it from computer 
> to computer. The idea is to simply plug the drive into the USB port of 
> any Windows machine and have my personal cygwin environment there to 
> use. I won't have the same Windows account on these machines (if at 
> all), but I'd like to use the same cygwin login and home dir.
> 
> Is there something about the way cygwin works that will prevent this?
> Has anyone made "cgywin on a disk" ?
> How could I do this, what do I need?

There is an issue here, other than reducing the x:\cygwin tree to fit
onto the disc. Mine's rather larger than 64M. ;-)

The mount table for Cygwin lives in the registry. You'd need to
install a ".reg" file on each new machine before you could start with
at least the following in it.

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2]
"cygdrive prefix"="/cygdrive"
"cygdrive flags"=dword:00000022

[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2\/]
"native"="C:\\cygwin"
"flags"=dword:0000000a

[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts
v2\/usr/bin]
"native"="C:\\cygwin/bin"
"flags"=dword:0000000a

[HKEY_LOCAL_MACHINE\SOFTWARE\Cygnus Solutions\Cygwin\mounts
v2\/usr/lib]
"native"="C:\\cygwin/lib"
"flags"=dword:0000000a

(You could use HKEY_CURRENT_USER instead, I think, if you don't want
to affect every user on the machine.)

You'd have to modify the file before installing it to replace all the
"C:" bits with the actual drive letter of the USB drive on the machine
you're using. This is likely to be a different letter on different
machines.

You'd also have to modify your cygwin.bat file or whatever other
mechanism you use to add the correct x:\cygwin\bin to the system PATH.

If you're clever enough, you could automate this by having a
program/script (but not a Cygwin program or a Cygwin shell script)
detect the drive letter it's being run from and set the registry and
PATH values appropriately.

-- 
Sam Edge

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/