{"id":13828655,"url":"https://github.com/composer/windows-setup","last_synced_at":"2025-04-13T05:30:31.498Z","repository":{"id":4996776,"uuid":"6154971","full_name":"composer/windows-setup","owner":"composer","description":"The Windows installer for the Composer PHP Dependency Manager","archived":false,"fork":false,"pushed_at":"2023-11-21T15:43:50.000Z","size":6067,"stargazers_count":145,"open_issues_count":0,"forks_count":68,"subscribers_count":15,"default_branch":"main","last_synced_at":"2025-03-24T09:39:47.324Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Inno Setup","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"takaswie/snd-firewire-improve","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/composer.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2012-10-10T09:29:41.000Z","updated_at":"2025-03-17T06:51:06.000Z","dependencies_parsed_at":"2024-01-28T01:06:59.436Z","dependency_job_id":"c302ab66-00f5-47da-9f0b-2a369d5c675d","html_url":"https://github.com/composer/windows-setup","commit_stats":{"total_commits":364,"total_committers":5,"mean_commits":72.8,"dds":"0.019230769230769273","last_synced_commit":"961211145f6fe73aba7402abceb467593445a555"},"previous_names":[],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/composer%2Fwindows-setup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/composer%2Fwindows-setup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/composer%2Fwindows-setup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/composer%2Fwindows-setup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/composer","download_url":"https://codeload.github.com/composer/windows-setup/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248670158,"owners_count":21142894,"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":[],"created_at":"2024-08-04T09:02:57.293Z","updated_at":"2025-04-13T05:30:31.469Z","avatar_url":"https://github.com/composer.png","language":"Inno Setup","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# Composer-Setup\n\n[![build](https://github.com/composer/windows-setup/workflows/build/badge.svg)](https://github.com/composer/windows-setup/actions)\n\nThe Windows installer for the [Composer][composer] PHP Dependency Manager. [**Download**][download]\nthe latest release.\n\n## Contents\n* [About](#About)\n* [Details](#Details)\n* [Php Ini File](#Php-Ini-File)\n* [Troubleshooting](#Troubleshooting)\n* [Uninstalling](#Uninstalling)\n* [Install Locations](#Install-Locations)\n* [Environment Variables](#Environment-Variables)\n* [Command Line Parameters](#Command-Line-Parameters)\n* [Unattended Installation](#Unattended-Installation)\n* [License](#License)\n\n\u003ca name=\"About\"\u003e\u003c/a\u003e\n## About\n\nComposer-Setup downloads and installs Composer so you can use it easily from the command line.\n\n* it looks for PHP on your computer.\n* it creates or modifies `php.ini` if required.\n* it adds PHP to the path.\n* it installs Composer globally - just type `composer` from any location to use it.\n* it lets you use the Command Prompt, Git Bash, Msys, Msys2 and Cygwin.\n* it can be deployed unattended for silent installs/uninstalls.\n\n[Download][download] and run the latest release and in the majority of cases this is all you need to\ndo. The install process is described in more detail below.\n\nComposer-Setup is written with [Inno Setup][inno], which is a powerful free installer for Windows\nprograms.\n\n\u003ca name=\"Details\"\u003e\u003c/a\u003e\n## Details\n\nFirst you must choose the installation type. By default Composer will be installed to a\n[fixed location](#Locations) with a Control Panel uninstaller. You can choose _Developer Mode_ if\nyou want more control, which will install Composer anywhere you want without an uninstaller.\n\nThe next step is to find the location of your `php.exe`, which is the PHP command line interpreter.\nThe installer searches common locations on your computer and presents you with its findings. If PHP\nis already in your path then it will display this value. If not, or you want to choose a different\nPHP, you must select from the list or hunt around manually.\n\nThe installer will then check that PHP and your path are set up correctly. If it finds any errors it\nwill give you the chance to fix them. It will also offer to either create or modify the `php.ini`\nfile if required settings do not exist. See [Php Ini File](#Php-Ini-File) for more information.\n\nNext, the installer will ask if you need a proxy server to connect to the internet. If it finds any\nvalues in your *Internet Settings* or your environment, then the proxy url will be displayed.\n\nAfter you have reviewed and accepted your settings, the installer will download Composer and set\neverything up. If your environment has been changed, it is important to close your current terminal\nand open a new one so that the changes get loaded. The installer will remind you if this is the case.\n\n\u003ca name=\"Php-Ini-File\"\u003e\u003c/a\u003e\n## Php Ini File\nComposer-Setup will either create a new `php.ini` or modify an existing file if any settings needed\nby Composer are missing:\n\n* `allow_url_fopen` set to `On`\n* `curl`, `mbstring` and `open_ssl` extensions enabled\n\nWhen creating a new file, the _php.ini-production_ file is used with `extension_dir` and\n`date.timezone` values appropriately set. When modifying an existing file, a backup is created in\nthe same directory, named `php.ini~orig`.\n\n\u003ca name=\"Troubleshooting\"\u003e\u003c/a\u003e\n## Troubleshooting\nComposer-Setup creates a log file, which may be useful to review if you experience any installation\nissues. This is stored in your temp directory `AppData\\Local\\Temp` with a formatted filename:\n`Setup Log YYYY-MM-DD #nnn.txt`.\n\n\u003ca name=\"Uninstalling\"\u003e\u003c/a\u003e\n## Uninstalling\n\nThe uninstall program is available from the Control Panel (or Apps and Features) and is named\n`Composer - PHP Dependency Manager`. It offers the option to remove user cache and configuration\ndata (for all users, if run as an Adminstrator) from:\n\n* `\u003cuser\u003e\\AppData\\Local\\Composer`\n* `\u003cuser\u003e\\AppData\\Roaming\\Composer`\n\nThe uninstall program will not be available if you installed in _Developer Mode_. To manually\nuninstall you must delete the composer files from the location you installed to and update the\n[environment](#Environment-Variables).\n\n\u003ca name=\"Locations\"\u003e\u003c/a\u003e\n## Install Locations\n\nIn a default installation, the install directories are pre-determined and depend on whether you have\nchosen to install for _All Users_ or the _Current User_.\n\n**All Users install:**\n\n* `C:\\\u003cProgram Files\u003e\\ComposerSetup` - uninstaller.\n* `C:\\ProgramData\\ComposerSetup\\bin` - composer files.\n\n**Current User install:**\n\n* `C:\\Users\\\u003cuser\u003e\\AppData\\Local\\ComposerSetup` - uninstaller.\n* `C:\\Users\\\u003cuser\u003e\\AppData\\Local\\ComposerSetup\\bin` - composer files.\n\nIn a _Developer Mode_ installation you can install the composer files to a location of your choice.\n\n\u003ca name=\"Environment-Variables\"\u003e\u003c/a\u003e\n## Environment Variables\n\nThe installer will modify the System path for _All Users_ installs, or the User path for\n_Current User_ installs:\n\n* the path to PHP will be added if missing, or replaced if a different PHP is selected. For default\n_All Users_ installs you must confirm that you accept responsibility for the access control of this\nlocation. This is important if other people use the computer because it could enable escalation of\npriveleges exploits.\n* the path to the composer files directory will be added/replaced.\n\nIn addition the installer will add the following to the environment of the current user:\n\n* the `C:\\Users\\\u003cuser\u003e\\AppData\\Roaming\\Composer\\vendor\\bin` directory to your path.\n* an `http_proxy` value, if a proxy is specified in the installer.\n\nThe uninstaller will remove the path to the composer files directory and, if the user data was\nremoved, the `Composer\\vendor\\bin` path. The PHP path and any `http_proxy` value will be left intact.\n\n\u003ca name=\"Command-Line-Parameters\"\u003e\u003c/a\u003e\n## Command Line Parameters\n\nThe installer supports _Inno Setup's_ [Setup Command Line Parameters][setupcmds], although not all\nof them are relevant. Of interest are the `/VERYSILENT` or `/SILENT` options for\n[Unattended Installs](#Unattended-Installs) and the `/SAVEINF=` and `/LOADINF=` directives for\ncreating and using a settings file. The following additional parameters are available:\n\n* `/PHP=\"folder-or-exe\"` uses PHP from the specified location, adding it to the path if necessary.\n* `/DEV=\"path\"` selects _Developer Mode_ and installs Composer to the specified path without an\nuninstaller.\n* `/PROXY=proxy-url` is the proxy url to use and [save](#Environment-Variables), but only if no\nproxy environment variables exist. The [log file](#Troubleshooting) automatically reports the\ncommand line parameters so any sensitive data in the proxy url will be visible. This is not the case\nwhen the proxy url is specified in a settings file.\n\nThe uninstall program supports _Inno Setup's_ [Uninstaller Command Line Parameters][uninscmds],\nplus the following parameters:\n\n* `/DELETE=local` removes `\u003cuser\u003e\\AppData\\Local\\Composer` data.\n* `/DELETE=all` additionally removes `\u003cuser\u003e\\AppData\\Roaming\\Composer` data.\n\n\u003ca name=\"Unattended-Installation\"\u003e\u003c/a\u003e\n## Unattended Installs\n\nUnattended installs and uninstalls require the `/VERYSILENT /SUPPRESSMSGBOXES` command line options.\n\n* The confirmation needed to add/replace a PHP folder on the System [path](#Environment-Variables)\nis bypassed on unattended installs.\n* User cache and configuration data is not removed on unattended uninstalls unless specified with\nthe `/DELETE=` parameter (as above), which will apply to all users if being run as an Administrator.\n\n\u003ca name=\"License\"\u003e\u003c/a\u003e\n## License\n\nComposer-Setup is licensed under the MIT License - see the `LICENSE` file for details\n\n\n  [composer]:   https://getcomposer.org/\n  [download]:   https://github.com/johnstevenson/composer-setup/releases/latest\n  [inno]:       https://www.jrsoftware.org/isinfo.php\n  [setupcmds]:  https://jrsoftware.org/ishelp/topic_setupcmdline.htm\n  [uninscmds]:  https://jrsoftware.org/ishelp/topic_uninstcmdline.htm\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomposer%2Fwindows-setup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcomposer%2Fwindows-setup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcomposer%2Fwindows-setup/lists"}