Notices: This section not yet converted to new layout. Download stats are rolling back out.



Package test results are passing.

Private CDN cached downloads available for licensed customers. Never experience 404 breakages again! Learn more...

This package was approved as a trusted package on 8/12/2015.


This package always installs the latest version of Atom available.
So the version of Atom installed may be later than the version listed
as the chocolatey package version.

The version of Atom installed will also automatically update so you will
not need to upgrade it manually via chocolatey.

To install Atom, run the following command from the command line or from PowerShell:

C:\> choco install atom

To upgrade Atom, run the following command from the command line or from PowerShell:

C:\> choco upgrade atom


  • tools\chocolateyInstall.ps1 Show
    # Remove old apm shim
    $apmPath = Join-Path $nugetExePath "apm.bat"
    if (Test-Path ($apmPath)) {Remove-Item $apmPath -force}
    # Remove old atom.exe shim
    $atomPath = Join-Path $nugetExePath "atom.exe"
    if (Test-Path ($atomPath)) {Remove-Item $atomPath -force}
    # Run installer
    $packageName = 'Atom'
    $url = ''
    $installerType = 'exe'
    $silentArgs = '--silent'
    Install-ChocolateyPackage $packageName $installerType $silentArgs $url
  • tools\chocolateyUninstall.ps1 Show
    $localApplicationData = $([System.Environment]::GetFolderPath([System.Environment+SpecialFolder]::LocalApplicationData))
    $atomFolder = Join-Path $localApplicationData "atom"
    $updateExe = Join-Path $atomFolder "Update.exe"
    Start-Process -FilePath $updateExe -ArgumentList "--uninstall" -Verb "RunAs" -Wait
  • tools\functions.ps1 Show
    function Install-ChocolateyShortcut {
        [string] $shortcutFilePath,
        [string] $targetPath,
        [string] $workingDirectory,
        [string] $arguments,
        [string] $iconLocation,
        [string] $description
      Write-Debug "Running 'Install-ChocolateyShortcut' with parameters ShortcutFilePath: `'$shortcutFilePath`', TargetPath: `'$targetPath`', WorkingDirectory: `'$workingDirectory`', Arguments: `'$arguments`', IconLocation: `'$iconLocation`', Description: `'$description`'";
      if(!$shortcutFilePath) {
        Write-ChocolateyFailure "Install-ChocolateyShortcut" "Missing ShortCutFilePath input parameter."
      if(!$targetPath) {
        Write-ChocolateyFailure "Install-ChocolateyShortcut" "Missing TargetPath input parameter."
      if(!(Test-Path($targetPath))) {
        Write-ChocolateyFailure "Install-ChocolateyShortcut" "TargetPath does not exist, so can't create shortcut."
      if($iconLocation) {
        if(!(Test-Path($iconLocation))) {
          Write-ChocolateyFailure "Install-ChocolateyShortcut" "IconLocation does not exist, so can't create shortcut."
      if($workingDirectory) {
        if(!(Test-Path($workingDirectory))) {
          Write-ChocolateyFailure "Install-ChocolateyShortcut" "WorkingDirectory does not exist, so can't create shortcut."
      Write-Debug "Creating Shortcut..."
      try {
        $global:WshShell = New-Object -com "WScript.Shell"
          $lnk = $global:WshShell.CreateShortcut($shortcutFilePath)
          $lnk.TargetPath = $targetPath
        $lnk.WorkingDirectory = $workingDirectory
          $lnk.Arguments = $arguments
          if($iconLocation) {
              $lnk.IconLocation = $iconLocation
          $lnk.Description = $description
        Write-Debug "Shortcut created."
        Write-ChocolateySuccess "Install-ChocolateyShortcut completed"
      catch {
        Write-ChocolateyFailure "Install-ChocolateyShortcut" "There were errors attempting to create shortcut. The error message was '$_'."
    function Install-BinFile {
        [string] $name,
        [string] $path
      Write-Debug "Running 'Install-BinFile' for $name with path:`'$path`'";
      $packageBatchFileName = Join-Path $nugetExePath "$name.bat"
      if (Test-Path ($packageBatchFileName)) {Remove-Item $packageBatchFileName -force}
      $path = $path.ToLower().Replace($nugetPath.ToLower(), "..\").Replace("\\","\")
      $path = "%DIR%$($path)"
      $pathBash = $path.Replace("%DIR%..\","`$DIR/../").Replace("\","/")
      Write-Host "Adding $packageBatchFileName and pointing to `'$path`'." -ForegroundColor $Note
    "@echo off
    SET DIR=%~dp0%
    cmd /c ""$path %*""
    exit /b %ERRORLEVEL%" | Out-File $packageBatchFileName -encoding ASCII
    function Install-ChocolateyExplorerMenuItemEx {
      [string]$type = "file"
    try {
      Write-Debug "Running 'Install-ChocolateyExplorerMenuItem' with menuKey:'$menuKey', menuLabel:'$menuLabel', command:'$command', type '$type', iconLocation:'$iconLocation'"
      $argName = "%1"
      if($type -eq "file") {
        $key = "*"
      elseif($type -eq "directory") {
      elseif($type -eq "background") {
      } else{
        return 1
      $iconCmd =""
      if($iconLocation) {
        $iconCmd="Set-ItemProperty -LiteralPath 'HKCR:\$key\shell\$menuKey' -Name 'Icon'  -Value '$iconLocation'"
      $elevated = "`
        if( -not (Test-Path -path HKCR:) ) {New-PSDrive -Name HKCR -PSProvider registry -Root Hkey_Classes_Root};`
        if(!(test-path -LiteralPath 'HKCR:\$key\shell\$menuKey')) { new-item -Path 'HKCR:\$key\shell\$menuKey' };`
        Set-ItemProperty -LiteralPath 'HKCR:\$key\shell\$menuKey' -Name '(Default)'  -Value '$menuLabel';`
        if(!(test-path -LiteralPath 'HKCR:\$key\shell\$menuKey\command')) { new-item -Path 'HKCR:\$key\shell\$menuKey\command' };`
        Set-ItemProperty -LiteralPath 'HKCR:\$key\shell\$menuKey\command' -Name '(Default)' -Value '$command \`"$argName\`"';`
      return $elevated
    catch {
        $errorMessage = "'$menuKey' explorer menu item was not created $($_.Exception.Message)"
        Write-Error $errorMessage
        throw $errorMessage

Virus Scan Results

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.


This package has no dependencies.


Software Author(s)



Release Notes

Version History

Version Downloads Last updated Status
Atom 0.174.1 22850 Thursday, January 15, 2015 approved
Atom 0.174.0 109 Thursday, January 15, 2015 approved
Atom 0.155.0 10741 Tuesday, December 9, 2014 approved
Atom 0.154.0 813 Tuesday, December 9, 2014 approved
Atom 0.153.0 1816 Friday, December 5, 2014 approved
Atom 0.152.0 2692 Monday, December 1, 2014 approved
Atom 0.150.0 5364 Thursday, November 20, 2014 approved
Atom 0.149.0 918 Thursday, November 20, 2014 approved
Atom 0.148.0 323 Wednesday, November 19, 2014 approved
Show More

Discussion for the Atom Package

Ground rules:

  • This discussion is only about Atom and the Atom package. If you have feedback for Chocolatey, please contact the google group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Atom, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.

comments powered by Disqus