Porteus Package Manager testing
Posted: 31 May 2011, 17:04
Porteus Package Manager is in testing phase. I have stopped at the point where modules are downloaded to computer. It will need to be run from Porteus rc2 Next step is to organize activation/deactivation.
The XZM team scripts
1. slackconverter.sh
2. multi-slackonverter.sh
3. indexgen.sh
4. Porteus-Package-Manager-1.0-i386-1.xzm
Slackonverter & multi-slackonverter.sh
Place the slackonverter.sh and multi-slackonverter.sh in the same directory and run the slackonverter.sh file. It will download the required Slackware index files (about 40Mb) and create a module. You can then remove the two scripts, activate the module and there will be a menu item under 'system'. You can also run from console (prefered) using: porteus-package-manager
slackonverter is used to convert Slackware packages to Porteus compliant modules. It supportes the following sources for your slackware packages:
1. Slackware ISO
2. Slackware apckages in a folder
3. Single Slackware package
4. Multiple Slackware packages
5. Online Slackware repository
Porteus Package Manager
I've spent a lot of time on this and added some extra features. At the moment it will stop after downloading the packages. I am working on the rest now. It supports:
1. Search for package by category
2. Search for package by name
3. Search packages by library
4. Search packages by keywords
I will add activate/deactivation and some other features shortly. Once you select a module to download all libraries are resolved on the Porteus server. As a fail safe ... just in case the Porteus server doesn't have a suitable library, i have added the ability to search the Slackware repos for the missing dep, download and convert the package into a Porteus module. Hopefully this will never get used ... but is useful for the XZM team.
Steps to create modules for server:
Boot into Porteus with only: 000, 001, 002, 003, 004, 007 base modules activated. We want a basic system with no extra libraries loaded because YOU will be resolving deps based on your system contents.
Here is the system i use. I have a mirror of the Porteus Repo on sda6/ppm. You will need the mirror in order to create the LIBS.TXT and PACKAGES.TXT files (which are vital). An example of my mirror at /mnt/sda6/ppm:
LIBS.TXT
PACKAGES.TXT
network
office
multimedia
blah blah
You can open the script /opt/porteus-scripts/porteus-package-manager and change the BASE= variable from ${OPT} to wherever you keep your LIBS.TXT and PACKAGES.TXT and mirror. (sda6 for me)
Once i have converted a slackware/slacky package to Porteus module i drop it in the relevant folder on sda6. The supplied script (indexgen.sh) should be run from the same location as the LIBS.TXT and PACKAGES.TXT files. Delete the current ones, and run indexgen.sh to create updated ones. Now you can run the Package manager and select your module, and it will find and donload all the dependencies for you even if they don't already exist on the server.
We need to find a common place to upload that everyone can access. Hamza perhaps you can organize this? Once modules have been uploaded either Fanthom or myself will test the modules and upload them to the official server and update the LIBS.TXT & PACKAGES.TXT fies. Ahau if you could go through and have a look at the documentation in the application, perhaps you can improve on it.
Features that ill be added:
Stop the Xdialog from flashing when parsing files. ust one window will stay open with a message that will be updated.
Add a function to update the version of PPM, and also update just the LIBS.TXT & PACKAGES.TXT.
Add a short description of package next to the packages in the menus.
Please take the current script for a good thrashing and try to break it. If you can break it, please try to reproduce again on a clean Porteus. Ahau i think we will go with your idea of uploading the KDE/LXDE and firefox libraries to the server. This way a user can run the script from any environment and the missing libs will be available.
Download: http://ponce.cc/porteus/i486/modules/xzmteam
The XZM team scripts
1. slackconverter.sh
2. multi-slackonverter.sh
3. indexgen.sh
4. Porteus-Package-Manager-1.0-i386-1.xzm
Slackonverter & multi-slackonverter.sh
Place the slackonverter.sh and multi-slackonverter.sh in the same directory and run the slackonverter.sh file. It will download the required Slackware index files (about 40Mb) and create a module. You can then remove the two scripts, activate the module and there will be a menu item under 'system'. You can also run from console (prefered) using: porteus-package-manager
slackonverter is used to convert Slackware packages to Porteus compliant modules. It supportes the following sources for your slackware packages:
1. Slackware ISO
2. Slackware apckages in a folder
3. Single Slackware package
4. Multiple Slackware packages
5. Online Slackware repository
Porteus Package Manager
I've spent a lot of time on this and added some extra features. At the moment it will stop after downloading the packages. I am working on the rest now. It supports:
1. Search for package by category
2. Search for package by name
3. Search packages by library
4. Search packages by keywords
I will add activate/deactivation and some other features shortly. Once you select a module to download all libraries are resolved on the Porteus server. As a fail safe ... just in case the Porteus server doesn't have a suitable library, i have added the ability to search the Slackware repos for the missing dep, download and convert the package into a Porteus module. Hopefully this will never get used ... but is useful for the XZM team.
Steps to create modules for server:
Boot into Porteus with only: 000, 001, 002, 003, 004, 007 base modules activated. We want a basic system with no extra libraries loaded because YOU will be resolving deps based on your system contents.
Here is the system i use. I have a mirror of the Porteus Repo on sda6/ppm. You will need the mirror in order to create the LIBS.TXT and PACKAGES.TXT files (which are vital). An example of my mirror at /mnt/sda6/ppm:
LIBS.TXT
PACKAGES.TXT
network
office
multimedia
blah blah
You can open the script /opt/porteus-scripts/porteus-package-manager and change the BASE= variable from ${OPT} to wherever you keep your LIBS.TXT and PACKAGES.TXT and mirror. (sda6 for me)
Once i have converted a slackware/slacky package to Porteus module i drop it in the relevant folder on sda6. The supplied script (indexgen.sh) should be run from the same location as the LIBS.TXT and PACKAGES.TXT files. Delete the current ones, and run indexgen.sh to create updated ones. Now you can run the Package manager and select your module, and it will find and donload all the dependencies for you even if they don't already exist on the server.
We need to find a common place to upload that everyone can access. Hamza perhaps you can organize this? Once modules have been uploaded either Fanthom or myself will test the modules and upload them to the official server and update the LIBS.TXT & PACKAGES.TXT fies. Ahau if you could go through and have a look at the documentation in the application, perhaps you can improve on it.
Features that ill be added:
Stop the Xdialog from flashing when parsing files. ust one window will stay open with a message that will be updated.
Add a function to update the version of PPM, and also update just the LIBS.TXT & PACKAGES.TXT.
Add a short description of package next to the packages in the menus.
Please take the current script for a good thrashing and try to break it. If you can break it, please try to reproduce again on a clean Porteus. Ahau i think we will go with your idea of uploading the KDE/LXDE and firefox libraries to the server. This way a user can run the script from any environment and the missing libs will be available.
Download: http://ponce.cc/porteus/i486/modules/xzmteam