Not much has been mentioned about urpmi-proxy for Mageia. Indeed, the somewhat cryptic documentation for it appears to have been written around the time of Mageia5 in a breezy, informal style. Once I get it working, I hope to flesh out the documentation here.
In theory, urpmi-proxy works as a local proxy for a Mageia repository. You set it as the source repository for all your machines and it downloads and distributes only what packages you need.
For the most part, little configuration is needed "out of the box". It is configured by default to use the existing repositories that are already configured on the host/server machine but as pointed out, this creates a recursive loop should you update the server itself.
There are other package management systems available from Mageia, notably dnf which will become the standard system only after the Mageia build system, dependent on urpmi, can be translated to dnf. Although untried at this point, it might be possible to update the server using dnf and not encounter a recursive loop.
Configuring the Server
Simply invoke
$ sudo urpmi urpmi-proxy
And this will also install the apache webserver, which is used to serve the files to your other machines.
Backup the urpmi-proxy config file found at /etc/urpmi-proxy.conf and then, after checking for an appropriate http mirror for you to use from the Mageia Mirrors Database, modify /etc/urpmi-proxy.conf similarly as in the following example
$sources = [ 'http://mirror.math.princeton.edu/pub/mageia/'
];
This will configure your urpmi-proxy server. There are other configuration options that can be modified in the well-commented configuration file. It can now serve files for any release version and architecture that is available from the server you selected from the database.
Set apache to start at every boot and then start it.
$ sudo chkconfig httpd on
$ sudo systemctl start httpd.service
Configure the Client Machine
You need to remove the urpmi source already configured for the client machine by invoking
$ sudo urpmi.removemedia -a
And point it at your urpmi-proxy server with
$ sudo urpmi.addmedia --distrib 'http://your.local.urpmi-proxy-server/mageia/distrib/7.1/x86_64'
You can use your urpmi-proxy server to serve any version and any architecture by specifying the appropriate path in the command above.
RESOURCES
HOWTO proxy rpm using urpmi-proxy, Mageia Forum
Urpmi-proxy, Mageia Wiki
Urpmi, Mageia Wiki
Mageia mirrors database
In theory, urpmi-proxy works as a local proxy for a Mageia repository. You set it as the source repository for all your machines and it downloads and distributes only what packages you need.
For the most part, little configuration is needed "out of the box". It is configured by default to use the existing repositories that are already configured on the host/server machine but as pointed out, this creates a recursive loop should you update the server itself.
There are other package management systems available from Mageia, notably dnf which will become the standard system only after the Mageia build system, dependent on urpmi, can be translated to dnf. Although untried at this point, it might be possible to update the server using dnf and not encounter a recursive loop.
Configuring the Server
Simply invoke
$ sudo urpmi urpmi-proxy
And this will also install the apache webserver, which is used to serve the files to your other machines.
Backup the urpmi-proxy config file found at /etc/urpmi-proxy.conf and then, after checking for an appropriate http mirror for you to use from the Mageia Mirrors Database, modify /etc/urpmi-proxy.conf similarly as in the following example
$sources = [ 'http://mirror.math.princeton.edu/pub/mageia/'
];
This will configure your urpmi-proxy server. There are other configuration options that can be modified in the well-commented configuration file. It can now serve files for any release version and architecture that is available from the server you selected from the database.
Set apache to start at every boot and then start it.
$ sudo chkconfig httpd on
$ sudo systemctl start httpd.service
Configure the Client Machine
You need to remove the urpmi source already configured for the client machine by invoking
$ sudo urpmi.removemedia -a
And point it at your urpmi-proxy server with
$ sudo urpmi.addmedia --distrib 'http://your.local.urpmi-proxy-server/mageia/distrib/7.1/x86_64'
You can use your urpmi-proxy server to serve any version and any architecture by specifying the appropriate path in the command above.
RESOURCES
HOWTO proxy rpm using urpmi-proxy, Mageia Forum
Urpmi-proxy, Mageia Wiki
Urpmi, Mageia Wiki
Mageia mirrors database
Comments