Показаны сообщения с ярлыком deb. Показать все сообщения
Показаны сообщения с ярлыком deb. Показать все сообщения

среда, 11 августа 2010 г.

Установка приложений в Linux: часть 1(записки Windows эмигранта)

Когда автор еще считал верхом поэзии невнятные звуки агу-агу на свет появилась Linux и была она младенцем с большим потенциалом, но которого надо было учить всему и вся, и собирать по кусочкам. Linux выросла из пеленок и теперь сама в некоторых странах знакомит маленьких с миром информатики(проект Edubuntu) . Одним из самых сложных процессов в младенчестве Linux была установка программ. А какая же ОСь нужна без программ? Вобщем-то никакая! Вот и поговорим мы о том, что было есть и будет в этой важной сфере любой операционной системы.
Начиналось все с сурового пути самоотречения от всех удобств и прямой сборки программ из исходников. Такой путь самурая вел к полному  контролю над  системой и собой:) Но время самураев прошло и Linux стала поворачиваться лицом и к простым смертным. И появились системы deb и rpm.
Основная суть пакетной системы в том, что deb и rpm пакет, содержит все файлы, которые нужны программе и может определить зависимости, которые необходимо соблюсти для установки приложения. Фактически deb и rpm пакеты это особые типы архивов. Еще одним важным свойством таких систем является, что они ведут базу данных установленных пакетов в системе и их зависимостей. А что такое зависимости? Все просто: зависимости это компоненты системы и сторонние компоненты, которые нужны для функционирования программы, которую вы устанавливаете.  Пакет содержит список зависимостей для программы и поэтому вас проинформирует установщик о неустановленных зависимостях. К тому же пакет может содержать в себе скрипты, проверяющие например какие либо параметры системы.Таким образом deb пакет представляет собой очень неплохой аналог различного рода установщиков из мира Windows.
Важно отметить что есть две основные системы пакетной установки: deb и rpm совпадающие в своем названии с форматами пакетов. deb система применяется во всех дистрибутивах основанных на Linux Debian(например Ubuntu), а rpm в системах базирующихся на Linux Red Hat (например Linux Fedore Core ). Между собой форматы не совместимы. Но в принципе предоставляют равные возможности. Рассмотрим установки на основе deb системы.
Можно скачать сам deb пакет и два раза по нему кликнуть, а если программа распространенная, то скорее всего она содержится в репозиториях вашего дистрибутива. Репозиторий это хранилище пакетов и исходниных текстов программ, которые позволяют устанавливать приложения по сети. С репозиториями (жаргонная "репа")  работает в deb системах приложение apt. При использовании Ubuntu вы можете использовать Центр приложений
Приложения->Центр приложений
или из командной строки
sudo apt-get install <имя пакета> . Вам придется ввести свой пароль, так как apt-get изменяет системные компоненты. Например установим читалку DjView ридер.
вводим в консоли sudo apt-get install djview, свой пароль и ждем когда все сделают за нас:) Еще нас попросят подтвердить скачивание пакетов.
Удалить пакет можно либо через Центр приложений, либо через команду sudo apt-get remove <имя пакета>.
В следующей части будем учиться сборке из исходников интересных для нас приложений.
 
                                         

четверг, 5 августа 2010 г.

СПО и школы (некоторые размышления)

То что наши школы не являют собой образец богатства всем известно. Поэтому не мудрено что внедрение свободного программного обеспечения (СПО) является серьезным прогрессом и экономией. Естественно здесь должна идти речь и о Linux. Основная претензия к Linux в школах это трудность ее освоения. Ну конечно если мы берем что нибудь типа GENTOO, то да. Это дистрибутив с "исходниковой" ориентацией и его трудно порекомендовать начинающим. Но Linux Mint или Linux Ubuntu вполне дружелюбны к пользователю, если конечно он будет все же немного осторожен в своих действиях. Очень часто можно слышать тезис о некой сложности Linux для повседневной жизни. Ну давайте посмотрим так ли уж страшен черт как его малюют:
1) Процесс установки. В большинстве крупных дистрибутивов предусмотрены продуманные средства управления установкой. И потому если вы хоть раз устанавливали Windows и прочтете инструкции по установке Linux то это все будет довольно просто. Тем более например Ubuntu  имеет режим, который позволяет автоматически ее инсталлировать для совместного проживания с Windows. При чем все что потребуется от пользователя нажать на кнопку а перед этим нажать переключатель, да это супер сложно! 
2) Установка приложений. Ну начнем с того  что в принципе в Linux имеются довольно много крупных программ, которые поддерживаются и  разработчиками дистрибутивов и сообществом. В Linux давно разработаны две системы установки rpm и deb. Установка из таких пакетов даже проще чем из Windows инсталяторов.А разработка Центра приложений Ubuntu вобще облегчила задачу установки ПО до безобразия:) Да и из командной строки установить не сложнее: sudo apt-get install <название приложения>. А вот со сборкой приложений из исходников школьный учитель скорее всего не столкнется.Хотя и этот пункт не смотря на большие трудности документирован весьма подробно от HOWTO документов до глав в книгах для чайников Linux и страниц man. Хотя во многом для школьного компьютера  устанавливать ничего не придется: GNOME предлагает и Open Office готовым к работе, и аудио видео редакторы, некоторые средства разработки.Поэтому и этот пункт не может быть серьезным контрвозражением 
3)Железо. Linux не стоит на месте и уже во многом может заниматься автоопределением  железа. Наиболее дальновидные разработчики такие как nVidia предоставляют и пропиетарные  драйверы для Linux. Само сообщество постоянно работает над расширением спектра поддерживаемой аппаратуры. Если компьютер имеет стандартную комплектацию то о драйверах под linux вы и не вспомните. 
4) Несоответсвие образовательным стандартам. Это для меня вообще тайна за семью печатями:) Несоответсвие в чем?
а) Локализации. Встретить не русифицированные места в системе можно, но все меню и инструменты            
управления системой, офисные приложения давно переведены на русский. Полно русскоязычных ресурсов поддержки. 
б) ПО. Честно говоря и в самом деле, если надо ребенок и сам научиться писать текстовые документы, работать с картинками, шастать по инету. Все же это уже к информатике как науке мало имеет отношение. Конечно для некоторых мест нашей страны где компьютер в каждом доме у ребенка не является нормой такие занятия необходимы, но они не должны занимать 90% времени. Но какая разница ребенку это изучающему на чем он будет учиться: на Open Office,Koffice или MS Office. Задача школы в данном случае дать ребенку общий навык. А если школа его привязывает к конкретному продукту какая от нее тогда польза? 
в) Обучающее и тестирующее ПО. М-да казалось бы проблема: здесь правит бал Windows.Но! Во первых что то я не заметил чтобы в школах повально применялось компьютерное программное обеспечение в обучении, а потом Linux это платформа для кучи программного обеспечения в целях обучения от астрономической Celestia до редакторов и визуализаторов хим формул и программ геометрического профиля. Да руссифицированность этих программ практически нулевая, но что мешает государству профинансировать проект по переводу выбранного обучающего ПО. Это же ни чуть не дороже поддержки лицензионного софта, а то и дешевле. Потом и само ссообщество OpenSource поможет. Всякого рода тестируюшее ПО: ну уровень современного ПО без веб-технологий таков, что и первокурсник немного знающий язык программирования и принцип перетащил и отпустил его напишет. RAD системы под linux то же имеются хотя бы тот же QT. Так что для нормального программиста шока и ломки мировоззрения не наступит. 
г) Учителя. Во первых Linux как мы уже выяснили хоть и другой, но чтобы пользоваться им уровень гуру от вас не требуется. А привыкнуть кновому расположению кнопок и немного почитать книжечку, да это очень сложно.Ну а птом у нас же вроде как всякого рода институты Открытого образования имеются, а там кафедры информатики с курсами для учителей.    
д) Языки программирования. Pascal  в Linux есть вам тут и Lazarus и его основа FPC. Visual Basic в Линукс нет, но есть другие диалекты basic. Ну уж про С и С++ и говорить не приходится. 
То есть в чем не соответствие неким мифическим стандартам неясно.  
Так в чем проблема на самом деле? Как мне кажется их несколько:
1) Министерство образования выстраивало схемы закупки, многие фирмы на этом уже прегрелись, а тут такой облом с этим СПО. 
2) Информатика в школе сейчас конкурент серии книг для чайника. Хотя изначально информатика это наука о ЭВМ, а не о том как нажимать на кнопочки.Современный школьник по выходе из школы не знает ни элементарных основ алгоритмики. Алгоритм "пузырька"  для многих студентов первокурсников тайна за семью печатями, понятие о сложности алгоритма еще большая тайна. Само составление алгоритмов у школьников то же явно не в лучшем состоянии, хотя в принципе это во многом сродни решению задач по математике и помогло в лучшем понимании этого. Знание об устройстве компьютера у учащегося то же весьма смутные, уж не говоря о структуре ОС. Образование должно дать человеку возможность осознанного выбора, это заявляется как одна из целей. Однако что по факту: тебя привязывают к одной платформе,учат по принципу обезьяны. Спросите современного школьника что такое OpeenSource,FreeBSD,Linux. Боюсь что он сделает жуткие глаза и ничего не ответит. Так о каком выборе можно говорить?                       
3) Привычка, неграмотность и боязнь перемен. Что ж конечно всегда привычней жить как тебе хочется и идти по накатанному, но мир информатики не таков. Чиновники не слишком грамотны и забот у них очень много, чтоб еще с Linux возиться, ведь он до сих пор живет одной командной строкой, а про GNOME и KDE мы не слышали.      
Фактически внедрению СПО мешают лишь косность, финансовые интересы и схемы и в принципе неверная трактовка назначения курса информатики.