cache-dir.js 610 B

123456789101112131415
  1. const { resolve } = require('node:path')
  2. const { tmpdir, homedir } = require('node:os')
  3. module.exports = (fakePlatform = false) => {
  4. const temp = tmpdir()
  5. const uidOrPid = process.getuid ? process.getuid() : process.pid
  6. const home = homedir() || resolve(temp, 'npm-' + uidOrPid)
  7. const platform = fakePlatform || process.platform
  8. const cacheExtra = platform === 'win32' ? 'npm-cache' : '.npm'
  9. const cacheRoot = (platform === 'win32' && process.env.LOCALAPPDATA) || home
  10. return {
  11. cacache: resolve(cacheRoot, cacheExtra, '_cacache'),
  12. tufcache: resolve(cacheRoot, cacheExtra, '_tuf'),
  13. }
  14. }