Red Hat Training

A Red Hat training course is available for RHEL 8

4.3.4. Utilização de scripts sem casca em um arquivo SPEC

A opção -p scriptlet em um arquivo SPEC permite que o usuário invoque um intérprete específico em vez do intérprete shell scripts padrão (-p /bin/sh).

O procedimento a seguir descreve como criar um roteiro, que imprime uma mensagem após a instalação do programa pello.py:

Procedimento

  1. Abra o arquivo pello.spec.
  2. Encontre a seguinte linha:

    install -m 0644 %{nome}.py* %{buildroot}/usr/lib/%{nome}/
  3. Sob a linha acima, inserir:

    %post -p /usr/bin/python3
    print("This is {} code".format("python"))
  4. Construa seu pacote conforme descrito em Seção 3.3, “RPMs de construção”.
  5. Instale seu pacote:

    # yum install /home/<username>/rpmbuild/RPMS/noarch/pello-0.1.2-1.el8.noarch.rpm
  6. Verifique a mensagem de saída após a instalação:

    Installing       : pello-0.1.2-1.el8.noarch                              1/1
    Running scriptlet: pello-0.1.2-1.el8.noarch                              1/1
    This is python code
Nota

Para usar um script Python 3, inclua a seguinte linha em install -m em um arquivo SPEC:

% poste -p /usr/bin/pithon3

Para usar um roteiro Lua, inclua a seguinte linha em install -m em um arquivo SPEC:

%post -p <lua>

Desta forma, você pode especificar qualquer intérprete em um arquivo da SPEC.