You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
1.1 KiB
Markdown
34 lines
1.1 KiB
Markdown
# RPM Packaging guide
|
|
|
|
https://rpm-packaging-guide.github.io/
|
|
|
|
This guide seems a little more detailed as compared to the IBM tutorial. More core concepts, and less copy pasta.
|
|
|
|
Project list:
|
|
|
|
|Program name| Purpose|
|
|
| ------------- |-------------|
|
|
| hello-world | Your first rpm package. Creates a hello world script and rpm from one spec file.|
|
|
| | |
|
|
|
|
|
|
# Using the install command
|
|
|
|
`install` as a command is provided to the system through the GNU Core utilities. It places an artifact to the specified directory in the filesystem with a specified set of permissions.
|
|
|
|
The below command is an example of using the install command to place the bello shell script we have in the `/usr/bin` directory with full permissions to the user, and read+execute permissions to the group and all users.
|
|
|
|
```bash
|
|
sudo install -m 0755 bello /usr/bin/bello
|
|
```
|
|
|
|
We can add an install directive to our make files so that we can run `make install`. _note make files are usually written by the developer and not the packager_
|
|
|
|
|
|
# Tips and Tricks
|
|
|
|
An RPM is a CPIO archive. You can view it's contents without installing it by:
|
|
|
|
```bash
|
|
rpm2cpio <your_package>.rpm | cpio -ivmd
|
|
``` |