Estou executando uma VM Fedora em um host Fedora e estou tentando instalar o emacs. Por motivos, não consigo acessar a internet da VM. Posso fazer rsync entre o host e a VM, mas yum/apt/etc é uma caixa preta para mim, então não tenho certeza se há algo que preciso copiar além de /bin/emacs ou /usr/bin/emacs (também não tenho certeza da diferença aí?)
Você não pode simplesmente copiar um binário e esperar que ele funcione. Você estaria perdendo 99% do emacs se fizesse isso, e todas as dependências que ele tem. Você precisará realmente fazer as mesmas coisas que acontecem em um sistema com conexão à internet quando você
dnf install emacs
.Francamente, a maneira mais fácil seria "reprovisionar a VM" (ou seja, configurá-la do zero, com acesso à Internet) e instalar o emacs enquanto faz isso.
Obviamente, isso nem sempre é desejável. Caso você se pergunte como gerenciar isso: você pode usar arquivos kickstart para automatizar a instalação completa do fedora (em uma VM, você normalmente não quer fazer nada extravagante com particionamento e coisas assim,
Então, a alternativa (ignorando completamente se isso é sobre dnf, ou apt, ou nuget, ou anaconda ou pip ou qualquer outro gerenciador de pacotes) seria
Note que 1. é bastante importante, porque instalar um pacote emacs novo pode exigir uma dependência em uma versão mais nova do que a que já está disponível na máquina. Você também pode simplesmente baixar todos os pacotes potencialmente usados – mas isso é uma instalação completa do Fedora, e não sei se vale a pena. Uma alternativa seria se tornar seu próprio espelho do Fedora, mas isso vai baixar todos os pacotes do Fedora, só para que você possa instalar alguns . Você precisaria ter muito espaço de armazenamento, tempo e também pode querer considerar o efeito que isso tem na largura de banda do espelho disponível para usuários que baixam apenas o que precisam.
O que eu provavelmente faria em vez disso seria:
flatpak create-usb
para obter o flatpak do emacs e todas as suas dependências em algo que pode ser movido para a VM.Em ambos os casos, você precisa de algum software específico (podman ou flatpak) disponível na VM.
Ou eu contornaria a necessidade do emacs na VM completamente, e apenas usaria os recursos de acesso remoto do emacs (TRAMP, nome terrível) para acessar os arquivos que você pode querer editar de uma VM diferente ou da máquina host via rede. Isso requer algum tipo de acesso à rede.