Wary: SMPlayer 0.6.9

SMPlayer is a GUI frontend for mplayer, using the Qt4 library.

I have compiled it statically with Qt4, so it doesn't need the Qt4 package(s). It does however make the SMPlayer PET package somewhat large -- 4165KB.

This package will be available for installation when Wary 0.5.2 is released.

Posted on 20 Sep 2010, 17:04


Posted on 20 Aug 2010, 23:40 by Stuart McLeod
Good job !
Very good job ! Now even an Duron 700MHZ can read an .MKV without problem. I had been waiting for that (and a few other wee things) to label puppy linux THE distribution I would bring on a desert island. Thank you Mr Kauler.

Posted on 21 Aug 2010, 16:09 by Iguleder
Barry, at the moment I'm working on a project that shares some ideas with Woof: a .deb package downloader - you give it a distro, its version, repos to support and this tool downloads the .debs with all their dependencies.

At first, I wrote it with pure ash syntax: it took about an hour to process all the packages.

Yesterday I rewrote it, this time I "converted" the part does all processing and string stuff into Pascal: it's compiled statically with FPC. Then, I saw the dependencies are cut - Pascal has a limit of 255-length strings, so I did a trick: I made the Pascal processing code write the dependencies to a file before any processing. Then, a Perl (a language for messing with files and strings, hehe) script does all the processing.

Now, I can process about 32,000 packages in about 10 seconds.

So ... have you ever considered using static executables in Woof or woof-skeleton? It could speed up PPM and Woof.

Posted on 21 Aug 2010, 16:14 by Iguleder
Output of time
Forgot something important: here's the output of time on the whole deal (downloading the package list, decompressing them and processing them):

real 0m52.595s
user 0m4.447s
sys 0m1.097s

This includes downloading the packages, which is rather slow: the "main" Packages.bz2 took about 30 seconds to download.

A PPM that resolves dependencies and downloads Ubuntu repo lists immediately ... yummy.

Posted on 21 Aug 2010, 16:46 by BarryK
Re Fast code
There was another project awhile back, that rewrote my '0setup' Woof script that converts the Ubuntu/Debian package databases into Puppy Standard Format -- written in C. It was blazingly fast.

Hmmm, it was reported on the Puppy Forum but I can't find it. I don't know what happened there, but it's development stopped.

Aah, found it... forum member Wosh created 'ppkg':

...that is good stuff, it slipped off my radar.

Posted on 21 Aug 2010, 21:30 by Iguleder
Barry, I rewrote my whole package downloader project once more, this time in Perl, so I can work on it from both my desktop computer and my netbook. Also, it's more flexible, I can edit the code and execute it without any compilation without a big impact on performance.

I can't say it's fast as the Pascal experiment, but it's definitely close. It's very very fast and portable. The database processing and a script that fetches various fields from it work perfectly. At the moment I'm working on my "1download" equivalent.

Once I get this thing in a good shape, would you like me to write something similar for use with Woof? I can make it write the database in PPM format ... could be useful with both Woof and PPM: it's like libjpeg and libjpeg-turbo, both are 100% compatbile, but the latter is way faster.

Also, you could make PPM use multiple "engines" or "backends", just like Amarok and Mplayer - if you have enough memory, you can use the Perl backend to make it go faster. Otherwise, you can use the good ol' Bash.

(if you wonder why I do this: I'm not trying to make another Woof, I'm just trying to make a script that receives an Ubuntu/Debian version, a list of repos, a list of packages and downloads all the packages plus their dependencies, can be used with another script of mine that turns a bunch of DEBs into a SFS)