cygwin.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Sun, 03 Jan 2021 15:41:15 +0200
changeset 2486 796bbf279e20
parent 2485 7c39b8da8353
child 2488 b044a0017907
permissions -rw-r--r--
Fixed typo.
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
fcb00dfa7e23 Official mirror list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2483
diff changeset
    10
===
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
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    15
Configuration
2484
fcb00dfa7e23 Official mirror list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2483
diff changeset
    16
===
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    17
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    18
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
    19
``/bin`` directory to your ``PATH`` env var::
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    20
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    21
  set PATH=c:\opt\cygwin\bin;%PATH%
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    22
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    23
Cygwin behavior can be altered via ``CYGWIN`` env var::
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    24
2485
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    25
  set CYGWIN=noglob wincmdln
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    26
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    27
* ``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
    28
  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
    29
  Unix shell.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    30
2485
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    31
  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
    32
  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
    33
  ``glob`` is active.
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    34
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    35
  ``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
    36
7c39b8da8353 Updated list of Cygwin options for CYGWIN env var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2484
diff changeset
    37
* ``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
    38
  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
    39
  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
    40
  Windows managed structure making arguments visible.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    41
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    42
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
    43
  The ``CYGWIN`` environment variable. Available options.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    44
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    45
Set ``HOME`` env var::
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    46
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    47
  set HOME=c:\home
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    48
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    49
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
    50
  How can I change my Cygwin home folder after installation?
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    51
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    52
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
    53
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    54
  set TMP=c:\tmp
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    55
  set TEMP=c:\tmp
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    56
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    57
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
    58
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    59
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
    60
``/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
    61
e5191a677ee5 Create symlink to home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2107
diff changeset
    62
  $ ln -s /cygdrive/d/home /home/user
e5191a677ee5 Create symlink to home directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2107
diff changeset
    63
2164
d92444a3f0ae Example of creating native Windows symlink.
user@DESKTOP-7QQCI59
parents: 2143
diff changeset
    64
Alternatively with native Windows symlink (from build-in ``cmd`` command)::
d92444a3f0ae Example of creating native Windows symlink.
user@DESKTOP-7QQCI59
parents: 2143
diff changeset
    65
d92444a3f0ae Example of creating native Windows symlink.
user@DESKTOP-7QQCI59
parents: 2143
diff changeset
    66
  cmd# mklink /D c:\opt\cygwin\home\user c:\home
d92444a3f0ae Example of creating native Windows symlink.
user@DESKTOP-7QQCI59
parents: 2143
diff changeset
    67
2170
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
    68
List of installed packages (``-c`` - check, ``-d`` - dump only)::
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
    69
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
    70
  $ cygcheck -c -d
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
    71
b3827a5ac4c3 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2169
diff changeset
    72
Alternatively look to file content::
2169
8ce9771fae25 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2165
diff changeset
    73
8ce9771fae25 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2165
diff changeset
    74
  /etc/setup/installed.db
8ce9771fae25 List of installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2165
diff changeset
    75
2335
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    76
In a past I work with particular code point::
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    77
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    78
  set LANG=ru_RU.cp1251
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    79
df944b944b30 Updated Cygwin configuration instructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2320
diff changeset
    80
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
    81
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
    82
2107
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
    83
Documentation
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
    84
=============
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
    85
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
    86
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
    87
package.
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
    88
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
    89
Documentation unpacked to ``/usr/share/doc/cygwin-...`` directory.
6f77a1808a38 Cygwin documentation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2105
diff changeset
    90
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
    91
apt-cyg package manager
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
    92
=======================
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
    93
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
    94
``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
    95
packages and provide convenient commands for managing and queries packages::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
    96
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
    97
  $ apt-cyg update
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
    98
  $ apt-cyg install emacs-w32
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
    99
  $ apt-cyg remove emacs-w32
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   100
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   101
Information about package and dependencies::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   102
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   103
  $ apt-cyg show emacs-w32
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   104
  $ apt-cyg depends wget
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   105
  $ apt-cyg rdepends emacs
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   106
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   107
List installed packages::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   108
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   109
  $ apt-cyg list
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   110
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   111
Search for package with file across installed packages::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   112
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   113
  $ apt-cyg search stdio.h
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   114
2079
5c346302c5ba List package files for installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2063
diff changeset
   115
List package files for installed packages::
5c346302c5ba List package files for installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2063
diff changeset
   116
5c346302c5ba List package files for installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2063
diff changeset
   117
  $ apt-cyg listfiles util-linux
5c346302c5ba List package files for installed packages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2063
diff changeset
   118
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   119
Search for package with file through cygwin.com::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   120
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   121
  $ apt-cyg searchall stdio.h
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   122
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   123
List all packages in ``setup.ini``::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   124
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   125
  $ apt-cyg listall
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   126
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   127
Find package by regex::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   128
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   129
  $ apt-cyg listall ^emacs
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   130
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   131
To switch between mirrors::
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   132
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   133
  $ apt-cyg mirror ftp://ftp.cygwinports.org/pub/cygwinports
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   134
  $ apt-cyg update
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   135
  $ apt-cyg install php
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   136
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   137
  $ 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
   138
2090
1a788101d63c http://mirrors.kernel.org/sources.redhat.com/cygwin/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2079
diff changeset
   139
  $ 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
   140
2091
059f9e54d538 Altering between mirrors.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2090
diff changeset
   141
Just switching mirror does not update metadata.
059f9e54d538 Altering between mirrors.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2090
diff changeset
   142
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   143
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
   144
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   145
  $ apt-cyg cache
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   146
  C:\net
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   147
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   148
  $ apt-cyg cache ~/net
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   149
  Cache set to C:\home\net.
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   150
2320
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   151
https://github.com/kou1okada/apt-cyg
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   152
  Still maintained project with extra features.
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   153
https://github.com/transcode-open/apt-cyg/
2320
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   154
  Home page of abandoned project.
2092
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   155
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
   156
  Request to support multiply sources.
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   157
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
   158
  How to add a repository using apt-cyg.
9c8bb99062b5 Add links about multi-source support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2091
diff changeset
   159
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
   160
  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
   161
  aliases as a trick.
2061
11b0fd0d6db6 apt-cyg package manager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2060
diff changeset
   162
2320
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   163
Cygwin bash completion
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   164
======================
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   165
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   166
Cygwin ``bash`` has extra patch that adds ``completion_strip_exe`` option::
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   167
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   168
  shopt -s completion_strip_exe
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   169
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   170
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
   171
because usually comletion defined for base name without ``.exe`` suffix, like::
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   172
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   173
  complete -F _figlet figlet
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   174
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   175
https://github.com/cygwinports/bash
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   176
  7b. completion_strip_exe - using 'shopt -s completion_strip_exe'
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   177
  makes completion strip .exe suffixes.
b7a2c43902f3 Cygwin bash completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2228
diff changeset
   178
2165
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   179
Cygwin file permission
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   180
======================
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   181
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   182
Get list of permissions::
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   183
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   184
  $ getfacl .
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   185
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   186
rsync without problems::
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   187
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   188
  $ rsync -ar —chmod=ugo=rwX $FROM/ $TO/
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   189
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   190
https://cygwin.com/cygwin-ug-net/using-filemodes.html
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   191
  File permissions.
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   192
https://cygwin.com/cygwin-ug-net/ntsec.html
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   193
  POSIX accounts, permission, and security.
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   194
https://stackoverflow.com/questions/5828037/cygwin-sets-file-permission-to-000
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   195
  Cygwin sets file permission to 000.
13a641164f9d Cygwin file permission.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2164
diff changeset
   196
2059
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   197
Installation on Windows XP
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   198
==========================
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   199
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   200
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
   201
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
   202
syscalls and failt to run in Windows XP.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   203
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   204
Latest mirrors avaialble at fruitbat.org:
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   205
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   206
* 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
   207
* 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
   208
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   209
To run setup against this mirror::
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   210
2228
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   211
  cmd> setup.exe
2059
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   212
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   213
``setup.exe`` available at:
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   214
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   215
* 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
   216
* 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
   217
2060
66ccf8bdcbc0 Option description for setup-x86.exe.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2059
diff changeset
   218
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
   219
particular mirror, ``-O`` option disallow any other mirrors)::
2059
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   220
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   221
  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
   222
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   223
http://www.fruitbat.org/Cygwin/timemachine.html
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   224
  Description of Cygwin time machine project.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   225
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
   226
  Question about Cygwin old mirror.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   227
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
   228
  Question about Cygwin old mirror.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   229
http://cygwin-xp.portfolis.net/
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   230
  Another old mirror.
e19407a19d1f Installation on Windows XP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1912
diff changeset
   231
2196
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   232
Cygwin ports
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   233
============
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   234
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   235
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
   236
libraries, including the GNOME  and KDE desktop environments
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   237
2196
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   238
http://cygwin-ports.sourceforge.net/
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   239
  Newest home of the Cygwin Ports project.
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   240
http://sourceware.org/cygwinports/
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   241
  Home page.
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   242
http://cygwinports.blogspot.com
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   243
  Official blog.
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   244
https://github.com/cygwinports
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   245
  cygport scripts to compile cygwinports
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   246
https://github.com/cygwinports/cygport
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   247
  Source packaging tool for Cygwin
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   248
https://cygwinports.github.io/cygport
4709306e4ec8 Cygwin ports.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2170
diff changeset
   249
  Cygport Reference Manual.
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   250
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   251
Which Cygwin version you run?
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   252
=============================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   253
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   254
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   255
  $ uname -r
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   256
  1.7.7(0.230/5/3)
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   257
  $ cygcheck -c cygwin
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   258
  Cygwin Package Information
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   259
  Package              Version        Status
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   260
  cygwin               1.7.7-1        OK
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   261
2105
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   262
Rebase dll
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   263
==========
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   264
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   265
In order to Cygwin to maintain ``fork()`` syscall it should preserve same
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   266
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
   267
parent process. It was done via special hints in dlls.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   268
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   269
With new version of Cygwin software or external Windows libraries (AntiVirus may
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   270
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
   271
new library is overlapped with existing.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   272
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   273
There is ``rebase`` utility that changes base address hints for dll.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   274
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   275
You should finish all Cygwin processes in order to ``rebase`` to succeed.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   276
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   277
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
   278
with::
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   279
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   280
  $ rebase-trigger full
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   281
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   282
Read more at:
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   283
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   284
* ``/usr/share/doc/rebase/README``
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   285
* ``/usr/share/doc/Cygwin/_autorebase.README``
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   286
2336
4cd18bed8bac How do I fix fork() failures?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2335
diff changeset
   287
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
   288
  How do I fix fork() failures?
2105
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   289
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
   290
  Handling repeated failures of rebaseall to allow cygwin remaps.
cf9f3802be19 Rebase dll.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2092
diff changeset
   291
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   292
Recreate /etc/passwd and /etc/groups.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   293
=====================================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   294
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   295
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   296
  $ mkpasswd -d | grep $yourlogin > /etc/passwd  # if you in Windows domain
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   297
  $ mkpasswd -l > /etc/passwd                    # if you in Windows domain
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   298
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   299
  $ mkgroup -l > /etc/group
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   300
2483
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   301
Adding mount points
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   302
===================
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   303
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   304
In Cygwin the 3rd parameter (FS type) has special meaning:
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   305
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   306
* ``cygdrive`` defines prefix to Windows disk letters like ``c:``.
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   307
* ``usertemp`` defines location of temp directory.
1774
16876330496f Adding mount points.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   308
16876330496f Adding mount points.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   309
``/etc/fstab``::
16876330496f Adding mount points.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   310
2483
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   311
  none /cygdrive    none binary,posix=0,user,noacl 0 0
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   312
  c:/opt/   /opt    none binary,noacl,user,posix=0 0 0
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   313
  d:/backup /backup none binary,noacl,user,posix=0 0 0
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   314
  /var     /usr/var none bind
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   315
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   316
https://cygwin.com/cygwin-ug-net/using.html#mount-table
0b99270832a0 About cygdrive & usertemp FS types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2336
diff changeset
   317
  The Cygwin Mount Table. Description of supported keys.
1774
16876330496f Adding mount points.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   318
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   319
Running X Window.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   320
=================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   321
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   322
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   323
  $ XWin -multiwindow&
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   324
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   325
or::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   326
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   327
  $ 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
   328
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   329
To start X application you must set 'DISPLAY'::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   330
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   331
  $ DISPLAY=:0 xterm&
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   332
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   333
Working with packages.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   334
======================
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
Installed package list with versions.
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
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   339
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   340
  $ cygcheck -c -d
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   341
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   342
List of package files.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   343
----------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   344
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   345
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   346
  $ cygcheck -l pkg-name
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   347
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   348
Search package by containing file (only under installed packages).
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   349
------------------------------------------------------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   350
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   351
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   352
  $ cygcheck -f full-path-to-file
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   353
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   354
Search packages by containing path (only under installed packages).
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   355
-------------------------------------------------------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   356
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   357
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   358
  $ 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
   359
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   360
Search for package.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   361
-------------------
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   362
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   363
If you have file name or regex use (need internet connection)::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   364
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   365
  $ cygcheck -p REGEX
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   366
2228
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   367
cygcheck use such link::
1032
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   368
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   369
  http://cygwin.com/cgi-bin2/package-grep.cgi?grep=REGEX
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   370
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   371
Cygwin installation info.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   372
=========================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   373
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   374
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   375
  $ uname -a
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   376
  $ cygcheck -s -r
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   377
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   378
Cygwin acronyms.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   379
================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   380
2228
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   381
http://www.cygwin.com/acronyms
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   382
  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
   383
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   384
Check dll dependency.
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   385
=====================
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   386
::
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   387
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   388
  $ ldd my.dll
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   389
  $ ldd my.exe
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   390
  $ cygcheck ./my.dll
4decc3e00bb6 Fix coding and contents.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   391
  $ cygcheck ./my.exe
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
Cygwin alternatives.
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
2228
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   396
http://www.suacommunity.com/SUA.aspx
837f1337c59b Removed indentation that compiled into <blockquote>.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2196
diff changeset
   397
  Subsystem for Unix-based Applications and Services for Unix