Computer

After Unpacking the zip Files of my Flickr Data Export, I found the Metadata in json files and Photos without the Original Modification Date.

Using exiftool on mac I managed to Re-Import the EXIF Data and Adjust the Date to the Date of the Photo taken

1. Install exiftool command
https://sourceforge.net/projects/exiftool

2. adjust the folder path in the dir variable containing your unpacked flickr export data

3. Run This One Line Command in Terminal and it will pick the matching id from the json file and apply to the related photo:

dir="/Users/islam/Downloads/my_flickr_export"; for json in $(find "${dir}" -name "*.json" -type f); do id="$(basename "${json}" | cut -d. -f1 | cut -d_ -f2)"; photo="$(find "${dir}" -name "*${id}*" -not -name "*.json" -type f)"; exiftool -m -d "%Y-%m-%d %H:%M:%S" -tagsfromfile "${json}" "-Keywords<tags" "-Subject<tags" "-Caption-Abstract<name" "-ImageDescription<description" "-DateTimeOriginal<date_taken" -ext "*" -overwrite_original -progress "-filemodifydate<date_taken" "-filecreatedate<date_taken" --ext json "${photo}"; done

Finally, you can delete json Files

dir="/Users/islam/Downloads/my_flickr_export"; find  "${dir}" -name "*.json" -type f -delete

I have similar working solution for Google Photos takeout too.

After Unpacking the zip Files of my Google Photos Takeout, I found the Metadata in json files and Photos without the Original Modification Date.

Using exiftool on mac I managed to Re-Import the EXIF Data and Adjust the Date to the Date of the Photo taken

1. Install exiftool command
https://sourceforge.net/projects/exiftool

2. adjust the folder path in the dir variable containing your unpacked Google Photos export data

3. Run This One Line Command in Terminal and it will and apply the json File Info to the related photo:

dir="/Users/islam/Downloads/my_google_photos"; exiftool -m -r -d %s -tagsfromfile "%d/%F.json" "-GPSAltitude<GeoDataAltitude" "-GPSLatitude<GeoDataLatitude" "-GPSLatitudeRef<GeoDataLatitude" "-GPSLongitude<GeoDataLongitude" "-GPSLongitudeRef<GeoDataLongitude" "-Keywords<Tags" "-Subject<Tags" "-Caption-Abstract<Description" "-ImageDescription<Description" "-DateTimeOriginal<PhotoTakenTimeTimestamp" -ext "*" -overwrite_original -progress "-filemodifydate<PhotoTakenTimeTimestamp" "-filecreatedate<PhotoTakenTimeTimestamp" --ext json "${dir}"

Finally, you can delete json Files

dir="/Users/islam/Downloads/my_google_photos"; find  "${dir}" -name "*.json" -type f -delete

I have similar working solution for Flickr Export too.

Google Takeout Link: https://takeout.google.com/

Archicad 22 icon

 

Mac:

1. Install ArchiCAD 22 on your machine
2. Activate ArchiCAD by educational License and copy education.lic from /Users/Shared/ARCHICAD/AC_22_GER/ to a different location

Silent Install procedure:

1.

sudo /Volumes/ARCHICAD\ 22/ARCHICAD\ 22\ Installer.app/Contents/MacOS/installbuilder.sh --mode unattended --desktopshortcut 0 --dockshortcut 0 --enableautomaticupdate 0 --rebootAnswer 0

 

2. copy education.lic back to /Users/Shared/ARCHICAD/AC_22_GER/

More Install Parametrs are provided here:

sudo /Volumes/ARCHICAD\ 22/ARCHICAD\ 22\ Installer.app/Contents/MacOS/installbuilder.sh --help

 

3. Silent Uninstall:

 

"/Applications/Graphisoft/ARCHICAD 22/Uninstall.AC/Uninstall.app/Contents/MacOS/installbuilder.sh" --mode unattended

 


 

Windows:

 

1. Install ArchiCAD 22 on your machine
2. Activate ArchiCAD by educational License and copy education.lic from C:\ProgramData\ARCHICAD\AC_22_GER\ to a different location

 

Silent Install procedure:

1.

ARCHICAD-22-GER-3009-1.6.exe --mode unattended --desktopshortcut 0 --enableautomaticupdate 0

 

2. copy education.lic back to C:\ProgramData\ARCHICAD\AC_22_GER\

More Install Parametrs are provided here:

ARCHICAD-22-GER-3009-1.6.exe  --help

 

3. Silent Uninstall:

 

"C:\Program Files\GRAPHISOFT\ARCHICAD 22\Uninstall.AC\Uninstall.exe" --mode unattended

 

The default sort command on Mac OS X Command Line (Terminal) doesn't provide sorting Version Numbers

For Example 

Command:

echo -ne "17.0.9\n17.0.11\n17.0.8" | sort -n

Result:

17.0.11
17.0.8
17.0.9

Conclusion:The numerical and alphabetical sort on mac Terminal always sorts the "1" before the "9", leading to sort the "17.0.11" lower in number than "17.0.8"

Because of this issue, I created this Bash File "sort-version.sh" to make the numerical sort correctly.

Command:

./sort-version.sh $(echo -ne "17.0.9\n17.0.11\n17.0.8")

Result:

17.0.8
17.0.9
17.0.11

Usage: sort-version.sh numeric-values
example sort-version.sh 17.0.9 17.0.11 17.0.8

sort-version.sh

Download

Source-Code: sort-version.sh

#!/bin/bash
#Islam Adel
#2014-03-27 First Lines
#2014-03-31 Added help text
#Sort Version Numbers
# Tested on Mac OS X 10.9

# 9 digits held by "#" (sorted before numbers in alphabetical order)
# Translate each separated input into 9 digited field (17.0.8 --> ######17.########0.########8
# sort
# Translate back

#######################################

#Readme

#Usage: sort-version.sh numeric-version-numbers
# Use "." separated version numbers as input arguments
# example: sort-version.sh $(echo -ne "17.0.9\n17.0.11\n17.0.8")
# OR: sort-version.sh 17.0.7 17.0.11 17.0.8

#######################################

#SET Global Variables here
#SET full lenght 9x #
full="#########"

#SET Default delimiter here
IFS=" 
"
#default?
#IFS=$' \t\n'

#backup old IFS
#OLDIFS=$IFS

#define input version numbers
#echo ${@}
p=${@}

#exit error code 1 if no arguments defined
if [[ -z ${@} ]]; then exit 1; fi

####sample input
#p="17.0.8
#17.0.11
#17.0.9"

#####################################

#List all input Values
for i in $(echo ${p})
do
	x=
	#Trim the dots between the values and treat separately
	for k in $(echo ${i} | sed 'y/./\n/')
	do
		#count the number of characters in version number
		#trim this number from the full length of #########
		#set the a new value for the version number with a fixed length
		#combine the divided numbers by dots previously to one string
		#add the dots again
		x=${x}${full:$(echo ${k} | wc -m)}${k}.
		#a dot remains at the end
	done
	#divide each version number by new line
	#trim the last dot
	#add the previous version to a new line
	#only if a previous version is available
	if [[ ! -z ${y} ]];then
		y="${y}
$(echo ${x} | sed 's/.$//')"
	else
		y=$(echo ${x} | sed 's/.$//')
	fi
done
#SET New delimiter as new line break
IFS='\n'
#Now sort Alphabetically and remove the fixed length
echo ${y} | sort | sed 's/#//g'
#Restore IFS?
#IFS=$OLDIFS
exit 0

 

fusiondrive

Here is a Step-By-Step Tutorial of How I created Fusion Drive on MacBook Pro (Late 2011)
I used the Following Hardware:

SSD: 240 GB OCZ VERTEX 3 (Link)
OCZ_Vertex3_240
HDD: 1TB Western Digital Scorpio Blue WD10JPVT (Link)

WD10PJVT

HDD Caddy: 2.HDD SATA Adapter für MacBook pro 9.5mm (Link) (Actually it was not 100% suitable but it fitted inside)

HDD_Caddy

External slim Drive Case (Link

slimcase 

 Let the work begin:

1. I Backed up the whole Drive using Carbon Copy Cloner to a new Disk Image on an external USB Drive.
(It took about 2,5 hours for 240GB)

2. I had already replaced the original Hitachi 500GB HDD By the 240GB SSD
3. I replaced the Optical Drive by The Caddy and the 1TB  HDD. See Replacement Tutorial Here: http://www.youtube.com/watch?v=yvdAN_caP9E
4. I booted up the MacBook normally, the second HDD appeared and Disk Utility asked to initialize. I said yes and Formatted it as HFS+ (Journaled) which is the default.
5. I rebooted again in target mode by holding down "t" button and connected my macbook via Firewire with an iMac 
6. Both drives appeared and got mounted, then I opened Terminal and done the following: 
(Thanks to jollyjinx)

List all Drives

Command:

diskutil list

Result:

/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:                  Apple_HFS mac-137                 499.0 GB   disk0s2
   3:       Microsoft Basic Data WINDOWS                 500.9 GB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        *35.6 MB    disk1
   1:        Apple_partition_map                         32.3 KB    disk1s1
   2:                  Apple_HFS ARD                     35.5 MB    disk1s2
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk2
   1:                        EFI                         209.7 MB   disk2s1
   2:                  Apple_HFS HDD                     999.9 GB   disk2s2
/dev/disk3
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *240.1 GB   disk3
   1:                        EFI                         209.7 MB   disk3s1
   2:                  Apple_HFS Macintosh HD            239.0 GB   disk3s2
   3:                 Apple_Boot Recovery HD             700.0 MB   disk3s3

In my case the SSD inside the MacBook was disk3 and the 2nd HDD was disk2

Command:

    
diskutil cs create FusionDrive disk3 disk2

Result:

    
Started CoreStorage operation
Unmounting disk3
Repartitioning disk3
Unmounting disk
Creating the partition map
Rediscovering disk3
Adding disk3s2 to Logical Volume Group
Unmounting disk2
Repartitioning disk2
Unmounting disk
Creating the partition map
Rediscovering disk2
Adding disk2s2 to Logical Volume Group
Creating Core Storage Logical Volume Group
Switching disk3s2 to Core Storage
Switching disk2s2 to Core Storage
Waiting for Logical Volume Group to appear
Discovered new Logical Volume Group "2B4EDB74-5842-40E4-8398-1567CD879127"
Core Storage LVG UUID: 2B4EDB74-5842-40E4-8398-1567CD879127
Finished CoreStorage operation

Command:

    
diskutil cs list

Result:

    
CoreStorage logical volume groups (1 found)
|
+-- Logical Volume Group 2B4EDB74-5842-40E4-8398-1567CD879127
    =========================================================
    Name:         FusionDrive
    Size:         1239574347776 B (1.2 TB)
    Free Space:   1235270975488 B (1.2 TB)
    |
    +-< Physical Volume C4AEC50E-CA5A-4F01-A1D4-0E821B78488C
    |   ----------------------------------------------------
    |   Index:    0
    |   Disk:     disk3s2
    |   Status:   Online
    |   Size:     239713435648 B (239.7 GB)
    |
    +-< Physical Volume 1B357448-93BE-4D62-BB93-09E7E95A66DB
        ----------------------------------------------------
        Index:    1
        Disk:     disk2s2
        Status:   Online
        Size:     999860912128 B (999.9 GB)

Copy the ID Shown for Logical Volume Group  

Command:

    
diskutil coreStorage createVolume 2B4EDB74-5842-40E4-8398-1567CD879127 jhfs+ FusionDrive 100%

Result:

    
Started CoreStorage operation
Waiting for Logical Volume to appear
Formatting file system for Logical Volume
Initialized /dev/rdisk1 as a 1 TB HFS Plus volume with a 98304k journal
Mounting disk
Core Storage LV UUID: 3D2C216E-D29B-4EF2-AE8F-58CCDA0488FE
Core Storage disk: disk1
Finished CoreStorage operation

Now the Fusion Drive has been already created.

7. The Final Step was to restore the backup image. So I used Carbon Copy Cloner again to restore the image to my Fusion Drive

Thats it.

I used Black Magic Disk Speed Test, to test the performance. I reached write speed 250 MB/s and read speed of 400 MB/s
It is slower than before when I was using only the SSD, where I had more than 500 MB/s read speed. But still faster than an HDD.
Anyhow I can live with it.

I almost forgot to say, I inserted the optical drive inside the slim case and now I have a nice external usb optical drive if needed.

Done!

Good Luck with your Fusion Drive

Fusion Drive Macbook Pro
 Fusion Drive Info
Fusion Drive Disk Utility
Fusion Drive Blackmagic Speed Test

Last Words:

to verify type this command to see the activity of each drive:

iostat disk0 disk1 1



(replace disk0 and disk1 by the correct disk ids of your ssd and hdd)
to get the ids you need, run:

diskutil list