dxcmd error “Unable to initialize DClient” caused by config file permissions

Attempting to run dxcmd was yielding this error on one of our IDM servers:


DirXML Command Line Utility
version 4.0.2.1
Copyright (C) 2003-2011 Novell Inc., All Rights Reserved

Enter user name: foo.user
Enter user’s password:
java.lang.Error: Unable to initialize DClient
at novell.jclient.JClient.initializeDclient(Native Method)
at novell.jclient.JClient.initialize(JClient.java:906)
at com.novell.nds.dirxml.util.DxCommand.commandLine(DxCommand.java:419)
at com.novell.nds.dirxml.util.DxCommand.main(DxCommand.java:391)

Using the command

strace -f dxcmd -user foo.user -password S00perS33cr3t

turned up a “permission denied” error while trying to open /etc/opt/novell/nici64.cfg. On other servers, that file was world-readable; on the problem server, it was owner- and group-readable only.

The chosen fix was to remove world-readable attribute on all servers, and use “sudo dxcmd” to eliminate the file permissions problem.

Fixing Samsung Galaxy S3 after Android 4.4.2 upgrade

I have a Samsung Galaxy S3 with Virgin Mobile. I updated to Android 4.4.2 yesterday. This afternoon, the LTE network did not work. Symptoms were that the network showed as “Samsung” instead of “Virgin Mobile.” Reboots of the phone, and pulling the battery out/waiting/reinstalling the battery did not work.

I found some postings online which suggested that a manual PRL Update followed by a Profile Update would fix the problem, but it did not.

The cure seems to be a phone restart, then enter ##72786# and wait while the phone does some background updates and automatic reboots. Eventually, on the 3rd reboot, the annoying Virgin Mobile “rave dance” wallpaper/music played and my phone connection appears to be working properly (shows that it’s connected to “Virgin Mobile” network now).

Update June 20, 2014: After doing the above fix, I lost 4G (LTE/CDMA) connection, and could only connect via CDMA. Doing a Profile update, then a PRL update, then another Profile update seems to have restored the LTE/CDMA.

In addition, the 4.4.2 Android update seems to have brought Bluetooth tethering ability to the phone! More investigation of this to come…

Using Evernote + AppleScript + QuickSilver for a daily task log

Trying to be better about tracking my daily workload, I need a lightweight hotkey-based mechanism to quickly capture something as I switch tasks. I can then go back later and total up the times, or just jog my memory about what I was doing on a certain day at a certain time. Tracking this information in Evernote is also a bonus as it’s available and searchable on all my devices.

I created an AppleScript first that did the actions needed:

(* Notebook name to create these journal entries in *)
property nb : "Daily Diary"

(* BEGIN HANDLER CALL

NOTE: I have added a new portion to the script so that users who
aren't familiar with how to use a handler can run the Script
directly and check it out. If you'd like to use this as a handler
in your own AppleScript, Just delete or comment out the portion
of code between "BEGIN HANDLER CALL" and "END HANDLER CALL"

*)

set notetext to text returned of (display dialog "Diary Entry" default answer "")
my handle_string(notetext)

on handle_string(notetext)
if notetext is not "" then
CreateDailyEvernote(notetext)
end if
end handle_string

(* END HANDLER CALL *)

on CreateDailyEvernote(txt)
set t to "Daily Journal " & (do shell script "date +'%Y-%m-%d'")
set crlf to (ASCII character 13) & (ASCII character 10)
set timeStr to time string of (current date)

(* keep track of the app that was running when we hit the hotkey *)
set frontApp to (path to frontmost application as Unicode text)

tell application "Evernote"
set foundNotes to find notes "notebook:\"" & nb & "\"" & " intitle:\"" & t & "\""
set found to ((length of foundNotes) is not 0)
if not found then
set curnote to create note with text crlf & timeStr & ": " & txt & crlf title t notebook nb
else
repeat with curnote in foundNotes
tell curnote to append text crlf & timeStr & ": " & txt & crlf
end repeat
end if
activate
end tell

(* put the old foreground app back on top *)
tell application frontApp to activate

(* just to be sure there are no odd effects, explicitly hide Evernote *)
tell application "System Events"
set visible of process "Evernote" to false
end tell

end CreateDailyEvernote

and then set a QuickSilver trigger to run the script (I use Ctrl-Cmd-J — for “Journal”).

The effect is a simple plain-text list of entries:

imagebam.com


This process is based mainly on the work done by Sonny Gill (“Creating a daily log in Evernote from Quicksilver“), but I took out the parts that write HTML into the note and deal with the clipboard as I don’t want either. I also added some AppleScript to put back the foreground app that was running when I hit the hotkey, in order to minimize the impact to my workflow. I don’t want to have to be clicking or using Cmd-Tab to try and get back to the app I was running before…