Dropbox ගැන හුඟක් දෙනෙක් දැනටමත් දන්නව ඇති. Dropbox කියන්නෙ තමන්ගෙ ගොනු සමමුහුර්ත කරන්න (sync) තිබෙන සේවාවක්. මේ සේවාව සමඟ වැඩ කරන්න එක් එක් මෙහෙයුම් පද්ධතියට සේවාලාභී යෙදුම් (client applications) ඉදිරිපත් කරල තියෙනව. Fedora වලටත් එහෙම යෙදුමක් තියෙනව. ඒක ස්ථාපනය කරාට පස්සෙ අපි කැමති නාමාවලියක් (directory) අපිට අපේ Dropbox නාමාවලිය කියල හඳුන්වන්න පුළුවන්. අපි ඒ නාමාවලියට පිටපත් කරන ඕනෑම දෙයක් Dropbox සේවාදායකව (server) සමඟ සමමුහුර්ත වෙනවා. මේ දේ සිදුවෙන්න ස්වයංක්රීයව. අපිට කරන්න තියෙන්නෙ අපිට සමමුහුර්ත කරන්න ඕන ගොනු හෝ නාමාවලි අර කලින් කියපු Dropbox නාමාවලියට පිටපත් කරන්න විතරයි.
ඒත් මෙතන පොඩි අවුලක් තියෙනව. අපි හිතමු අපි මොකක්හරි ලිපියක් සංස්කරණය කරමින් ඉන්නව කියල. අපිට ඒක සමමුහුර්ත වෙන්නත් ඕන. එතකොට කරන්න ඕන අර ගොනුව Dropbox නාමාවලියට පිටපත් කරල සංස්කරණය කරන එක. ඉතින් ඒක සමහර වෙලාවට අපේ පරිගණකයේ අපි ගොනු සහ නාමාවලි පෙළගස්වා තිබෙන විදියට වෙනස් වෙන්න පුළුවන්. ඒ කියන්නෙ documents වල තියෙන්න ඕන ලිපියක් Dropbox නාමාවලියෙ තියෙනකොට අවුල්නේ. මේකට Fedora (සහ බොහෝ විට අනෙක් linux පාදක මෙහෙයුම් පදධති) වලදි නම් අදාල ගොනුවේ හෝ නාමාවලියේ symbolic link එකක් හදල ඒක Dropbox නාමාවලියට පිටපත් කිරීම ප්රමාණවත්. ඒ කියන්නෙ අපේ ලිපිය තියෙන්නෙ අපිට තියෙන්න ඕන තැන (උදා documents) ඒත් අපි symbolic link එකක් හදල ඒක Dropbox නාමාවලියට පිටපත් කරල තියෙනව. ඒක නිසා ගොනුව සමමුහුර්ත වෙනවා. ඒ කියන්නෙ අපිට ඕන වැඩ දෙකම කෙරෙනව.
ඒත් මේ ක්රමයත් අපි ගොනු කීපයක් සමඟ වැඩ කරනකොට අපහසුයි. එක් එක් ගොනුවට symbolic links හදන්න ඕන, ඒවා පිටපත් කරන්න ඕන වැඩ ගොඩයි. ඒක නිසා මම මේක ටිකක් පහසු කරගන්න ලිව්වා script එකක්. මේක nautilus-script එකක්. nautilus කියන්නෙ GNOME වල file manager එක. GNOME කියන්නෙ desktop environment එකක්. nautilus-script කියන්නෙ nautilus හි ක්රියාකාරිත්වය වර්ධනය කරන්න තියෙන පොඩි විධානාවලියක්. පහත තියෙන්නෙ ඒ මම ලියපු script එක,
#!/bin/sh # # W.H. Kalpa Pathum <callkalpa@gmail.com> # 1st June, 2010 # # Dropbox directory DROPBOX_DIR="$HOME/Dropbox/" # creates a temporary file file_list=$(mktemp) # writes the URIs of the selected file to the temp file echo $NAUTILUS_SCRIPT_SELECTED_URIS | sed 's/ \//\n/g' > $file_list # iterete through the file list for file in $(cat $file_list) do # extract the last filed from the URI, that is the file name filename="$(echo $file | awk -F'/' '{print $NF}' | sed 's/%20/ /g')" # creates the symbolic link ln -s "$(pwd)/$filename" "$DROPBOX_DIR$filename" # sets the emblem gvfs-set-attribute -t stringv "$filename" metadata::emblems default done exit 0
දැන් කොහොමද මේක භාවිතා කරන්නෙ?
- පහත සබැඳියෙන් ගොනුව බාගත කරන්න
- gedit වැනි text editor එකකින් එම ගොනුව විවෘත කරන්න
- ගොනුවේ $HOME/Dropbox/ යන්න ඔබට අදාල ලෙස වෙනස් කර ගොනුව සුරකින්න (save) ($HOME කියන්නෙ ඔබගේ Home නාමාවලියේ පෙත (path))
- ගොනුව ~/.gnome2/nautilus-scripts/ ට පිටපත් කරන්න
- ගොනුවට ක්රියාත්මක කිරීමේ අවසර ලබාදෙන්න (execute permissions) ඒ සඳහා පහත විධාන ලබා දෙන්න
cd ~/.gnome2/nautilus-scripts chmod +x <your file name>
දැන් ඔබ මේ script එක භාවිතා කිරීමට සූදානම්. කරන්න තියෙන්නෙ nautilus වලින් ඔබට සමමුහුර්ත කිරීමට අවශ්ය නාමාවලිය(නාමාවලි)/ගොනුව(ගොනු) අඩංගු නාමාවලිය විවෘත කරන්න. ඊට පස්සෙ සමමුහුර්ත කරන්න අවශ්ය ගොනු හෝ නාමාවලි එකක් හෝ කීපයක් තෝරා right click කර එන මෙනුවේ Scripts උප මෙනුවෙන් script එකේ නම තෝරන්න. මේකෙන් වෙන්නෙ අදාල තේරූ අයිතම වල symbolic link එකක් හැදිල ඒක Dropbox නාමාවලියට පිටපත් වෙන එක.
symbolic link එක හැදුනට පස්සෙ අදාල අයිතම වල අයිකනට පැත්තෙන් පොඩි කොළපාට හරි ලකුණක් වැටේවි. මේකට කියන්නෙ emblem එකක් කියල. නමුත් මේ සළකුණ දකින්නනම් ඔන nautilus refresh කරන්න ඕන. refresh නොකර මේ emblem එක පෙන්නන්න පුළුවන් විදියක් නම් මට හොයාගන්න බැරි වුණා.
එහෙනම් කට්ටියම මේක පාවිච්චි කරල බලල හොඳ නරක දෙකම කියන්න.
ප.ලි: මේ ගැන මම මුලින්ම දැන්මෙ මගේ ඉංග්රීසි බ්ලොග් එකේ. සිංහලෙන් ලියන්න හිතන් හිටියට වැඩ වැඩි වුණ නිසා ලියන්න බැරි වුණා. ඉතින් අපේ ගයාන් තාරකත් මගෙන් ඉල්ලීමක් කලා මේක සිංහලෙන් ලියන්න කියල. ඉතිං ඒ නිසා තමයි ලැබුණු සුළු විවේකයක මේ ලිපිය මේ විදියට ලියවුණේ.
ජූලි 9th, 2010 at 6:27 පෙ.ව.
ela kiri machan…, keep it up..,
ජූලි 9th, 2010 at 6:50 පෙ.ව.
කල්ප මචන්. Fedora (Core 13) වල SLT එකෙන් දෙන Prolink H9601c usb ADSL modem එක install කරන විදියක් තියනවනම් කියන්න.., ලොකු උපකාරයක්..!!!