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.
Comments:
Posted on 20 Aug 2010, 23:40 by Stuart McLeodGood 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
Perl/C/Pascal
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':
http://bkhome.org/blog/?viewDetailed=01177
http://bkhome.org/blog/?viewDetailed=01167
http://www.murga-linux.com/puppy/viewtopic.php?t=47763
...that is good stuff, it slipped off my radar.
Posted on 21 Aug 2010, 21:30 by Iguleder
Perl
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)