Page 1 of 1

Cygwin Portable

Posted: Sat Jul 12, 2008 7:22 am
by saber
Cygwin Portable is a Linux-like environment for Windows packaged as a portable app. Portable means that you can run Cygwin from portable devices like usb flash pen drives / usb sticks and use it on any computer.

Download: http://downloads.sourceforge.net/cygwin ... ble-0.2.7z

Site: http://sourceforge.net/projects/cygwinportable/

Release note: http://sourceforge.net/forum/forum.php?forum_id=845486

Re: Cygwin Portable 0.2

Posted: Sat Jul 12, 2008 8:15 am
by m^(2)
saber wrote:Cygwin Portable is a Linux-like environment for Windows packaged as a portable app. Portable means that you can run Cygwin from portable devices like usb flash pen drives / usb sticks and use it on any computer.

Download: http://downloads.sourceforge.net/cygwin ... ble-0.2.7z

Site: http://sourceforge.net/projects/cygwinportable/

Release note: http://sourceforge.net/forum/forum.php?forum_id=845486
Cygwin is portable by default. This is just usual cygwin with some configuration tweaks and launcher, which is needed by PortableApps.com Menu.

Re: Cygwin Portable 0.2

Posted: Sat Oct 14, 2017 7:36 pm
by webfork
Old thread update: a portable (using PortableApps format) Cygwin is available by a group that evidently does a fair number of portable programs.

https://github.com/CybeSystems/CygwinPortable

Seems to be getting regular updates, so that's nice.

Re: Cygwin Portable

Posted: Mon Feb 17, 2020 5:57 pm
by webfork
Another Cygwin portable is up on SourceForge: https://sourceforge.net/projects/cygwin-portable/ | PA thread: https://portableapps.com/node/59880 (untested). The goal of this program (like the one mentioned above) is to get it functioning within the PA launcher.

Re: Cygwin Portable

Posted: Wed Jul 22, 2020 9:34 pm
by webfork
I started digging into this toolset recently, so adding some official Cygwin info:

Cygwin Installation
https://cygwin.com/install.html

Cygwin User's Guide
https://cygwin.com/cygwin-ug-net.html

---

Various portable versions I've found that appear to be at least somewhat active ...

cygwin-portable-installer: Windows batch file to perform unattended installations of a portable Cygwin environment.
https://github.com/vegardit/cygwin-portable-installer

CygwinPortable
https://github.com/MachinaCore/CygwinPortable

Portable Cygwin
https://sourceforge.net/projects/cygwin-portable/

PA discussion: https://portableapps.com/node/54084 (not a very CLI-focused site, so not much here)

---

Note: for some reason I can't seem to access vevy's official entry, so I'm not sure which one he's using: viewtopic.php?p=95545#p95545

Re: MinGW Portable

Posted: Thu Jul 23, 2020 4:36 am
by Midas
Assuming the risk of going off-topic, I'd like to point out MinGW (http://www.mingw.org/) as a Cygwin alternative...

Compile something in Cygwin and you are compiling it for Cygwin. Compile something in MinGW and you are compiling it for Windows.
@ https://stackoverflow.com/questions/771756/


There's a (totally untested!) portable implementation of MinGW at https://github.com/jonasstrandstedt/MinGW.

Re: Cygwin Portable

Posted: Thu Jul 23, 2020 3:12 pm
by vevy
@webfork
I am using the official ("non-portable") one. I think you need to be logged in both using your username and the CLI DB credentials.

I found (although my experience is limited) that Cygwin can be made fairly portable. I have in the works a topic about how to do download and extract the needed files for the tools you need. Mostly just .exe and .dll files.

@Midas
AS far as my understanding goes, you want the following (non-exhaustive) if you want to port a Unix tool to Windows:
  • Port the tool itself.
  • Take care of any dependencies.
  • Take care of what the tool expects when it comes to CLI interpretation (e.g. shells conventions like forward and backward slashes, what handles wildcard expansion, acceptable vs reserved characters like a colon, etc)
As for external dependencies (read: third-party libraries rather than other executables), you have the option to bundle them with your port either statically within the main executable or dynamically. In either case, you will find that you have the added work of updating them too. For example, see the notes within the CLI DB entries about vulnerable/"ignored" tools due to vulnerable SSL libraries.

Also, if you are packaging tools individually (like GnuWin32 or ezwinports), you might have to include a copy of the libraries with each tool that depends on them, which leads to redundancy.

For something like Cygwin, you, as a maintainer, need to link all the different tools to a single "core" .dll, simplifying matters but requiring the end user to install/extract these core files before they can download and use a particular tool.

If you only need an occasional CLI tool, a self-contained port compiled under MinGW may be simpler and easier to manage as a user. If your use case is any deeper, a unified "environment" like Cygwin will be more manageable. It turns out that you only need a bunch of dlls to run most of the main Linux tools.

TL;DR
: Cygwin is more of a hassle for an end user (as opposed to a developer/porter) who wants a one-off tool, but actually more organized if you use many Unix ports. Also see MSYS2 (which is like Cygwin on the surface, but built under MinGW)!

Re: Cygwin Portable

Posted: Wed May 03, 2023 9:58 am
by juverax