Red Hat Training

A Red Hat training course is available for RHEL 8

3.2.4. Um arquivo SPEC de exemplo para um programa escrito em bash

Esta seção mostra um arquivo SPEC de exemplo para o programa bello que foi escrito em bash. Para maiores informações sobre bello, veja Seção 2.1.1, “Exemplos de código fonte”.

Um arquivo SPEC de exemplo para o programa bello escrito em bash

Name:           bello
Version:        0.1
Release:        1%{?dist}
Summary:        Hello World example implemented in bash script

License:        GPLv3+
URL:            https://www.example.com/%{name}
Source0:        https://www.example.com/%{name}/releases/%{name}-%{version}.tar.gz

Requires:       bash

BuildArch:      noarch

%description
The long-tail description for our Hello World Example implemented in
bash script.

%prep
%setup -q

%build

%install

mkdir -p %{buildroot}/%{_bindir}

install -m 0755 %{name} %{buildroot}/%{_bindir}/%{name}

%files
%license LICENSE
%{_bindir}/%{name}

%changelog
* Tue May 31 2016 Adam Miller <maxamillion@fedoraproject.org> - 0.1-1
- First bello package
- Example second item in the changelog for version-release 0.1-1

A diretiva BuildRequires, que especifica as dependências de tempo de construção do pacote, foi excluída porque não há etapa de construção para bello. Bash é uma linguagem de programação interpretada em bruto, e os arquivos são apenas instalados até sua localização no sistema.

A diretiva Requires, que especifica as dependências de tempo de execução do pacote, inclui apenas bash, pois o script bello requer apenas o ambiente shell bash para ser executado.

A seção %build, que especifica como construir o software, está em branco, porque um bash não precisa ser construído.

Para instalar bello você só precisa criar o diretório de destino e instalar lá o arquivo de script executável bash. Portanto, você pode usar o comando install na seção %install. As macros RPM permitem fazer isso sem caminhos de codificação rígidos.