05.1 (Conspect) Packages. Repository. Community

Distribution

Examples of Distribution are LibreOfiice, Linux, TechLive and so on.

Distribution is not only a product, but also the community that stands behind this distribution and their resources;

Questions about training

(internal communication):

(external communication): Problem 1: This distribution must somehow be delivered to the computer on which we install it; Problem 2: installation; Problem 3: Maintenance (update, error message, corruption check);

History of development

Free Licensing

To support such a repository you need infrastructure and organizational work - figures, human efforts, technical things. Definition :: people who receive a copy of the free software have the following four freedoms

  1. The freedom to run the program for any purpose.
  2. The freedom to study how the program works, and change it.
  3. The freedom to redistribute and make copies.
  4. The freedom to improve the program, and redistribute improved versions.

!The modern trend: the more standard (invariable) your environment in which our software gets, the less need to do extensive testing of the software product.

Communities around distribution

Structure: Kernel(active developers) It's just the developers Users

Defines distribution workflow conventions

A range of tasks within the Repository:

Package

In different communities with different distribution - different concepts of packages. There are 3 big concepts and many, many different For example, Alt Liniux uses a package installer that also removes rpm - a big thing with tasks to install, remove, update, make related actions. The original idea of packages in Linux is very simple: a package is just an archive where we pack the files we need and after installing the package we unpack them.

== Practical part ==

1. Before you do any hard experiments with your installed system - do snapshots. If we suddenly break everything, we always mod on these snapshots to roll back.

Look for different packages on the site and try to install

In the Virtual and/or on your machine, you are logged in from user root:

# rpm -i nameofpackege

We're waiting for the installation. Checking that the package is an archive:

# file nameofpackege

# rpm2cpio nameofpackege > o.cpio

(copy from archive somewhere)

# cpio -itv -I o.cpio

And we see the contents of the nameofpackege package. We can look at the contents and the manual:

# man nameofpackege

Removing:

# rpm -e nameofpackege 

We can check the integrity of the contents of all the files in this package, if anything! However, the team will report quite a few breaches of integrity, as many packages are modified during the installation of the

# rpm --verify --all

When we install a package, if it's tricky enough to deploy the archive inside the file system, sometimes you need to run additional actions. Example,

# rpm --query --scripts avahi -daemon

*To announce system services: creates a user, an alias user before installing the package. Because it requires a package to be installed.

Triggers

Suppose we install the nameofpackege package, it is among other things a desktop program, this program comes with desktop files. A desktop file is a descriptor of our software in different languages, its icon, from where it is launched. The presence of this desktop file should lead to its appearance in our menu. If there is a file - we should launch menu update. If there is a man - we should launch the system of updating documentation pages. These are all triggers.

Update the system:

# apt-get dist-upgrade

Bringing the system to a state where it contains only the freshest packages that are in repositories

For some packages, there are exceptions, for example, you cannot update the kernel in Alt Linux.

HSE/ArchitectureOS/05_PackageRepositoryCommunity/Conspect_en (последним исправлял пользователь NataliaKrauze 2020-05-06 15:48:32)