code: function readFilesAndComputeDesktopHash(dir) {
      const desktopHash = crypto.createHash('sha1');
  
      return new Promise((resolve, reject) => {
          getFileList(dir)
              .catch(reject)
              .then(readAndHashFiles)
              .catch(reject)
              .then((result) => {
                  const hash = result.files.reduce(
                      (tmpHash, file) => {
                          tmpHash += result.fileHashes[file];
                          return tmpHash;
                      }, ''
                  );
                  desktopHash.update(hash);
                  result.hash = desktopHash.digest('hex');
                  resolve(result);
              });
      });
  }
docs: Reads files from .desktop and computes a version hash.
  
  @param {string} dir - path
  @returns {Promise<Object>}