Site Update Blog Post:

Astroblahhh Desktop v2.4

Post Below
10/14/2015 - Astroblahhh Desktop v2.4 (Site Update - Software Release)


   ▲ Top  ▼ Bottom  △ TOC
Astroblahhh Desktop v2.4
Wednesday, October 14th, 2015
20:15:30 GMT

Site Update
Software Release

Astroblahhh Desktop 2.4 is another "conventional" release of Astroblahhh Desktop. (Conventional in the context of its own unconventional history.)

Astroblahhh Desktop v2.4 (529 KB Zip File)

That means it's still a horrible mess (though remarkably well-functioning), and it's only runnable as a web app - but since it probably has major security problems, you shouldn't run it while connected to the internet. And it's still nowhere near as polished as I'd like it to be for people other than myself to use.

I haven't tested it extensively in Astroblahhh GLMP-GTK 1.0, and I also haven't even tested it at all in XAMPP in Windows XP.

My goal with this version was simply to make it possible (again) for me to use ABDesktop natively in Linux, so I wouldn't have to run ABDesktop inside a Windows-XP-running VirtualBox with no internet connection.

Though I made some decent progress with that goal, it's not perfectly achieved for a number of reasons.

I haven't fully tested Astroblahhh Desktop, but, except for various known problems (and probably some unknown problems), it seems to largely work in both PHP 5.2.17 (using Astroblahhh GLMP-GTK 1.0), and PHP 5.6.13 (using my not-yet-released Astroblahhh GLMP-GTK 2.0). I haven't tested this version at all in XAMPP in a Windows XP VirtualBox.

Also, I haven't tested the file-moving features at all lately, so I recommend avoiding them.

A pretty annoying problem with Astroblahhh GLMP-GTK 1.0 is that it can't create JPG thumbnails, because when I compiled PHP 5.2.17, I didn't realize it was necessary to manually add JPG capabilities to the ./configure command line.

An even worse problem is, I still didn't get around to converting everything to use Unicode UTF-8 encoding. So, the warning I posted on Sept. 29th/30th still applies.

My current workaround is to just use new databases and avoid editing my old databases. Astroblahhh Desktop's "copyrecord" and "exportrecord" commands (even in the released versions of Astroblahhh Desktop) work pretty well - so, in the future, once I have everything converted to UTF-8, merging my newer databases with my old databases shouldn't be too troublesome.

I also hastily added a universal read-only mode, and a non-universal read-only mode - either of which you can turn on by editing the file "lib-abdesk.php" in the "abdesk" folder. The non-universal read-only mode makes all databases read-only by default except the ones that are added to the array $list_of_writable_dbs, stored inside "lists_of_all_your_dbs.php" inside the "custom" folder.

Both read-only modes also block the ConnectAsRoot() MySQL database connection function from connecting at all, even to databases listed as writable.

The read-only restriction is enforced by using a MySQL user which is only allowed to use the SELECT command. That user can be created using the new "Create Read-Only User" script. I think the read-only features probably work, but, please be careful.

Rather than depending on the read-only features, I prefer to just copy my databases into my RAM disk. That keeps the originals safe, and makes the copies very fast to read.

More ways Astroblahhh Desktop isn't totally Linuxified yet include the fact that the file organizer still pays no attention to file permissions, file owners, and file groups. The file organizer also still assumes that your filesystem is case insensitive, as it is in Windows.

And as it should be, in my opinion - because I agree with this article that case sensitivity in software tends to be evil. Nonetheless, I'll someday try to deal with the case sensitivity nuisance eventually - but, I think I'll make Astroblahhh Desktop optionally "enforce" case insensitivity, such as by refusing to move files with exactly the same name except different capitalization into the same directory.

To the file organizer, I added a rather half-assed ability to deal with symlinks. The file organizer recognizes symlinks, but doesn't store their destinations. It's easy for PHP to obtain a symlink's destination, but changing the database's schema to store this new info seemed like too much of a nuisance to undertake for an already nearly obsolete version of Astroblahhh Desktop.

Other than all that, the file organizer (at least when only reading files) seems to work fairly well natively in Linux, instead of running inside a Windows XP VirtualBox.

However, again, I haven't tested the file-moving features at all lately, and I recommend avoiding them.

Also, Linux file permissions often prevent the file organizer from even being able to read files in many locations. That was such a nuisance (particularly when I couldn't figure out how to mount NTFS-formatted TrueCrypt volumes with appropriate permissions), I finally opted for the quite questionable workaround of slightly editing the Hiawatha web server's source code - as described in this Hiawatha Webserver forum post from Sept. 1, 2010, 11:13 - to make it possible to run Hiawatha as root.

One thing that makes this workaround a bit less terrible is the fact that I've returned to my old habit of only using Astroblahhh Desktop (or any web server software, especially the Hiawatha I modified to run as root) while disconnected from the internet.

In fact, I now just use a totally different computer for the internet - and, thanks to my Puppy Linux Setup Kit, doing that is actually pretty comfortable. (Except I have too little RAM, so I have to stay away from sites like Tumblr, and even Google Image Search can crash my entire system.) I don't even need a hard drive, and could even get by without a Flash drive if I didn't usually like to save things, or at least URLs.

Unfortunately, using a different than usual computer for the internet is part of the reason I've lately had even more difficulty than in the past with my email. I have my Thunderbird profiles on a hard drive in an external USB enclosure because they're so bloated they don't fit comfortably on my Flash drives, and I don't want to maybe wear out my Flash drives by downloading mail onto them. And, even though my external hard drive is technically portable, I still don't like moving it, and my internet computer is too far away to plug in my hard drive without moving it.

But, back to Astroblahhh Desktop. It was pleasant to find that the SHA-512 checksum features are much faster when running ABDesktop in Linux rather than having ABDesktop inside a VirtualBox. I don't know why, but accessing files outside of a VirtualBox from within VirtualBox tends to be noticeably slower than accessing files normally. (That's why I used to store my databases inside my VirtualBox. I tried storing them outside, but searches that ordinarily would take a few seconds at most were taking something like 20 seconds. At least with VirtualBox 4.1.8.)

I guess probably using the file (record) adder and making image thumbnails is faster now too, but that was usually tolerably fast even with Astroblahhh Desktop inside VirtualBox.

I love VirtualBox, but having to use VirtualBox always felt like a ball and chain, since VirtualBox is not at all convenient on computers where I don't have a hard drive, and don't feel like moving an external hard drive to it, or where I only have 1 or 2 GB of RAM, or even less.

I also am not eager to possibly wear out a USB Flash drive by storing and running a Windows XP VirtualBox on a Flash drive. Fortunately, larger and larger Flash drives are getting cheaper and cheaper, but, I still don't like to waste things or money if I can avoid it.

Even with the latest versions, Astroblahhh Desktop alone (without VirtualBox) shouldn't actually require a powerful computer. The original versions ran surprisingly nicely even on a quite pathetic 1.10 GHz Windows XP computer with only 256 MB RAM. And, I'm not sure, but I think probably the later versions probably still could as well.

And I'm hoping even the not-yet-finished PHP-GTK version will also be able to run on pathetic computers with only 256 MB RAM. Or even less RAM would be nice.

However, having only 256 MB RAM or less might necessitate using a Puppy Linux full installation instead of a frugal RAM-disk-using installation, since Puppy plus Astroblahhh GLMP-GTK might use up too much RAM, even if you don't install a web browser.

I guess someday if I ever get a Raspberry Pi, it would be fun to make Astroblahhh Desktop work well on that.

I wonder if OrientDB can run on a Raspberry Pi? I guess if Java can, then maybe OrientDB can too?

Happily, very little had to be done to make Astroblahhh Desktop 2.4 work with PHP 5.6.13.

I made a simple custom PHP error handler to make it block the warnings about the deprecated "mysql" PHP functions. Future not-yet-released extensively renovated versions of Astroblahhh Desktop will (or already do) instead use PHP's newer, recommended PDO database-handling features.

The custom error handler also usually changes the background and text colors of pages containing errors, to make it more obvious at a glance (and pretty) when errors happen.

Probably my next top goal (at least with Astroblahhh Desktop) is to figure out how to convert everything to Unicode UTF-8 encoding.

Once I figure that out, it'll be a lot easier to move forward with all the different projects I have in mind.

   ▲ Top  ▼ Bottom  △ TOC