cygwin.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Thu, 25 Apr 2024 22:33:14 +0300
changeset 2593 f0ab046a080f
parent 2582 113841c80a9a
permissions -rw-r--r--
Installing Android SDK from command line tools.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1334
9bf0d5a1f0cf Include common header with quick links.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1032
diff changeset
     1
.. -*- coding: utf-8; -*-
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     2
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
=========
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
 Cygwin.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
=========
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     6
.. contents::
1905
fba288d59662 Include only local subsections into TOC. This prevent duplication of
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1774
diff changeset
     7
   :local:
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     8
2484
fcb00dfa7e23 Official mirror list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2483
diff changeset
     9
Installation
2488
b044a0017907 Setting CYGWIN via registry.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2485
diff changeset
    10
============
2484
fcb00dfa7e23 Official mirror list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2483
diff changeset
    11
fcb00dfa7e23 Official mirror list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2483
diff changeset
    12
http://cygwin.com/mirrors.html
fcb00dfa7e23 Official mirror list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2483
diff changeset
    13
  Official mirror list.
fcb00dfa7e23 Official mirror list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2483
diff changeset
    14
2582
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    15
Download installed, run it and additionally select:
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    16
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    17
* ``make`` to install my personal configs
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    18
* ``git`` to clone ``apt-cyg``
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    19
* ``wget``, ``libiconv`` are dependencies for ``apt-cyg``
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    20
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    21
Add Cygwin's ``/bin`` to Windows' ``PATH`` so you could lauch ``mintty`` and clone ``apt-cyg`` and
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    22
add it to ``PATH`` too::
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    23
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    24
  cd ~/work/cygwin
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    25
  git clone https://github.com/kou1okada/apt-cyg
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    26
  cp apt-cyg/apt-cyg ~/.local/bin
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    27
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    28
Integrate bash-completion for ``apt-cyg``::
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    29
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    30
  apt-cyg install bash-completion
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    31
  apt-cyg completion-install
113841c80a9a Installation of apt-cyg.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2566
diff changeset
    32
2495
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    33
Important packages:
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    34
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    35
* ``bash-completion`` - for human CLI.
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    36
* ``emacs-w32`` - Cygwin's Emacs with native Windows widgets!
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    37
* ``vim`` - let's have "improved" VI.
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    38
* ``aspell``, ``aspell-en`` - for spell checking inside Emacs.
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    39
* ``curl`` - for HTTP troubleshooting.
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    40
* ``wget`` - for recursive downloading, also required by ``apt-cyg``.
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    41
* VCS packages::
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    42
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    43
    mercurial git git-completion git-svn subversion fossil
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    44
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    45
* ``make`` - my favorite automation tool.
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    46
* ``the_silver_searcher`` - human ``grep``.
a90ed5421848 Important packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2488
diff changeset
    47
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    48
Configuration
2488
b044a0017907 Setting CYGWIN via registry.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2485
diff changeset
    49
=============
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    50
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    51
Run ``setup.exe``. Today you should prefer 64-bit flavor because it sould less BLODA. Add Cygwin
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    52
``/bin`` directory to your ``PATH`` env var::
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    53
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    54
  set PATH=c:\opt\cygwin\bin;%PATH%
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    55
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    56
Cygwin behavior can be altered via ``CYGWIN`` env var::
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    57
2485
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    58
  set CYGWIN=noglob wincmdln
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    59
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    60
* ``noglob`` disable reinterpreting positional arguments native Windows application as if they
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    61
  contain shell wildcards. With ``glob`` running ``ls *`` from ``cmd`` works as if it is run from
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    62
  Unix shell.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    63
2485
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    64
  When I used native Emacs & Cygwin wrapper for ``hg`` default option ``glob`` broke Emacs VC mode
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    65
  because Emacs is using ``{rev}`` as one of the arguments and it was replaced by empty string when
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    66
  ``glob`` is active.
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    67
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    68
  ``noglob`` enshures that there are no any magical replacement.
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    69
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    70
* ``wincmdln`` helps during process invocation troubleshooting. Cygwin maintains own structures for
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    71
  program positional arguments so argument list is invisible to Windows programs like Process
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    72
  Monitor. The option ``wincmdln`` tells Cygwin program to copy internal structure for arguments to
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    73
  Windows managed structure making arguments visible.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    74
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    75
https://cygwin.com/cygwin-ug-net/using-cygwinenv.html
2483
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
    76
  The ``CYGWIN`` environment variable. Available options.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    77
2488
b044a0017907 Setting CYGWIN via registry.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2485
diff changeset
    78
The easiest way to install env var ``CYGWIN`` is via ``.reg`` file::
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    79
2488
b044a0017907 Setting CYGWIN via registry.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2485
diff changeset
    80
  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]
b044a0017907 Setting CYGWIN via registry.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2485
diff changeset
    81
  "CYGWIN"="noglob wincmdln"
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    82
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    83
https://stackoverflow.com/questions/1494658/how-can-i-change-my-cygwin-home-folder-after-installation
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    84
  How can I change my Cygwin home folder after installation?
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    85
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    86
Set ``TMP`` and ``TEMP`` env vars without dangerous symbols in path (without spaces, etc)::
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    87
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    88
  set TMP=c:\tmp
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    89
  set TEMP=c:\tmp
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    90
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    91
Also you need to edit ``/etc/passwd`` to point to correct home path.
2143
e5191a677ee5 Create symlink to home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2107
diff changeset
    92
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    93
For Cygwin 1.7 ``/etc/nsswitch.conf`` settings is used to define user home. By default it is
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    94
``/home/%U`` so it is better to create symlink::
2143
e5191a677ee5 Create symlink to home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2107
diff changeset
    95
e5191a677ee5 Create symlink to home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2107
diff changeset
    96
  $ ln -s /cygdrive/d/home /home/user
e5191a677ee5 Create symlink to home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2107
diff changeset
    97
2164
d92444a3f0ae Example of creating native Windows symlink.
user@DESKTOP-7QQCI59
parents: 2143
diff changeset
    98
Alternatively with native Windows symlink (from build-in ``cmd`` command)::
d92444a3f0ae Example of creating native Windows symlink.
user@DESKTOP-7QQCI59
parents: 2143
diff changeset
    99
d92444a3f0ae Example of creating native Windows symlink.
user@DESKTOP-7QQCI59
parents: 2143
diff changeset
   100
  cmd# mklink /D c:\opt\cygwin\home\user c:\home
d92444a3f0ae Example of creating native Windows symlink.
user@DESKTOP-7QQCI59
parents: 2143
diff changeset
   101
2170
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
   102
List of installed packages (``-c`` - check, ``-d`` - dump only)::
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
   103
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
   104
  $ cygcheck -c -d
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
   105
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
   106
Alternatively look to file content::
2169
8ce9771fae25 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2165
diff changeset
   107
8ce9771fae25 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2165
diff changeset
   108
  /etc/setup/installed.db
8ce9771fae25 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2165
diff changeset
   109
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
   110
In a past I work with particular code point::
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
   111
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
   112
  set LANG=ru_RU.cp1251
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
   113
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
   114
Altering ``LANG`` for anything other then ``C`` cause only problems, when you get help and error
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
   115
messages in non-English. It is mostlry impossible to search for keywords, when text are translated.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   116
2498
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   117
Mount points
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   118
============
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   119
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   120
In Cygwin the 3rd parameter (FS type) has special meaning:
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   121
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   122
* ``cygdrive`` defines prefix to Windows disk letters like ``c:``.
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   123
* ``usertemp`` defines location of temp directory.
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   124
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   125
``/etc/fstab``::
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   126
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   127
  none    /cygdrive none binary,posix=0,user,noacl 0 0
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   128
  c:/opt/   /opt    none binary,noacl,user,posix=0 0 0
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   129
  d:/backup /backup none binary,noacl,user,posix=0 0 0
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   130
  /var     /usr/var none bind
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   131
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   132
https://cygwin.com/cygwin-ug-net/using.html#mount-table
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   133
  The Cygwin Mount Table. Description of supported keys.
8c90e7713884 Discuss mount points earlier.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2497
diff changeset
   134
2499
54c46fdf99a6 Exposing WSL distros.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2498
diff changeset
   135
Recent version of Win 10 exposes WSL distros via P9 network protocol. As Cygwin supports UNC paths
2500
398df84b32c7 Don't forget to create directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2499
diff changeset
   136
it is possible to add mount points (don't forget to create directory ``/wsl`` before mounting!)::
2499
54c46fdf99a6 Exposing WSL distros.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2498
diff changeset
   137
54c46fdf99a6 Exposing WSL distros.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2498
diff changeset
   138
  //wsl$/debian /wsl/debian  ntfs binary,noacl,posix=0 0 0
54c46fdf99a6 Exposing WSL distros.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2498
diff changeset
   139
  //wsl$/ubuntu /wsl/ubuntu  ntfs binary,noacl,posix=0 0 0
54c46fdf99a6 Exposing WSL distros.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2498
diff changeset
   140
  //wsl$/alpine /wsl/alpine  ntfs binary,noacl,posix=0 0 0
54c46fdf99a6 Exposing WSL distros.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2498
diff changeset
   141
2496
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   142
Users
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   143
=====
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   144
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   145
Cygwin allow complex mapping Windows accounts to POSIX:
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   146
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   147
https://cygwin.com/cygwin-ug-net/ntsec.html
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   148
  POSIX accounts, permission, and security.
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   149
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   150
Modern Cygwin (v3.x) relies on ``/etc/nsswitch.conf`` for user settings. That means there are no
2497
8407a34a1b5d User home directory and login shell.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2496
diff changeset
   151
``/etc/passwd`` & ``/etc/group`` and user home directory and login shell are defined according to
8407a34a1b5d User home directory and login shell.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2496
diff changeset
   152
``nsswitch.conf``::
8407a34a1b5d User home directory and login shell.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2496
diff changeset
   153
8407a34a1b5d User home directory and login shell.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2496
diff changeset
   154
  db_home:  /home/%U
8407a34a1b5d User home directory and login shell.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2496
diff changeset
   155
  db_shell: /bin/bash
2496
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   156
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   157
Earlier Cygwin used ``/etc/passwd`` & ``/etc/group`` and sometimes you were required to regenerate
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   158
them::
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   159
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   160
  $ mkpasswd -d | grep $yourlogin > /etc/passwd
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   161
  $ mkpasswd -l > /etc/passwd
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   162
  $ mkgroup -l > /etc/group
1251d8e57794 /etc/nsswitch.conf
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2495
diff changeset
   163
2107
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
   164
Documentation
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
   165
=============
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
   166
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
   167
Cygwin C API man pages and user guide manuals available in ``cygwin-doc``
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
   168
package.
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
   169
2527
a60864c290cc man-pages-posix
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2500
diff changeset
   170
Documentation is unpacked into ``/usr/share/doc/cygwin-...`` directories.
a60864c290cc man-pages-posix
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2500
diff changeset
   171
a60864c290cc man-pages-posix
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2500
diff changeset
   172
For system man pages install: ``man-pages-posix``.
2107
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
   173
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   174
apt-cyg package manager
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   175
=======================
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   176
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   177
``apt-cyg`` is based on ``bash``, ``wget``, ``tar``, ``gawk`` and ``bzip2``
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   178
packages and provide convenient commands for managing and queries packages::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   179
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   180
  $ apt-cyg update
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   181
  $ apt-cyg install emacs-w32
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   182
  $ apt-cyg remove emacs-w32
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   183
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   184
Information about package and dependencies::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   185
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   186
  $ apt-cyg show emacs-w32
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   187
  $ apt-cyg depends wget
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   188
  $ apt-cyg rdepends emacs
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   189
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   190
List installed packages::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   191
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   192
  $ apt-cyg list
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   193
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   194
Search for package with file across installed packages::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   195
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   196
  $ apt-cyg search stdio.h
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   197
2079
5c346302c5ba List package files for installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2063
diff changeset
   198
List package files for installed packages::
5c346302c5ba List package files for installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2063
diff changeset
   199
5c346302c5ba List package files for installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2063
diff changeset
   200
  $ apt-cyg listfiles util-linux
5c346302c5ba List package files for installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2063
diff changeset
   201
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   202
Search for package with file through cygwin.com::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   203
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   204
  $ apt-cyg searchall stdio.h
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   205
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   206
List all packages in ``setup.ini``::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   207
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   208
  $ apt-cyg listall
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   209
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   210
Find package by regex::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   211
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   212
  $ apt-cyg listall ^emacs
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   213
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   214
To switch between mirrors::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   215
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   216
  $ apt-cyg mirror ftp://ftp.cygwinports.org/pub/cygwinports
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   217
  $ apt-cyg update
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   218
  $ apt-cyg install php
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   219
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   220
  $ apt-cyg mirror ftp://www.fruitbat.org/pub/cygwin/circa/2016/08/30/104223
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   221
2090
1a788101d63c http://mirrors.kernel.org/sources.redhat.com/cygwin/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2079
diff changeset
   222
  $ apt-cyg mirror http://mirrors.kernel.org/sources.redhat.com/cygwin/
1a788101d63c http://mirrors.kernel.org/sources.redhat.com/cygwin/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2079
diff changeset
   223
2091
059f9e54d538 Altering between mirrors.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2090
diff changeset
   224
Just switching mirror does not update metadata.
059f9e54d538 Altering between mirrors.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2090
diff changeset
   225
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   226
To change a location of directory where packages and ``setup.ini`` downloaded::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   227
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   228
  $ apt-cyg cache
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   229
  C:\net
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   230
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   231
  $ apt-cyg cache ~/net
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   232
  Cache set to C:\home\net.
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   233
2320
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   234
https://github.com/kou1okada/apt-cyg
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   235
  Still maintained project with extra features.
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   236
https://github.com/transcode-open/apt-cyg/
2320
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   237
  Home page of abandoned project.
2092
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   238
https://github.com/transcode-open/apt-cyg/issues/19
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   239
  Request to support multiply sources.
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   240
http://stackoverflow.com/questions/22411162/how-to-add-a-repository-using-apt-cyg/
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   241
  How to add a repository using apt-cyg.
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   242
https://odoepner.wordpress.com/2012/12/06/install-cygwin-and-cygwinports-packages-using-apt-cyg/
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   243
  Depricated way to install from several sources with ``-m`` option using shell
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   244
  aliases as a trick.
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   245
2320
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   246
Cygwin bash completion
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   247
======================
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   248
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   249
Cygwin ``bash`` has extra patch that adds ``completion_strip_exe`` option::
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   250
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   251
  shopt -s completion_strip_exe
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   252
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   253
If you complete executable ``.exe`` suffix is stripped if any. That halps with ``bash-completion``
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   254
because usually comletion defined for base name without ``.exe`` suffix, like::
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   255
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   256
  complete -F _figlet figlet
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   257
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   258
https://github.com/cygwinports/bash
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   259
  7b. completion_strip_exe - using 'shopt -s completion_strip_exe'
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   260
  makes completion strip .exe suffixes.
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   261
2165
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   262
Cygwin file permission
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   263
======================
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   264
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   265
Get list of permissions::
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   266
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   267
  $ getfacl .
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   268
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   269
rsync without problems::
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   270
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   271
  $ rsync -ar —chmod=ugo=rwX $FROM/ $TO/
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   272
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   273
https://cygwin.com/cygwin-ug-net/using-filemodes.html
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   274
  File permissions.
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   275
https://cygwin.com/cygwin-ug-net/ntsec.html
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   276
  POSIX accounts, permission, and security.
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   277
https://stackoverflow.com/questions/5828037/cygwin-sets-file-permission-to-000
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   278
  Cygwin sets file permission to 000.
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   279
2059
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   280
Installation on Windows XP
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   281
==========================
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   282
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   283
Cygwin from v2.5.5 and Setup version 2.874 (on 25 Aug 2016) is latest version
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   284
with Windows XP support. Later versions build with dependencies on newer
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   285
syscalls and failt to run in Windows XP.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   286
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   287
Latest mirrors avaialble at fruitbat.org:
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   288
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   289
* 32-bit: ftp://www.fruitbat.org/pub/cygwin/circa/2016/08/30/104223
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   290
* 64-bit: ftp://www.fruitbat.org/pub/cygwin/circa/64bit/2016/08/30/104235
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   291
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   292
To run setup against this mirror::
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   293
2228
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   294
  cmd> setup.exe
2059
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   295
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   296
``setup.exe`` available at:
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   297
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   298
* 32-bit ftp://www.fruitbat.org/pub/cygwin/setup/snapshots/setup-x86-2.874.exe
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   299
* 64-bit ftp://www.fruitbat.org/pub/cygwin/setup/snapshots/setup-x86_64-2.874.exe
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   300
2060
66ccf8bdcbc0 Option description for setup-x86.exe.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2059
diff changeset
   301
Run as (``-X`` disable signature verification, ``-s <url>`` option select a
66ccf8bdcbc0 Option description for setup-x86.exe.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2059
diff changeset
   302
particular mirror, ``-O`` option disallow any other mirrors)::
2059
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   303
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   304
  cmd> setup-x86.exe -X -s ftp://www.fruitbat.org/pub/cygwin/circa/2016/08/30/104223 -O
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   305
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   306
http://www.fruitbat.org/Cygwin/timemachine.html
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   307
  Description of Cygwin time machine project.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   308
http://stackoverflow.com/questions/39479826/cygwin-2-5-2-mirror-getting-the-last-xp-release
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   309
  Question about Cygwin old mirror.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   310
http://superuser.com/questions/1132000/is-it-still-possible-to-get-cygwin-for-xp
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   311
  Question about Cygwin old mirror.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   312
http://cygwin-xp.portfolis.net/
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   313
  Another old mirror.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   314
2196
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   315
Cygwin ports
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   316
============
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   317
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   318
This project provides Cygwin binary and source packages for a large variety of programs and
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   319
libraries, including the GNOME  and KDE desktop environments
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   320
2196
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   321
http://cygwin-ports.sourceforge.net/
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   322
  Newest home of the Cygwin Ports project.
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   323
http://sourceware.org/cygwinports/
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   324
  Home page.
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   325
http://cygwinports.blogspot.com
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   326
  Official blog.
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   327
https://github.com/cygwinports
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   328
  cygport scripts to compile cygwinports
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   329
https://github.com/cygwinports/cygport
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   330
  Source packaging tool for Cygwin
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   331
https://cygwinports.github.io/cygport
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   332
  Cygport Reference Manual.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   333
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   334
Which Cygwin version you run?
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   335
=============================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   336
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   337
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   338
  $ uname -r
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   339
  1.7.7(0.230/5/3)
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   340
  $ cygcheck -c cygwin
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   341
  Cygwin Package Information
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   342
  Package              Version        Status
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   343
  cygwin               1.7.7-1        OK
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   344
2565
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   345
Rebase dll / rebaseall
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   346
======================
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   347
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   348
Today ``rebaseall`` script takes care of DLL acrees clashes. It is shell script that should be run
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   349
from ``ash`` (a special Cygwin shell that compatible with rebase process in egg-chicken mean), like
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   350
you close every Cygwin program (including Windows services) and run from cmd.exe or PowerShell::
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   351
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   352
  sh -c rebaseall
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   353
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   354
With modern Emacs 28.1-2 introduced native compilation for every user using Emacs you need to add
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   355
Emacs's dynamic modules to the update list under ``/var/lib/rebase/userpath.d`` (``user`` below is a
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   356
placeholder)::
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   357
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   358
  $ cat /var/lib/rebase/userpath.d/user
e0428be059da rebaseall
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2527
diff changeset
   359
  /home/user/.emacs.d/eln-cache
2105
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   360
2566
7bb6fdec9cf9 Announce about handling rebase with Emacs native compilation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2565
diff changeset
   361
https://cygwin.com/pipermail/cygwin-announce/2022-April/010529.html
7bb6fdec9cf9 Announce about handling rebase with Emacs native compilation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2565
diff changeset
   362
  Announce about handling rebase with Emacs native compilation.
7bb6fdec9cf9 Announce about handling rebase with Emacs native compilation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2565
diff changeset
   363
2105
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   364
In order to Cygwin to maintain ``fork()`` syscall it should preserve same
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   365
logical base address for dll to be able to share library between child and
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   366
parent process. It was done via special hints in dlls.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   367
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   368
With new version of Cygwin software or external Windows libraries (AntiVirus may
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   369
inject its their libraries into Cygwin process address space) it may happen that
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   370
new library is overlapped with existing.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   371
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   372
There is ``rebase`` utility that changes base address hints for dll.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   373
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   374
You should finish all Cygwin processes in order to ``rebase`` to succeed.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   375
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   376
You may trigger automatic rebase of all packages in next run of ``setup.exe``
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   377
with::
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   378
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   379
  $ rebase-trigger full
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   380
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   381
Read more at:
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   382
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   383
* ``/usr/share/doc/rebase/README``
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   384
* ``/usr/share/doc/Cygwin/_autorebase.README``
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   385
2336
4cd18bed8bac How do I fix fork() failures?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2335
diff changeset
   386
https://cygwin.com/faq/faq.html#faq.using.fixing-fork-failures
4cd18bed8bac How do I fix fork() failures?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2335
diff changeset
   387
  How do I fix fork() failures?
2105
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   388
https://chromium.googlesource.com/chromium/src/+/master/docs/cygwin_dll_remapping_failure.md
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   389
  Handling repeated failures of rebaseall to allow cygwin remaps.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   390
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   391
Running X Window.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   392
=================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   393
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   394
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   395
  $ XWin -multiwindow&
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   396
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   397
or::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   398
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   399
  $ XWin -clipboard -silent-dup-error -xkblayout "us,ru" -xkboptions "grp:caps_toggle"&
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   400
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   401
To start X application you must set 'DISPLAY'::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   402
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   403
  $ DISPLAY=:0 xterm&
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   404
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   405
Working with packages.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   406
======================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   407
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   408
Installed package list with versions.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   409
-------------------------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   410
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   411
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   412
  $ cygcheck -c -d
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   413
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   414
List of package files.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   415
----------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   416
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   417
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   418
  $ cygcheck -l pkg-name
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   419
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   420
Search package by containing file (only under installed packages).
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   421
------------------------------------------------------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   422
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   423
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   424
  $ cygcheck -f full-path-to-file
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   425
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   426
Search packages by containing path (only under installed packages).
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   427
-------------------------------------------------------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   428
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   429
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   430
  $ for f in /etc/setup/*.lst.gz; do gzip -c -d $f | grep $WORD  2>&1 >/dev/null && { echo $f; break; } || :; done
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   431
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   432
Search for package.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   433
-------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   434
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   435
If you have file name or regex use (need internet connection)::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   436
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   437
  $ cygcheck -p REGEX
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   438
2228
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   439
cygcheck use such link::
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   440
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   441
  http://cygwin.com/cgi-bin2/package-grep.cgi?grep=REGEX
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   442
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   443
Cygwin installation info.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   444
=========================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   445
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   446
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   447
  $ uname -a
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   448
  $ cygcheck -s -r
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   449
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   450
Cygwin acronyms.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   451
================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   452
2228
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   453
http://www.cygwin.com/acronyms
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   454
  One encounters all sorts of acronyms on the Cygwin mailing lists.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   455
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   456
Check dll dependency.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   457
=====================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   458
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   459
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   460
  $ ldd my.dll
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   461
  $ ldd my.exe
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   462
  $ cygcheck ./my.dll
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   463
  $ cygcheck ./my.exe
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   464
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   465
Cygwin alternatives.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   466
====================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   467
2228
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   468
http://www.suacommunity.com/SUA.aspx
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   469
  Subsystem for Unix-based Applications and Services for Unix