Posted by: absolutevoid | ജൂണ്‍ 19, 2011

ചക്ര ലിനക്സില്‍ ഇംഗ്ലീഷ് – മലയാളം ഡിക്ഷണറി

Dikt freedict dictionary clientഈ വര്‍ഷത്തെ വായനാദിനം ചെലവഴിച്ചതു് ചക്ര ഗ്നൂ/ലിനക്സിന്റെ റീപ്പാക്കേജിങ് അഭ്യസിച്ചുകൊണ്ടാണു്. അതിലൂടെ ഏതാനും പാക്കേജുകളും ചക്ര യൂസര്‍ റെപ്പോസിറ്ററിയിലേക്കു് സംഭാവന ചെയ്തു. വായനയ്ക്കിടയില്‍ ആവശ്യം വരുന്ന ഡിക്ഷണറിയിലാണു് കൈവച്ചതു്.

കാര്യത്തിലേക്കു് കടക്കാം. രാവിലെ എഴുന്നേറ്റപ്പോള്‍ ഒരു ഭൂതോദയം. എന്റെ ചക്ര ഗ്നൂ‌/ലിനക്സ് മെഷീനില്‍ ഇംഗ്ലീഷ് മലയാളം ഡിക്ഷണറിയില്ലല്ലോ. എങ്കില്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്തേക്കാം എന്നുനിനച്ചു. പത്തായത്തില്‍ തെരഞ്ഞപ്പോള്‍ പൊതിയില്ല. ആര്‍ച്ച് ലിനക്സിനുവേണ്ടി ആഷിക്‍ പായ്ക്ക് ചെയ്തിട്ടുണ്ടെന്നറിയാം. ആര്‍ച്ച് ഉപയോക്താക്കളുടെ പത്തായത്തില്‍ (Arch User Repository – AUR) ഉള്ള പൊതികള്‍ ചക്രയിലും ഇന്‍സ്റ്റോള്‍ ചെയ്യാം. അതിനൊരു വഴിയുണ്ടു്. ഏതാനും പണിയുപകരണങ്ങള്‍ സ്ഥാപിക്കണം. base-devel, packer എന്നീ ഉപകരണങ്ങളാണു് പ്രധാനം. base-devel ഒറ്റ പാക്കേജല്ല. ഒരു കൂട്ടം പ്രോഗ്രാമുകളാണു്. അതൊക്കെ നേരത്തെ തന്നെ ഇന്‍സ്റ്റോള്‍ ചെയ്തിട്ടുമുണ്ടു്.

അറിയാന്‍ താത്പര്യമുള്ളവര്‍ക്കായി, അവ ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നതിങ്ങനെ:

$ sudo pacman -S base-devel packer

മലയാളികള്‍ക്കു് മലയാളം ഫോണ്ടും വേണമല്ലോ. ഫോണ്ട് നിലവില്‍ ചക്രയുടെ ടെസ്റ്റിങ് റെപ്പോയിലാണുള്ളതു്. ഒന്നുകില്‍ അതു് ബ്രൌസര്‍ ഉപയോഗിച്ചോ കമാന്‍ഡ് ലൈനിലാണെങ്കില്‍ wget ഉപയോഗിച്ചോ ഡൌണ്‍ലോഡ് ചെയ്യണം. എന്നിട്ടു് sudo pacman -U ttf-malayalam-fonts എന്ന ആര്‍ഗ്യുമെന്റ് ഉപയോഗിച്ചു് ഇന്‍സ്റ്റാള്‍ ചെയ്യണം.

കുറച്ചുകൂടി ധൈര്യമുണ്ടെങ്കില്‍ വേറൊരു വഴിയുണ്ടു്. ടെസ്റ്റിങ് റെപ്പോ താത്ക്കാലികമായി എനേബിള്‍ ചെയ്യുക വഴിയാണതു്. ഒരിക്കല്‍ ആര്‍ച്ച് ഉപയോഗിച്ചവര്‍ക്കു് ഇതു് വളരെ എളുപ്പമാണു്. എല്ലാ കോണ്‍ഫിഗറേഷന്‍ ഫയലുകളും /etc എന്ന ഡയറക്ടറിക്കുള്ളിലാവും ഉണ്ടാവുക. നമുക്കു് എഡിറ്റ് ചെയ്യേണ്ടതു് പാക്‍മാന്റെ കോണ്‍ഫിഗറേഷന്‍ ആണു്. കമാന്‍ഡ് ലൈനില്‍ നിന്നുകൊണ്ടു് മൂന്നുവിധത്തില്‍ ഇതു ചെയ്യാം. ചക്രയുടെ ഡീഫോള്‍ട്ട് കമാന്‍ഡ് ലൈന്‍ എഡിറ്റര്‍ vi ആണു്. ഇതാണു് ഉപയോഗിക്കുന്നതെങ്കില്‍ sudo vi /etc/pacman.conf എന്നുകൊടുക്കുക. vi editorല്‍ നിന്നു്

# [testing]
# Include = /etc/pacman.d/mirrorlist

എന്ന വരിയിലെത്തി, അതിലെ # ഡിലീറ്റ് ചെയ്തു് ആ വരികള്‍ അണ്‍കമന്റ് ചെയ്യുക. ഓര്‍ക്കുക, vi ല്‍ ഇന്‍സേര്‍ട്ട് മോഡില്‍ പോകാന്‍ i അമര്‍ത്തണം. അതിനു ശേഷം മാത്രമേ എന്തെങ്കിലും ടൈപ്പ് ചെയ്യാന്‍ സാധിക്കൂ. തിരികെ കമാന്‍ഡ് മോഡിലേക്കു പോകാന്‍ esc അമര്‍ത്തണം. വെറുതെ quit ചെയ്യാന്‍ :q അമര്‍ത്തിയാല്‍ മതി. പക്ഷെ നമ്മള്‍ വരുത്തിയ മാറ്റം സൂക്ഷിച്ചുവയ്ക്കണമെങ്കില്‍ :wq അമര്‍ത്തണം.

vi ശീലമില്ലെങ്കില്‍ ഇതു് അല്‍പ്പം പ്രയാസമായി തോന്നാം. അങ്ങനെയുള്ളവര്‍ക്കു് nano ഉപയോഗിക്കും. ഏതാണ്ടു് എല്ലാ ഗ്നൂ ലിനക്സ് വിതരണങ്ങളിലും ലഭ്യമായ കണ്‍സോള്‍ ടെക്സ്റ്റ് എഡിറ്റര്‍ ആണു് nano.

sudo nano /etc/pacman.conf

എന്നുകൊടുത്തു് സുഖമായി മുമ്പു പറഞ്ഞ ലൈനില്‍ ചെന്നു് # ഡിലീറ്റ് ചെയ്തു്, ctrl+x അടിച്ചു് quit ചെയ്യാം. അപ്പോള്‍ സേവ് ചെയ്യണോ എന്നു ചോദിക്കും. y കൊടുത്താല്‍ സേവ് ചെയ്യും.

മൂന്നാമത്തെ വഴി, GUI frontend ഉപയോഗിക്കുക എന്നതാണു്. കണ്‍സോളില്‍ നിന്നോ കെറണ്ണറില്‍ നിന്നോ (alt+f2 അമര്‍ത്തുമ്പോള്‍ വരുന്ന കമാന്‍ഡ് പ്രോംപ്റ്റ് ആണു് കെ റണ്ണര്‍)

 kdesu kate /etc/pacman.conf

കൊടുത്താല്‍ കോണ്‍ഫിഗറേഷന്‍ ഫയല്‍ kate എന്ന K advanced text editorല്‍ തുറന്നുവരും. (kwallet അഡ്മിനിസ്ട്രേറ്റര്‍ പാസ്‌വേഡിനു ചോദിക്കും.) അവിടെ എഡിറ്റ് ചെയ്യാന്‍ വളരെ എളുപ്പമാണു്. ഫയല്‍ മെനുവില്‍ സേവ് ഓപ്ഷന്‍ അടക്കം ധാരാളം ഓപ്ഷന്‍സ് ഉണ്ടു്.

ടെസ്റ്റിങ് റെപ്പോ എനേബിള്‍ ചെയ്താല്‍ ചക്രയുട സര്‍വറുകളുമായി sync ചെയ്യേണ്ടതുണ്ടു്. തത്ക്കാലം നമുക്കു് ടെസ്റ്റിങ്ങില്‍ നിന്നു് മറ്റു പാക്കേജുകളൊന്നും ഇന്‍സ്റ്റോള്‍ ചെയ്യേണ്ടതില്ല. അതുകൊണ്ടു് ഒറ്റയടിക്കു് sync ചെയ്തു് അപ്ഡേറ്റുകളുണ്ടെങ്കില്‍ അവ ഇന്‍സ്റ്റോള്‍ ചെയ്യാനുമുള്ള ആര്‍ഗ്യുമെന്റ് ആയ sudo pacman -Syu കൊടുക്കുന്നതു് അബദ്ധമാണു്. പകരം നല്‍കേണ്ടതു് sudo pacman -Syy ആണു്. അതു് പെട്ടെന്നു തീരും. സിങ്ക് ചെയ്തു കഴിഞ്ഞാല്‍ sudo pacman -S ttf-malayalam-fonts എന്നുകൊടുത്തു് മലയാളം ഫോണ്ടുകള്‍ ഇന്‍സ്റ്റോള്‍ ചെയ്യാം. അതിനു ശേഷം ടെസ്റ്റിങ് റെപ്പോ വേണ്ടെങ്കില്‍ നേരത്തെ പോയ വഴിയേ പോയി ആ രണ്ടുവരികള്‍ക്കു മുമ്പിലും വീണ്ടും # ചേര്‍ക്കാം.

ഇതൊന്നും കേട്ടു് പേടിക്കേണ്ട കാര്യമില്ല. ഒരിക്കല്‍ ചെയ്തു നോക്കിയാല്‍ വളരെ എളുപ്പമാണെന്നു് മനസ്സിലാവും.

തത്ക്കാലത്തേക്ക് പാക്‍മാന്‍ തന്നെയാണു് ചക്രയുടെ പാക്കേജ് മാനേജര്‍. ആര്‍ച്ചില്‍ നിന്നു് പകര്‍ന്നുകിട്ടിയതാണതു്. എന്നാല്‍ akabei എന്ന പുതിയ പാക്കേജ് മാനേജര്‍ പണിപ്പുരയിലാണു്. അതില്‍ പാക്ക്മാന്റെ എല്ലാ സൌകര്യങ്ങളുമുണ്ടാവും. പുറമേ പാക്ക്മാനില്ലാത്ത കുറേ സൌകര്യങ്ങളും കാണും. ആര്‍ച്ച് പാക്കേജ് മാനേജ്മെന്റിന്റെ ഏറ്റവും വലിയ സൌകര്യം ടാര്‍ബോള്‍ ആയാണു് പാക്കേജുകള്‍ ലഭ്യമാവുന്നതു് എന്നതാണു്.

പായ്ക്കര്‍ ഇല്ലാതെ aur package സ്ഥാപിക്കാനാവില്ല. അതു് ഇന്‍സ്റ്റോള്‍ ചെയ്യുന്നതെങ്ങനെയെന്നു് മുകളില്‍ പറഞ്ഞുകഴിഞ്ഞു. എന്റെ സിസ്റ്റത്തില്‍ അതു് നേരത്തെ തന്നെയുണ്ടായിരുന്നു. അടുത്ത പടി, ഡിക്ഷണറി സ്ഥാപിക്കുക എന്നതാണു്. അതിനു ഞാന്‍

$ packer -S dict-freedict-eng-mal

എന്നുകൊടുത്തു. ഇന്‍സ്റ്റോള്‍ ആവുന്നില്ല. ഡിപ്പന്‍ഡന്‍സി പ്രശ്നം. ഒന്നാമതു്, dictd സ്ഥാപിക്കണം. പിന്നെ മര്യാദയ്ക്കൊരു GUI വേണമെങ്കില്‍ ഏതെങ്കിലും ഡിക്ഷണറി ക്ലയന്റ് വേണം. ഇതൊന്നും പുതിയ ഡിസ്ട്രോയായ ചക്രയുടെ പത്തായത്തിലില്ല.

dikt KDEയ്ക്കു് വേണ്ടിയുള്ള മെച്ചപ്പെട്ട ഡിക്ഷണറി ക്ലയന്റ് ആണു്. അതു് AURലുണ്ടു്. CCRലില്ല. ഇംഗ്ലീഷ് – ഇംഗ്ലീഷ് ഡിക്ഷണറിയ്ക്കായി ഞാനതു് നേരത്തെ ഇന്‍സ്റ്റോള്‍ ചെയ്തിട്ടുണ്ടു്. ഏതായാലും ആര്‍ച്ച് യൂസര്‍ റെപ്പോസിറ്ററിയിലുള്ള പാക്കേജിനെ ചക്ര കമ്മ്യൂണിറ്റി റെപ്പോസിറ്ററിയിലേക്കു് ചേര്‍ക്കാന്‍ ഏറെക്കുറെ എളുപ്പമാണു്. റീപ്പാക്കേജിങ്ങിനു് വലിയ പണിയില്ല. അതങ്ങു് ചെയ്തേക്കാമെന്നു് വച്ചു. ഇക്കാര്യത്തില്‍ ആകെ ശ്രദ്ധിക്കാനുള്ളതു് ഈ പാക്കേജിന്റെ ഡിപ്പന്‍ഡന്‍സി ആയി വരുന്ന മറ്റു പാക്കേജുകള്‍ ഏതെങ്കിലും ചക്രയുടെ ഔദ്യോഗിക റെപ്പോസിറ്ററികളില്‍ ഏതിലെങ്കിലുമോ അതല്ലെങ്കില്‍ ccrല്‍ തന്നെയോ ഉണ്ടോ എന്നു് തെരഞ്ഞു് ഉറപ്പുവരുത്തണം എന്നതാണു്. ഇല്ലെങ്കില്‍ അവകൂടി ഇതേ പോലെ ccrലേക്കു് ചേര്‍ക്കണം. ഭാഗ്യത്തിനു് Diktനു് dependency പ്രശ്നങ്ങളൊന്നുമില്ല. അവനെ പായ്ക്ക് ചെയ്തു് സോഴ്സ് പാക്കേജ് CCRല്‍ ചേര്‍ത്തു. ഇനിയിപ്പോള്‍ ccr dikt എന്നു മാത്രം നല്‍കിയാല്‍ തന്നെയും (-S argument ഇല്ലാതെ തന്നെ) അതു് ഇന്‍സ്റ്റോള്‍ ചെയ്യാനാവും. അതല്ലെങ്കില്‍ ചക്രയിലെ പാക്‍മാന്‍ gui frontend ആയ Appset-Qtയില്‍ പോയി ഇതു് തെരഞ്ഞെടുത്തു് കൊടുത്താലും മതി. ഉബുണ്ടുവിന്റെ സോഫ്റ്റ്‌വെയര്‍ സെന്റര്‍ പോലെ ഒരു സംവിധാനമാണിതു്.

ക്ലയന്റ് ഉള്ളതുകൊണ്ടുമാത്രം കാര്യമായില്ല. എസ്എംസിയുടെ ഇംഗ്ലീഷ് – മലയാളം ഫ്രീഡിക്ട് ഡിക്ഷണറി ഓടണമെങ്കില്‍ dictd daemon ഓടണം. അതിനു് dictd ഇന്‍സ്റ്റോള്‍ ചെയ്യണം. ഒരു രക്ഷയുമില്ല. dictdയുടെ ഡിപ്പന്‍ഡന്‍സികളില്‍ ഒന്നായ libmaa ചക്രയിലില്ല. ആര്‍ച്ചിലാവട്ടെ, അതും dictd തന്നെയും ഒഫീഷ്യല്‍ പാക്കേജുകളാണു്. Aur പാക്കേജ് എടുത്തു് CCRലിടുന്നത്രയും ലളിതമല്ല, ഒഫീഷ്യല്‍ റെപ്പോസിറ്ററിയില്‍ നിന്നു് ഒരു പാക്കേജു് ഇവിടെ എടുക്കുന്നതു്. അതല്ലെങ്കില്‍ ആവശ്യമായ പാക്കേജുകളും ഡിപ്പന്‍ഡന്‍സികളും പ്രത്യേകം ഡൌണ്‍ലോഡ് ചെയ്ത ശേഷം നേരത്തെ സൂചിപ്പിച്ച -U ആര്‍ഗ്യൂമെന്റ് ഉപയോഗിച്ചു് ആദ്യം ഡിപ്പന്‍ഡന്‍സി, ശേഷം നമുക്കു് വേണ്ട പാക്കേജ് എന്ന ക്രമത്തില്‍ അവ ഇന്‍സ്റ്റോള്‍ ചെയ്യണം.

രണ്ടാമത്തെ വഴി ഒരാള്‍ ഒരിക്കല്‍ ചെയ്യും. അയാള്‍ തന്നെ പിന്നൊരിക്കല്‍ സഹായിക്കാന്‍ ചെല്ലുമ്പോള്‍ മെനക്കേടാവും. ഏതായാലും അവ കൂടി CCRലേക്കു് ചേര്‍ക്കാമെന്നു് തീരുമാനിച്ചു. അതിനാവശ്യമായ ട്യൂറ്റോറിയല്‍ ചക്ര വിക്കിയില്‍ ലഭ്യമാണു്. ദാ ഇവിടെ

ഇങ്ങനെ ചെയ്യാമെന്നു വച്ചതുകൊണ്ടു് ഒരു ഗുണമുണ്ടായി. പാക്കേജിങ്ങിന്റെ ബാലപാഠങ്ങള്‍ അല്‍പ്പംകൂടി മനസ്സിലാക്കാനായി. ജിറ്റില്‍ നിന്നു് ഒരു യൂട്ടിലിറ്റി ചക്രയ്ക്കു് വേണ്ടി പായ്ക്ക് ചെയ്യണമെങ്കില്‍ ചെയ്യാം എന്ന ധൈര്യമായി.

അങ്ങനെ ഇന്നു് ആര്‍ച്ച് ഒഫീഷ്യല്‍ റെപ്പോസിറ്ററിയില്‍ ഉള്ള മൂന്നു പാക്കേജുകളും ആര്‍ച്ച് യൂസര്‍ റെപ്പോസിറ്ററിയില്‍ ആഷിക് നിക്ഷേപിച്ച ഒരു പായ്ക്കേജും ചേര്‍ത്തു് നാലു പാക്കേജുകള്‍ റീപായ്ക്ക് ചെയ്തു് ചക്ര കമ്മ്യൂണിറ്റി റെപ്പോസിറ്ററിയില്‍ ചേര്‍ത്തിട്ടുണ്ടു്. അവ ഇന്‍സ്റ്റോള്‍ ചെയ്യണമെന്നുള്ളവര്‍ക്കു് ഇനി കണ്‍സോളില്‍ ചെന്നു് ഇങ്ങനെ ടൈപ്പ് ചെയ്താല്‍ മതിയാകും: (ഇന്റര്‍നെറ്റ് ഉണ്ടാവണം)

ccr -S dikt libmaa dictd dict-freedict-eng-malayalam

ഇവ ഓരോന്നും ബില്‍ഡ് ചെയ്തു് ഇന്‍സ്റ്റോള്‍ ആയിക്കോളും. കണ്‍സോളില്‍ ചോദിക്കുന്ന ചോദ്യങ്ങള്‍ക്കു് ആവശ്യമായ മറുപടി കൊടുത്താല്‍ മാത്രം മതി.

പക്ഷെ ഇതുകൊണ്ടുമാത്രം ഡിക്ഷണറി ഓടുമോ? ഇല്ല. dictd daemon സ്റ്റാര്‍ട്ട് ചെയ്യണം. അതിനായി നല്‍കേണ്ട കമാന്‍ഡ് ഇതാണു്:

sudo /etc/rc.d/dictd start

ഇതുപക്ഷെ ഓരോ തവണയും ചെയ്യുന്നതു് മെനക്കേടാണു്. ഇതു് സ്ഥിരമായി ഓടാനുള്ള വഴി, rc.conf എന്ന കോണ്‍ഫിഗറേഷന്‍ ഫയലില്‍ മറ്റു ചാത്തന്മാര്‍ക്കൊപ്പം അവസാന ചാത്തനായി പേരുചാര്‍ത്തുകയാണു്. അതിങ്ങനെ.

നേരത്തെ പറഞ്ഞ ഏതെങ്കിലും മാര്‍ഗ്ഗം ഉപയോഗിച്ചു് (vi, nano, kate) /etc/rc.conf എടുക്കുക. അതില്‍ DAEMONS എന്നു തുടങ്ങുന്ന വരിയിലെത്തുക. ബ്രാക്കറ്റ് തീരുംമുമ്പായി അവസാന ഇനമെന്നോണം dictd എന്നു ചേര്‍ക്കുക. ഇനി ഓരോ തവണ സിസ്റ്റം ഓണാകുമ്പോഴും ഈ ചാത്തനും ഓടും.

ഇനി ഇതു് ക്ലയന്റില്‍ എങ്ങനെ കാണും എന്നല്ലേ? alt+f2 അടിച്ചു് krunner വരുത്തുക. അതില്‍ dikt എന്നു് അടിച്ചുകൊടുക്കുക. diktന്റെ settingsല്‍ പോയി configure dikt എടുക്കുക. hosts എന്ന ടാബ് തെരഞ്ഞെടുക്കുക. അവിടെ localhost കൂടി ചേര്‍ക്കുക. ഇനി diktല്‍ ഒരു വാക്കിനു തെരയുമ്പോള്‍ അതു് ഈ ഇംഗ്ലീഷ് മലയാളം ഡിക്ഷണറിയില്‍ തെരഞ്ഞു് മറുപടി തരും. ഇനി അതുപോര, ഇംഗ്ലീഷ് ഡിക്ഷണറികളേതെങ്കിലും വേണമെങ്കില്‍ dictionary എന്ന മെനുവില്‍ നിന്നു് host എടുത്തു് dict.org തെരഞ്ഞെടുക്കുക അതിനുശേഷം വീണ്ടും എന്റര്‍ അടിക്കുക. dictന്റെ സര്‍വറില്‍ ഉള്ള അസംഖ്യം ഡിക്ഷണറികളില്‍ ആദ്യം കിടക്കുന്നതില്‍ നിന്നുള്ള റിസല്‍റ്റ് നമുക്കു കാണാം. ഈ ഡിക്ഷണറി ആവശ്യാനുസരണം മാറ്റുകയും ചെയ്യാം.

ഇനി ഡീഫോള്‍ട്ടായി നമുക്കു് വേണ്ടതു് dict.orgലെ റിസ്റ്റല്‍റ്റാണു് എന്നുവയ്ക്കുക. നേരത്തെ പോയ വഴി settings > configure dikt > hosts എടുത്തു് ക്രമം മാറ്റുക. dict.org ആദ്യവും localhost രണ്ടാമതും മാത്രം വയ്ക്കുക. സംഗതി ക്ലീന്‍

നന്ദി: എസ്എംസി പ്രവര്‍ത്തകരായ സന്തോഷ് തോട്ടിങ്ങല്‍, രജീഷ് കെ നമ്പ്യാര്‍, ആഷിക്‍ എസ് എന്നിവര്‍ക്കു്


പ്രതികരണങ്ങള്‍

  1. സെബിൻ എല്ലാ സോഫ്റ്റ്‌വെയറുകൾക്കും ഡോക്യുമെന്റേഷൻ എഴുതിയിരുന്നെങ്കിൽ എന്നാശിക്കുന്നു!

  2. ഒരു part time job / short term contract ആയി അത്തരം പണികള്‍ കിട്ടുമെങ്കില്‍ ഏറ്റെടുക്കാന്‍ സന്തോഷമേയുള്ളൂ. (കളിയാക്കിയതല്ലെങ്കില്‍ …:D)


ഒരു മറുപടി കൊടുക്കുക

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / മാറ്റുക )

Twitter picture

You are commenting using your Twitter account. Log Out / മാറ്റുക )

Facebook photo

You are commenting using your Facebook account. Log Out / മാറ്റുക )

വിഭാഗങ്ങള്‍

Follow

Get every new post delivered to your Inbox.