|Harold Plumber on Who Says IceWM is Ugly?!|
|Dave on Trying To Deal With Compressed…|
|mulenmar on Yeeloong 8089B: Some Performan…|
|David on Yeeloong 8089B: Some Performan…|
|mulenmar on Yeeloong 8089B: Some Performan…|
My log of experiences with GNU/Linux and computers in general.
Or: So, You Installed NoScript, and Now You’re Getting Boxes with Numbers In Them
Or: I’m Not Even Using NoScript! These Kids’ Unicode Emojis Just Have Garbage Characters In Them!
Yeah, kinda hard to find a good Alliterative Appeal-ing title for this one. 😛 Do note that this post is GNU/Linux-specific. Maybe you’ll find something that gives you an insight into doing the same on Mac OS X or Windows, maybe you won’t.
Today, I reinstalled Arch Linux. Judging from the date on a Deus Ex savefile, I had been successfully upgrading the same installation since February, 2013! Really, I could’ve just rsync’d the existing data straight to my shiny new 1TB/32MB-cache drive and continued using it, but I was bored.
This gives me the opportunity to hunt down and document what font packages I need if I want to avoid seeing boxes with numbers in them everywhere — ones like this:
That’s a code point from one of Unicode’s Private Use Areas (PUA), and as such, doesn’t have a standard glyph like ‘A’ or ┳ do. Anybody can just slobber whatever characters they want all over the place, and no font can cover every variation, meaning that whatever character from the range you use isn’t necessarily — or even likely — what some random person viewing the file on their own computer is going to see.
Enter @font-face and font libraries like TypeKit, Font Squirrel, and Google Web Fonts. These allow web developers to
make webpages even more heavyweight by needing to contact and then load more data from a third-party server and not worry so much about whether the end-user has the perfect font for their perfectly elegant site installed on their system already. Great, huh? Yes, as long as you’re using a CSS3-compatible browser — and more specifically, on such as
Problem with these methods is that Firefox’s NoScript addon blocks @font-face embedding by default — for some pretty good reasons, assuming the concerns discussed in that link are still valid 5 years later — and thus prevents the fonts from being used. The result: sites that use fonts covering these Unicode Private Use Area datapoints, such as to have display resolution-independent symbols, become a sea of boxes with letters and numbers in them.
In Firefox, for example, simply right-click the offending numberbox and choose “Inspect Element”. Then use the Inspector to view the page’s rules, and search for “font-family”. An example is below:
Now, you cant search your distro’s software repositories for the font. If you’re lucky, you’ll find it already packaged. In this case, I found it in Arch Linux’s User Repositories under the name
aur/ttf-font-awesome. Install it as usual, and enjoy having your browser load actual characters instead of numberboxes!
Let’s re-read the last part of Why NoScript Blocks Web Fonts, specifically the excerpt quoting from Mike Perry of Torbutton fame, shall we? Go on, I’ll wait — I’d just print it here, but I can’t find a copyright license anywhere.
Think about it for a moment. Now, instead of loading an untrusted font from whatever remote server, you have it locally, on your own machine. It’s still being interpreted by the font libraries, and can still be crafted to trigger some known/unknown bug for malicious purposes. The differences are only that:
Security always involves tradeoffs, and is a much more complex topic than I am qualified to discuss in any detail. Do your own research!
Ah yes, those. (May not all be SFW). I doubt I’ve seen every one on the Internet, but that link has a wide enough variety for testing purposes. 🙂
I currently have the following font packages installed, and don’t have any missing characters appearing yet. Some are just my desktop usage fonts (such as ttf-dejavu) or terminal font (like ttf-anonymous-pro), but they are included for completeness.
ttf-anonymous-pro ttf-code2000 ttf-dejavu ttf-font-awesome ttf-gentium ttf-jomolhari ttf-kannada-font ttf-liberation ttf-opensans ttf-symbola ttf-urdufonts
I’ll try to update this list as I find more site with missing characters.
Some time ago, I purchased a Lemote Yeeloong 8089B from Tekmote Electronics. It’s not exactly a powerful device, even for a netbook — extremely weak graphics chipset, a single-core Loongson 2F CPU clocked at a maximum of 797MHz (despite the description’s claim of 900MHz), and a battery rated to last barely 2 hours. But, it has the advantage of not requiring any nonfree software. As most people who would buy one and search for “performance tweaks” for it would already know. 😀
I bought it hoping to run gNewSense‘s mipsel port on it, but found it to be lacking many packages I wanted to run on it. Most of these were frivolous anyway, so don’t let that stop you from trying it. 😉 I currently run Debian Wheezy’s mipsel port quite happily on it . . . but it took a little work to get the “happily” part. Read more of this post
Today’s post will be pretty useless for anybody that doesn’t have a modified Xbox that is NOT a 360, a copy of Star Wars Jedi Knight: Jedi Academy for the Xbox, and said game backed-up to the hard drive of that Xbox. I won’t be describing how to modify the Xbox, as Xbox-scene can describe it quite thoroughly. 😉
Some games that were released for the Xbox have configuration files, even though the final product was intended to be placed on non-changeable discs. Since these games were also released for a certain computer operating system, and have known tweaks that can be done there, it seems logical that at least some of those tweaks can be used in the Xbox version.
And today I decided to try digging around in the configuration of Star Wars Jedi Knight: Jedi Academy. This game uses the Quake III: Team Arena engine, so theoretically it can use any of the tweaks the engine recognizes, right?
Well, not on the Xbox. It seems that some things work, such as enabling the Frames Per Second display; others do not, such as trying to force the rendering mode to a less intensive method. I suppose those are hard-coded in the executable (default.xbe), and override the configuration file (base/default.cfg). 😦
The rest of this post contains what tweaks I’ve attempted alongside whether they worked or not. Expect this post to be updated from time to time, and don’t expect me to try anything that has to do with multiplayer ping and such. 😀
We all know Flash is a major pain — from Adobe’s own Flash player’s lack of performance to the security problems and nonfree status of said plugin. Not to mention the often-poor compatiblity of the free players, such as Gnash and Swfdec. So I won’t be discussing that right now. Nor will I be discussing the somewhat well-known process of using MPlayer to play Flash video files (.flv).
Today’s note is on dealing with those pesky .SWF Flash animations. While Swfdec-gnome is relatively decent at decoding the few I deal with, I’d like to convert these animations to a video format, such as OGG Vorbis or WebM. Why? Because unlike with Flash videos (.flv files) such as found on YouTube, .SWF files are almost always compressed — and FFMPEG can’t deal with compressed .SWF files. The result being, MPlayer can’t play them.
I really don’t expect it to, anyway — MPlayer is an audio and video player, NOT an animation decoder and player. But I’m very tired of needing a Flash decoder just to watch the animations of MSPA‘s Homestuck adventure comic, when it would be better for people with slower computers and a dislike of nonfree software to serve videos.
So, during a couple breaks from my efforts on Project Permafrost, I’ve been trying to find a way to convert these SWF animations. I’ve had very little luck so far — while there is some software for the job, it’s virtually all for a certain operating system from a company in Redmond, WA, USA. Most of this software works by taking the displayed output from a Flash plugin and converting it to a video — a very CPU-intensive and hacky solution. Video files were created, but they were composed only of empty, black frames with no audio.
Since the only converter I could find for my operating system was useless, I next turned to the tools for creating and modifying the SWF animation itself, and thus to the swftools and flasm packages.
Swftools is a collection of tools for working with Adobe Flash files, as you may have guessed. Flasm is for disassembling and modifying the Flash Actionscript bytecode, and supports SWFs produced by Flash 8 and earlier. Sounds complicated? Yeah, seems that way to me too, and sadly I don’t have time to investigate them deeply right now.
What I did find, by reading the help text for both the swfextract tool (found in the swftools package) and Flasm, was two options that inspired some hope. From swfextract:
-m , –mp3 Extract main mp3 stream
-x Decompress SWF
These suggest three courses of action. In each case, “file.swf” should be replaced with the name of the SWF file you’re working with, of course. 😉
The first is simply copying out the audio directly from the SWF animation.
swfextract -m file.swf
This produces a file named “output.mp3” in the same directory you run the command from.
The second course of action is to decompress the SWF file, so MPlayer can work with it.
flasm -x file.swf
This will, obviously, decompress the SWF file. The original is saved with a “$wf” extension. MPlayer can play the resulting uncompressed SWF file, but (in my case, at least) can only play the audio.
The third option, of course, is to ask the author(s) to release a video format conversion themselves. They may be hesistant to do so, of course — they may wish for people to HAVE to come to their site to view the animation, instead of someone uploading the video to YouTube or someplace similar. This could be slowed by requiring people to pay for the video, I suppose, but also partially defeats the purpose of the entire endeavor — the goal of which was to be able to easily watch the animation on a computer without needing Flash or putting the CPU under maximum load for the several minutes of the animation.
It’s progress, I guess. If one can call only being able to listen to the animation “progress”. 😦 I’m getting back to work now. 🙂
Finally, after two months of work, the first part of my latest project is out in the wild for all to help with.
There are, of course, some rules for this new community. A few of the most important ones are listed below.
The spreadsheet I linked before is hosted in the Project Permafrost files section, along with all of the currently redistributable themes from the motherlode mirror (under “TundraThaw”).
As mentioned before, the forums are here.
And there are plenty more ice puns available, don’t worry. 😉
Most IceWM development has been in a state of deep freeze for years now — mostly new language translations and bugfixes, from what I can see. The long-time stable version (1.2.37) has been in distribution repositories for a very long time now, as it was released in January 2009. Two years ago. 😯
Meanwhile, the last marked-stable version of the “experimental” branch (1.3.6) was released in Januray 2010. I haven’t used that version, but sometime since it was branched from the stable series a bug was introduced. This caused IceWM to crash, and if it had been started with icewm-session it would try to restart, but have taskbar issues. It seems to be this bug on the IceWM bugtracker, which has been closed.
Other than this odd bug, I found very little difference between IceWM 1.2.37 and 1.3.7p2 when I last tried them — the only one I noticed was the battery charge monitor. In 1.2.37 a number was displayed, while in 1.3.7p2 a vertical bar represented the remaining charge.
In anycase, download IceWM 1.3.7 and try it out. ^_^ Meanwhile, I’ll be trying to figure out where to host the ancient, circa 2001 themes I found and downloaded that now are no longer publically available at the ONE place on the entire search-engine-indexed Internet. 😈