É possível copiar e colar pacotes/software para outra máquina no Linux?

É possível copiar e colar pacotes/software para outra máquina no Linux?

Aqui está um exemplo de cenário:

Comece em um novo diretório, digamos /myapps . Instale um python separado (pré-compilado ou de origem) para dizer ./usr/bin (em relação ao diretório de instalação e não ao sistema /usr/bin) e instale vários ovos neste python personalizado. Isso pode ser feito usando talvez algo como buildout .

Agora, outro usuário com a mesma versão do sistema operacional apenas rsync é a pasta que mantém a estrutura exata da pasta, ele poderá usar python assim como o outro usuário. Ele realmente precisa instalar as coisas novamente?

Eu pensei que a maior parte do gerenciador de pacotes Linux funcionasse assim com /myapps análogo ao que /usr é, ou seja, uma convenção padrão sobre onde os arquivos devem ser mantidos. A compilação não é obrigatória a menos que você queira otimizar como na instalação do gentoo. Em outras palavras, acho que o que a maioria dos gerenciadores de pacotes faz é:

1) Verificação de requisitos

2) Copie/cole o material pré-compilado em um local padrão como /usr/lib /usr/bin

3) Faça uma atualização do menu

Algumas pré-condições na primeira máquina:

Instale tudo dentro deste diretório e não fora dele. Ele é executado como um usuário normal e sem sudo.

No Windows, acho que isso será um desafio por causa do registro, etc., que não tenho certeza como o conceito normal de sistema de arquivos. Mas no *nix isso deveria funcionar tão simples assim?

Responder1

É perfeitamente possível (mas geralmente você obtém o mesmo resultado criando o virtualenv e agrupando toda a raiz do virtualenv). Você terá problemas se alguns pacotes python precisarem de bibliotecas externas e outro usuário não as tiver instaladas (é por isso que você geralmente faz isso com virtualenv e pip bundle/pip freeze).

O gerenciador de pacotes executa os chamados scripts de instalação. Eles podem conter qualquer código, mas geralmente adicionam usuários/grupos necessários, editam algumas outras configurações (porque você não pode "instalar" uma linha na configuração; o movimento para dividir todos os *.conf's em *.conf.d ajuda um pouco, mas ainda não estamos nem perto de terminar), mas com a maioria dos pacotes python, você ficará bem.

informação relacionada