Official Package Manager

New features which should be implemented in Porteus; suggestions are welcome. All questions or problems with testing releases (alpha, beta, or rc) should go in their relevant thread here, rather than the Bug Reports section.
User avatar
brokenman
Site Admin
Site Admin
Posts: 5439
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Official Package Manager

Post#91 by brokenman » 16 Dec 2011, 02:49

Aaah .. i see. OK no problem, will stick with debian. To be honest i have had it up to the eyeballs with this PPM stuff and want to play with new toys. The good news is i have completed everything except the debian function and will release for further testing in a day or two in both 64 and 32bit.

Seems to play nice for me, i am hoping it does the same for others. I figure the debian function will take me a day or two to implement. Perhaps we will be on target for xmas. :shock:

Ahau is kindly hacking ktsuss for me but if he has no joy i will go with an older version.
How do i become super user?
Wear your underpants on the outside and put on a cape.

Falcony
Full of knowledge
Full of knowledge
Posts: 221
Joined: 01 Jan 2011, 12:44
Location: Russia

Re: Official Package Manager

Post#92 by Falcony » 16 Dec 2011, 05:19

Many of your packages say they were built from Arch sources ... can you tell me how you do this? Is there an FTP repository that they use or do you download and build them manually?
Automatic mode.
Rules for building packages and link to software sourses in Arch ABS - is if my memory is good - getting via rsync. See fidoslax build tools for details thread

And fantom right - for services ans server before start you have to create /etc/rc.d/ in Slackware style manually. I fidoslax i simple disable /etc/rc.d/ scipts form Arch

User avatar
brokenman
Site Admin
Site Admin
Posts: 5439
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Official Package Manager

Post#93 by brokenman » 18 Dec 2011, 02:35

32bit version is now ready for testing. The only disabled feature is the Debian repo function which is still being worked on.

This version includes ktsuss v1.4 for authentication until we can find a way to get v2.0 working nicely with it. Many changes since last version with a nice little bug report feature. Please use it to report anything you find out of the ordinary.

KNOWN BUGS:
Problem with SBO search function which i am too tired to fix tonight but will do so tomorrow.

Grab it from the i486 folder along with gtkdialog which you will need. 64bit is being worked on now and will be uploaded soon.

https://drivehq.com/folder/p9287367.aspx
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
fanthom
Site Admin
Site Admin
Posts: 4548
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland, currently - Cork, IE
Contact:

Re: Official Package Manager

Post#94 by fanthom » 18 Dec 2011, 21:28

hi brokenman,

first of all - amazing job! this is probably one of the best slackware package management tools out there (support for slackbuilds + slacky + slackware).
other nice gems are 'module tools' integrated with it + activate/deactivate with deps resolution - nice :)
btw: should we drop 'porteus module manager' (it was used only for deactivations) and 'porteus module tools' while these functions are already covered by PPM?

here is rather long bug report so dont be too scared :) most issues are small and should be easy to fix.
here it goes:
i'll be refering to 64bit version only:

1) General
- in PPM2 we have /opt/ppm/ppmersion.txt while in PPM3 it's /opt/ppm/ppmversion.txt. this is one of the most important files so it's name and content
should be standarized (current 1.1 rc2 users must download LIBS.TXT and PACKAGES.TXT manually from the server because of ppm1 nad ppm2 incompatibilities)
- some images in /usr/share/themes/ppm and /usr/share/icons/hicolor have executable bit set
- ktsuss-2.0 and even 1.4 are not working with ppm3.bin. with 2.0 i'm getting: 'ERROR(1): Could not get shell environment variable' while starting it from terminal as guest. kstuss version 1.4 does not display any info and just closes. kstuss 2.0 worked fine with ppm2 (ppm2 is unencrypted - maybe that's the root of problems?)
- sbo files are kept in /var/lib/ppm/sbo while other repos in /opt/ppm, maybe sbo could be moved to /opt/ppm as well - just to keep all files in one place.
2) PPM itself
a) after launching PPM go to Porteus repo -> search module by keyword -> type 'opera': i have got around 10 packages like ffmpeg, orc, which seems to not contain 'opera' word in name.
b) Porteus repo -> 'browse online' function porteus forum instead of the repo on ponce's server.
c) Module tools -> create module from a folder:
- typo in 'disable duplicate removal' description
- compression ratio should be set to 4 by default (i believe this is 256k block size?) to keep on the same level as in liblinuxlive
- there should be info at the end: 'module creation failed' or 'success'
- 'list module files' should run 'uloop' after closing the window to not leave any module mounted in /mnt/loop (user may delete module without unmounting)
- 'unpack a module' also does not display any info at the end
- 'install packages' - no info
- 'convert packages' should guide the user that he must choose 'category' for a module. also - got a looping windows asking for a category till i disabled this function. once disabled there should be an option for bringing back 'category' question.
- 'module from changes' - no info success/fail (it could fail for example when there would be no enough space in /tmp)
d) Slackware and slackyd files which are downloaded by PPM are about 40MB and 80MB in case of 64bits (mostly taken by 12.2 repo, do we really need 12.2?)
- search function is working ok after syncing packages database
e) Slackbuilds:
- default repo could be set to 13.37
- when you try to sync the repo for a second time then whole tree is pulled again while only updates should be synced
- editing of the SlackBuild does not save changes in it (i have changed gcc flags from -O2 to -Os and compiler still was building with -O2)
f) Fidoslax repo seems to not work in 64bits, there are 3 xzm modules only but i could'n find even these.
g) activate function works ok but deactivate doesn't


keep up good work brokenman!
Please add [Solved] to your thread title if the solution was found.

User avatar
Hamza
Warlord
Warlord
Posts: 1846
Joined: 28 Dec 2010, 07:41
Distribution: Porteus
Location: France

Re: Official Package Manager

Post#95 by Hamza » 18 Dec 2011, 21:33

Report bug feature doesn't works. :)
NjVFQzY2Rg==

User avatar
brokenman
Site Admin
Site Admin
Posts: 5439
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Official Package Manager

Post#96 by brokenman » 19 Dec 2011, 02:43

- in PPM2 we have /opt/ppm/ppmersion.txt while in PPM3 it's /opt/ppm/ppmversion.txt. this is one of the most important files so it's name and content
should be standarized (current 1.1 rc2 users must download LIBS.TXT and PACKAGES.TXT manually from the server because of ppm1 nad ppm2 incompatibilities)

After next release ppmversion.txt will be removed from the server and only ppmversion will exist. The name changed so future versions can integrate web panels which would read the .TXT file instead of downloading it.

- some images in /usr/share/themes/ppm and /usr/share/icons/hicolor have executable bit set
Fixed

- ktsuss-2.0 and even 1.4 are not working with ppm3.bin. with 2.0 i'm getting: 'ERROR(1): Could not get shell environment variable' while starting it from terminal as guest. kstuss version 1.4 does not display any info and just closes. kstuss 2.0 worked fine with ppm2 (ppm2 is unencrypted - maybe that's the root of problems?)
Yep it seems ktsuss doesn't like encrypted files. Since i have removed the automatic upload of bugreports :sorry: there will be no need to encrypt the files anymore. (only to hide my coding horrors from the world).

- sbo files are kept in /var/lib/ppm/sbo while other repos in /opt/ppm, maybe sbo could be moved to /opt/ppm as well - just to keep all files in one place.
I'd prefer to keep the actual files for sbo in the var/lib/ path to conform with the current SBo standard. The /opt/ppm path only contains index and database files. If you feel strongly about changing it ... it is only one variable to alter.

2) PPM itself
a) after launching PPM go to Porteus repo -> search module by keyword -> type 'opera': i have got around 10 packages like ffmpeg, orc, which seems to not contain 'opera' word in name.

It seems opera was also searching for 'operating' - Fixed.

b) Porteus repo -> 'browse online' function porteus forum instead of the repo on ponce's server.
Done

c) Module tools -> create module from a folder:
- typo in 'disable duplicate removal' description

Thonks. All flixed now.

- compression ratio should be set to 4 by default (i believe this is 256k block size?) to keep on the same level as in liblinuxlive
Now set to 4 which is (32768)

- there should be info at the end: 'module creation failed' or 'success'

Done

- 'list module files' should run 'uloop' after closing the window to not leave any module mounted in /mnt/loop (user may delete module without unmounting)

I had uloop ... but only in the case of pressing a button to close window (which doesn't exist). uloop will now run on window close and trap.

- 'unpack a module' also does not display any info at the end
Fixed. In the case of choosing to open folder after unpack ... this is sufficient for confirmation IMHO

- 'install packages' - no info
Still alot to update in the PPM Handbook but at least it is working for you now. I have added these entries and will add more soon.

- 'convert packages' should guide the user that he must choose 'category' for a module. also - got a looping windows asking for a category till i disabled this function. once disabled there should be an option for bringing back 'category' question
.
Not done yet but will do tomorrow (getting late now)

- 'module from changes' - no info success/fail (it could fail for example when there would be no enough space in /tmp) (has problem)
d) Slackware and slackyd files which are downloaded by PPM are about 40MB and 80MB in case of 64bits (mostly taken by 12.2 repo, do we really need 12.2?)

I'm going to have to change this since appending an existing module fails in every case. User will have to create a unique new module each time. I'd like to keep 12.2 for 32bit PPM because alot of the 13+ stuff has many KDE4 deps and 32bit ends up having runaway resolution (which is why i implemented the runaway limiter).

e) Slackbuilds:
- default repo could be set to 13.37 - done (for 64bit)
- when you try to sync the repo for a second time then whole tree is pulled again while only updates should be synced - added -u switch to rsync command
- editing of the SlackBuild does not save changes in it (i have changed gcc flags from -O2 to -Os and compiler still was building with -O2) - fixed
f) Fidoslax repo seems to not work in 64bits, there are 3 xzm modules only but i could'n find even these.
Seem to work ok here. Search for rsync. Unfortunately due to the layout of the repo i can't use any other method than keyword searching. There is no category listing or versioning. I believe Falcony is going to populate the 64bit repo shortly. I can't even add in a 'browse' function because he has around 3995 modules in the 32bit repo ... and i would have to break them up into something like A-E F-H. He mentioned he will change the format of modules once again (to suit porteus) which is one reason i chose only major repos that maintain a system and stick to it). Fido is a separate section to all others so i can extract it if Falcony wants to translate it into his native language and include in FIDOSlax. (copyleft licensing).

g) activate function works ok but deactivate doesn't
Ah yeah ... forgot about that. Deactivating is a pain ... have to check if anything else requires the file before deactivating. Will also finish this before final. Going to be a busy week for me,
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
fanthom
Site Admin
Site Admin
Posts: 4548
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland, currently - Cork, IE
Contact:

Re: Official Package Manager

Post#97 by fanthom » 19 Dec 2011, 04:06

I'd prefer to keep the actual files for sbo in the var/lib/ path to conform with the current SBo standard.
yes - i also prefer this path so please go with /var/lib/sbopkg instead of /var/lib/ppm so PPM will be able to use sbo repos if present.

glad that you fixed majority of bugs so quick. would be nice to get updated version of PPM before FINAL. as i said in PM: we can move FINAL to the last week of 2011 or even first week in January 2012 (sorry guys but you'll have to wait a bit more).
Please add [Solved] to your thread title if the solution was found.

Falcony
Full of knowledge
Full of knowledge
Posts: 221
Joined: 01 Jan 2011, 12:44
Location: Russia

Re: Official Package Manager

Post#98 by Falcony » 19 Dec 2011, 08:36

Fidoslax repo seems to not work in 64bits, there are 3 xzm modules only but i could'n find even these.
Soon I start bulk build for 64-bit on 64-bit porteus and mass upload to googlecode
I believe Falcony is going to populate the 64bit repo shortly.
Sure. I alredy adopted crux build tool a nd Arch build tool. slax toool build are gou\ing to update soon, it is almost ready. And then start to bulk build
He mentioned he will change the format of modules once again (to suit porteus) which is one reason i chose only major repos that maintain a system and stick to it).
Format basically the same, it just become xzm. But in future - surely go top PPM format
Fido is a separate section to all others so i can extract it if Falcony wants to translate it into his native language and include in FIDOSlax. (copyleft licensing).
No need. All needed to work already inluded to FIDOSlax and GPL. All other regarging fido in repo(few modules) goes under GPL

User avatar
fanthom
Site Admin
Site Admin
Posts: 4548
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland, currently - Cork, IE
Contact:

Re: Official Package Manager

Post#99 by fanthom » 19 Dec 2011, 21:41

@brokenman
Now set to 4 which is (32768)
hmmm... it's 32K while we need 256K. maybe the scale is set incorrectly? 6 should be 1M, 5 - 512K, 4 - 256, 3 - 128K, 2 - 64K, 1 - 32K, 0 (?) 16K.
bigger block size = higher compression, smaller size and slower uncompression

here is second part of PPM3 bug report. there is more feature requests than real bugs so they could be implemented later on for PPM update.

Porteus submenu:
- 'search by library' function searches through whole LIBS.TXT while it should parse only 'OFFERED:' fields. maybe you could devide this
function on two sections: search packages which are using library x, search packages which are offering library x.
- while i use 'browse porteus modules' function it launches dolphin and main PPM windows stays blank/inactive till i close dolphin.
maybe it could be sent to the background? (same story for 'browse online' and firefox)

- Slackware submenu:
a) 'install package' and 'remove package' could display a log with all files added/removed.
b) 'Active version' is still showing slackware 12.2 despite of setting 13.37 as default (please make it default for 64bits - same as for slackbuilds). restart of PPM was necessary to show 13.37
c) couldn't find anywhere a 'update database' button. packages are added/upgraded constantly for slacky and slackware (patches section only) so would be handy to have it.
d) whould be nice to have option for displaying changelog for slacky:
http://repository.slacky.eu/slackware64 ... ngeLog.txt
and official porteus repo:
http://ponce.cc/porteus/x86_64/modules/ChangeLog.txt
would be easier for users to track which packages are ready for upgrade.
i would love to see an 'automatic update' function in PPM4 which would scan local repo and show possible updates from official repo.
e) slackware repo should contain patches as well as they provide security fixes for applications:
ftp://ftp.heanet.ie/mirrors/ftp.slackwa ... 7/patches/
(slackware database is static - only patches are updated, so update button should apply only to patches)
f) i think creating xzm module from slackware/slacky databases should be optional (it's done automatically now)

Slackbuilds submenu
- 'sbo searcher' - fanthom's head icon is missing when package is not selected

FIDOSlax submenu
- could have 'search online' button (same as Porteus/Slackware/Slacky) which would redirect users to FIDOSlax webpage.


@Falcony
thanks a lot for 64bit modules :)
Please add [Solved] to your thread title if the solution was found.

User avatar
brokenman
Site Admin
Site Admin
Posts: 5439
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Official Package Manager

Post#100 by brokenman » 21 Dec 2011, 18:37

hmmm... it's 32K while we need 256K. maybe the scale is set incorrectly? 6 should be 1M, 5 - 512K, 4 - 256, 3 - 128K, 2 - 64K, 1 - 32K, 0 (?) 16K.
I got the compression ratios here:http://tldp.org/HOWTO/SquashFS-HOWTO/mksqoverview.html
mskquashfs -h also says default is 1M.

Here is the code block from PPM:

Code: Select all

[ $MMCOM -eq 1 ] && block="-b 4096"
[ $MMCOM -eq 2 ] && block="-b 8192"
[ $MMCOM -eq 3 ] && block="-b 16384"
[ $MMCOM -eq 4 ] && block="-b 32768"
[ $MMCOM -eq 5 ] && block="-b 65536"
[ $MMCOM -eq 6 ] && block="-b 131072"
Which would you prefer?

Porteus submenu:
- 'search by library' function searches through whole LIBS.TXT while it should parse only 'OFFERED:' fields. maybe you could devide this
function on two sections: search packages which are using library x, search packages which are offering library x.

Fixed now. Only searches OFFERED libraries. Will implement split search for next ver.


- while i use 'browse porteus modules' function it launches dolphin and main PPM windows stays blank/inactive till i close dolphin.
maybe it could be sent to the background? (same story for 'browse online' and firefox)

Yeah ... this is an anomoly of gtkdialog. When a window opens infront the back one goes blank. I don't know how minimize the window and then bring it back upon closing front window yet. We'll have to live with this one for now. Perhaps i could add opening dolphin as a sub process which may give back the gtkwindow but i dont think it is possible from within a gtk function.

- Slackware submenu:
a) 'install package' and 'remove package' could display a log with all files added/removed.

Done. If i understood correctly. The ouput from installpkg only gives package removed so this is what i went with. Do you mean giving a log with all files contained in the package installed/removed? If so this can be for next ver.

b) 'Active version' is still showing slackware 12.2 despite of setting 13.37 as default (please make it default for 64bits - same as for slackbuilds). restart of PPM was necessary to show 13.37
This is causing me trouble. No way to update the display on the main screen from a subprocess of the main screen. I was thinking to remove the 'current version' from the front because all pages have a drop down menu now with a choice of version. I could add a monitoring section that monitors the version shown in porteus.conf but this will put an unnecessary (IMHO) drag on processor/s.

c) couldn't find anywhere a 'update database' button. packages are added/upgraded constantly for slacky and slackware (patches section only) so would be handy to have it.
Was working on this but time got the best of me. I removed the option from the 'update menu' Will include it for next time ... almost 200Mb of download just to update the database.

d) whould be nice to have option for displaying changelog for slacky:
http://repository.slacky.eu/slackware64 ... ngeLog.txt

Done

and official porteus repo:
http://ponce.cc/porteus/x86_64/modules/ChangeLog.txt
would be easier for users to track which packages are ready for upgrade.

Will add this for the next version. For now the autoupdate function will notify when new packages are added.


i would love to see an 'automatic update' function in PPM4 which would scan local repo and show possible updates from official repo.
We have an autoupdate/manual function now which notifies if there is a new version available or new packages are added. Will work on something that gives a report of which packages were added (info from changelog). Try opening /opt/ppm/ppmversion and changing the LPVER: number down by one digit. Then use the update menu, it should download the latest version.

e) slackware repo should contain patches as well as they provide security fixes for applications:
ftp://ftp.heanet.ie/mirrors/ftp.slackwa ... 7/patches/
(slackware database is static - only patches are updated, so update button should apply only to patches)

Oh shit. :wall: Will try to do this,

f) i think creating xzm module from slackware/slacky databases should be optional (it's done automatically now)
Done

Slackbuilds submenu
- 'sbo searcher' - fanthom's head icon is missing when package is not selected

This is a dynamic image. If the package contains a png image it will appear there. Try something like chemtool from 13.1. Your head appears there when there is no package pixmap.

FIDOSlax submenu
- could have 'search online' button (same as Porteus/Slackware/Slacky) which would redirect users to FIDOSlax webpage.

Done

Will upload new version tonight, same place and post back when ready.

Posted after 13 minutes 28 seconds:
Done and ready for download. Let me know of any other changes. I will work a little on the help file now ... fix any other serious bugs you find and that will be that until next release.

BTW: I will start versioning for the PPM from v1.1 to match porteus. It will increment with any changes after official Porteus v1.1.
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
fanthom
Site Admin
Site Admin
Posts: 4548
Joined: 28 Dec 2010, 02:42
Distribution: Porteus Kiosk
Location: Poland, currently - Cork, IE
Contact:

Re: Official Package Manager

Post#101 by fanthom » 22 Dec 2011, 01:24

mskquashfs -h also says default is 1M
i'm 100% sure that liblinuxlive uses '-b 256K' as default so all modules created with help of dir2xzm utility have 256K blocksize. this was actually a standard for years so let's stick to that (yes - you can call me a bugger :))
here is my table:

Code: Select all

    [ $MMCOM -eq 1 ] && block="-b 32K"
    [ $MMCOM -eq 2 ] && block="-b 64K"
    [ $MMCOM -eq 3 ] && block="-b 128K"
    [ $MMCOM -eq 4 ] && block="-b 256K"
    [ $MMCOM -eq 5 ] && block="-b 512K"
    [ $MMCOM -eq 6 ] && block="-b 1M"
and default should be set to 4.
Do you mean giving a log with all files contained in the package installed/removed?
yes - would be nice but rather as a button (optional) than popup window.
Try opening /opt/ppm/ppmversion and changing the LPVER: number down by one digit. Then use the update menu, it should download the latest version.
sounds cool
This is a dynamic image. If the package contains a png image it will appear there.
so if it doesn't then some other image could be displayed. always better than an empty hole :)
not very important tho.

this is all from my side, anyone to add something? (why i'm the only one who is bugging brokenman about PPM? don't be afraid people - he is not that scary :))
Please add [Solved] to your thread title if the solution was found.

User avatar
francois
Contributor
Contributor
Posts: 4905
Joined: 28 Dec 2010, 14:25
Distribution: kde xfce porteus manjaro kubun
Location: Enfin l'été, le changement climatique attendu: le soleil.

Re: Official Package Manager

Post#102 by francois » 22 Dec 2011, 03:47

brokenman wrote:32bit version is now ready for testing. The only disabled feature is the Debian repo function which is still being worked on.

This version includes ktsuss v1.4 for authentication until we can find a way to get v2.0 working nicely with it. Many changes since last version with a nice little bug report feature. Please use it to report anything you find out of the ordinary.

KNOWN BUGS:
Problem with SBO search function which i am too tired to fix tonight but will do so tomorrow.

Grab it from the i486 folder along with gtkdialog which you will need. 64bit is being worked on now and will be uploaded soon.

https://drivehq.com/folder/p9287367.aspx
Are we still working from rc 1 as a basis?
Voltaire: Le mieux est l'ennemi du bien.

User avatar
brokenman
Site Admin
Site Admin
Posts: 5439
Joined: 27 Dec 2010, 03:50
Distribution: Porteus v3.2rcX all desktops
Location: Brazil
Contact:

Re: Official Package Manager

Post#103 by brokenman » 22 Dec 2011, 12:38

I am developing on rc2 but should still work based on rc1
How do i become super user?
Wear your underpants on the outside and put on a cape.

User avatar
Hamza
Warlord
Warlord
Posts: 1846
Joined: 28 Dec 2010, 07:41
Distribution: Porteus
Location: France

Re: Official Package Manager

Post#104 by Hamza » 22 Dec 2011, 19:10

What we can post..under less one day..you have posted most of things we can found :P
NjVFQzY2Rg==

User avatar
francois
Contributor
Contributor
Posts: 4905
Joined: 28 Dec 2010, 14:25
Distribution: kde xfce porteus manjaro kubun
Location: Enfin l'été, le changement climatique attendu: le soleil.

Re: Official Package Manager

Post#105 by francois » 24 Dec 2011, 04:12

Using ppm to make a module from a salix package slapt-src, I get:

Job completed!
Your salix package has been converted and is now at:
libwebkitgtk-1.0.so.0: cannot open shared object file: No such file or directory Failed to load module: /usr/lib/gio/modules/libgiolibproxy.so /mnt/32bit_v11/ppm/.xzm

Thus I imagine this is an error message about module creation failed?

Posted after 13 minutes 37 seconds:
Trying to use the chakra repository I get a similar result when I try to convert avidemux.
Voltaire: Le mieux est l'ennemi du bien.

Locked