Install MySQL Workbench on CentOS 7

Install EPEL (Extra Packages for Enterprise Linux) repositories:

sudo yum install ./epel-release-7-5.noarch.rpm

Install MySQL repositories:

sudo yum install ./mysql-community-release-el7.5.noarch.rpm
sudo yum install ./mysql-community-release-el7.rpm 

(installing mysql-community-release-el7.rpm produced error: “does not update installed package”)

Install MySQL Workbench.

sudo yum install mysql-workbench

Install additional dependencies (that you would be informed of in error messages, if you invoked mysql-workbench

sudo yum install libzip.x86_64
sudo yum install tinyxml.x86_64

You can now start MySQL Workbench using menu: Applications / Programming / MySQL Workbench



Compiling mdb-tools on Ubuntu 12.04

I recently replaced Linux Mint 13 with Ubuntu 12.04 LTS as the GNU Linux distribution on my dual-boot laptop. One of the first tasks after basic configuration was to install mdb-tools for Maestro development (used to extract data from a Parts&Vendors MS Jet4 database).

Install build dependencies:

$ sudo apt-get install libtool
$ sudo apt-get install automake
$ sudo apt-get install txt2man
$ sudo apt-get install libglib2.0-dev libdb-dev

Clone the mdb-tools GitHub repo:

$ cd ~/src
$ cd src
$ git clone mdbtools
$ cd mdbtools

Compile mdb-tools, and install executables and man pages

$ ./
$ ./configure
$ make
$ sudo make install

Rebuild ld cache:

$ sudo ldconfig

Man pages are installed for mdb-tools executables:

  • mdb-array
  • mdb-export
  • mdb-header
  • mdb-hexdump
  • mdb-parsecvs
  • mdb-prop
  • mdb-schema
  • mdb-sql
  • mdb-tables
  • mdb-ver

For more information on mdb-tools:

For more information on why you have to run ldconfig after installing mdb-tools:


Dual-Boot Windows 7 and Linux Mint 13 on a T61 ThinkPad

I’ve finally joined the ranks of the dual-booters. I use Windows 7 as my primary environment for web-deployed application development (deployed on FreeBSD), but it seems some things are just done more efficiently in a Linux environment (such as converting an svn repo to Git using svn2git).

I had been using separate Linux and Windows laptops due to concerns over the reliability of the Linux NTFS driver, but after months of swapping an external NTFS USB drive back and forth between Windows systems and Linux systems without trouble, I decided to make the plunge (having my HP dv9000 Windows laptop die a premature death was an added incentive).

Here’s the basic procedure I followed:

1. Perform a new Windows 7 install. Windows recognized all the hardware in the T61 out of the box, which was a nice surprise (I had expected I would need to install the Ethernet adapter myself, and had downloaded it from Lenovo’s website in anticipation). I used a Windows 7 upgrade (which required installing WinXP first) which resulted in a single NTFS partition on the drive. After activating Windows, I spent the rest of the night updating Windows.

2. Install the Lenovo ThinkVantage System Update utility and use it to download and install all recommended drivers and utilities. Painless.

4. Install Firefox and configure Sync (to keep Firefox bookmarks/etc synchronized with my work desktop, my PortableApps USB drive, and the home family PC).

5. Compress the drive using Windows (I compressed it by 100G, which will be more than enough for Linux Mint, especially as all my development files will be kept on the NTFS partition).

6. Boot Linux Mint XFCE from the distribution DVD and install “Alongside Windows” (it’s not well documented, but if the Linux Mint installer finds enough unused space on the drive, it will create a new partition for the unused space and then install Linux Mint into it). The installer will also replace the Windows bootloader with GRUB, and although I had read recommendations against this, I haven’t had any problems.

5. Boot into Linux Mint and update the system. Edit /etc/default/grub to make Windows the default OS at boot (and as instructed, run grub-update afterwards to rebuild /etc/grub.cfg). Edit /etc/fstab to mount the Windows partition at boot so KeePassX can access my password database on the Windows partition without me first having to mount the partition (but instead of editing /etc/fstab directly, I used pysmb).

7. Configure Firefox Sync in Linux Mint.

8. Install git, gitk, and svn2git following this Nine Productions post.

The only thing I don’t know is why I didn’t do this sooner!

Samsung SCX-4200 on OpenSuse 12.1

I finally had a chance to setup my Samsung SCX-4200 printer with my Lenovo T61 laptop running OpenSuse 12.1

First, I tried the automatic printer recognizer in OpenSuse. No luck after installing the recommended printer driver, but it wasn’t a Samsung driver so perhaps that wasn’t too unexpected.

On the recommendation of G(r)eek Bitches’, I downloaded the Samsung SCX-4300 Universal Printer Driver from Samsung (the Samsung page has been changed since the article was written, so you’ll have to search the Samsung site). Extract the files from the tarball into a local temp directory and then execute the file in the Linux directory using sudo. Have the script add your username to the “lp” group and specify “scx4200” as the printer. After completing the install, I printed some pages from a PDF using Document Viewer (included with OpenSuse) and then some source code from NetBeans. Other than some clunky driver dialogs with NetBeans, both printed fine.

However, thereĀ  were a number of error messages during install. All seems OK, so perhaps the driver package hasn’t kept up with OpenSuse (although I haven’t checked scanning functions yet).

dale@linux-zqvn:~/Downloads/temp/cdroot/Linux> sudo ./
root's password: (gcc 3.0.x .. 3.3.x) not found, install … done
**** It seems Qt library is not installed, or X display is not accessible.
**** Custom Qt library will be configured for use with this package.
GUI mode installer execution failed, proceeding in text mode
**** Running text mode install
**** Press Enter to continue or q and then Enter to quit:

**** Non-priviliged users found:
nobody dale
**** Are you going to use USB-connected devices ?
**** If yes, users allowed to scan or manage printers should be added to lp
**** group. The list of non-privileged users proposed for addition is shown above.
**** Press y and then Enter to add users or Enter to leave lp group intact: y

**** Print drivers for the following device models available:
CLP-300splc CLP-310splc CLP-340splc CLP-350ps CLP-500splc CLP-510splc CLP-550ps CLP-600splc CLP-610splc CLP-620splc CLP-650ps CLP-660ps CLP-670ps CLP-770ps CLX-216xsplc CLX-3160splc CLX-3170splc CLX-3180splc CLX-3240splc CLX-6200ps CLX-6220ps CLX-6240ps CLX-6250ps CLX-8380ps CLX-8385ps CLX-9250ps mfp560 mfp65x mfp750 ML-1450ps ML-1510spl2 ML-1520spl2 ML-1610spl2 ML-1630spl2 ML-1630wspl2 ML-1640spl2 ML-1710spl2 ML-1740spl2 ML-1750spl2 ML-191xspl2 ML-2010spl2 ML-2150ps ML-2150spl2 ML-2240spl2 ML-2245spl2 ML-2250spl2 ML-2510spl2 ML-2525w ML-2550ps ML-2550Sps ML-2550Sspl2 ML-2560ps ML-2570ps ML-2580spl2 ML-2850ps ML-2855ps ML-3050spl2 ML-3470ps ML-3560spl2 ML-4050DMVps ML-4050ps ML-4550ps ML-6060ps ML-7300ps ML-8x00ps scx4100 scx4200 scx4300 scx4500 scx4500w scx4600 scx4623 scx4725 scx4x16 scx4x20 scx4x21 scx4x24 scx4x25 scx4x26 scx4x28ps scx5312f scx5635ps scx5835ps scx5x30 scx6545ps scx6x20PCL scx6x20 scx6x20PS scx6x22ps scx6x45ps scx6x55ps scx8030ps sf531p
**** Please enter model to install and press Enter: scx4200
INFO: Restarting udev …
Usage: udevadm [–help] [–version] [–debug] COMMAND [COMMAND OPTIONS]
info query sysfs or the udev database
trigger request events from the kernel
settle wait for the event queue to finish
control control the udev daemon
monitor listen to kernel and udev events
test simulation run

control: unrecognized option ‘–reload_rules’
INFO: Installing MFP port and SANE backend libraries …
cat: /etc/modprobe.conf: No such file or directory
INFO: Installing GUI lpr …
INFO: Fixing file ownership and permissions …
INFO: Registering SANE backend …
INFO: Registering CUPS printer …
redirecting to systemctl
INFO: CUPS restart OK
INFO: Creating menu entries …
mkdir: cannot create directory `/proc/Desktop’: No such file or directory
chmod: cannot access `/proc/Desktop’: No such file or directory
chown: cannot access `/proc/Desktop’: No such file or directory
mkdir: cannot create directory `/proc/.gnome-desktop’: No such file or directory
chmod: cannot access `/proc/.gnome-desktop’: No such file or directory
chown: cannot access `/proc/.gnome-desktop’: No such file or directory
./ line 1212: [: : integer expression expected
INFO: Adding users to lp group …
INFO: Finishing installation …
**** Text mode install finished