from thefuck.specific.archlinux import get_pkgfile, archlinux_env from thefuck.shells import shell def match(command): return 'not found' in command.output and get_pkgfile(command.script) def get_new_command(command): packages = get_pkgfile(command.script) formatme = shell.and_('{} -S {}', '{}') return [ formatme.format(pacman, package, command.script) for package in packages ] enabled_by_default, pacman = archlinux_env()
""" Fixes wrong package names with pacman or yaourt. For example the `llc` program is in package `llvm` so this: yaourt -S llc should be: yaourt -S llvm """ from thefuck.utils import replace_command from thefuck.specific.archlinux import get_pkgfile, archlinux_env def match(command): return (command.script.startswith(('pacman', 'sudo pacman', 'yaourt')) and 'error: target not found:' in command.stderr) def get_new_command(command): pgr = command.script.split()[-1] return replace_command(command, pgr, get_pkgfile(pgr)) enabled_by_default, _ = archlinux_env()
from thefuck.specific.archlinux import get_pkgfile, archlinux_env from thefuck.shells import shell def match(command): return 'not found' in command.output and get_pkgfile(command.script) def get_new_command(command): packages = get_pkgfile(command.script) formatme = shell.and_('{} -S {}', '{}') return [formatme.format(pacman, package, command.script) for package in packages] enabled_by_default, pacman = archlinux_env()