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