Initial import

brought over all the files from the Jekyll version, fixed categories,
reformatted for different markdown processor
This commit is contained in:
Daniel J. Summers 2017-09-02 11:49:59 -05:00
parent 1dfc7a007a
commit 67dcb2f77c
116 changed files with 9001 additions and 1 deletions

7
.gitignore vendored Normal file
View File

@ -0,0 +1,7 @@
.DS_Store
Thumbs.db
db.json
*.log
node_modules/
public/
.deploy*/

View File

@ -1,2 +1,5 @@
# techblog.djs-consulting.com
Source code for the DJS Consulting Tech Blog
Why are you here? [The blog is over there!](https://techblog.djs-consulting.com) :)
_(This is the source code repository for the Hexo version of the blog.)_

86
_config.yml Normal file
View File

@ -0,0 +1,86 @@
# Hexo Configuration
## Docs: https://hexo.io/docs/configuration.html
## Source: https://github.com/hexojs/hexo/
# Site
title: DJS Consulting Tech Blog
subtitle: Technical Information from DJS Consulting
description:
author: Daniel J. Summers
language: en
timezone: UTC
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: https://techblog.djs-consulting.com
root: /
permalink: :title.html
permalink_defaults:
# Directory
source_dir: source
public_dir: public
tag_dir: tag
archive_dir: archives
category_dir: category
code_dir: downloads/code
i18n_dir: :lang
skip_render:
# Writing
new_post_name: :title.md # File name of new posts
default_layout: post
titlecase: false # Transform title into titlecase
external_link: true # Open external links in new tab
filename_case: 1
render_drafts: false
post_asset_folder: false
relative_link: false
future: true
highlight:
enable: true
line_number: true
auto_detect: false
tab_replace:
# Home page setting
# path: Root path for your blogs index page. (default = '')
# per_page: Posts displayed per page. (0 = disable pagination)
# order_by: Posts order. (Order by date descending by default)
index_generator:
path: ''
per_page: 6
order_by: -date
# Category & Tag
default_category: uncategorized
category_map:
tag_map:
category_generator:
per_page: 6
tag_generator:
per_page: 6
# Date / Time format
## Hexo uses Moment.js to parse and display date
## You can customize the date format as defined in
## http://momentjs.com/docs/#/displaying/format/
date_format: YYYY-MM-DD
time_format: HH:mm:ss
# Pagination
## Set per_page to 0 to disable pagination
per_page: 10
pagination_dir: page
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: mantraish
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type:

2865
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

20
package.json Normal file
View File

@ -0,0 +1,20 @@
{
"name": "techblog-djsconsulting-com",
"version": "4.1.0",
"private": true,
"hexo": {
"version": "3.3.8"
},
"dependencies": {
"hexo": "^3.2.0",
"hexo-generator-archive": "^0.1.4",
"hexo-generator-category": "^0.1.3",
"hexo-generator-index": "^0.2.0",
"hexo-generator-tag": "^0.2.0",
"hexo-renderer-ejs": "^0.3.0",
"hexo-renderer-marked": "^0.3.0",
"hexo-renderer-pug": "0.0.5",
"hexo-renderer-stylus": "^0.3.1",
"hexo-server": "^0.2.0"
}
}

4
scaffolds/draft.md Normal file
View File

@ -0,0 +1,4 @@
---
title: {{ title }}
tags:
---

4
scaffolds/page.md Normal file
View File

@ -0,0 +1,4 @@
---
title: {{ title }}
date: {{ date }}
---

5
scaffolds/post.md Normal file
View File

@ -0,0 +1,5 @@
---
title: {{ title }}
date: {{ date }}
tags:
---

View File

@ -0,0 +1,14 @@
---
layout: post
title: A Cry for Help
author: Daniel
date: 2004-07-07 00:00:38
categories:
- [ Linux, My Linux Adventure ]
summary: The difficulties of downloading things when the network doesn't work
---
I tried a few other things to make that module work, but nothing seemed to help. It's also very difficult to download and try new things when you can't get to the Internet to download them. I also posted a message to the WBEL user's list, and rather than go into that detail, that message can be found [here][].
[here]: //beau.org/pipermail/whitebox-users/2004-July/002344.html

View File

@ -0,0 +1,16 @@
---
layout: post
title: "A Foray into C++"
author: Daniel
date: 2004-06-17 00:00:48
categories:
- [ Linux, My Linux Adventure ]
- [ Programming, C++ ]
summary: A bit of C++ knowledge should help when compiling programs for Linux
---
Compiling my own versions of programs when trying to get DVD stuff working intrigued me. I've tried a couple of times to teach myself C++, but hadn't really gotten that far. My understanding of some of the concepts has improved some, and I've also found a good set of tutorials on [C Programming][]'s web site. I went though the tutorials, and got some interesting things working. This was PC-based, using the [CygWin][] Linux emulator. I actually understood everything I wrote, which is a very nice feeling! This knowledge should come in handy if I ever have trouble compiling something...
[C Programming]: //www.cprogramming.com/tutorial.html
[CygWin]: //www.cygwin.com

View File

@ -0,0 +1,24 @@
---
layout: post
title: A Month in Summary
author: Daniel
date: 2004-08-31 00:00:12
categories:
- [ Databases, MySQL ]
- [ Linux, My Linux Adventure ]
- [ Web Servers, Apache ]
- [ Web Servers, IIS ]
summary: Progress over the past month
---
Well, the last month has been interesting. I was able to get my Windows and Linux installations synchronized by creating a mount point for my second drive under <tt>/mnt/drive\_d</tt>. Under that, I created a directory called /thunderbird for my e-mail, and moved my e-mail and newsgroup folders over there. (The first time, I missed the "newsrc" file, which is important - it tells what newsgroups you've subscribed to and which messages you've read.) Under Windows, I pointed it to <tt>D:\thunderbird\pop3.knology.net</tt>, and under Linux, it was configured to <tt>/mnt/drive\_d/thunderbird/pop3.knology.net</tt>. I then moved the <tt>wwwroot</tt> directory from <tt>C:\Inetpub</tt> to drive D:, and pointed IIS to the new location. Under Linux, I did something a little different. As "root", I deleted the directory <tt>/var/www/html</tt>, and instead created <tt>/var/www/html</tt> as a symbolic link to <tt>/mnt/drive\_d/wwwroot</tt> (the actual command is <tt>ln -s /mnt/drive\_d/wwwroot /var/www/html</tt>). That worked great as well.
MySQL was more complicated, but I was eventually able to get it working as well. I created the directory <tt>D:\mysql\data</tt> for the data, then configured <tt>/etc/my.cnf</tt> under Linux to look at <tt>/mnt/drive\_d/mysql/data</tt>. I kept getting "Could not connect to server using socket /var/lib/mysql/mysql.sock". After some digging, it appeared to be a permissions problem. All the documentation said that the default socket was /tmp/mysql.sock, so I changed my.cnf to point there instead, restarted mysqld, and it worked! So, I have no idea what a Unix socket it, but I know that now I have one! :)
I was also able to get DVDs playing using xine, compiling it myself, and using [libdvdcss][], I can even watch commercial DVDs. I'm really impressed with xine - it handles all kinds of media out of the box, including DivX and up to version 8 of WMV files. You can add codecs to it as well, to support almost anything you want to do from an audio or video perspective. Compiling the player took around 20 minutes, and compiling the front end took another 5. And, it was simple - download the .tar.gz file, do <tt>tar xvfz [name].tar.gz</tt>, <tt>cd [name]</tt>, <tt>./configure</tt>, <tt>make install</tt>. The <tt>./configure</tt> script is the key in the whole process - it looks at what you have installed, and creates make files that will work with your compiler.
Everything started going south, though, when I started having freezes. Eventually, I got to where I could not boot without a kernel panic, and then boot errors (which I detailed in [this e-mail to the WBEL user's list][email]. Encouraged by my success over the past month, I decided to return to WBEL - it's supposed to be more stable than FC2, and I bet that I can get ndiswrapper, the dual-booting web server, the common e-mail, and maybe even some other stuff working again.
[libdvdcss]: //developers.videolan.org/libdvdcss/
[email]: //beau.org/pipermail/whitebox-users/2004-August/003197.html

View File

@ -0,0 +1,15 @@
---
layout: post
title: Apache and MySQL Are Back
author: Daniel
date: 2004-09-08 00:01:50
categories:
- [ Databases, MySQL ]
- [ Linux, My Linux Adventure ]
- [ Web Servers, Apache ]
summary: Apache and MySQL work on both sides of the dual-booted computer now
---
I was finally able to resolve my problems with Apache and MySQL. When I decided to mount my FAT32 drive under <tt>/home/summersd</tt>, I inadvertently caused myself some problems. From talking to a Linux guy at work, I found that no processes that weren't running under my user ID could access those files. The reason is that Linux looks up the entire diretory tree, back to /, to determine if you can access the file. So, although I had <tt>-rwxrwxrwx summersd summersd</tt> on every file, <tt>/home/summersd</tt> was <tt>drwx------ summersd summersd</tt>, and <tt>/home</tt> was <tt>drwxr-xr-x</tt>. The permissions on <tt>/home/summersd</tt> was keeping Apache from seeing <tt>/home/summersd/drive\_d/wwwroot</tt>, and MySQL from seeing or writing to <tt>/home/summersd/drive\_d/mysql/data</tt>. I moved the drive to <tt>/mnt/drive\_d</tt>, with the mount point being owned by "root", still mounting the drive with my user name, and everything worked.
In the process of reconfiguring Thunderbird, I believe I may have found out how to share the address book across operating systems. The file <tt>~/.thunderbird/default.[something]/prefs.js</tt> has a listing of all the preferences and settings. I modified this file to change the location of my mail files, and there is a setting there for an address book (which isn't shown in the configuration dialog - after all, it is 0.7.3...) I'll play with that later - right now I'm just elated to have Apache and MySQL working again.

View File

@ -0,0 +1,11 @@
---
layout: post
title: Attack of the Quadruplicate Messages
author: Daniel
date: 2004-06-30 00:00:42
categories:
- [ Linux, My Linux Adventure ]
summary: I don't think I'm supposed to get every e-mail 4 times...
---
When I left for choir practice this evening, I had 2 messages in my inbox. When I returned, I had over 600! Remember way back when I said that I removed that setting that left a copy of the e-mail on the server? Turns out in Ximian Evolution, "Close" is the equivalent of "Cancel" in most apps, and my change did not take. It looks like my ISP's mail server, in an effort to alert me that I was over my limit, started clearing whatever status was on these messages, which caused them to be downloaded multiple times, every 10 minutes. I made sure the setting was set, then went into my ISP's web mail service and deleted every message in my inbox. I deleted all the dupes out of my main inbox tonight, and I'll delete the dupes from the other folders tomorrow.

View File

@ -0,0 +1,12 @@
---
layout: post
title: Back to WBEL
author: Daniel
date: 2004-09-04 00:00:02
categories:
- [ Databases, MySQL ]
- [ Linux, My Linux Adventure ]
summary: WBEL has been reinstalled
---
Today, I reinstalled WBEL 3.0. I was able to compile ndiswrapper (as I kept that on my FAT32 drive), and get the network card working smoothly very quickly. (In fact, it seems to be more reliable under Linux than WXP!) With the network up, it was easy to download Firefox, Thunderbird, and OpenOffice, and installing them was a breeze. (I decided to put them under /opt this time, trying to stick with the FHS.) I decided to mount my FAT32 drive under my home directory, as `/home/summersd/drive_d`. E-mail works fine, but Apache gives me a 403 (Permission Denied) error. MySQL doesn't seem to be working either - I'll have to play with that later.

View File

@ -0,0 +1,11 @@
---
layout: post
title: Downloading Wine
author: Daniel
date: 2004-07-01 00:00:08
categories:
- [ Linux, My Linux Adventure ]
summary: Downloading is the first step for installing
---
Today I didn't do a whole lot - I deleted the dupes out of my inbox subfolders, and I downloaded wine. I'll install it tomorrow.

View File

@ -0,0 +1,13 @@
---
layout: post
title: "DVDs Are Back & Conflicting Wireless Networks"
author: Daniel
date: 2004-09-05 00:00:15
categories:
- [ Linux, My Linux Adventure ]
summary: Resolving two minor issues
---
I downloaded xine and xine-ui again, just to get the freshest stuff. Compiled first time, worked first time. I must be learning how to do this stuff! I also did a "yum update" to get the most recent version of everything, and I upgraded ndiswrapper from .8 to .10.
I moved the computer into another room, and found that I was now getting conflicts on my wireless card. After some research, it appears that I'm picking up my next-door-neighbor's wireless signal as well. I renamed our wireless network, and configured the cards to use only that network, and those conflicts went away.

View File

@ -0,0 +1,13 @@
---
layout: post
title: Fedora Core 2 in the Can
author: Daniel
date: 2004-07-24 00:00:09
categories:
- [ Linux, My Linux Adventure ]
summary: Fedora Core 2 has been downloaded and is ready to install
---
In an effort to cleanse my wife's computer of the spyware that dogged it so, I removed all the Linux partitions from my computer to make space for files. I got her computer rebuilt, and I'll be starting from scratch when I get back into it. No worries, though - if I'm going to get any good at setting it up... Kind of reminds me of a joke - a guy in New York asks an old man on the street, "Hey, how do you get to Radio City Music Hall?" The old guy responds, "Practice, practice, practice!"
In looking toward renewed Linux experimentation, I downloaded the .ISO files for FC2. I'm going to start with that, and see if I have any better luck getting my network card to work.

View File

@ -0,0 +1,14 @@
---
layout: post
title: foobar2000 with Wine
author: Daniel
date: 2004-09-08 00:00:47
categories:
- [ Linux, My Linux Adventure ]
summary: A nice, lightweight Windows audio player working under wine
---
[foobar2000][] is about the best, most organized audio player I've found. However, it is a Windows application, and according to what I've read, very reliant on Microsoft C++ extensions. I decided to give it a shot under wine, and it works great! There is a repaint problem - sometimes the playlist doesn't refresh as it should. But, it's pretty much a start-and-minimize sort of application, so that's acceptable.
[foobar2000]: //www.foobar2000.org

View File

@ -0,0 +1,12 @@
---
layout: post
title: Linux Play on Pause
author: Daniel
date: 2004-07-10 00:00:18
categories:
- General Info
- [ Linux, My Linux Adventure ]
summary: Resignation to running Windows XP for a while
---
With my inability to get my network working, I have resigned myself to running WXP. Work is starting to get really busy, and my personal life is as well. Maybe at some point in the future I can fire things back up and play some more.

View File

@ -0,0 +1,14 @@
---
layout: post
title: ndiswrapper May Have Issues
author: Daniel
date: 2004-09-07 00:00:49
categories:
- Hardware
- [ Linux, My Linux Adventure ]
summary: Wireless drivers don't handle the lack of a wireless network very gracefully
---
We're speedily working towards a Friday deadline at work, so tonight I had some analysis work to do on some COBOL code. Great, I thought, I can use my VSlick setup under wine. I moved my computer from the living room back to our now-empty bedroom (soon to be nursery), and booted it up. Kernel panics galore - never got past the network stuff. When I booted to Windows, I found that the wireless network didn't reach that far, and I'm guessing that the ndiswrapper folks haven't tried their driver a lot with a wireless card, but no wireless network. Once I get past that, I may grab the dumps from these kernel panics and see if the developers need them to see what went wrong. So, for tonight, I had to use WXP (in which I actually had to disable the wireless connection - seems Windows doesn't handle a barely-there wireless connection much better than Linux).
The diagnostics I ran last night never found anything - they ran for about 10 hours. I suppose I'll just have to wait until I have problems again, then run it right then. Another person from the WBEL users list suggested I check the way I have my hard drives set up; he thinks that a 2GB drive slaved to a 20GB drive may be causing conflicts, which would cause freezes or panics.

View File

@ -0,0 +1,15 @@
---
layout: post
title: Next-Generation Open Source Internet Apps
author: Daniel
date: 2004-07-12 00:00:11
categories:
- Windows Open Source
summary: Firefox and Thunderbird
---
In setting up my "I'm gonna use this for a while" environment on WXP, I've stumbled across what I feel are two gems. These are the [FireFox][] browser (which I've been using for a while now) and the [Thunderbird][] mail program. Thunderbird is not as fully featured as Ximian Evolution, but I prefer it's interface to that of Mozilla Mail. I also think that once I get back on Linux on a regular basis, I'll install the same version there, and see if I can get my mail to use the same data files whether I'm using Linux or WXP.
[FireFox]: //www.mozilla.org/products/firefox
[Thunderbird]: //www.mozilla.org/products/thunderbird

View File

@ -0,0 +1,18 @@
---
layout: post
title: Non-Alcoholic Wine Experiments
author: Daniel
date: 2004-07-02 00:00:27
categories:
- [ Linux, My Linux Adventure ]
summary: First efforts with wine leave me unimpressed
---
Wine is not getting me drunk. I installed it, downloaded and installed [WineSetupTK][] to assist with configuration. I then ran the setup program (through wine) for _Thomas the Tank Engine: The Great Festival Adventure_. Once that completed, I tried to run the program (by entering `wine "C:\Program Files\Hasbro Interactive\The Great Festival Adventure\thomas.exe"`) and got a message box saying "CD check path not found." I searched the web for this message, and didn't find anything - it may be a message from the game, and not wine. I'll do some digging later.
You may remember the problems I had with the Folding@Home client. So, I decided to try to run the Windows version through wine. I downloaded it, and ran it through wine. It took about 2 minutes to lock my machine up. I'm not being too hard on wine for this stuff - an emulator isn't going to be 100%. I am concerned that I don't seem to be able to run any sort of Folding@Home client, and since it's not open-source, I can't try compiling on this computer.
I uninstalled the OpenOffice.org suite from the /root directory, and installed it in `/usr/local/OpenOffice.org1.1.2` (which was where it suggested). Now, it works for normal users. I still haven't been able to resolve my printing problems, but I sent a question today to the WBEL users list - they came through quickly for helping me resolve my mail importing issues.
[WineSetupTK]: //sourceforge.net/project/showfiles.php?group_id=6241&amp;package_id=77479&amp;release_id=161192

View File

@ -0,0 +1,17 @@
---
layout: post
title: Power at Last!
author: Daniel
date: 2004-06-25 00:00:33
categories:
- Hardware
- [ Linux, My Linux Adventure ]
summary: The power supply arrives, but a background program is locking the machine up hard
---
Upon returning from vacation, I found that the power supply was finally here. After installing it, I fired up the computer, and it works! I fired up my e-mail client (to pull all the mail off the server that I had received for the past few weeks), and downloaded the [Folding@Home][] (F@H) client for Linux. I've been running that on a couple of other computers (user name LX_i, team #37825), and I'll probably write more about it in particular in my regular blog. Anyway, once I got that started, I started reading the e-mail I had missed. Then, the machine locked up!
I reset the machine, and repeated the steps (started Evolution, started F@H), and before long, it happened again. I restarted them both again, but it's getting late - I'll have to continue this tomorrow.
[Folding@Home]: //www.stanford.edu/group/pandegroup/folding/

View File

@ -0,0 +1,13 @@
---
layout: post
title: "Power on Order / Vacation Pending"
author: Daniel
date: 2004-06-16 00:00:32
categories:
- General Info
- Hardware
- [ Linux, My Linux Adventure ]
summary: Power supply inbound
---
The power supply has been ordered, but I'm going out of town between the 19th and the 26th, so it probably won't make it here before I leave. This adventure will have to resume at that point.

View File

@ -0,0 +1,28 @@
---
layout: post
title: "Printing Woes & E-mail Happiness"
author: Daniel
date: 2004-06-29 00:00:42
categories:
- [ Linux, My Linux Adventure ]
summary: Printing is a challenge, but e-mail is working great
---
Printing is proving to be a challenge. Using [samba][] (the Linux [SMB][] libraries) and [cups][], I was able to configure my networked printer. However, I don't have a driver on my computer for it. I tried using some drivers that were close, but they didn't work - they just caused the printer to eject a blank page. I was creating the documents using [OpenOffice.org][]'s Writer, which has a "one-click PDF conversion" feature. When I went to use that feature, I found that I was on version 1.0, which didn't have the PDF stuff.
I downloaded the Linux install for version 1.1.2, and remembering that you need to use the "root" user to do most installs, did an [su][], and ran the install. I then launched the new writer and exported the PDF. Using samba, I copied the file over to the other computer, and was able to print it. However, since I installed it as root, it installed under /root, which meant that my normal user couldn't access it. At some point, I'll uninstall it and reinstall it in a public directory.
On another note, I posted a message about my inability to import mail from Netscape into Evolution to the WBEL user's list, and the response I got worked! Netscape actually stores the e-mail in the same format as many other Linux e-mail programs (a format called [mbox][] format). Using samba, I copied the files from "C:\Documents and Settings\Daniel\ApplicationData\Mozilla\Profiles\default\{somthing}.slt\Mail\Local Folders" - under this folder, there was a separate folder for each [POP3][] account, and within that folder, the file called "inbox" was my inbox. On some systems, the file is named "mbox", and it's in a folder with the name of the folder it represents (i.e., "Inbox/mbox"). Once these files were copied, I used Evolution's import utility - it prompted me for a file to import (whose type it determined automatically), and a location for the messages to go. I now have all my e-mail from my old setup!
One part of Unix/Linux of which I'm quickly becoming a fan is its adherance to the [Filesystem Hierarchy Standard][fhs] (FHS). The FHS defines where files should be found, and it represents all available files under a single directory, known as "/". No matter how many drives or network shares that are [mounted][], they're all under this directory. What this gives you is a system-wide view of your files, instead of the normal DOS-imposed separate drive specifications. The FHS also says what files are supposed to be in what directories, so no matter what Unix/Linux system you're using, once you know the FHS, you know exactly where to look for things.
[samba]: //us1.samba.org/samba/samba.html
[SMB]: //www.computerhope.com/jargon/s/smb.htm
[cups]: //www.cups.org
[OpenOffice.org]: //www.openoffice.org
[su]: //hegel.ittc.ukans.edu/topics/linux/man-pages/man1/su.1.html
[mbox]: //email.about.com/cs/standards/a/mbox_format.htm
[POP3]: //www.computerhope.com/jargon/p/pop.htm
[fhs]: //www.pathname.com/fhs/
[mounted]: //www.computerhope.com/jargon/m/mount.htm

View File

@ -0,0 +1,18 @@
---
layout: post
title: Programming Like a Banshee
author: Daniel
date: 2004-06-27 00:00:32
categories:
- [ Linux, My Linux Adventure ]
- [ Programming, PHP ]
sumary: Programming work has been distracting from Linux adventures
---
Despite being ill early in the day (which caused me to miss Sunday School and church), the day on the computer went pretty well. I made a lot more progress on TMTS, although I ran into a problem - it appears that the [PHP][] that came with WBEL may not have [MySQL][] support enabled. Rather than get sidelined with this right now, I'm going to continue converting pages on the application, and work this issue as part of unit testing.
I also managed to catch up on comp.lang.cobol and comp.sys.unisys, two newsgroups in which I participate. I was able to play a file off a DVD (although I still can't play the disc itself).
[PHP]: //www.php.net
[MySQL]: //www.mysql.com

View File

@ -0,0 +1,24 @@
---
layout: post
title: Running Out of Browsers...
author: Daniel
date: 2004-06-26 00:00:01
categories:
- [ Linux, My Linux Adventure ]
- [ Programming, PHP ]
summary: Browser lock-ups are leaving them in an unusable state
---
When I moved the mouse to try to get the screen to unblank this morning, nothing happened. It was locked up once again. I decided to only run one process, to see if I could isolate which one was causing me problems. I started with the F@H client. I started it before we left for breakfast, and when we got back, the computer was still running okay. I started using the computer actively, and found another problem - my profile for Firefox now thinks it's still in use, because I was using it when the machine crashed.
Now, anyone who has ever used Linux will know that one browser is much less severe than, for example, IE becoming unusable in a Windows evironment. I switched to using Mozilla, and was doing some research on Linux crashes when the machine locked up again. This time, when I restarted, both Firefox _and_ Mozilla thought they were still in use. I fired up the only other currently-installed browser, Konqueror, and surfed out to [LinuxQuestions.org][] and posted a message asking how to tell these browsers that they're not in use.
A few hours later, an answer appeared. For Firefox, the file is ~/.mozilla/firefox/default.lz7/lock, and for Mozilla, the file is ~/.mozilla/default/{something}.slt/lock. Both these are symbolic links to a process PID - deleting them freed up the default profiles so these browsers could be used again.
In the mean time, I have not restarted F@H, but I've had Evolution running in the background without incident. It seems that it may be the F@H client. That bugs me, because I was really looking forward to using this machine to help with the project. I may try to run the Windows version under [wine][], a Windows emulator for Linux.
Some folks have also expressed interest in the Tournament and Membership Tracking System (TMTS), which is a web application I coded to track membership and golf tournaments for a local golfing organization. They're interested in the PHP version, for which I no longer have the source code (it was on a laptop that was stolen). So, much of my computing effort over the next few days will be trying to get this recreated. Today, I was able to get the database rebuilt, and the first few pages converted.
[LinuxQuestions.org]: //www.linuxquestions.org
[wine]: //www.winehq.com

View File

@ -0,0 +1,20 @@
---
layout: post
title: Satisfying a Lust for Power
author: Daniel
date: 2004-06-15 00:00:48
categories:
- Hardware
- [ Linux, My Linux Adventure ]
summary: A new (inexpensive) power supply has been found
---
Searching for power supplies was very interesting. I determined that I needed at least a 300W supply, and considered upgrading case and all. Some of the bigger stores, such as [Best Buy][], [Office Depot][], and [OfficeMax][], revealed nothing under $30 (just for the power supply). I checked some other sites, such as [Tiger Direct][] and [TCWO][], and found one for $17 on Tiger Direct. I thought that was pretty good, and was planning on ordering it, when a friend (the person I bought the computer from) found one on [PC Direct Source][] for $10. I'll probably order it tomorrow.
[Best Buy]: //www.bestbuy.com
[Office Depot]: //www.officedepot.com
[OfficeMax]: //www.officemax.com
[Tiger Direct]: //www.tigerdirect.com
[TCWO]: //www.tcwo.com
[PC Direct Source]: //www.pcdirectsource.com

View File

@ -0,0 +1,16 @@
---
layout: post
title: "Sour Milk Is Right!"
author: Daniel
date: 2004-07-08 00:00:09
categories:
- [ Linux, My Linux Adventure ]
summary: A lead on a wireless driver doesn't work on my kernel
---
A user wrote back and suggested that I try a driver from [SourMilk.net][], which is an "adm8211" driver project for Linux. When I downloaded it and started to compile it, I quickly became aware that it hoped I was on the 2.6 family of kernels (which is what the Fedora Project, and several of the newer distributions, are now using). WBEL 3.0 uses the 2.4 kernel, which is more established, but is beginning to drop off as most folks start developing for 2.6. Anyway, there was a 2.4 make file, but it was labeled "experimental."
That pretty much describes how I spent my time this evening - experimenting. I have virtually no experience with large-scale C projects, and I got many, many compile errors. I tried tweaking the make file, to no avail. I don't fault the driver, as it said up front that it is really targeted to 2.6. I may end up downloading a 2.6 distribution and trying it out.
[SourMilk.net]: //aluminum.sourmilk.net/adm8211/

View File

@ -0,0 +1,22 @@
---
layout: post
title: "Success with Wine & Diagnostics"
author: Daniel
date: 2004-09-05 00:01:51
categories:
- [ Databases, MySQL ]
- Hardware
- [ Linux, My Linux Adventure ]
- [ Web Servers, Apache ]
summary: Some success and more troubleshooting
---
At work, we use an editor called [Visual SlickEdit][] (VSlick). It's got a lot of features, and supports color-coding for many different languages. I decided that I'd give wine another shot, as we only have the Windows version of this program. I installed wine and winesetuptk, used winesetuptk to configure the installation, then ran the installation program. Everything installed, and the program ran up to a point, when it started complaining about a missing DLL. I booted to WXP, found the DLL, copied it to the FAT32 drive, rebooted to Linux, and copied the DLL into the "fake windows" system directory. Soon, it was working great! I can't believe it - success with wine!
I also have made little headway towards getting Apache and MySQL to working. I changed the process that Apache uses to run as "summersd", and I was able to see pages (although any pages that relied on a database didn't work). I still haven't figured this one out yet...
I'm still getting kernel panics from time to time, and it seems to be whenever I access networking. A suggestion from one of the folks on the WBEL users list was to download the [Ultimate Boot CD][ubcd], filled with diagnostic programs. I downloaded it, burned it, and ran some memory checks. Those checked out, so I'm going to run a "CPU Burn-In" program to see if it can detect errors from the CPU. It runs for up to 7 days, but I think I'll just run it overnight - folding@home didn't take nearly that long to crash it before.
[Visual SlickEdit]: //www.slickedit.com
[ubcd]: //www.ultimatebootcd.com

View File

@ -0,0 +1,18 @@
---
layout: post
title: Webshots - Wine Strikes Again!
author: Daniel
date: 2004-09-10 00:00:29
categories:
- [ Linux, My Linux Adventure ]
summary: Using wine to use Webshots
---
When I ran Windows as my desktop, I had a program called [WebShots][] that I used to set my desktop wallpaper, and cycle it. They have Windows and Mac versions, but no Linux version yet. They still send me e-mails each week, showing the daily picture selections for each day in the past week. I decided to download the Windows version, and install in under wine to see if it would work. I moved `websamp.exe` to `/home/summersd/.wine/fake_windows`, then ran `wine C:\\websamp.exe` to install the program. `wine "C:\\Program Files\\Webshots\\Launcher.exe"` then started the desktop control. I used that to disable the tray icon (wine has one, but you can't see it), and I disabled almost every other "auto update" feature.
I had downloaded a ".wbz" file (which is what is imported into WebShots), and I finally figured out how to import it. Running the launcher program, and following it with the name of the .wbz file, imports it. I may figure out a way to automate that, but for now, I know how to do it.
_(Note: This is the end of the "My Linux Adventure" series of posts. After this, I ended up going back to Windows XP, just because it worked and I didn't have hobbyist time. As of May 2007, I'm running Ubuntu 7.04 on one computer, and Windows Vista on my laptop, which is currently out of commission.)_
[WebShots]: //www.webshots.com

View File

@ -0,0 +1,12 @@
---
layout: post
title: When Hardware Attacks
author: Daniel
date: 2004-06-14 00:00:22
categories:
- Hardware
- [ Linux, My Linux Adventure ]
summary: A bad power supply interrupts our plans
---
I fired up the computer today while I was at home for lunch. I booted it into Windows so my younger son could play a game. When I came home from work, I noticed that the computer was off. Seems that it just completely shut down while he was in the middle of the game. After some hardware troubleshooting, I narrowed the problem down to the power supply. Time to go power-supply hunting...

View File

@ -0,0 +1,14 @@
---
layout: post
title: Wireless Woes
author: Daniel
date: 2004-07-06 00:00:19
categories:
- [ Linux, My Linux Adventure ]
summary: First attempts at a wireless adapter fail spectacularly
---
My wife bought me a wireless network card, so I could move the second computer out of the living room (or, as she calls it, "not a computer lab!"). :) Everything works okay under WXP, but when I boot to Linux, no joy. (I sort of expected that, at this point...) I downloaded the Red Hat 8 drivers from [iBlitzz's website][ib], but the interface for a network card is what's called a "kernel module," which is, as best I can tell, a highly-specialized object module that tells the kernel all the details of the hardware. At any rate, the kernel module is very much tied to a particular version of kernel, so the RH8 doesn't seem to be working. Oh well - time to play with my new toy - WXP for now.
[ib]: //www.iblitzz.com

22
source/_posts/2004/wow.md Normal file
View File

@ -0,0 +1,22 @@
---
layout: post
title: Wow
author: Daniel
date: 2004-08-01 00:00:34
categories:
- [ Databases, MySQL ]
- [ Linux, My Linux Adventure ]
- [ Programming, PHP ]
- [ Web Servers, Apache ]
- [ Web Servers, IIS ]
summary: Fedora Core 2 makes a nice first impression
---
Today I installed Fedora Core 2. This thing is slick! WBEL looked a lot like RH8, which I had seen before my renewed Linux learning began. FC2 has a graphical loader that hides a lot of the background stuff (unless an error occurs) - that's cool. During the install, I skipped OpenOffice.org and MySQL, although I installed PHP with MySQL support. The reason for that is that I wanted to get the latest and greatest versions of those two products. We'll see if this proves to be a good decision or not.
The wireless network card still wasn't recognized (phooey). I did some more searching, armed with the knowledge that I have an adm8211 chipset. One of the first hits under Google's Linux search for "adm8211" pointed me to a project called [NDISwrapper][]. This is a "wrapper" that uses the vendor's Windows DLL file, and converts the hooks from Windows to Linux. Doing this, this driver can (in theory) support most any network card, especially those that aren't in the Linux Hardware Compatibility List (HCL). I downloaded it, compiled it, and followed the directions to install my driver under it. I still wasn't able to create a connection, but on a hunch, I restarted the computer. NDISwrapper is also a kernel module, and I know that often those are only read at startup. Once the computer was restarted, I was able to create a connection, and now my network card works! YEA!!! (And it was only one night's worth of work - much better.)
Now that I have networking working under both operating systems, I plan to try to get four things working the same, whether I'm booted to WXP or Linux - E-mail (using Mozilla Thunderbird), PHP (using Apache on Linux, IIS on WXP), MySQL (using the exact same version on both), and a web server that uses the same html root directory (again, Apache on Linux, IIS on WXP). If I didn't already have IIS up, running, and configured under WXP, I'd probably just do Apache on both, but this will be interesting - it should work, as I don't have many creative permission rules.
[NDISwrapper]: //ndiswrapper.sourceforge.net

View File

@ -0,0 +1,14 @@
---
layout: post
title: yum yum yum
author: Daniel
date: 2004-06-28 00:00:06
categories:
- [ Linux, My Linux Adventure ]
summary: 'The "yum" updater works nicely'
---
I wasn't able to sleep very well last night, so I didn't do much tonight. One thing I did do, though, was run [yum][], which is, at a high-level, similar to Windows Update. WBEL recently released "Respin 1" (that's re-spin, not a new name - it's code name is still "Liberation"), and running yum with no options will update every available package. After about 30 minutes of watching it download stuff, I went to bed - I'll have to verify the results tomorrow.
[yum]: //linux.duke.edu/projects/yum/

View File

@ -0,0 +1,59 @@
---
layout: post
title: About the xine RPMs
author: Daniel
date: 2005-06-02 00:01:00
categories:
- [ Hosted 64-bit Software, xine RPMs ]
summary: Information about how xine RPMs are built
---
_(This post is updated regularly, and should contain the most up-to-date information about these RPMs.)_
Xine is a full-featured media player for Linux, that can play CDs, DVDs, VCDs, MP3s, Ogg, and more. The main site for xine is [www.xine-project.org][] - you can find information, install instructions, and more user interfaces. These RPMs should work on White Box Enterprise Linux (WBEL), Red Hat Enterprise Linux (RHEL), and CentOS. To stay up-to-date on these releases, you can subscribe to the [RSS feed][] for this category.
_As with any standard disclaimer, no warranty is expressed or implied - these RPMs are provided as-is, and we assume no responsibility for any ill effects that may come from the downloading and installation of these files. However, feedback is welcome if you encounter problems with these RPMs._
**Note:** To use xine, you'll need both the library and the UI. To play commercial DVDs, you'll need libdvdcss, which is not provided here (but, knowing the name, you should be able to find it).
### How the RPMs Were Built
xine-ui 0.99.9 to current / xine-lib 1.2.6 to current / gxine 0.5.908 to current
_These RPMs were built on Ubuntu Trusty Tahr (kernel 3.13.0-34-generic) as deb packages and converted to RPM using alien._
xine-ui 0.99.8
_These RPMs were built on Ubuntu Saucy Salamander (kernel 3.11.0-17-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.21 / xine-ui 0.99.7
_These RPMs were built on Ubuntu Precise Pangolin (kernel 3.0.0-24-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.20.1
_These RPMs were built on Ubuntu Oneiric Ocelot (kernel 3.0.0-14-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.20
_These RPMs were built on Ubuntu Oneiric Ocelot (kernel 3.0.0-12-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.19 / xine-ui 0.99.6
_These RPMs were built on Ubuntu Lucid Lynx (kernel 2.6.32-24-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.16.2 and xine-lib 1.1.16.3
_These RPMs were built on Ubuntu Intrepid Ibex (kernel 2.6.27-11-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.16.1
_These RPMs were built on Ubuntu Intrepid Ibex (kernel 2.6.27-9-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.13 through 1.1.15
_These RPMs were built on Ubuntu Hardy Herron (kernel 2.6.24-19-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.9.1 and 1.1.10.1
_These RPMs were built on Ubuntu Gutsy Gibbon (kernel 2.6.22-14-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.7 / xine-ui 0.99.5
_These RPMs were built on Ubuntu Feisty Fawn (kernel 2.6.20-16-generic) as deb packages and converted to RPM using alien._
xine-lib 1.1.1 / xine-ui 0.99.4 and earlier
_These RPMs were built on White Box Enterprise Linux 4 running kernel version 2.6.9-5.EL._
[www.xine-project.org]: //www.xine-project.org "xine Home"
[RSS feed]: /category/hosted-64-bit-software/xine-rpms/feed "Xine RPMs (RSS) &bull; DJS Consulting Tech Blog"

View File

@ -0,0 +1,21 @@
---
layout: post
title: xine-lib 1.0.1 RPM
author: Daniel
date: 2005-06-02 00:02:03
categories:
- [ Hosted 64-bit Software, xine RPMs ]
---
Below are the library and development RPMs for xine-lib version 1.0.1. Be sure to check out the [About the xine RPMs][abt] post for more information.
xine-lib - The main xine library
xine-lib-devel - The development xine library (needed if you're building an interface against xine-lib)
You'll also need a user interface - as of this release, the most current release of [xine-ui is 0.99.3][ui].
(To save disk space, only the current release and two prior releases will be maintained.)
[abt]: /2005/about-the-xine-rpms.html "About the xine RPMs &bull; DJS Consulting Tech Blog"
[ui]: /2005/xine-ui-0-99-3-rpm.html

View File

@ -0,0 +1,22 @@
---
layout: post
title: xine-lib 1.1.0 RPM
author: Daniel
date: 2005-08-31 00:00:10
categories:
- [ Hosted 64-bit Software, xine RPMs ]
---
Below are the library and development RPMs for xine-lib version 1.1.0. Be sure to check out the [About the xine RPMs][abt] post for more information.
xine-lib - The main xine library
xine-lib-devel - The development xine library (needed if you're building an interface against xine-lib)
You'll also need a user interface - as of this release, the most current release of [xine-ui is 0.99.4][ui].
(To save disk space, only the current release and two [prior releases][pri] will be maintained.)
[abt]: /2005/about-the-xine-rpms.html "About the xine RPMs &bull; DJS Consulting Tech Blog"
[ui]: /2005/xine-ui-0-99-4-rpm.html
[pri]: /2005/xine-lib-1-0-1-rpm.html

View File

@ -0,0 +1,22 @@
---
layout: post
title: xine-lib 1.1.1 RPM
author: Daniel
date: 2005-11-23 00:00:49
categories:
- [ Hosted 64-bit Software, xine RPMs ]
---
Below are the library and development RPMs for xine-lib version 1.1.1. Be sure to check out the [About the xine RPMs][abt] post for more information.
xine-lib - The main xine library
xine-lib-devel - The development xine library (needed if you're building an interface against xine-lib)
You'll also need a user interface - as of this release, the most current release of [xine-ui is 0.99.4][ui].
(To save disk space, only the current release and two [prior releases][pri] will be maintained.)
[abt]: /2005/about-the-xine-rpms.html "About the xine RPMs &bull; DJS Consulting Tech Blog"
[ui]: /2005/xine-ui-0-99-4-rpm.html
[pri]: /2005/xine-lib-1-1-0-rpm.html

View File

@ -0,0 +1,20 @@
---
layout: post
title: xine-ui 0.99.3 RPM
author: Daniel
date: 2005-06-02 00:01:40
categories:
- [ Hosted 64-bit Software, xine RPMs ]
---
Below is the RPM for xine-ui version 0.99.3. Be sure to check out the [About the xine RPMs][abt] post for more information.
xine-ui - The user interface
To use this, you'll also need xine-lib - as of this release, the most recent release of [xine-lib is 1.0.1][lib].
(To save disk space, only the current release and two prior releases will be maintained.)
[abt]: /2005/about-the-xine-rpms.html "About the xine RPMs &bull; DJS Consulting Tech Blog"
[lib]: /2005/xine-lib-1-0-1-rpm.html

View File

@ -0,0 +1,21 @@
---
layout: post
title: xine-ui 0.99.4 RPM
author: Daniel
date: 2005-08-25 00:00:44
categories:
- [ Hosted 64-bit Software, xine RPMs ]
---
Below is the RPM for xine-ui version 0.99.4. Be sure to check out the [About the xine RPMs][abt] post for morevinformation.
xine-ui - The user interface
To use this, you'll also need xine-lib - as of this release, the most recent release of [xine-lib is 1.1.0][lib].
(To save disk space, only the current release and two [prior releases][pri] will be maintained.)
[abt]: /2005/about-the-xine-rpms.html "About the xine RPMs &bull; DJS Consulting Tech Blog"
[lib]: /2005/xine-lib-1-1-0-rpm.html
[pri]: /2005/xine-ui-0-99-3-rpm.html

View File

@ -0,0 +1,35 @@
---
layout: post
title: Adding Tags to a WordPress Theme
author: Daniel
date: 2007-11-25 22:47:28
categories:
- [ Programming, PHP, WordPress ]
tags:
- tag
- template
- theme
- wordpress
summary: Now that WordPress supports tags, this is how to put them in an existing theme
---
WordPress 2.3 introduced tags, but unless you're using the default theme, your theme (like mine) probably didn't support them. Nowhere did I find a good example of how to add tags to your theme. Then, I was playing around with the theme switcher on my personal blog, and discovered that the default theme had tag support. I looked at it, and it was amazingly simple.
There is a new template tag called ...drumroll... `the_tags`. It takes three parameters: how to begin the list, how to separate each tag, and how to end the list. The tag does not do any output if a post hasn't been tagged, so it can safely sit in your theme until you need it to be active.
Here's how I did it in my personal blog.
{% codeblock lang:php %}
<?php the_tags('<div class="tags">Tags &raquo; ', ' &bull; ', '</div>'); ?>
{% endcodeblock %}
Of course, you could also do it using an unordered list...
{% codeblock lang:php %}
<?php the_tags('Tags<ul class="tags"><li>', '</li><li>', '</li></ul>'); ?>
{% endcodeblock %}
Drop some styling for the "tags" class in your theme's CSS, and you're good to go!
(Well, not quite. You'll want to make sure to make the same change in your main index template, single post template,
and archive template, so that the tags appear no matter how the user got to the post.)

View File

@ -0,0 +1,30 @@
---
layout: post
title: Category Drop-Down in WordPress
author: Daniel
date: 2007-05-24 09:00:15
categories:
- [ Programming, JavaScript ]
- [ Programming, PHP, WordPress ]
tags:
- category
- dropdown
- wordpress
summary: A category dropdown (select list) in WordPress
---
[WordPress][] provides a [template tag][template], [wp_dropdown_categories][cat], that inserts a drop-down list (the HTML &lt;select&gt; element) of categories, where the value of each item is the ID from the database. This works fine if you are not using rewrite rules (AKA "pretty links") - you can construct a URL using the value (?cat=[number]). However, if you use any sort of rewrite rules, this does not work. I recently converted my [personal site][], which uses the Pool theme, to utilize a JavaScript array to assist with displaying category pages.
Here's the code...
_Edit: Code has been moved to [this post][]._
This works for both "pretty" and standard links, as it uses the template tag [get_category_link][link] to specify the link.
[WordPress]: //wordpress.org "WordPress"
[template]: //codex.wordpress.org/Template_Tags "Template Tags - WordPress Codex"
[cat]: //codex.wordpress.org/Template_Tags/wp_dropdown_categories "wp_dropdown_categories - WordPress Codex"
[personal]: //daniel.summershome.org "Daniel J. Summers"
[this post]: /2007/posting-source-code-in-wordpress-take-2.html "Posting Source Code in WordPress, Take 2 &bull; DJS Consulting Tech Blog"
[link]: //codex.wordpress.org/Function_Reference/get_category_link "get_category_link - WordPress Codex"

View File

@ -0,0 +1,20 @@
---
layout: post
title: Daniel's DropDowns 1.0 - WordPress Plug-In
author: Daniel
date: 2007-10-02 19:54:56
categories:
- [ Programming, PHP, WordPress ]
tags:
- category
- dropdown
- plug-in
- wordpress
summary: A WordPress plugin to display category and archive drop-downs
---
I've created a plug-in that I'm now using on my personal site to provide the category and archive drop-down lists. It's called "Daniel's DropDowns", and it will create drop-downs with either a link or a button to go to the selection in the drop-down, and a CSS class can be specified for the button and the drop-down box.
<del>daniels\_dropdowns.txt - Daniel's DropDowns 1.0</del> _(UPDATE: This functionality is now part of WordPress core.)_
<del>To install it, download the file, rename it "daniels_dropdowns.php", and upload it to your /wp-content/plugins directory. Then, enable it, and add the template tags to your theme. (The documentation at the top of the file lists all the template tags provided, and the options that can be passed to them.)</del>

View File

@ -0,0 +1,27 @@
---
layout: post
title: Daniel's DropDowns 2.0.1 - WordPress Plug-In
author: Daniel
date: 2007-12-24 10:34:06
categories:
- [ Programming, PHP, WordPress ]
tags:
- category
- dropdown
- plug-in
- update
- wordpress
summary: A quick bug fix
---
I have released version 2.0.1 of Daniel's DropDowns, the [WordPress][] plug-in that provides category and archive dropdown template tags. It is available on [its page at the WordPress Plug-In Directory][pi].
This was a minor change - the auto-navigating lists added in version 2 needed a slight tweak. There wasn't a "select category" entry, so one could not navigate to the first item in the list without going somewhere else first. The category dropdown now has this entry, and is consistent with the archive dropdown.
Enjoy!
_(UPDATE: This plug-in is inactive, as its functionality is now part of WordPress core.)_
[WordPress]: //wordpress.org "WordPress"
[pi]: //wordpress.org/extend/plugins/daniels-dropdowns/ "Download Daniel's DropDowns 2.0.1"

View File

@ -0,0 +1,30 @@
---
layout: post
title: Daniel's DropDowns 2 - WordPress Plug-In
author: Daniel
date: 2007-12-23 23:02:49
categories:
- [ Programming, PHP, WordPress ]
tags:
- category
- dropdown
- plug-in
- update
- wordpress
summary: A new version of the category / archive plug-in
---
I have released version 2 of my category and archive drop-down plug-in for [WordPress][]. It is hosted at the WordPress Plug-In Directory - you can [go get it there][pi]. Following are a few of the changes that were made.
* Both tags now have only 2 parameters - the type of navigation and the text for the link or button. For navigation type, 'button' remains the default, and 'link' is still available. However, a third option of 'auto' has been added, which will render the list as an auto-navigating select box.
* The CSS parameters for the select and button elements were dropped. How these elements can be specified using CSS is detail in the top-of-plugin comments, along with an example.
* The usage examples in the comments now have an example of how to put the tag in a template in such a way that, if the plug-in is disabled, the template will still render. This could be done with 1.0, but I didn't give an example.
* I added PHP Documentor-style comments to both functions.
Let me know if you have any problems with it, or any ideas for other behavior. Enjoy!
_(UPDATE: This plug-in is inactive, as its functionality is now part of WordPress core.)_
[WordPress]: //wordpress.org "WordPress"
[pi]: //wordpress.org/extend/plugins/daniels-dropdowns/ "Download Daniel's DropDowns 2"

View File

@ -0,0 +1,26 @@
---
layout: post
title: HCSB Verse of the Day 1.0 - WordPress Plug-In
author: Daniel
date: 2007-09-25 22:08:24
categories:
- [ Programming, PHP, WordPress ]
tags:
- bible gateway
- hcsb
- plug-in
- wordpress
summary: A WordPress plug-in to display a verse or passage each day
---
I have used a hack in the theme of my personal site for a while to obtain the "Verse of the Day" in the Holman Christian Standard Bible (HCSB) version. With things that I've learned about plug-ins, I decided to take a stab at creating a plug-in to do this work. That way, if I changed themes, I wouldn't have to hack the new one they way I've hacked the current one.
The fruits of my labor is the new HCSB Verse of the Day plug-in for WordPress. It uses the reference from [BibleGateway.com][], then gets the text from their regular website. (They do not provide the service, citing copyright restrictions.) How to use the plug-in, along with my justification on copyright grounds, is in the top of the file's comments. If they're not clear, certainly post comments here and I'll address them. (I do plan to submit the plug-in to [WordPress.org][] - but, they require a specific README file format that it will take me a bit to put together.)
<del>votd\_hcsb.txt - HCSB Verse of the Day 1.0</del> _(UPDATE: It is in the plugin directory now.)_
<del>To install it, download the file, rename it "votd_hcsb.php", and upload it to your /wp-content/plugins directory. Then, enable it, and add the template tags to your theme - that's it!</del>
[BibleGateway.com]: //www.biblegateway.com "Bible Gateway"
[WordPress.org]: //wordpress.org "WordPress"

View File

@ -0,0 +1,38 @@
---
layout: post
title: Incorporating an Akismet Counter Into a WordPress Theme
author: Daniel
date: 2007-08-06 10:14:00
categories:
- [ Programming, PHP, WordPress ]
tags:
- aksimet
- counter
- spam
- theme
- wordpress
summary: Akismet counts the spam it blocks, and that count can be displayed
---
[Akismet][] is, by far, the most popular anti-spam plug-in for WordPress. (It comes bundled with the download, so that gets it market share. But, it's also very, very good.) It comes with a counter that can be put into a WordPress theme. It's attractive, but its light blue color may not integrate well into a given theme.
I went digging around in the source code, and found the line that actually pulls the count from the database. Using this parameter, I was able to integrate a spam count into the sidebar that has a look consistent with the rest of the site.
Here's the code that's in use on the theme on this site.
{% codeblock lang:php %}
<li id="spamstats">
<h2><?php _e('Akismet-Eaten Spam:'); ?></h2>
<ul>
<li><a href="//akismet.com"><?php
echo(number_format(get_option("akismet_spam_count"))); ?>
and counting...</a></li>
</ul>
</li>
{% endcodeblock %}
Of course, line 5 is the important one - that's how to get the number, formatted for whatever locale the server is set up for. (On my [personal blog][djs], the number is up over 1,400!)
[Akismet]: //akismet.com "Akismet"
[djs]: //daniel.summershome.org "Daniel J. Summers"

View File

@ -0,0 +1,30 @@
---
layout: post
title: Lightning Calendar Plug-In for Thunderbird AMD64
author: Daniel
date: 2007-07-21 09:01:42
categories:
- [ Hosted 64-bit Software, Lightning Plug-In ]
tags:
- amd64
- lightning
- mozilla
- plug-in
- sunbird
- thunderbird
summary: A plugin that brings Mozilla Sunbird into Thunderbird
comments: []
---
[Mozilla Sunbird][] is a calendar project that's being designed as a sister program to Thunderbird and Firefox. It's now at the 0.5 version, and there is a plug-in that integrates Sunbird with Thunderbird, called [Lightning][]. It allows you to not only have a calendar, but send and receive meeting requests as well.
I'm running Thunderbird 2 under Ubuntu Feisty Fawn (7.04) on the AMD64 architecture, and could not find a pre-compiled version of this that worked. So, I decided to give it a shot. It was pretty easy, and the result is a plug-in that works with the AMD64 version of Thunderbird! Since I had trouble finding it, I thought I would share it.
Since I have just started using it, I haven't wrung it out, or tested all the options. Use at your own risk, etc.
<del>You can download the plug-in here</del> _(UPDATE: See [this post][].)_ Happy storming! ;)
[Mozilla Sunbird]: //www.mozilla.org/projects/calendar/sunbird/ "Mozilla Sunbird Calendar Project"
[Lightning]: //www.mozilla.org/projects/calendar/lightning/ "Lightning Plug-in for Thunderbird"
[this post]: /2007/mozilla-now-hosting-lightning-64-bit-plug-in.html "Mozilla Now Hosting Lightning 64-bit Plug-In &bull; DJS Consulting Tech Blog"

View File

@ -0,0 +1,19 @@
---
layout: post
title: Mozilla Now Hosting Lightning 64-bit Plug-In
author: Daniel
date: 2007-08-07 12:56:46
categories:
- [ Hosted 64-bit Software, Lightning Plug-In ]
tags:
- lightning
- mozilla
- plug-in
summary: Mozilla provides the Lightning plug-in now
comments: []
---
Just when I get a nice system set up here, lo and behold, Mozilla now has a 64-bit Linux plug-in available. It can be [obtained from their FTP site][ftp] (link for version 0.5). <del>I'll continue to keep the version I have here available, in case this dries up.</del> _(UPDATE: It's gone.)_ But, unless that does, this is probably the last post you'll see here about the 64-bit Lightning plug-in.
[ftp]: //releases.mozilla.org/pub/mozilla.org/calendar/lightning/releases/0.5/contrib/linux-x86-64/

View File

@ -0,0 +1,62 @@
---
layout: post
title: Posting Source Code in WordPress, Take 2
author: Daniel
date: 2007-06-13 11:33:15
categories:
- [ Programming, PHP, WordPress ]
tags:
- geshi
- plug-in
- source
- wordpress
- wp-syntax
summary: The WP Syntax Plugin is another plugin that simplifies posting source code
---
In my searching, I have found another WordPress source code plugin, called [wp-syntax][]. This one uses [GeSHi][], the Generic Syntax Highlighter. It features many languages, and is extensible to even more. (If I ever post a COBOL snippet, I'll probably add COBOL support to it, and contribute it to the codebase.)
To use it, you simply put a pre tag, followed by `lang=[language]`. It will also do line numbering. Of course, with a single "language" parameter, the embedded language will not be highlighted as well. In this case, the previous plug-in works better; although the syntax highlighting has to be done manually, it can handle multiple languages.
_(NOTE: The samples have been removed, as this blog is not running under WordPress. However, since the source code from another post was moved here, it is presented below, using [Jekyll][]'s PHP highlighting mode.)_
{% codeblock lang:php %}
<?php
/**
* This creates a list of category links that can be used with a category dropdown
*/
$aCategories = get_all_category_ids();
$iMaxCat = 0;
foreach($aCategories as $iThisCat) {
if ($iMaxCat < $iThisCat) {
$iMaxCat = $iThisCat;
}
}
$iMaxCat++;
?>
<div style="text-align:center;">
<form name="categoryform" action="" style="text-align:center;">
<script type="text/javascript">
var aLink = new Array(<?php echo($iMaxCat); ?>);
<?php
foreach($aCategories as $iThisCat) {
echo("aLink[$iThisCat] = \"" . get_category_link($iThisCat) . "\";\n");
} ?>
function goCat() {
window.location =
aLink[document.getElementById('cat')[document.getElementById('cat').selectedIndex].text;
}
</script>
<?php wp_dropdown_categories('class=sidebardropdown&orderby=name&show_count=1&hierarchical=1'); ?>
<br /><br />
<button class="sidebarbutton" type="button" style="margin-top:5px;" onclick="goCat();">View Category</button>
</form>
</div>
{% endcodeblock %}
This is another option, and is probably what I'll use for single-language posts, or posts where the embedded language may not be crucial.
[wp-syntax]: //wordpress.org/extend/plugins/wp-syntax/ "WP Syntax Plugin"
[GeSHi]: //qbnz.com/highlighter/ "GeSHi"
[Jekyll]: //jekyllrb.com "Jekyll"

View File

@ -0,0 +1,31 @@
---
layout: post
title: Posting Source Code in WordPress
author: Daniel
date: 2007-05-30 14:45:10
categories:
- [ Programming, PHP, WordPress ]
tags:
- bennet mcelwee
- plug-in
- source
- wordpress
summary: A plug-in for WordPress makes posting source code samples easy
---
Traditionally, posting source code in a WordPress blog, especially if it were HTML or PHP, was problematic. There are a few reasons for this...
* WordPress is very good about ensuring that it outputs valid XHTML, so it strips mis-matched and invalid tags. This is usually desirable, but it wreaks havoc with HTML and XML code posts.
* Since WordPress is coded in PHP, blocks of PHP will attempt to execute.
* White space is collapsed, which can kill any readability that the user has set out; the "visual editor" ([TinyMCE][]) does its best to create efficient HTML. This can actually break spacing-oriented languages such as Python.
So how do you do it? It's actually pretty easy, using the [Code Markup][] WordPress plugin. You can download the plugin from that link, and upload it to <tt>./wp-content/plugins</tt>. The instructions on the website are critical - the "visual" editor will not allow the code to come through unscathed. However, the visual editor only corrupts the code if you actually save it; what I have done is write the post using the visual editor, then disable it and put the code in. It's the best of both worlds! (Make sure that, once you have the code in, you don't edit the post using the visual editor - unless you have a good backup...)
<del>The post below this one (about category lists in WordPress) was done using this plugin.</del> _(This isn't running in WordPress any more.)_ In addition, you can use the <tt>&lt;span&gt;</tt> tag to do the color-coding. I created a few CSS classes ("key" for keywords, "func" for functions, "attr" for attributes, "embed" for embedded language), and used them to accomplish the color coding. It seems that it would be pretty easy to write another plugin that used a list of keywords to do this syntax highlighting; maybe that's a challenge for another day.
A big "atta boy" to [Bennet McElwee][] for a fantastic plugin!
[TinyMCE]: //tinymce.moxiecode.com "TinyMCE"
[Code Markup]: //www.thunderguy.com/semicolon/wordpress/code-markup-wordpress-plugin "Code Markup Plug-in - Semicolon"
[Bennet McElwee]: //www.thunderguy.com/semicolon/ "Semicolon - by Bennett McElwee"

View File

@ -0,0 +1,31 @@
---
layout: post
title: Releases for Lightning Plug-In and xine RPMs
author: Daniel
date: 2007-08-06 22:49:08
categories:
- [ Hosted 64-bit Software, Lightning Plug-In ]
- [ Hosted 64-bit Software, xine RPMs ]
tags:
- category
- lightning
- xine
summary: How to track releases of pre-built open source software hosted by DJS Consulting
---
At DJS Consulting, we maintain 64-bit builds for two software products - xine and the Lightning plug-in for Thunderbird. These are now shown under "Hosted 64-Bit Software" in the sidebar. You can also view links for each of the categories.
<del>**Lightning Plug-In**</del> _(UPDATE: See [this post][].)_
<del>Category Link &bull; <del>RSS Feed</del>
**xine RPMs**
[Category Link][xine-cat] &bull; [RSS Feed][xine-rss]
Along these lines, there will hopefully be a new xine (1.1.7) coming soon - stay tuned!
[this post]: /2007/mozilla-now-hosting-lightning-64-bit-plug-in.html "Mozilla Now Hosting Lightning 64-bit Plug-In &bull; DJS Consulting Tech Blog"
[xine-cat]: /category/xine-rpms
[xine-rss]: /xine-rpms.xml

View File

@ -0,0 +1,133 @@
---
layout: post
title: Transferring CLOBs Across Linked Oracle Databases
author: Daniel
date: 2007-06-15 14:04:02
categories:
- [ Databases, Oracle ]
- [ Programming, SQL, PL/SQL ]
tags:
- algorithm
- clob
- data
- linked database
- oracle
summary: An algorithm to move CLOBs from one database to another
---
Linking databases in Oracle make it easy to share data, and can be useful for replication. However, there is a limitation in Oracle that prevents Character Large Objects (CLOBs) from coming across these links. The following technique uses stored procedures and a temporary table to pull CLOBs across a database link.
First, you'll need the temporary table, which will hold a sequence number, the primary key for the table where you'll want to reconstruct the CLOB, and some text. This table can reside in the source or destination database, but must be linked from the other one. For our purposes, it looks like this...
{% codeblock lang:sql %}
create table clob_xfer_area
(
cxa_pk number(12),
cxa_number number(12),
cxa_text varchar2(4000 byte)
);
alter table clob_xfer_area add
(
constraint pk_cxa_id
primary key (cxa_pk, cxa_number)
);
{% endcodeblock %}
Second, you'll need the procedure in the source database that breaks the CLOB apart and populates the temporary table.
{% codeblock lang:sql %}
set serveroutput on size 1000000
set lines 1000
set pages 0
set tab off
set feedback on
create or replace
procedure break_clobs_apart
is
v_line_number number(3);
v_text_piece varchar2(4000);
v_total_length number(12);
cursor clob_cur is
select twc_pk, twc_clob_field
from table_with_clob;
begin /* { */
for clob_rec in clob_cur loop /* { */
v_total_length := 1;
v_line_number := 0;
while (v_total_length <=
DBMS_LOB.GETLENGTH(clob_rec.twc_clob_field)) loop /* { */
v_line_number := v_line_number + 1;
v_text_piece := DBMS_LOB.SUBSTR(clob_rec.twc_clob_field,
3999, v_total_length);
v_total_length := v_total_length + 3999;
insert into clob_xfer_area (
cxa_pk,
cxa_number,
cxa_text
)
values (
clob_rec.twc_pk, -- cxa_pk
v_line_number, -- cxa_number
v_text_piece -- cxa_text
);
end loop; /* } of while */
end loop; /* } of clob_cur */
end; /* } of procedure break_clobs_apart */
{% endcodeblock %}
Third, you'll need a procedure in the destination database that puts the CLOB back together, and deletes the data from the temporary table.
{% codeblock lang:sql %}
set serveroutput on size 1000000
set lines 1000
set pages 0
set feedback on
set tab off
create or replace
procedure put_clobs_together
is
v_new_clob clob;
cursor pk_cur is
select distinct cxa_pk
from clob_xfer_area;
cursor piece_cur(p_cxa_pk number) is
select cxa_text
from clob_xfer_area
where cxa_pk = p_cxa_pk
order by cxa_number;
begin /* { */
for pk_rec in pk_cur loop /* { */
DBMS_LOB.CREATETEMPORARY(v_new_clob, TRUE);
DBMS_LOB.OPEN(v_new_clob, DBMS_LOB.LOB_READWRITE);
for piece_rec in piece_cur(pk_rec.cxa_pk) loop /* { */
DBMS_LOB.WRITEAPPEND(v_new_clob, LENGTH(piece_rec.cxa_text),
piece_rec.cxa_text);
end loop; /* } of piece_cur */
DBMS_LOB.CLOSE(v_new_clob);
update dest_table_with_clob
set migrated_clob = v_new_clob
where dtwc_pk = pk_rec.cxa_pk;
end loop; /* } of pk_cur */
delete from clob_xfer_area;
end; /* } of procedure put_clobs_together */
{% endcodeblock %}
Finally, you'll need a procedure that controls the whole thing. We'll assume that this procedure is loaded in the destination database, and the source database is linked with the name "source".
{% codeblock lang:sql %}
set lines 1000
set pages 0
set feedback on
set tab off
create or replace
procedure xfer_clobs
is
begin /* { */
break_clobs_apart@source;
put_clobs_together;
end; /* } */
{% endcodeblock %}
(This does not include a commit - the changes will not be persistent unless they are committed.)
Of course, these processes could (and, to be useful, likely would) be integrated into other procedures and scripts. But, this framework will successfully transfer CLOBs across linked databases in Oracle.

View File

@ -0,0 +1,28 @@
---
layout: post
title: Transferring Data Between Oracle and SQL Server
author: Daniel
date: 2007-07-09 15:23:10
date_gmt: '2007-07-09 21:23:10 +0000'
categories:
- [ Databases, Oracle ]
- [ Databases, SQL Server ]
tags:
- data
- dts
- instant client
- oracle
- sql server
summary: Using Oracle's Instant Client for easy SQL Server data exchange
---
There are lots of "how to" articles on sharing data between Oracle and SQL Server. Most of these involve installing Oracle's code base on the SQL Server machine, then using that instance to link tables within Oracle. This technique does not require that, thanks to a product from Oracle called [Oracle Instant Client][ic].
To set up the Oracle piece, download the packages for "Basic" and "ODBC Supplement", and follow the instructions for installation, on the machine with SQL Server. (This is not an "install" per se - it's basically an unzip.) Next, you'll need to provide a TNSNAMES.ORA file - this can be any valid file, including a simple shell with an "ifile=" statement pointing to a common TNSNAMES.ORA file. Finally, set the environment variable TNS_ADMIN to point to the directory where this TNSNAMES.ORA file resides.
Now, you can easily create a DTS script through SQL Server to push or pull data however you'd like. Oracle Instant Client will appear in the drop-down list of providers, and you'll be able to specify your connection the way you normally do (i.e., "DB01.WORLD").
Happy migrating!
[ic]: //www.oracle.com/technology/tech/oci/instantclient/index.html "Download Oracle Instant Client"

View File

@ -0,0 +1,20 @@
---
layout: post
title: Welcome!
author: Daniel
date: 2007-05-17 14:29:32
categories:
- General Info
tags:
- blog
- welcome
---
Welcome to the DJS Consulting Tech Blog. This blog is a place where I plan to posts tips and other information regarding technology (AKA "geek stuff"). This will allow me to keep [my personal blog][pers] non-technical.
I have imported my old "My Linux Adventure" posts from 2004 here, to allow the to be indexed and searchable. I noticed, in the process, that some of the information is somewhat dated - take it for what it's worth, which is twice what you paid for it!
I hope that the information here will be beneficial to you.
[pers]: //daniel.summershome.org "Daniel J. Summers: Charter Member of the VRWC"

View File

@ -0,0 +1,19 @@
---
layout: post
title: WordPress 2.3 About to Drop
author: Daniel
date: 2007-09-24 13:05:27
categories:
- General Info
tags:
- update
- wordpress
summary: A pending WordPress release
---
Version 2.3 of WordPress, the blogging software I use to produce this blog (as well as the other blogs on my site), will be released later today. I'll be upgrading these blogs on Monday evening. There have been major pieces of WordPress that have been re-worked, and those are causing some plug-ins to not work correctly. None of my blogs are all that reliant on plug-ins - the "Share This" plug-in is the main one, and it's been verified in 2.3 already.
There's lots more information on the [WordPress Development Blog][dev] - I won't go into the details here. I'm confident this will be a smooth upgrade. I just wanted to let you know in case some things look strange, I'm on it.
[dev]: //wordpress.org/development "Development Blog - WordPress.org"

View File

@ -0,0 +1,25 @@
---
layout: post
title: xine-lib 1.1.7 RPM
author: Daniel
date: 2007-08-21 21:10:15
categories:
- [ Hosted 64-bit Software, xine RPMs ]
tags:
- rpm
- xine-lib
---
Below are the library and development RPMs for xine-lib version 1.1.7. These have been built a little differently. First, these have been built on Ubuntu Linux, and converted to RPM using alien. Second, I could not quickly figure out how to get only the files tagged for the 1.1.7 release, so this is actually the in-work 1.1.8 release. I ran these builds through some paces, and nothing glaring came out. Be sure to check out the [About the xine RPMs][abt] post for more information.
xine-lib - The main xine library
xine-lib-dev - The development xine library (needed if you're building an interface against xine-lib)
You'll also need a user interface - as of this release, the most current release of [xine-ui is 0.99.5][ui].
(To save disk space, only the current release and two [prior releases][pri] will be maintained.)
[abt]: /2005/about-the-xine-rpms.html "About the xine RPMs &bull; DJS Consulting Tech Blog"
[ui]: /2007/xine-ui-0-99-5-rpm.html
[pri]: /2005/xine-lib-1-1-1-rpm.html

View File

@ -0,0 +1,24 @@
---
layout: post
title: xine-ui 0.99.5 RPM
author: Daniel
date: 2007-08-21 21:15:35
categories:
- [ Hosted 64-bit Software, xine RPMs ]
tags:
- rpm
- xine-ui