Ямар файлд хэзээ хэн ямар өөрчлөлт оруулсан талаар мэдээллийг хадгалж байдаг, хөгжүүлэгчийн заавал ашиглах ёстой багажуудын нэг нь яах аргагүй хувилбар удирдах систем буюу version control system юм. Түүний тусламжтайгаар програм хангамжийн түүхийн бүрэн бичиж авах боломжтойгоос гадна тогтвортой хөгжлийг дэмжиж өгдөг олон талын ашиг тустай нэгэн. Анх үүсэхдээ төвлөрсөн нэг серверт бүх мэдээлэл хадгалагдаж, хөгжүүлэгч бүр түүнд холбогдох боломжтой байхаар бүтээгдсэн байсан. Харин энэ загвар нь зарим талаараа хоцрогдож, ажлын чөдөр тушаа болох нь элбэгших нь бололтой. Тархмал байхын давуу талыг мэдэрсэн Mozilla төсөл өнгөрсөн онд өөрийн хувилбар удирдах системээ Mercurial руу шилжүүлж байсан бол Perl хэлний хөгжүүлэгчид дөнгөж саяхан Git гэх линукс цөмийн хөгжүүлэгчдийн бүтээсэн систем рүү бүрэн шилжиж дууссан болохоо зарлажээ. Харин GNOME төслийнхөн хэдхэн жилийн өмнө хуучирсан CVS-с Subversion (бас төвлөрсөн) руу шилжсэн бөгөөд одоо дахиад тархсан систем рүү шилжихээр судалгаа явуулсан байна. Үүний дүнд ямар ч байсан 2009 онд Git эсвэл Bzr гэх хоёр системийн аль нэгийг нь сонгож ашиглах эхлэхээр болж байх шиг. Гэхдээ бас л овоо маргаан, мэтгэлзээнийг араасаа дагуулж хамгийн зөв, илүү тохирох системийг сонгоно гэдэгт итгэж байна.
Хувилбар удирдах системийн талаар тусдаа нэг материал бэлтгэх санаа байгаа, гэхдээ энэ бичлэг дээр бага сага зүйл бичигдсэн байгаа тул бас сонирхоод үзээрэй. Сэргэн мандалт гэхээр өмнө байж байгаад мөхөөд ахиж сэргэж байгааг нь хэлдэг билүү? За ямар ч байсан илүү эрх чөлөөтэй, техникийн хувьд илүү боломжийг олгосон тархсан хувилбар удирдах систем хүчээ авч, төвлөрсөн систем ул болох нь.
Showing posts with label gnome. Show all posts
Showing posts with label gnome. Show all posts
2008-09-02
UDW: Эхний өдөр
Өчигдөрөөс эхэлсэн Ubuntu Developer Week-ийн эхний хичээлүүд өнгөрсөн шөнө явагдаж дууслаа. Энэ долоо хоногийн ажлын өдрүүдэд манай цагаар 00 цагаас эхлэн 05 цаг хүртэл явагдах сургалтанд та 5 бүлэг сэдвээр, тус тусын туршлагатай, чадвартай мэргэжилтнүүдээс танилцуулга болон асуултандаа хариулт авах боломжтой юм. Миний хувьд өчигдөр 3 хичээлд суусан бөгөөд тоймлон хүргэвэл.
Эхний сэдэв буюу Packaging 101-ийг Daniel Holbach хөтлөн явуулсан бөгөөд Ubuntu-ийн богц буюу суулгахад бэлэн болсон програм хангамжуудыг хэрхэн бэлтгэх болон ямар формат ашигладаг талаар ярьсан юм. Жишээ нь, богцууд нь өөрийн гэсэн эх кодын богцтой байх бөгөөд тэнд нь хөндөгдөөгүй (эсвэл нээлттэй эхийн бус хэсгийн тайрч хаясан) эх код болон түүнд харгалзах нөхөөс (patch) файлын хамт түгээгддэг. Нөхөөс файл нь програм хангамжид орох зарим нэг засварууд болон богцыг байгуулахад (build) шаардлагатай debian хавтсыг агуулж байдаг. Ubuntu нь Debian-ы богцын форматыг ашигладаг ба debian хавтсан дотор тухайн програм хангамжийг байгуулахад шаардлагатай бүх мэдээлэл байх ёстой. Хичээл маань hello-debhelper нэртэй богцыг ашииглан явагдсан бөгөөд дээр байгаа сэдвийн нэр дээр дарж хичээлийн явцтай танилцаж болно.
Дагаарийн сэдэв нь Upstream Bug Linkages байсан ба Jorge Castro хөтлөн явуулсан. Нээлттэй эхийн хөгжлийн хамгийн гол зарчим болох "release early, release often" буюу аль болох эрт, бас олон удаагийн хувилбар гаргахыг хэрэгжүүлэхэд туршигчид маш чухал юм. Ихэнх тохиолдолд энгийн хэрэглэгчид маань туршигчид болох бөгөөд өөрт тохиолдсон бэрхшээл болон програмын алдаануудыг програм хангамж бүтээгчид мэдэгдэх нь тэдний эрхэм үүрэг юм. Гэвч Ubuntu-ийн хувьд өөрөө бараг програм хангамж бүтээхгүй харин бусдын програм хангамжуудыг богцлон түгээдэг, мөн Ubuntu хэрэглэгчид Ubuntu хэрэглэж байгаагаа мэдэхээс яг хэний програм хангамжийг хэрэглэж байгаагаа мэддэггүй. Энэ асуудлыг хялбарчлах үүднээс Ubuntu нь өөрийн түгээж байгаа програм хангамжуудын талаар цохны мэдээллийг өөр дээрээ цуглуулдаг ба цаад жинхэнэ бүтээгчдэд дамжуулах үүрэг хүлээдэг. Энэхүү үйл ажиллагаанд хүний оролцоо хэрэгтэй ба Ubuntu-ийн цохын талаар мэдээллийг хэрхэн цааш дамжуулах талаар энэ сэдэвт үзсэн юм. Хичээлийн явцад миний бие хэд хэдэн цохын талаар мэдээллийг дамжуулж туршсан нь амжилттай болсон билээ. Нөгөө талаар цохын талаар мэдээлэх нь нээлттэй эхийн хөгжилд оруулж буй таны хамгийн том хувь нэмэр гэдэг юм билээ.
Миний суусан сүүлийн сэдэв нь Introduction to MOTU байсан ба Iulian Udrea хөтлөн явуулсан. Ubuntu хөгжүүлэгчид дотроо гурван зэрэг эсвэл бүлэгт хуваагддаг. Хамгийн чухал буюу Ubuntu Core Developers нь Ubuntu-ийн хамгийн чухал програмууд буюу main доторх програм хангамжуудын чанарыг хариуцан ажилладаг. Дараагийнх нь Ubuntu Developers (MOTU) бөгөөд нэмэлт програмууд болох universe болон multiverse доторх програм хангамжуудын чанарыг хариуцдаг. Сүүлийнх нь Ubuntu Contributing Developers нь MOTU-тай тун төстэй гэхдээ бие даан богцыг Ubuntu-д оруулах боломжгүй, харин MOTU-ын дэмжлэгтэйгээр оруулдаг. Эхний хоёр бүлэг нь Ubuntu-ийн хөгжүүлэлтийг сайн мэддэг, арга техник болон багажуудыг бүрэн эзэмшсэн хөгжүүлэгчид байдаг бол сүүлийнх нь ихэвчлэн анхлан сурагчид байдаг.
Намайг ядраад харьсны дараагаар Soyuz and all that Jazz болон Working with Ubuntu<->GNOME QA (tips&tricks) сэдвүүд явсан бөгөөд Celso Providelo, Pedro Villavicencio нар тус тус хөтлөн явуулсан байна. Soyuz нь Ubuntu-ийн дотоод автоматжуулсан системүүдийн нэг бөгөөд хөгжүүлэгчдээс эх богцыг хүлээн авч, түүнийгээ тусгайлсан орчинд байгуулах, хөгжүүлэгчид үр дүнг мэдээлэх болон дараагийн шатанд хүлээлгэн өгөх үүрэгтэй. Дараагийн шатанд нь бэлэн болсон богцуудыг серверийн администраторууд хүлээн авах ба толин серверүүдэд түгээх ажил хийгдэнэ. Сүүлийн сэдэв дээр GNOME-ийн тухай товч танилцуулснаас гадна түүнийг хариуцсан Ubuntu Desktop баг болон GNOME-ийн хөгжүүлэгчидтэй хэрхэн хамтран ажиллах талаар ярилцсан байна.
Харин өнөөдрийн хувьд миний ашиглаж сурч байгаа bzr гээх тархсан хувилбар удирдах систем болон Ubuntu-ийн цохыг хэрхэн засварлах гээд сонирхолтой сэдвүүд байна. Сонирхосон хэн ч гэсэн энэ сургалтанд хамрагдах боломжтой.
Эхний сэдэв буюу Packaging 101-ийг Daniel Holbach хөтлөн явуулсан бөгөөд Ubuntu-ийн богц буюу суулгахад бэлэн болсон програм хангамжуудыг хэрхэн бэлтгэх болон ямар формат ашигладаг талаар ярьсан юм. Жишээ нь, богцууд нь өөрийн гэсэн эх кодын богцтой байх бөгөөд тэнд нь хөндөгдөөгүй (эсвэл нээлттэй эхийн бус хэсгийн тайрч хаясан) эх код болон түүнд харгалзах нөхөөс (patch) файлын хамт түгээгддэг. Нөхөөс файл нь програм хангамжид орох зарим нэг засварууд болон богцыг байгуулахад (build) шаардлагатай debian хавтсыг агуулж байдаг. Ubuntu нь Debian-ы богцын форматыг ашигладаг ба debian хавтсан дотор тухайн програм хангамжийг байгуулахад шаардлагатай бүх мэдээлэл байх ёстой. Хичээл маань hello-debhelper нэртэй богцыг ашииглан явагдсан бөгөөд дээр байгаа сэдвийн нэр дээр дарж хичээлийн явцтай танилцаж болно.
Дагаарийн сэдэв нь Upstream Bug Linkages байсан ба Jorge Castro хөтлөн явуулсан. Нээлттэй эхийн хөгжлийн хамгийн гол зарчим болох "release early, release often" буюу аль болох эрт, бас олон удаагийн хувилбар гаргахыг хэрэгжүүлэхэд туршигчид маш чухал юм. Ихэнх тохиолдолд энгийн хэрэглэгчид маань туршигчид болох бөгөөд өөрт тохиолдсон бэрхшээл болон програмын алдаануудыг програм хангамж бүтээгчид мэдэгдэх нь тэдний эрхэм үүрэг юм. Гэвч Ubuntu-ийн хувьд өөрөө бараг програм хангамж бүтээхгүй харин бусдын програм хангамжуудыг богцлон түгээдэг, мөн Ubuntu хэрэглэгчид Ubuntu хэрэглэж байгаагаа мэдэхээс яг хэний програм хангамжийг хэрэглэж байгаагаа мэддэггүй. Энэ асуудлыг хялбарчлах үүднээс Ubuntu нь өөрийн түгээж байгаа програм хангамжуудын талаар цохны мэдээллийг өөр дээрээ цуглуулдаг ба цаад жинхэнэ бүтээгчдэд дамжуулах үүрэг хүлээдэг. Энэхүү үйл ажиллагаанд хүний оролцоо хэрэгтэй ба Ubuntu-ийн цохын талаар мэдээллийг хэрхэн цааш дамжуулах талаар энэ сэдэвт үзсэн юм. Хичээлийн явцад миний бие хэд хэдэн цохын талаар мэдээллийг дамжуулж туршсан нь амжилттай болсон билээ. Нөгөө талаар цохын талаар мэдээлэх нь нээлттэй эхийн хөгжилд оруулж буй таны хамгийн том хувь нэмэр гэдэг юм билээ.
Миний суусан сүүлийн сэдэв нь Introduction to MOTU байсан ба Iulian Udrea хөтлөн явуулсан. Ubuntu хөгжүүлэгчид дотроо гурван зэрэг эсвэл бүлэгт хуваагддаг. Хамгийн чухал буюу Ubuntu Core Developers нь Ubuntu-ийн хамгийн чухал програмууд буюу main доторх програм хангамжуудын чанарыг хариуцан ажилладаг. Дараагийнх нь Ubuntu Developers (MOTU) бөгөөд нэмэлт програмууд болох universe болон multiverse доторх програм хангамжуудын чанарыг хариуцдаг. Сүүлийнх нь Ubuntu Contributing Developers нь MOTU-тай тун төстэй гэхдээ бие даан богцыг Ubuntu-д оруулах боломжгүй, харин MOTU-ын дэмжлэгтэйгээр оруулдаг. Эхний хоёр бүлэг нь Ubuntu-ийн хөгжүүлэлтийг сайн мэддэг, арга техник болон багажуудыг бүрэн эзэмшсэн хөгжүүлэгчид байдаг бол сүүлийнх нь ихэвчлэн анхлан сурагчид байдаг.
Намайг ядраад харьсны дараагаар Soyuz and all that Jazz болон Working with Ubuntu<->GNOME QA (tips&tricks) сэдвүүд явсан бөгөөд Celso Providelo, Pedro Villavicencio нар тус тус хөтлөн явуулсан байна. Soyuz нь Ubuntu-ийн дотоод автоматжуулсан системүүдийн нэг бөгөөд хөгжүүлэгчдээс эх богцыг хүлээн авч, түүнийгээ тусгайлсан орчинд байгуулах, хөгжүүлэгчид үр дүнг мэдээлэх болон дараагийн шатанд хүлээлгэн өгөх үүрэгтэй. Дараагийн шатанд нь бэлэн болсон богцуудыг серверийн администраторууд хүлээн авах ба толин серверүүдэд түгээх ажил хийгдэнэ. Сүүлийн сэдэв дээр GNOME-ийн тухай товч танилцуулснаас гадна түүнийг хариуцсан Ubuntu Desktop баг болон GNOME-ийн хөгжүүлэгчидтэй хэрхэн хамтран ажиллах талаар ярилцсан байна.
Харин өнөөдрийн хувьд миний ашиглаж сурч байгаа bzr гээх тархсан хувилбар удирдах систем болон Ubuntu-ийн цохыг хэрхэн засварлах гээд сонирхолтой сэдвүүд байна. Сонирхосон хэн ч гэсэн энэ сургалтанд хамрагдах боломжтой.
2008-02-02
Trolltech-г Nokia худалдаж авна
Бид бүхний сайн мэдэх гар утас болон харилцаа холбооны төхөөрөмжийн томоохон үйлдвэрлэгч болох Nokia компани нээлттэй эхийн Qt багажийн зохиогчийн эрхийн эзэмшигч, KDE төслийн ерөнхий ивээн тэтгэгч Trolltech компанийг худалдаж авах болсон талаараа өнгөрөгч даваа гарагт олон нийтэд зарлалаа. Ингэхдээ Trolltech-ийн хувьцаа нэг бүрийг 16$-р авах санал тавьсан байна. Nokia-ийн мэдэгдсэнээр 35.02 сая хувьцаа буюу Trolltech-ийн гаргасан нийт хувьцааны 66.43%-г эзэмшигчид энэхүү саналыг хүлээн авсан байна.
Trolltech компани нь KDE дэлгэцийн орчны суурь болсон Qt график багажийг хөгжүүлдэг бөгөөд Qt-ийн жижиг төхөөрөмжинд зориулсан хувилбарыг гар утас үйлдвэрлэгчдэд лицензээр ашиглуулдаг. Өнгөрсөн онд эрс шинэчлэгдсэн Qt 4-р хувилбарыг гаргасан бөгөөд энэ нь одоо жинхэнэ шуугиан тариад буй KDE 4-р хувилбарын суурь болсон юм. Мөн саяхан Qt 4-д GPL 3 лицензийг ашиглах болсноо зарласан. Миний бие хэдийгээр Qt болон KDE-г төдийлөн сонирходоггүй боловч эдгээр шинэ хувилбарууд нь маш олон шинэ зүйлсийг хэрэглэгчдэд хүргэж, хамгийн гол нь үйлдвэрлэгчдийн хөдөлмөрийг ихээхэн хөнгөвчлөх болсон юм билээ. Бас бусад програмчлалын сангаас хамаарах хамаарлыг маш бага болгосон гэсэн. Энэхүү наймааг хийснээр Nokia нь өөрийн бүтээгдэхүүний шугамыг өргөсгөх, програм хангамжийг сайжруулна хэмээн найдаж байна.
Nokia нь өнөөдөр GNOME-той наягт хамтран ажилладаг бөгөөд өөрийн N770, N800 болон N810 бүтээгдэхүүнүүддээ линукс болон GNOME-ийн жижигсэгсэн хувилбарыг ашигладаг юм. Мөн Nokia нь нээлттэй эхийн хөгжлийн зарчмыг ойлгодог, хүндэлдэг басхүү хамтран ажиллаж чаддаг учир хүмүүс энэхүү худалдаанд төдийлөн санаа зовохгүй байх шиг байна. Харин энэхүү худалдааны дараа GNOME-той харилцах харьцаа хэрхэн өөрчлөгдөх бол гэдэг миний сонирхлыг их татаж байна. Цаг хугацаа харуулна биз дээ.
Trolltech компани нь KDE дэлгэцийн орчны суурь болсон Qt график багажийг хөгжүүлдэг бөгөөд Qt-ийн жижиг төхөөрөмжинд зориулсан хувилбарыг гар утас үйлдвэрлэгчдэд лицензээр ашиглуулдаг. Өнгөрсөн онд эрс шинэчлэгдсэн Qt 4-р хувилбарыг гаргасан бөгөөд энэ нь одоо жинхэнэ шуугиан тариад буй KDE 4-р хувилбарын суурь болсон юм. Мөн саяхан Qt 4-д GPL 3 лицензийг ашиглах болсноо зарласан. Миний бие хэдийгээр Qt болон KDE-г төдийлөн сонирходоггүй боловч эдгээр шинэ хувилбарууд нь маш олон шинэ зүйлсийг хэрэглэгчдэд хүргэж, хамгийн гол нь үйлдвэрлэгчдийн хөдөлмөрийг ихээхэн хөнгөвчлөх болсон юм билээ. Бас бусад програмчлалын сангаас хамаарах хамаарлыг маш бага болгосон гэсэн. Энэхүү наймааг хийснээр Nokia нь өөрийн бүтээгдэхүүний шугамыг өргөсгөх, програм хангамжийг сайжруулна хэмээн найдаж байна.
Nokia нь өнөөдөр GNOME-той наягт хамтран ажилладаг бөгөөд өөрийн N770, N800 болон N810 бүтээгдэхүүнүүддээ линукс болон GNOME-ийн жижигсэгсэн хувилбарыг ашигладаг юм. Мөн Nokia нь нээлттэй эхийн хөгжлийн зарчмыг ойлгодог, хүндэлдэг басхүү хамтран ажиллаж чаддаг учир хүмүүс энэхүү худалдаанд төдийлөн санаа зовохгүй байх шиг байна. Харин энэхүү худалдааны дараа GNOME-той харилцах харьцаа хэрхэн өөрчлөгдөх бол гэдэг миний сонирхлыг их татаж байна. Цаг хугацаа харуулна биз дээ.
Даяаршлын нэг жишээ
Саяхан Amazon.com дээрээс Nokia N810 гэдэг интернэтийн төхөөрөмжийг захиалан авлаа. Уржнан Испанид явж байхад Nokia энэхүү төхөөрөмжийнхөө эхний хувилбар болох N770 хувилбарыг гаргасан байхыг харж байсан, бас ноднин Англид N800 хувилбарыг зээлээр авч хэд хоног ашиглаж үзсэн юм. Энэхүү төхөөрөмж нь линукс цөм болон GNOME-н бичил хувилбарыг багтаасан, интернэтэд ажиллахад шаардлагатай бүхий л програмтай, нэмэлт програм суулгах бүр өөрөө бичих боломжтой, ихэнх програм хангамж нь нээлттэй эхийнх гэдгээрээ миний сонирхлыг татаад байсан юм. Гэхдээ энэхүү төхөөрөмжийн талаар бус харин даяаршлын нэг жишээ болгох гэсэн юм.
Энэхүү төхөөрөмжийг Amazon.com дээрээс захиалан АНУ-с авсан, гэвч эх бие нь Солонгос, гэр нь Турк, машины тавиур нь Герман, машины тавиурын суурь, чихэвч, зай хураагуур, цэнэглэгч зэрэг нь Хятад улсуудад үйлдвэрлэсэн байсан ба харин гарын авлагыг нь Мексикт хэвлэсэн байх юм. Даяаршил нь дэлхийн улс орнуудын хоорон дох өрсөлдөөнийг эрчимжүүлснээр үйлдвэрлэгчид хамгийн хямд өртгөөр бүтээгдэхүүн үйлдвэрлэх арга замыг эрэлхийлэх болсон. Ингээд мэдээж N810 маягийн бүтээгдэхүүнүүд үйлдвэрлэгдэж, хэрэглэгчид илүү хямд, басхүү өндөр чанартай бүтээгдэхүүн ашиглах боломж нээгдсэн гэж хэлж болно. Анх их гайхсан шүү.
Энэхүү төхөөрөмжийг Amazon.com дээрээс захиалан АНУ-с авсан, гэвч эх бие нь Солонгос, гэр нь Турк, машины тавиур нь Герман, машины тавиурын суурь, чихэвч, зай хураагуур, цэнэглэгч зэрэг нь Хятад улсуудад үйлдвэрлэсэн байсан ба харин гарын авлагыг нь Мексикт хэвлэсэн байх юм. Даяаршил нь дэлхийн улс орнуудын хоорон дох өрсөлдөөнийг эрчимжүүлснээр үйлдвэрлэгчид хамгийн хямд өртгөөр бүтээгдэхүүн үйлдвэрлэх арга замыг эрэлхийлэх болсон. Ингээд мэдээж N810 маягийн бүтээгдэхүүнүүд үйлдвэрлэгдэж, хэрэглэгчид илүү хямд, басхүү өндөр чанартай бүтээгдэхүүн ашиглах боломж нээгдсэн гэж хэлж болно. Анх их гайхсан шүү.
Subscribe to:
Posts (Atom)