Pandora PNDManager


hrm. PNDManager just successfully upgraded Oolite which was the package that was giving me trouble earlier, so I can't use that example anymore. (though the problem does seem to be intermittent)

Just tried upgrading a package via milkyhelper - it downloads the file, then fails to install it due to failing an md5 check.
unlike PNDManager it deletes the corrupted file and reports failure.

I haven't noticed any failure in the download process itself though.

Note: PNDManager doesn't show this package as upgradable at all (I believe that's because it's a commercial package)

Code:
op-vizzini:/mnt/utmp/milkyhelper$ ./milky -vSu

::SYNC
->UPGRADE

LANG: en_AU
Root: /media/PND-DATA

Repositories:
libpndman repository
http://repo.openpandora.org/client/masterlist?com=true&bzip=true

package.super_hexagon.apkenv.full
-!- A: package.super_hexagon.apkenv.full package.super_hexagon.apkenv.full
Targets (1)   : package.super_hexagon.apkenv.full

Download size : 23 MiB
Continue upgrade? [Y/n] y

@FILE repo_api.c           @LINE 592  >> _pndman_api_handshake_check
0: (null)
@FILE handle.c             @LINE 444  >> _pndman_package_handle_install       
MD5 check fail for package.super_hexagon.apkenv.full
-!- Failed to upgrade package.super_hexagon.apkenv.full

-Neelix
 
Yeah, PNDManager's error reporting is pretty lacking. It's very happy path oriented code :p. Milkyhelper probably shows the problem better.
 
Syncing works fine here again, too. With old appdata folder, but freshly downloaded pnd (which was probably not necesssary). :) Thanks for fixing it!
 
EvilDragon did some restoration which should have fixed the issue.

Apparently not. I'm still getting md5 errors on a 23МB file, which if I'm reading this correctly resumed twice during the download.

Code:
$ ./milky -vvvSm package.super_hexagon.apkenv.ful

::SYNC
[MENU]

LANG: en_AU
Root: /media/PND-DATA

Repositories:
libpndman repository
http://repo.openpandora.org/client/masterlist?com=true&bzip=true

Targets:
package.super_hexagon.apkenv.full

@FILE database.c           @LINE 257  >> _pndman_db_get_local
-!- local from /media/PND-DATA/pandora/appdata/libpndman/local.db
@FILE database.c           @LINE 317  >> _pndman_db_get
-!- reading from /media/PND-DATA/pandora/appdata/libpndman/repo.db
@FILE pndman.c             @LINE 67   >> _pndman_get_tmp_file
Created temporary file.
-!- A: package.super_hexagon.apkenv.full package.super_hexagon.apkenv.full
Targets (1)   : package.super_hexagon.apkenv.full
Target media  : /media/PND-DATA
Target path   : /menu

Download size : 23 MiB
Continue install? [Y/n] Y

@FILE curl.c               @LINE 220  >> _pndman_curl_handle_perform
url: http://repo.openpandora.org/client/handshake
@FILE curl.c               @LINE 227  >> _pndman_curl_handle_perform
POST: stage=1
@FILE curl.c               @LINE 310  >> _pndman_curl_msg| 00:00
HTTP/1.1 200 OK
Date: Mon, 27 Mar 2017 09:10:01 GMT
Server: Apache
X-Powered-By: PHP/5.6.30-0+deb8u1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Set-Cookie: PHPSESSID=3h05h4bngsukds4m4ii4tpbtf6; path=/
Transfer-Encoding: chunked
Content-Type: application/json


@FILE curl.c               @LINE 316  >> _pndman_curl_msg
{"nonce":"8c13e39f4fb2"}
@FILE repo_api.c           @LINE 649  >> _pndman_api_handshake_perform
8c13e39f4fb2
@FILE curl.c               @LINE 202  >> _pndman_curl_handle_perform
CURL REOPEN
@FILE curl.c               @LINE 220  >> _pndman_curl_handle_perform
url: http://repo.openpandora.org/client/handshake
@FILE curl.c               @LINE 227  >> _pndman_curl_handle_perform
POST: stage=2&cnonce=cdf9db873ed9ee4a4c090af71e917aa0&user=Neelix&hash=d0dd6d7f4fa8ae3b6a4579ffcb542766
@FILE curl.c               @LINE 244  >> _pndman_curl_handle_perform
Handle resume: 24
@FILE curl.c               @LINE 310  >> _pndman_curl_msg                    
HTTP/1.1 200 OK
Date: Mon, 27 Mar 2017 09:10:01 GMT
Server: Apache
X-Powered-By: PHP/5.6.30-0+deb8u1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json


@FILE curl.c               @LINE 316  >> _pndman_curl_msg
{"nonce":"8c13e39f4fb2"}{"success":{"number": 1,"text":"Request your action."}}
@FILE curl.c               @LINE 202  >> _pndman_curl_handle_perform
CURL REOPEN
@FILE curl.c               @LINE 220  >> _pndman_curl_handle_perform
url: http://repo.openpandora.org/client/download?id=package.super_hexagon.apkenv.full&a=false
@FILE curl.c               @LINE 227  >> _pndman_curl_handle_perform
POST:
@FILE curl.c               @LINE 244  >> _pndman_curl_handle_perform
Handle resume: 79
@FILE repo_api.c           @LINE 592  >> _pndman_api_handshake_check
0: (null)
@FILE curl.c               @LINE 310  >> _pndman_curl_msg| 00:00             
HTTP/1.1 200 OK
Date: Mon, 27 Mar 2017 09:10:02 GMT
Server: Apache
X-Powered-By: PHP/5.6.30-0+deb8u1
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
Accept-Ranges: bytes
Content-Description: File Transfer;
Content-Disposition: attachment; filename="super_hexagon_full.pnd";
Content-Transfer-Encoding: binary;
Cache-Control: must-revalidate, post-check=0, pre-check=0
Content-Range: bytes 0-24146586/24146587
Content-Length: 24146587
Content-Type: application/x-pnd;


@FILE curl.c               @LINE 316  >> _pndman_curl_msg
{"nonce":"8c13e39f4fb2"}{"success":{"number": 1,"text":"Request your action."}}hsqs5
@FILE handle.c             @LINE 290  >> _pndman_package_handle_install      
R: 42994ff6febe0fcafa05107c1e3cbd78 L: 0172aa7350dac8013c5aeadf0a187e77
@FILE handle.c             @LINE 291  >> _pndman_package_handle_install
/media/PND-DATA/pandora/appdata/libpndman/package.super_hexagon.apkenv.full.tmp
@FILE handle.c             @LINE 444  >> _pndman_package_handle_install
MD5 check fail for package.super_hexagon.apkenv.full
-!- Failed to install package: package.super_hexagon.apkenv.full
@FILE database.c           @LINE 146  >> _pndman_db_commit_local             
-!- writing to /media/PND-DATA/pandora/appdata/libpndman/local.db
@FILE json.c               @LINE 842  >> _pndman_json_commit
JSON write took 0.07 seconds
@FILE database.c           @LINE 192  >> _pndman_db_commit
Database commit took 0.08 seconds

-Neelix
 
I have a weird issue with my PNDManager. When I have it sync, it behaves as usual but after the successful sync, the most recent app I see in the "last updated" is Exult Ultima7, while on the repo there are supposed to be three more recent apps.

Furthermore, it doesn't seem to save the list: when I exit and come back, it displays what it displayed before the sync.
 
Hi all,

@ElPoco and @Linux-SWAT : I have the exact same issue here on my Rebirth unit. Free space is indeed scarce but not completely non-existent (at least ~1GB left on each SD card). System time is correct thanks to NTP. I even tried to delete both appdata directories (pndmanager and libpndman), but to no avail...

Cheers, Magic Sam
[doublepost=1555612525,1555612237][/doublepost]Here is pndrun_pndmanager.out:
pandora:/tmp$ more pndrun_pndmanager.out
=============================================================================
==========
PND : /media/Pandora1/pandora/apps/pndmanager-bzar-1.4.2-1-armv7.
pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/Pandora1/pandora/appdata/pndmanager
APPDD_FSTYPE : ext2
PND_CPUSPEED : <unset>
EXENAME : scripts/panorama.sh
ARGUMENTS : <unset>
=============================================================================
==========
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/pndmanager"
Mounting the Union FS : mount -t aufs -o exec,dirs="/media/Pandora1/pandora/a
ppdata/pndmanager=rw+nolwh":"/mnt/pnd/pndmanager=rr" none "/mnt/utmp/pndmanag
er"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( scripts/panorama.sh ) ----------
Settings are saved in "/mnt/utmp/pndmanager/settings.cfg"
QPndman::Repository::update
QPndman::Repository::update
PNDManager::pNDManager
updateDevices()
* Reading from "/media/Pandora2"
* Reading from "/media/Pandora1"
@FILE database.c @LINE��361 >> _pndman_db_get
Failed to open /media/Pandora1/pandora/appdata/libpndman/repo.db, for reading
.
QPndman::Repository::update
Crawling
@FILE pxml.c @LINE��250 >> _fetch_pxml_from_pnd
Failed to open /media/Pandora2/pandora/menu/codeblocks.pnd, for reading.
QPndman::Repository::update
Found 212 new installed packages
PNDManager::updatePackages
212 installed packages
Total 1745 packages
QPndman::Repository::update
QDeclarativeExpression: Expression "(function $viewTitle() { return "PNDManag
er " + pndManager.versionString })" depends on non-NOTIFYable properties:
PNDManager::versionString
updateDevices()
* Reading from "/media/Pandora2"
* Reading from "/media/Pandora1"
@FILE database.c @LINE��361 >> _pndman_db_get
Failed to open /media/Pandora1/pandora/appdata/libpndman/repo.db, for reading
.
QPndman::Repository::update
Crawling
@FILE pxml.c @LINE��250 >> _fetch_pxml_from_pnd
Failed to open /media/Pandora2/pandora/menu/codeblocks.pnd, for reading.
QPndman::Repository::update
Found 212 new installed packages
PNDManager::updatePackages
212 installed packages
Total 1745 packages
Searching for icon for pnd "serioussam1_ptitseb"
PNDManager::getPackageById "serioussam1_ptitseb"
Found it!
Searching for icon for pnd "Sparrow-C4A-Manager-1337"
PNDManager::getPackageById "Sparrow-C4A-Manager-1337"
Found it!
Loaded UI PNDManager created by B-ZaR.
Description:
PND Manager application
Crawling
@FILE pxml.c @LINE��250 >> _fetch_pxml_from_pnd
Failed to open /media/Pandora2/pandora/menu/codeblocks.pnd, for reading.
Searching for icon for pnd "netsurf_ptitseb"
PNDManager::getPackageById "netsurf_ptitseb"
Found it!
QPndman::Repository::update
Found 212 new installed packages
PNDManager::updatePackages
212 installed packages
Total 1745 packages
@FILE database.c @LINE��146 >> _pndman_db_commit_local
-!- writing to /media/Pandora2/pandora/appdata/libpndman/local.db
@FILE json.c @LINE��842 >> _pndman_json_commit
JSON write took 0.00 seconds
@FILE database.c @LINE��192 >> _pndman_db_commit
Database commit took 0.01 seconds
@FILE database.c @LINE��146 >> _pndman_db_commit_local
-!- writing to /media/Pandora1/pandora/appdata/libpndman/local.db
Searching for icon for pnd "package.ginge.ruckage"
PNDManager::getPackageById "package.ginge.ruckage"
Found it!
Searching for icon for pnd "stuntcarremake_ptitseb"
PNDManager::getPackageById "stuntcarremake_ptitseb"
Found it!
@FILE json.c @LINE��842 >> _pndman_json_commit
JSON write took 0.06 seconds
Searching for icon for pnd "mbx_m-ht"
PNDManager::getPackageById "mbx_m-ht"
Found it!
Searching for icon for pnd "com.elv.benri"
PNDManager::getPackageById "com.elv.benri"
Found it!
@FILE database.c @LINE��192 >> _pndman_db_commit
Database commit took 0.09 seconds
Searching for icon for pnd "openjazz.pickle"
PNDManager::getPackageById "openjazz.pickle"
Found it!
Searching for icon for pnd "quake2.pickle"
PNDManager::getPackageById "quake2.pickle"
Found it!
Searching for icon for pnd "amphetamine_ptitseb"
PNDManager::getPackageById "amphetamine_ptitseb"
Found it!
Searching for icon for pnd "package.amoeba_by_excess"
PNDManager::getPackageById "package.amoeba_by_excess"
Found it!
Searching for icon for pnd "amigaclitools-magicsam"
PNDManager::getPackageById "amigaclitools-magicsam"
Found it!
Searching for icon for pnd "abiword-abiword-32254"
PNDManager::getPackageById "abiword-abiword-32254"
Found it!
Searching for icon for pnd "8blitter.lordus"
PNDManager::getPackageById "8blitter.lordus"
Found it!
@FILE pndman.c @LINE��67 >> _pndman_get_tmp_file
Created temporary file.
@FILE curl.c @LINE��231 >> _pndman_curl_handle_perform
url: http://repo.openpandora.org/client/masterlist?last_updated=1552708429&bz
ip=true
@FILE curl.c @LINE��266 >> _pndman_curl_handle_perform
If-Modified-Since: Sat, 16 Mar 2019 03:53:49 +0000
@FILE curl.c @LINE��321 >> _pndman_curl_msg
HTTP/1.1 200 OK
Date: Thu, 18 Apr 2019 18:14:52 GMT
Server: Apache/2.4.25
Cache-Control: public
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
X-Content-Type-Options: nosniff
Etag: 1555013610
Last-Modified: Thu, 11 Apr 2019 20:13:30 GMT
Content-Length: 582514
Content-Type: application/x-bzip2


@FILE curl.c @LINE��327 >> _pndman_curl_msg
BZh41AY&SY:

@FILE pndman.c @LINE��67 >> _pndman_get_tmp_file
Created temporary file.
QPndman::Repository::update
QPndman::Repository::update
Crawling
@FILE pxml.c @LINE��250 >> _fetch_pxml_from_pnd
Failed to open /media/Pandora2/pandora/menu/codeblocks.pnd, for reading.
QPndman::Repository::update
Found 212 new installed packages
PNDManager::updatePackages
212 installed packages
Total 1745 packages
@FILE database.c @LINE��146 >> _pndman_db_commit_local
-!- writing to /media/Pandora2/pandora/appdata/libpndman/local.db
@FILE json.c @LINE��842 >> _pndman_json_commit
JSON write took 0.01 seconds
@FILE database.c @LINE��192 >> _pndman_db_commit
Database commit took 0.01 seconds
@FILE database.c @LINE��146 >> _pndman_db_commit_local
-!- writing to /media/Pandora1/pandora/appdata/libpndman/local.db
@FILE json.c @LINE��842 >> _pndman_json_commit
JSON write took 0.05 seconds
@FILE database.c @LINE��192 >> _pndman_db_commit
Database commit took 0.05 seconds
@FILE database.c @LINE��146 >> _pndman_db_commit_local
-!- writing to /media/Pandora2/pandora/appdata/libpndman/local.db
@FILE json.c @LINE��842 >> _pndman_json_commit
JSON write took 0.01 seconds
@FILE database.c @LINE��192 >> _pndman_db_commit
Database commit took 0.01 seconds
@FILE database.c @LINE��146 >> _pndman_db_commit_local
-!- writing to /media/Pandora1/pandora/appdata/libpndman/local.db
@FILE json.c @LINE��842 >> _pndman_json_commit
JSON write took 0.06 seconds
@FILE database.c @LINE��192 >> _pndman_db_commit
Database commit took 0.06 seconds
[SUCCESS]--- Starting the application ( scripts/panorama.sh ) ----------
[ START ]--- Restoring the frame buffer status ----------
[SUCCESS]--- Restoring the frame buffer status ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------
[SUCCESS]--- Waiting the Union to be available ----------
rmdir: failed to remove `/mnt/utmp/pndmanager': Device or resource busy
[ START ]--- Waiting the PND mount dir to be free ----------
[SUCCESS]--- Waiting the PND mount dir to be free ----------
cleanup done
[SUCCESS]--- uMount the PND ----------
=============================================================================
==========
Return code is : 7
pandora:/tmp$
[doublepost=1555614917][/doublepost]Hi again,

Removed @ptitSeb 's Code::Blocks since PNDManager complained about it (too big I guess), but that's not the root cause...

There are 3 releases more recent than Ultima 7 (exult) on the Repo: Der_Detektor, TIC-80 and Barony: Blessed Addition. Could it be that one of them has a faulty PXML ?

Cheers, Magic Sam
 
@Elw3 This guy says three Pandora apps might have faulty PXML, and one of them is Der Detektor. I'm starting to jump to conclusions here.
 
Does pndmanager use the pxml inside the pnd or the appended? Ive probably forgot to append one if that matters.
 
If there was no pxml appended to the pnd then the repository upload wouldn't have even succeeded, also the repository does validation on the pxml to ensure its valid, since it needs to be in order to extract the pxml data.

Sent from my Pixel 3 using Tapatalk
 
Affirmative, it seems it was appended by the make pnd script which is weird and inconsistend since it left out the icon.
I still made a mistake in that pxml if that matters, i typoed the preview picture.
 
Hi all,

Any news regarding this issue ? I'm still stuck on Ultima 7 here.

I'm not blaming anyone though, I just really don't understand what's going on.

Cheers, Magic Sam
 
Ill disable my aprils fools tool, just to be sune its not me.
Reload and report back please.
 
@Elw3 : thanks for disabling your application on the Repo :) I started again from a clean slate, but unfortunately the update didn't go past Ultima 7...

@milkshake and @bzar : no weird logs on your end ?

Cheers, Magic Sam
 
Found this in the logs:
Last-Modified: Thu, 11 Apr 2019 20:13:30 GMT

Matches the day when @ptitSeb updated his Barony package. The database appears to be complete, strange that the last 3 items are missing.

P.S: there's also a small discrepancy between the number of packages reported by PNDManager:
Total 1745 packages

And by the Repo: 1734 packages. Does PNDManager takes into account the local PNDs which are not (yet) pushed to the Repo ?

Cheers, Magic Sam
 
Last edited:
Back
Top