| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- __package__ = 'plugins_pkg.npm'
- from typing import List
- from pydantic import InstanceOf
- from pydantic_pkgr import BinProvider, BinName, BinaryOverrides
- from abx.archivebox.base_binary import BaseBinary, env, apt, brew
- class NodeBinary(BaseBinary):
- name: BinName = 'node'
- binproviders_supported: List[InstanceOf[BinProvider]] = [apt, brew, env]
-
- overrides: BinaryOverrides = {
- apt.name: {'packages': ['nodejs']},
- }
- NODE_BINARY = NodeBinary()
- class NpmBinary(BaseBinary):
- name: BinName = 'npm'
- binproviders_supported: List[InstanceOf[BinProvider]] = [apt, brew, env]
- overrides: BinaryOverrides = {
- apt.name: {'packages': ['npm']}, # already installed when nodejs is installed
- brew.name: {'install': lambda: None}, # already installed when nodejs is installed
- }
-
- NPM_BINARY = NpmBinary()
- class NpxBinary(BaseBinary):
- name: BinName = 'npx'
- binproviders_supported: List[InstanceOf[BinProvider]] = [apt, brew, env]
-
- overrides: BinaryOverrides = {
- apt.name: {'install': lambda: None}, # already installed when nodejs is installed
- brew.name: {'install': lambda: None}, # already installed when nodejs is installed
- }
- NPX_BINARY = NpxBinary()
|