{"id":15042400,"url":"https://github.com/kou1okada/apt-cyg","last_synced_at":"2025-10-07T23:31:26.894Z","repository":{"id":11272492,"uuid":"13678563","full_name":"kou1okada/apt-cyg","owner":"kou1okada","description":"Apt-cyg, an apt-get like tool for Cygwin","archived":false,"fork":true,"pushed_at":"2024-03-18T07:44:05.000Z","size":664,"stargazers_count":347,"open_issues_count":17,"forks_count":51,"subscribers_count":23,"default_branch":"master","last_synced_at":"2024-09-26T01:41:18.369Z","etag":null,"topics":["apt","apt-cyg","apt-get","bash-script","cygwin","package-manager"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"transcode-open/apt-cyg","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kou1okada.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-10-18T13:22:14.000Z","updated_at":"2024-09-14T04:19:34.000Z","dependencies_parsed_at":"2023-01-16T19:46:33.260Z","dependency_job_id":null,"html_url":"https://github.com/kou1okada/apt-cyg","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kou1okada%2Fapt-cyg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kou1okada%2Fapt-cyg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kou1okada%2Fapt-cyg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kou1okada%2Fapt-cyg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kou1okada","download_url":"https://codeload.github.com/kou1okada/apt-cyg/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219877486,"owners_count":16554901,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apt","apt-cyg","apt-get","bash-script","cygwin","package-manager"],"created_at":"2024-09-24T20:47:14.429Z","updated_at":"2025-10-07T23:31:26.876Z","avatar_url":"https://github.com/kou1okada.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"apt-cyg\n=======\n\napt-cyg is a command-line installer for [Cygwin](http://cygwin.com/) which cooperates with Cygwin Setup and uses the same repository. The syntax is similar to apt-get.\n\nUsage\n-----\n\n### Command line\n\n    apt-cyg [\u003coptions\u003e] [\u003csubcommand\u003e [\u003cparameters\u003e ...]]\n\n### Subcommands\n\n| Subcommand | Description |\n|:------- |:----------- |\n| `install \u003cpackage names\u003e` |  to install packages |\n| `remove \u003cpackage names\u003e` |  to remove packages |\n| `update` |  to update *setup.ini* |\n| `show` |  to show installed packages |\n| `find \u003cpatterns\u003e` |  to find packages matching patterns |\n| `describe \u003cpatterns\u003e` |  to describe packages matching patterns |\n| `packageof \u003ccommand or file names\u003e ...` |  to locate parent packages |\n| `pathof {cache\\|mirror\\|mirrors\\|mirrordir\\|cache/mirrordir\\|setup.ini}` |  to show path |\n| `key-add \u003cfiles\u003e ...` |  to add keys contained in \\\u003cfiles\\\u003e |\n| `key-del \u003ckeyids\u003e ...` |  to remove keys \\\u003ckeyids\\\u003e |\n| `key-list` |  to list keys |\n| `key-finger` |  to list fingerprints |\n| `upgrade-self` |  to upgrade apt-cyg |\n| `depends \u003cpackage names\u003e ...` |  to show forward dependency information for packages with depth. |\n| `rdepends \u003cpackage names\u003e ...` |  to show reverse dependency information for packages with depth. |\n| `list-desired-packages` | List packages, whether the category is classified as Base, marked manually installed, or required by apt-cyg. |\n| `list-installed-packages` | List packages that are installed. |\n| `list-required-packages` | List packages that required for desired packages. |\n| `list-overages-and-shortages-of-packages` | List overages and shortages of packages. |\n| `list-orphaned-packages` | List packages that are installed but not required. |\n| `list-lacked-packages` | List packages that are required but not installed. |\n| `completion-install` |  to install completion. |\n| `completion-uninstall` |  to uninstall completion. |\n| `mirrors-list` |  to show list of mirrors. |\n| `mirrors-list-long` |  to show list of mirros with full details. |\n| `mirrors-list-online` |  to show list of mirrors from online. |\n| `benchmark-mirrors \u003curls\u003e ...` |  to benchmark mirrors. |\n| `benchmark-parallel-mirrors \u003curls\u003e ...` |  to benchmark mirrors in parallel. |\n| `benchmark-parallel-mirrors-list` |  to benchmark mirrors-list in parallel. |\n| `scriptinfo` |  to show script information. |\n| `show-packages-busyness \u003cpackage names\u003e ...` |  to show if packages are busy or not. |\n| `dist-upgrade` |  to upgrade all packages that is installed. This subcommand uses **`setup-*.exe`** |\n| `update-setup` |  to update setup.exe |\n| `setup [\u003cparams\u003e ...]` |  to call setup.exe |\n| `packages-total-count` |  count number of total packages from setup.ini |\n| `packages-total-size [\u003cpattern of section\u003e]` |  count size of total packages from setup.ini |\n| `packages-cached-count` |  count number of cached packages in cache/mirrordir. |\n| `packages-cached-size` |  count size of cached packages in cache/mirrordir. |\n| `repair-acl` |  to repair the windows ACL (Access Control List). |\n| `repair-postinstall` | Repair postinstall scripts. |\n| `source \u003cpackage names\u003e ...` |  download source archive. |\n| `mirror-source \u003cpackage names\u003e ...` | download the source package into the current cache/mirrordir as mirror. |\n| `download \u003cpackage names\u003e ...` |  download the binary package into the current directory. |\n| `mirror \u003cpackage names\u003e ...` |  download the binary package into the current cache/mirrordir as mirror. |\n| `browse-homepage-with-mirror-source [\u003cpackage names\u003e ...]` | Browse homepages of packages with mirror-source. |\n| `browse-homepage [\u003cpackage names\u003e ...]` | Browse homepages of packages. |\n| `browse-summary [\u003cpackage names\u003e ...]` | Browse summaries of packages. |\n| `listfiles \u003cpackage names\u003e ...` |  List files 'owned' by package(s). |\n| `get-proxy` |  Get proxies for eval. |\n| `ls-categories` |  List categories. |\n| `ls-pkg-with-category` |  List packages with category. |\n| `category \u003ccategory\u003e` | List all packages in given \\\u003ccategory\\\u003e.|\n| `setuprc-get \u003csection\u003e` | Get section from **`setup.rc`**. |\n| `set-cache [\u003ccache\u003e]` | Set cache. |\n| `set-mirror [\u003cmirrors\u003e ...]` | Set mirrors. Note: `setup-x86{,_64}.exe` uses all of them but currently `apt-cyg` uses the first one only. |\n| `mark-auto [\u003cpackages\u003e ...]` | Mark the given packages as automatically installed. |\n| `mark-manual [\u003cpackages\u003e ...]` | Mark the given packages as manually installed. |\n| `mark-showauto` |Print the list of automatically installed packages. |\n| `mark-showmanual` | Print the list of manually installed packages. |\n| `call [\u003cinternal_function\u003e [\u003cargs\u003e ...]]` | Call internal function in apt-cyg. |\n| `time [\u003cinternal_function\u003e [\u003cargs\u003e ...]]` | Report time consumed to call internal function in apt-cyg. |\n| `filelist [\u003cpackage\u003e]` | File list like apt-file list. |\n| `filesearch [\u003cpattern\u003e]` | File search like apt-file search. |\n\n### Options\n\n| Option | Description |\n|:------ |:----------- |\n| `--ag` | use the silver searcher (currently work only at packageof subcommand) |\n| `--benchmark-timeout \u003cduration\u003e` | Truncate items that take longer than \\\u003cduration\\\u003e when benchmarking |\n| `--ignore-case`, `-i` | ignore case distinctions for `\u003cpatterns\u003e` |\n| `--force-remove` | force remove\n| `--force-fetch-trustedkeys` | force fetch trustedkeys |\n| `--force-update-packageof-cache` | force update packageof cache |\n| `--no-verify`, `-X` | Don't verify setup.ini signatures |\n| `--no-check-certificate` | Don't validate the server's certificate |\n| `--no-update-setup` | Don't update setup.exe\n| `--no-header` | Don't print header |\n| `--proxy`, `-p {auto\\|inherit\\|none\\|\u003curl\u003e}` | set proxy (default: ${APT_CYG_PROXY:-auto}) |\n| `--completion-get-subcommand` | get subcommand (for completion internal use) |\n| `--completion-disable-autoupdate` | disable completion autoupdate |\n| `--max-jobs`, `-j \u003cn\u003e` | Run \\\u003cn\\\u003e jobs in parallel |\n| `--mirror`, `-m \u003curl\u003e` | set mirror\n| `--mirror-index`, `-M \u003cn\u003e` | choose mirror from last-mirror list. \\\u003cn\\\u003e is 0-based index in last-mirror. |\n| `--cache`, `-c \u003cdir\u003e` | set cache |\n| `--file`, `-f \u003cfile\u003e` | read package names from \\\u003cfile\\\u003e |\n| `--noupdate`, `-u` | don't update setup.ini from mirror |\n| `--ipv4`, `-4` | wget prefer ipv4 |\n| `--no-progress` | hide the progress bar in any verbosity mode |\n| `--quiet`, `-q` | quiet (no output) |\n| `--verbose`, `-v` | verbose |\n| `--help` | Display help and exit |\n| `--version` | Display version and exit |\n\nRequirements\n------------\n\n`apt-cyg` requires the Cygwin default environment and the additional *Cygwin* packages:\n\n`wget`, `ca-certificates`, `gnupg`, `libiconv`\n\nIn **32bit** version of cygwin, `wget` requires an additional setting for the `ca-certificates` package.\nChoose one of below settings.\n\n    # 1. Create symbolic link for the default ca-directory of wget. \n    ln -s /usr/ssl /etc/\n    \n    # or\n    # 2. Set ca-directory paramete in '/etc/wgetrc'. \n    echo \"ca-directory = /usr/ssl/certs\" \u003e\u003e /etc/wgetrc\n    \n    # or\n    # 3. Set ca-directory paramete in '~/.wgetrc'. \n    echo \"ca-directory = /usr/ssl/certs\" \u003e\u003e ~/.wgetrc\n\nRemarks:\nAbove additional settings for wget is not required for 64bit version of cygwin.\nBut, as of 2014-01-17, perhaps `ca-certificates` package makes fail of certification in 64bit version of cygwin with Windows 8. See below:\n\n* Known Problem / [2014-01-17: ca-certificates package is not setup correct at x86_64 with Windows 8.](#2014-01-17-ca-certificates-package-is-not-setup-correct-at-x86_64-with-windows-8)\n\nQuick start\n-----------\n\nThe most recommended way to deploy this fork can be seen from a link below:\n* New features / [Upgrade apt-cyg](#upgrade-apt-cyg)\n\napt-cyg is a simple script. Once you have a copy, make it executable:\n\n    chmod +x /bin/apt-cyg\n\nOptionally place apt-cyg in a bin/ folder on your path.\n\nThen use apt-cyg, for example:\n\n    apt-cyg install nano\n\nNew features\n------------\n\n### dist-upgrade support\n\nThis fork has achieved `dist-upgrade` command by using `setup-x86.exe` and `setup-x86_64.exe` as a backend.\nNote that all of running tasks on the cygwin will be killed before starting dist-upgrade.\n\n### Multiple hash algorithms support\n\nAfter the middle of 2015-03, the cygwin project changed the hash algorithm for checking tarball from md5 to sha512.\nBut, as of 2015-04-09, the cygwinports project seems still using md5.\nThis fork is available for both of cygwin and cygwinports by supporting algorithm of md5, sha1, sha224, sha256 and sha512.\n\n### Signature check and key management by GnuPG\n\nThe default action of apt-cyg has been changed to check signature for 'setup.ini'.\nOf course you can also avoid signature check by using `--no-verify` or `-X` options.\nPublic keys of cygwin and cygwinports are already registered to trusted keys of embeded.\nIf you want to use some other public keys, please use `key-*` subcommands.\n\n### Upgrade apt-cyg\n\nIf apt-cyg is under Git version control, this fork can upgrade itself by `upgrade-self` subcommand.\nTherefore, the most recommended way to deploy this fork is `copy and paste` below commands to cygwin console:\n\n    # cd $DIR # Change working directory where you want to install apt-cyg\n    git clone https://github.com/kou1okada/apt-cyg.git\n    ln -s \"$(realpath apt-cyg/apt-cyg)\" /usr/local/bin/\n\nIf you want to use another fork, which forked from https://github.com/kou1okada/apt-cyg, rewrite the URL for apropriate one.\n\n### Proxy support\n\nUse `--proxy`, `-p` option.\nThis option must take a parameter from one of \"auto\", \"inherit\", \"none\" and URL.\n\n* \"auto\" will determine a proxy using a part of the [Web Proxy Auto-Discovery Protocol (WPAD)](http://en.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol).\nThe current implementation will look for a string of \"PROXY URL\" from \"http://wpad/wpad.dat\".\nIf \"wpad.dat\" could not be downloaded, the proxy settings are inherited from the parent environment.\n* \"inherit\" will inherit the proxy settings from the parent environment.\n* \"none\" will not use the proxy.\n* URL can take a string like \"protocol://hostname:port\".\n\nFor example:\n\n    apt-cyg --proxy http://proxy.home:8080 update\n\nThe default parameter is \"${APT\\_CYG\\_PROXY:-auto}\".\nAt the environment where is not provided the WPAD server, it makes the lag for a few seconds at startup.\nSo, if you don't want to use WPAD, please define APT\\_CYG\\_PROXY environment variable as below:\n\n    export APT_CYG_PROXY=inherit\n\n### Bash completion support\n\nBash completion script can be installed  to \"/etc/bash_completion.d/apt-cyg\" by `completion-install` subcommand.\nIt will be automatically updated when apt-cyg is upgraded to newer version.\nIf you don't want to update it automatically, execute `completion-install` subcommand in conjunction with `--completion-disable-autoupdate` option. And `completion-uninstall` subcommand removes \"/etc/bash_completion.d/apt-cyg\".\n\nSome other forks, [Milly / apt-cyg](https://github.com/Milly/apt-cyg) under the cfg / apt-cyg fork, [ashumkin / apt-cyg](https://github.com/ashumkin/apt-cyg) and etc, are also supported it.\n\nContributing\n------------\n\nThis project has been re-published on GitHub to make contributing easier. Feel free to fork and modify this script.\n\nThe [Google Code project](https://code.google.com/p/apt-cyg/) has a list of open issues.\n\n### Forks on the github\n\nCaution:\nPlease do not merge forks that have incompatible licenses.\n\nEx.) Merging to the GPL from the MIT is possible. But merging to the MIT from the GPL  is impossible.\n\nSee [other_forks.md](other_forks.md)\n\nTodo\n------------\n\n- [ ] Support multi mirrors: Cygwin setup can use multi mirrors. They are recorded at last-mirror section in '/etc/setup/setup.rc'. It's useful for using [Cygwinports](http://cygwinports.org/).\n- [ ] Support upgrade: But maybe, busy resources can not be upgraded, and rebase problem will happen. Cygwin setup resolves by replacing them at next reboot.\n- [ ] Support dependency check for remove subcommand.\n\nKnown Problems\n------------\n\nFor older known problems see [known_problems.md](known_problems.md).\n\nLicense\n-------\n\n[![The MIT license](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE) \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkou1okada%2Fapt-cyg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkou1okada%2Fapt-cyg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkou1okada%2Fapt-cyg/lists"}