Jason Antman's Blog
A general-purpose dump of my thoughts, tips, tricks, and observations on a wide variety of topics - Linux, Free Software, the Internet, IT, EMS (Emergency Medical Services), software development, systems administration, ham radio, electronics, etc.
Thursday, August 7, 2008
Saturday, August 2, 2008
Friday, August 1, 2008
Thursday, July 17, 2008
Massive Updates
I know I've been quite for a while. I've been quite busy. Unfortunately, due to changing priorities, there are a lot of projects I've been working on, but few of them have gotten finished. A sampling, in no specific order:
- Migrating my network/service monitoring to Nagios 3, totally re-writing my config files to make use of the new features, and making one coherent list of all the services that should be in it and aren't.
- Planning to totally re-wire all networking at the ambulance corps building to eliminate some problems. This includes building an 8U wall-mount rack, and also trying a PC Engines ALIX.2c1 board as a router (still undecided on WAN/LAN/DMZ or WAN/LAN/WLAN). It also means a long day of work at some point in the future, and lots of cable drops.
- tuxOstat, the linux-controlled thermostat, is pretty much on the back burner. It's a stable beta with severely reduced functionality, but has been handling my cooling needs without any major bugs in the past month or so. It still only has a basic CLI interface and a very simple kludge of a web GUI, but it works. Other modes (heating, fan only), predictive temperature calculation, other temperature/zone calculation modes, and physical controls (buttons, menu on LCD) are still to come, as well as the move from PC to Soekris (if I can ever figure it out, and get one with USB). I now feel that an ALIX board might be a better shot, as they take CF (more space than the Soekris), have a slightly faster processor, and also support USB at about half the price point.
- I'm considering moving my main web site to a CMS, and letting the wiki serve more as a knowledge base.
- I'm working on patching together a new access point for the ambulance corps, based on Pyramid Linux. I needed something which would run on the Soekris net4526, had at least WEP, and supported some sort of captive portal. Pyramid has WifiDog, but that only wants to do local authentication or RADIUS, and I wanted direct auth to LDAP and MySQL logging. On the positive side, it just uses some PHP pages hosted under Apache to handle authentication - the WAP redirects the user to a login page on a (separate) web server, the user does their stuff, and then the WAP makes a request to the server to determine whether it should open up the firewall, keep the user locked down, or totally kick them. So, once I figure out some routing issues, I'll get back to working on the new project - BlackLabAuth, a re-write of the WifiDog auth server software that's geared towards a closed-access network (i.e. only people and/or MACs already listed in LDAP can login) with full logging to MySQL. I already have some code in CVS, but some issues with my development Soekris board have slowed the project for the time being. When finished, I'll have not only the new auth server available for download (with documentation) but also a ready-to-run (well, some configuration time needed, but minor and scripted) image for the net4526.
- My desktop that I use for MythTV filled up its' disk. Totally. I ordered a cheap Syba SATA card (PCI) from NewEgg, along with a 500GB WD SATA-150 disk, but no luck. Though the card (Syba / Initio 1622 chipset, shows up as Class 0106: 1101:1622 (rev 02)) said it was supported under Linux, the driver CD mentioned nothing about it. Some investigation on the Syba website turned up a zipped archive. After extraction, I found a readme that gave (poor) instructions on how to re-compile a kernel, and warned that you MUST have 2.6.15. Oh well, I wasn't going to give up 2.6.16.27 (the newest RPM'd kernel for OpenSuSE 10.1). The standard drivers for it didn't appear until 2.6.25 or so. So... after many debates with myself as to whether I should blow away my whole MythTV installation and upgrade from the now-ancient 10.1, I decided that I'll only be in my apartment for another year, I should make it last. Some investigation turned up a $24 Silicon Image-based card that should work fine, and it's now in the mail...
I'm sure I missed something big, but I'll update as needed, and attempt to make it a daily habit to post something interesting or, at the very least, hard-to-find. After all, I'm sure that I use this blog and my wiki as an informational resource (my bad memory) more than anyone else would...
Labels: access point, alix, BlackLabAuth, mythtv, Nagios, pc engines, soekris, tuxostat, WifiDog, wireless
Thursday, July 10, 2008
Tuesday, July 1, 2008
JavaScript and Emacs, and updates
Well, thankfully, summer classes are almost over (tomorrow is the last class). I have a big paper to write for one of them, due at the worst time possible - July 5th. The day after what is, probably, one of the busiest days of the year for the ambulance corps.
In follow-ups and news:
- tuxostat has been running for nearly a month in my apartment, and appears stable, albeit missing many planned features, and with a sub-optimal interface (and no SNMP yet).
- TuxTruck is still on the back burner.
- I've been playing around with the idea of writing a new electronic patient care report system for the ambulance corps, to replace our current three-year-old system (written in VB .NET and running on Windows). It would probably be coded in Python, with a wxWindows/wxPython GUI. I'll start on a small demo version, but would like it to be fully modular, and eventually form a codebase for OpenEPCR.
Anyway, I've been doing a lot of work for my Building Data-Driven Websites class (well, alternate assignments, but still a lot of work). The latest project was an Ajax/DHTML calendar (view-only here, and in CVS, of course). Needless to say, this involved a lot of JavaScript work. To make it worse, I used a fair amount of sample code to get an idea of how to do things, and way too many of the snippets out there on the 'net are in formats that are quite unfriendly for pasting into an Emacs console window.
So, I happened to come by Steve Yegge's blog, with a posting on his JavaScript mode for Emacs. Not only does it seem cool, but it was also the only one I could find that does syntax highlighting and sane indentation (important for copied code snippets). So, I grabbed it from Google Code and - viola!
Labels: ajax, call report, dhtml, javascript, pcr, tuxostat, tuxtruck
Thursday, June 26, 2008
Practical PHP and MySQL
I'm taking a summer course in Building Data Driven Websites - not that I thought I'd learn much in such a course at SCILS, but I'd like to graduate on time, and need the credits, and Bill Crosbie is just the type of rare teacher that can keep even me awake and interested. Our book is Practical PHP and MySQL: Building Eight Dynamic Web Applications (Amazon by Jono Bacon. Now, I know it's not a real book like, say, ESA3 by Frisch, which has a healthy web presense. But this thing is all code and doesn't even have a web site, let alone easy code downloads!
The book does come with a heavily customized Ubuntu LiveCD. However, when I popped it in my OpenSuSE workstation, I couldn't really make much out of the CD - there was certainly no easy-to-find "this is the code" directory. Well, after some exploring, I mounted the SquashFS filesystem and poked around a bit. Strange... seems to only have one real user (root) and, though they claim this is a fully-functional LAMP server, no Apache or MySQL. Really weird. Well, after poking for a few minutes, I found the holy grail - /root/.bash_history was intact! Just a quick look through it with less and I found what I was looking for: /opt/lampp. It appears that the install is actually ApacheFriends' LAMPP, or XAMPP for Linux (gotta wonder if the guy writing this book doesn't even know how to install Apache... I'm sure XAMPP for Linux is more bloated than a customized build of Apache/MySQL/PHP from source, especially since it's only being used to host 8 sample projects, so a lot could be left out).
Anyway, it appears that LAMPP is running in a chroot'ed environment. The actual sample code is rooted at /opt/lampp/htdocs/sites. It seems that all of the PHP files are also owned by root and chmod'ed 777! And the top-level index.php file makes use of absolute links, so obviously he never thought that someone may want to copy the sample code and use it on a real box.
I just can't imagine someone who's a beginner with Linux, let alone a Windows person, trying to get this source code onto a machine where they can actually play with it. And... to make the situation worse... the LiveCD has vi and vim, but no Emacs!!!! Eeeek!!
For anyone who needs it, I have the archive available on my site. For non-*nix people, you'll need Gzip or an equivalent program to extract it.
Labels: books, linux, PHP, programming, rutgers





