libpng error: IDAT: CRC error

I receive this error message while using wkhtmltoimage.

In Mac, it it not allow you to use Preview to save to other format.
It will display cannot write, or enable to save.

The fastest way to solve this problem, can be done in Automator, you can use Photo -> Flip Image -> Flip Image then save or convert to other format.

Then your PNG error will be gone.

Fix Safari for Slow and Loading by Disable DNS Prefetching

I’m wondering why Safari on my Mac always slower load on facebook.com, but fast in Google Chrome. I did set the DNS for my network to Google DNS 8.8.8.8 and 8.8.4.4 and it doesn’t help much.

facebook.com reverse the IP differently from different location, if your browser prefetching it, maybe slow down from the previous IP you get. So I tried to disable the DNS Prefetching using the Terminal.

defaults write com.apple.safari WebKitDNSPrefetchingEnabled -boolean false

If I want to re-enable again, I can run this in Terminal.

defaults delete com.apple.safari WebKitDNSPrefetchingEnabled

I feel that the loading speed is faster than before.

Fastest way to rename filenames with space to dash in linux

I want to mass rename hundred of filenames like
filename 001.jpg to filename-001.jpg



filename 099.jpg to filename-099.jpg

I use this command to rename all in few seconds in my MacBook Pro.
I think it is fine to run in any linux.

for f in *\ *; do mv "$f" "${f// /-}"; done

Show Image Size in Terminal or Shell

The easiest way to show the file size in Terminal in Mac or Linux.

ustins-MacBook-Pro:jpg juzhax$ file 001.jpg
001.jpg: JPEG image data, EXIF standard
Justins-MacBook-Pro:jpg juzhax$ identify 001.jpg
001.jpg JPEG 720x468 720x468+0+0 8-bit sRGB 59.8KB 0.000u 0:00.009
Justins-MacBook-Pro:jpg juzhax$

command c expects followed by text error in Mac

You received error from the sed command in Mac, because the argument in mac is different.
If you type in Mac terminal, you may receive error like this

Justins-MacBook-Pro:2 juzhax$ sed -i 's/old_text/new_text/g' example.txt
sed: 1: "config.php": command c expects \ followed by text

The first argument should be the extension of the backup file. The correct way is

Justins-MacBook-Pro:2 juzhax$ sed -i '.bak' 's/old_text/new_text/g' example.txt

or

Justins-MacBook-Pro:2 juzhax$ sed -i '.original' 's/old_text/new_text/g' example.txt

If you don’t want any backup file, you can do like this.

Justins-MacBook-Pro:2 juzhax$ sed -i '' 's/old_text/new_text/g' example.txt

How to convert pvr.czz file to PNG ?

Download TexturePacker

Install and it does support command line tools.

To convert single pvr.czz file to PNG in console, here is the way.

TexturePacker filename.pvr.ccz --sheet filename.png --data dummy.plist --algorithm Basic --allow-free-size --no-trim

To convert mass pvr.czz file to PNG in console, here is the way.

find -name \*.pvr.czz | sed 's/\.pvr.czz//g' | \
xargs -I % -n 1 TexturePacker %.pvr.czz \
--sheet %.png \
--data dummy.plist \
--algorithm Basic \
--allow-free-size \
--no-trim

invalid object in plist for destination format

Error: invalid object in plist for destination format

When you convert the .plist file to json, you could see this problem


plutil -convert json -e json ./filename.plist
./filename.plist: invalid object in plist for destination format

Solution

Remove the key and date using any editor, then re convert again.

 

<key>some text</key>
<date>2013-06-20T15:31:58Z</date>

 

checking for Tcl configuration… configure: error: Can’t find Tcl configuration definitions


sh-3.2# port selfupdate
---> Updating MacPorts base sources using rsync
MacPorts base version 2.1.3 installed,
MacPorts base version 2.2.1 downloaded.
---> Updating the ports tree
---> MacPorts base is outdated, installing new version 2.2.1
Installing new MacPorts release in /opt/local as root:admin; permissions 0755; Tcl-Package in /Library/Tcl

Error: /opt/local/bin/port: port selfupdate failed: Error installing new MacPorts base: command execution failed
sh-3.2# port -v selfupdate
---> Updating MacPorts base sources using rsync
receiving file list ... done

sent 36 bytes received 69 bytes 42.00 bytes/sec
total size is 4925440 speedup is 46908.95
receiving file list ... done

sent 36 bytes received 76 bytes 44.80 bytes/sec
total size is 512 speedup is 4.57
MacPorts base version 2.1.3 installed,
MacPorts base version 2.2.1 downloaded.
---> Updating the ports tree
Synchronizing local ports tree from rsync://rsync.macports.org/release/tarballs/ports.tar
receiving file list ... done

sent 36 bytes received 70 bytes 42.40 bytes/sec
total size is 58112000 speedup is 548226.42
receiving file list ... done

sent 36 bytes received 77 bytes 45.20 bytes/sec
total size is 512 speedup is 4.53
receiving file list ... done

sent 36 bytes received 70 bytes 42.40 bytes/sec
total size is 10119590 speedup is 95467.83
receiving file list ... done

sent 36 bytes received 77 bytes 45.20 bytes/sec
total size is 512 speedup is 4.53
---> MacPorts base is outdated, installing new version 2.2.1
Installing new MacPorts release in /opt/local as root:admin; permissions 0755; Tcl-Package in /Library/Tcl

checking build system type... x86_64-apple-darwin13.0.0
checking host system type... x86_64-apple-darwin13.0.0
checking target system type... x86_64-apple-darwin13.0.0
checking MacPorts version... 2.2.1
checking for sw_vers... /usr/bin/sw_vers
checking for defaults... /usr/bin/defaults
checking for xcode-select... /usr/bin/xcode-select
checking Mac OS X version... 10.9
checking Xcode location... /Applications/Xcode.app/Contents/Developer
checking Xcode version... 5.0.2
checking for gcc... /usr/bin/cc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether /usr/bin/cc accepts -g... yes
checking for /usr/bin/cc option to accept ISO C89... none needed
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether we are using the GNU Objective C compiler... yes
checking whether gcc accepts -g... yes
checking for bsdmake... no
checking for pmake... no
checking for bzip2... /usr/bin/bzip2
checking for bzr... no
checking for chown... /usr/sbin/chown
checking for cp... /bin/cp
checking for cpio... /usr/bin/cpio
checking for cvs... /usr/bin/cvs
checking for diff... /usr/bin/diff
checking for dscl... /usr/bin/dscl
checking for dseditgroup... /usr/sbin/dseditgroup
checking for file... /usr/bin/file
checking for find... /usr/bin/find
checking for git... /usr/bin/git
checking for gnumake... /usr/bin/gnumake
checking for gnupatch... no
checking for gpatch... no
checking for gnutar... no
checking for gtar... no
checking for gzip... /usr/bin/gzip
checking for hdiutil... /usr/bin/hdiutil
checking for hg... no
checking for launchctl... /bin/launchctl
checking for lipo... /usr/bin/lipo
checking for lsbom... /usr/bin/lsbom
checking for lzma... no
checking for make... /usr/bin/make
checking for mdfind... /usr/bin/mdfind
checking for mdls... /usr/bin/mdls
checking for mkbom... /usr/bin/mkbom
checking for mtree... /usr/sbin/mtree
checking for open... /usr/bin/open
checking for openssl... /usr/bin/openssl
checking for patch... /usr/bin/patch
checking for pax... /bin/pax
checking for rmdir... /bin/rmdir
checking for rsync... /usr/bin/rsync
checking for sandbox-exec... /usr/bin/sandbox-exec
checking for sed... /usr/bin/sed
checking for svn... /usr/bin/svn
checking for swig... no
checking for tar... /usr/bin/tar
checking for unzip... /usr/bin/unzip
checking for xar... /usr/bin/xar
checking for xcodebuild... /usr/bin/xcodebuild
checking for xcrun... /usr/bin/xcrun
checking for xz... no
checking for zip... /usr/bin/zip
checking for launchd... yes
checking for sed... (cached) /usr/bin/sed
checking which sed flag to use for extended regexp... -E (BSD)
checking for tar... (cached) /usr/bin/tar
checking whether tar supports -q... yes (bsdtar)
checking for tar... (cached) /usr/bin/tar
checking for gnutar... no
checking for which tar variant to use... /usr/bin/tar
checking for /usr/bin/tar --no-same-owner support... no
checking for patch... (cached) /usr/bin/patch
checking for gpatch... no
checking for GNU (FSF) patch... /usr/bin/patch
checking how to mark unused variables...
checking for gcc symbol visibility attribute... __attribute__((visibility("hidden")))
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... -D_THREAD_SAFE
checking how to run the Objective C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking objc/objc.h usability... yes
checking objc/objc.h presence... yes
checking for objc/objc.h... yes
checking if linking libobjc requires pthreads... no
checking for Apple Objective-C runtime... yes
checking for GNU Objective C runtime... no
configure: Using Apple Objective-C runtime
checking for Apple Foundation library... yes
configure: WARNING: GNUSTEP_SYSTEM_ROOT is not defined in your environment, preventing the use of GNUstep's Foundation library
configure: Using Apple Foundation library
checking for CoreFoundation framework... yes
checking for SystemConfiguration framework... yes
checking for IOKit framework... yes
checking for CFNotificationCenterGetDarwinNotifyCenter... yes
checking for whether we will build daemondo... yes
checking for ports tree... /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports
checking for MacPorts config directory... ${sysconfdir}/macports
checking for install user... root
checking for install group... admin
checking for macports user... macports
checking what permissions to use for installation directories... 0755
checking for Applications installation directory... /Applications/MacPorts
checking for Frameworks installation directory... /opt/local/Library/Frameworks
checking for Universal CPU architectures... x86_64 i386
checking how to run the C preprocessor... /usr/bin/cc -E
checking for ANSI C header files... (cached) yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for sys/wait.h that is POSIX.1 compatible... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking paths.h usability... yes
checking paths.h presence... yes
checking for paths.h... yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking crt_externs.h usability... yes
checking crt_externs.h presence... yes
checking for crt_externs.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking sys/fcntl.h usability... yes
checking sys/fcntl.h presence... yes
checking for sys/fcntl.h... yes
checking sys/cdefs.h usability... yes
checking sys/cdefs.h presence... yes
checking for sys/cdefs.h... yes
checking err.h usability... yes
checking err.h presence... yes
checking for err.h... yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/sysctl.h usability... yes
checking sys/sysctl.h presence... yes
checking for sys/sysctl.h... yes
checking readline/readline.h usability... yes
checking readline/readline.h presence... yes
checking for readline/readline.h... yes
checking readline/history.h usability... yes
checking readline/history.h presence... yes
checking for readline/history.h... yes
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking sys/paths.h usability... yes
checking sys/paths.h presence... yes
checking for sys/paths.h... yes
checking utime.h usability... yes
checking utime.h presence... yes
checking for utime.h... yes
checking for bzero... yes
checking for memset... yes
checking for fgetln... yes
checking for lockf... yes
checking for flock... yes
checking for setmode... yes
checking for strcasecmp... yes
checking for strncasecmp... yes
checking for strlcpy... yes
checking for copyfile... yes
checking for clearenv... no
checking for sysctlbyname... yes
checking if readlink conforms to POSIX 1003.1a... yes
checking CommonCrypto/CommonDigest.h usability... yes
checking CommonCrypto/CommonDigest.h presence... yes
checking for CommonCrypto/CommonDigest.h... yes
checking for readline in -lreadline... yes
checking whether rl_username_completion_function is declared... no
checking whether rl_filename_completion_function is declared... yes
checking whether rl_completion_matches is declared... yes
checking whether username_completion_function is declared... yes
checking whether filename_completion_function is declared... yes
checking whether completion_matches is declared... yes
checking for Tcl configuration... configure: error: Can't find Tcl configuration definitions
Command failed: cd /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/base && CC=/usr/bin/cc ./configure --prefix=/opt/local --with-tclpackage=/Library/Tcl --with-install-user=root --with-install-group=admin --with-directory-mode=0755 --enable-readline && make && make install SELFUPDATING=1
Exit code: 1
Error: /opt/local/bin/port: port selfupdate failed: Error installing new MacPorts base: command execution failed
sh-3.2# xcode-select --install
xcode-select: note: install requested for command line developer tools

You have to install the xcode-select first


sudo xcode-select --install

Then upgrade the port

sudo port -v selfupdate