Отначало планирах този тест да се появи в раздела "Made In BG". В последствие се оказа, че споменатия раздел служи за поместване на готови разработки, така че вариантът да напшиа статия се оказа единствено възможния за момента. В бъдеще (когато се надявам вече проектът да се е развил и да има файлове по същество) ще поместия статия задено със сорсове в споменатия "Made In BG" раздел.
Идеята да стартирам проекта LinuxWriter се появи, след обявяването на конкурса на linux-bg.org за новина свързана с отворения сорс. Естествено първосигнално реших да участвам с цел спечелване на конкурса. В последствие се оказа, че този проект има много по-важно значение от участието в конкурс, при това с относително малки награди. И наистина аз участвах с новина в конкурса.
В това представяне ще опиша два основни крайъгълни камъка на проекта. Първото нещо е това, по какви направления трябва да се развива проектът LinuxWriter. Второто начинание е изготвяне на план с изискванията за най-важното направление - какво да представлява хардуера на linwri компютър.
Между другото да направим едно важно уточнение. Въпреки че проектът ще се нарича LinuixWriter, то реших компютрите които отговарят на изискванията на проекта да се наричат linwri такива. Причината естествено е по-лесно изговаряне и съставянето на уникална ключова дума за този клас компютри.
Направления за развитие на проекта
1. Компютърната платка на linwri компютър
Това е хардуерът. Може да се започне с обикновен хакерски компютър.
2. Софтуер и интерфейс на linwri компютър
Самият компютър ще трябва да изпълнява някаква програма (), чиято функция ще бъде инсталирането на Linux дистрибуциите върху флашките.
3. Концепция за външния вид на linwri компютър
Тъй като linwri компютрите ще бъдат помествани в официални магазини, то външния вид на изделието е важен. Освен това външния вид трябва и да е съобразен с предназначението на компютъра.
4. Огранизиране на OS дистрибуциите за инсталиране
Естествено освен софтуера за управление, то трябва да се планират и така да се каже данните, които ще се качват на флашките. Какви дистрибуции и какви настройки. Това трябва добре да се обмисли, защото едно е инсталация в къщи, а друго е инсталация, която е по-професионално насочена. Последното трябва да се чете не че инсталираните версии Linux ще са само за професионална употреба, докато процеса по инсталиране трябва да е максимално изпипан и гъвкав по отношение на изискванията на потребителя.
5. Стратегия за внедряване на linwri компютъри
Ако linwri компютърът остане само като концепция, без да е практически използван в хардуерните магазини - то това което правим е някаква безсмислена дейност. Решение към което считам да се придържаме е разпространението и предоставянето на такива компютри да е страната на членове на Линукс обществото (подробности ще станат ясни когато му дойде времето). Имам идеи за пилотното пускане на такъв компютър къде да бъде.
6. Организиране на система за комюнити поддръжка
Проектът освен да се реализира еднократно, то трябва и да се развива. Инсталираните версии Linux е добре да имат някакво стратегическо предимсто. Влиянието на развитието на Linux платформите от страна на потребителите (тези, които са инсталирали на флашките си от системата) е голямо предимство. Отново подробностите за тази дейност е свързана със специфика на проекта, която ще предложа по-нататък, като проекът стартира в пълна сила.
7. Сигурност на инсталациите, сертифициране
Особено важна тема е това. Не трябва да може злоумишленик да предостави заразени дистрибуции, които чрез магазина лесно да могат да се разпространяват. Естествено имам и идеи по това направление. Но сигурността ще е едно от последните неща, които ще мислим. Отначало просто разпространението ще се осъществява през по-сигурни некомпрометирани лица основатели на проекта, които имат някакъв опит при предпазването си от вируси.
8. Популяризиране на linwri компютърите
Е тук всичко е ясно. Всъщност самото популяризиране вече започна...
Преди да представим и второто направление, то да поместим кратък встъпителен такст. Ако в конкурсът беше спечелен от проекта, тогава първия прототип на хардуера щеше да бъде спечелената Olimex платка. Тази платка не притежава мрежова свързаност, което не е проблем за проекта. По-голям проблем беше телевизионния видео изход, заради който се налагаше закупуване на определени модели дисплеи, които по цена превъзхождат дори самата платка.
При сегашната ситуация можем да не прибързваме с прототип, а да планираме направата на първия прототип на истински linwri компютър. Може да базираме разработката на някой от платформите на Olimex (те са с отворен хардуер), но не е задължително. Паралелно с избора на компютърна платка то ще търсим и достатъчно евтин мини дисплер за компютъра (в зависимост от дисплея ще проектираме и видеоизхода на платката, а няма да правим наобратно).
Изисквания за LinuxWriter хардуер
1. Не трябва да е свързан в Интернет.
Системата може да се обновява локално и затова връзката с глобалната мрежа е излишна. Нещо повече с цел избягване на хакерси атаки и гарантиране на сигурността на инсталираните дистрибуции връзката с интернет по-скоро е не толкова излишна, колкото зловредна. Естествено комуникацията може да се реализира на достатъчно сигурно ниво, но update-ващият сървър никога не е на 100% гарантиран, в сравнение с компютър извън глобалната мрежа (на който да се подготвят дистрибуциите, заедно с множество уникални инструменти за анализ и криптографски механизми за защита).
2. Да има 2 USB порта, един от тип USB 1,2 и един от тип USB 3.
Те ще са свързани с платката чрез проводници (последните може да са запоени за платката). Двата порта са задължителни за да поддържат вече двата несъвместими стандарта на USB накрайник. Желателно е двата порта да са разположени на срещуположните странични на границите на дънната платка. Тази препоръка е свързана с идеята за вида на монтажа.
3. Интерфейс за големи количества данни.
В зависимост от класа на LinuxWriter компютърът ще имаме или SATA порт, достатъчен брой слотове за SD карти или дори достатъчно интегриране на платката flash памет. Класовете компютри са 4 вида, както следва: Най-високия клас ще е със SATA изход за поддръжка на харддиск (използването на SSD за точно този вид компютри е напълно нецелесъобразно). Средният клас ще съдържа или множество SD слотове или специална рейка в която се "нанизват" странично SD картите. Най-ниският клас ще използва запоена на дънната платка flash памет с достатъчен капацитет.
4. Видеоизходът да е пригоден за вграден тип (embedde) дисплей.
Дори е препоръчително дисплеят да е запоен (с помощта на лентов кабел) към дънната платка, т. е. така да се разпространява самата дънна платка.
5. Достатъчен брой GPIO изводи.
Споменатите изводи ще се използват за интерфейсът (входът), който ще се осъществява единствено чрез подходящо разположени по панела на компютъра бутони. Всъщност ако трябва да сме педантични то "O"-то от абревиатурата GPIO не е "необходимо".
В заключение ще кажа, че проектът може да се каже, че все още не е реално стартиран. Нямам достатъчно време да се захвана сериозно с него в момента. Въпреки това всичко което правя и до периода на реалния активен процес на реализацията на проекта ще се старая да е максимално добре описано и да е оптимално добре проектирано.