LINUX.ORG.RU

Избранные сообщения be_nt_all

Graphos 0.7

Новости — Мультимедиа
Graphos 0.7
Группа Мультимедиа

Graphos — это векторный графический редактор с уклоном в кривые Безье. Он является прямым наследником вышедшего в 2000-м году редактора GDraw; интерфейс почти не изменился, но редактор значительно переработан внутренне. Работает на Linux, *BSD и macOS.

Новое в версии 0.7:

  • улучшен редактор кривых Безье (добавление и удаление точек);
  • инструмент Нож (разрезающий кривые Безье), сломанный ещё со времён GDraw, наконец-то починен и включён;
  • важные исправления падений, связанных с отменой и повтором действий;
  • интерфейс сделан более удобным для графических планшетов.

>>> Сайт проекта

>>> Источник

 , graphos, , ,

bodqhrohro_promo
()

Flatpak 1.0

Новости — Open Source
Группа Open Source

Представлена первая стабильная версия системы для создания самодостаточных пакетов Flatpak 1.0

Главные изменения в этой версии:

( читать дальше... )

>>> Подробности

 

anonymous
()

Релиз mtCellEdit 3.2 — свободный минималистичный редактор электронных таблиц (+ набор утилит)

Новости — Open Source
Релиз mtCellEdit 3.2 — свободный минималистичный редактор электронных таблиц (+ набор утилит)
Группа Open Source

mtCellEdit (Ced, Mark Tyler's Spreadsheet Program) — свободный кроссплатформенный минималистичный редактор электронных таблиц, разрабатываемый Марком Тайлером, автором графического редактора mtPaint. Код программы написан на языках C и C++, а для построения графического интерфейса используется тулкит Qt4 (или Qt5, опционально).

( Основные изменения... )

Стандартный формат документов для mtCellEdit — *.TSV.ZIP (набор текстовых файлов TSV, CSV и других внутри ZIP-архива; подобие ODF).

The default file format mtCellEdit uses is portable and transparent as it is a ZIP file containing TSV text files. I deliberately designed it this way so that data can be extracted and read by any modern spreadsheet program on any operating system without requiring mtCellEdit. Over the years I have been frustrated by binary and XML formats that make data only accessible via a single program (or by me wasting time manually converting each file, or by me writing a file format conversion program). This format ensures that my data never becomes stranded, and can be manipulated by whichever tool I choose for a particular job (i.e. spreadsheet programs, text editors, command line tools, etc).

Кроме mtCellEdit, в пакете исходного кода поставляется и набор разнообразных утилит:

  • mtCedCLI — интерактивный консольный редактор электронных таблиц. Набор функций, идентичный функциям mtCellEdit, но с CLI-интерфейсом (с использованием GNU readline).
  • mtCedUtils — набор консольных утилит для работы с текстовыми электронными таблицамми on text based spreadsheets (т.е. для работы с файлами TSV и CSV).
  • mtPixy — графический редактор растровой (пиксельной) графики и палитр. mtPixy можно использовать для создания PixelArt.
  • mtPixyCLI — интерактивный консольный редактор растровой (пиксельной) графики. Набор фукнций, идентичный функциям mtPixy, но с CLI-интерфейсом (с использованием GNU readline).
  • mtPixyUtils — набор консольных утилит для работы с файлами изображений.
  • mtRaft — графическая программа для анализа содержимого директорий.
  • mtDWCLI — интерактивная консольная программа для создания высококачественных рандомных данных, managing one time pads, шифрования/дешифрования файлов и использования стеганографии для хранения файлов внутри файлов PNG или FLAC (по принципу RARJpeg).
  • mtNetLog — очень простой консольный логгер сетевой активности.
  • mtRDC — консольная программа которая генерирует файлы со случайными данными (т.е. пароли, матрицы, and binary one time pads).
  • mtEleana — графическая программа для изучения результатов выборов в Соединённом Королевстве в период 1945-2015гг.

( читать дальше... )

>>> Подробности

 , mtcelledit, , ,

atsym
()

Rust 1.27

Новости — Mozilla
Группа Mozilla

Команда разработчиков языка Rust рада представить новую версию Rust 1.27.0. Rust — системный язык программирования, ориентированный на безопасность, скорость и параллельность.

( читать дальше... )

>>> Подробности

 

mersinvald
()

Lenin.Blog 0.1

Новости — Интернет
Группа Интернет

Увидела свет первая версия простого легковесного блога, поддерживающая обмен сообщениями сервер-сервер и сервер-пользователь.

( читать дальше... )

>>> Подробности

 , ,

buratino
()

Состоялся релиз Nuklear+ - библиотеки-обёртки для GUI Nuklear

Новости — Разработка
Группа Разработка

Nuklear+ (читается как «Nuklear cross», значит «кроссплатформенный Nuklear») — это надстройка над GUI библиотекой Nuklear, которая позволяет абстрагироваться от драйвера вывода и взаимодействия с операционной системой. Нужно написать один простой код, а он потом уже сможет скомпилироваться под все поддерживаемые платформы:

  • SDL: OpenGL 3, OpenGL 2, OpenGL ES 2.0, Emscripten
  • GLFW: OpenGL 3, OpenGL 2, Emscripten
  • X11: OpenGL 3, OpenGL 2, чистый Х11 без OpenGL
  • GDI+

На хабрахабре есть статья про использование Nuklear+. Она же доступна на английском. Пример игры, написанной на Nuklear+ и портированной через Emscripten, можно увидеть тут. Так же имеется веб демо возможностей самого Nuklear.

>>> Репозиторий проекта Nuklear+

 , , ,

DeXPeriX
()

Новый сервер приложений - Nginx Unit

Новости — Open Source
Группа Open Source

На конференции NginxConf представлен новый application server - Nginx Unit

Сейчас поддерживаются приложения на языках

  • go
  • php
  • python

Доступны репозитории для rhel/centos и debian/ubuntu

Код проекта с полной историей коммитов доступен на github. Обещают принимать pull request'ы от всех желающих

Официальный сайт: http://unit.nginx.org

GitHub: https://github.com/nginx/unit

Пример настройки + сопряжение с nginx есть в статье на хабре ( https://habrahabr.ru/company/itsumma/blog/337346/ )

Для тех, кто не в теме: application server это не веб-сервер и тем более не reverse proxy. Его задача

  • запуск приложений
  • предоставление к ним доступа ( обычно по протоколу http )

Т.е. это замена не nginx или apache, а php-fpm и uwsgi. И дальний родственник tomcat'а ;)

Конфигурирование Nginx Unit пока сделано, хмм..., довольно необычно, через REST API поверх unix socket

>>> Подробности

 

router
()

plibsys — кросс-платформенная системная библиотека на C

Новости — Open Source
Группа Open Source

Недавно ко мне обратились с вопросом, не хочу ли я написать новость об одной из разрабатываемых библиотек (plibsys). В принципе, я не против, поэтому эксклюзивно для LOR.

Что такое plibsys?

plibsys — это кросс-платформенная системная библиотека, написанная на чистом C. Основной упор был изначально сделан на портируемость и поддержку широкого спектра компиляторов. Для достижения этих целей у библиотеки отсутствуют (небольшим исключением является SCO OpenServer 5 ввиду отсутствия на ней потоков) какие-либо зависимости — используются только те вызовы, которые доступны в целевой ОС. Также никакого ассемблера и использования прочих недокументированных возможностей. Для сборки нужен только рабочий компилятор и CMake.

Изначально библиотека писалась для запуска потоков и работы с сокетами, но постепенно функционал расширялся по мере необходимости. На данный момент есть следующий функционал:

  • Платформо-независимые типы данных
  • Потоки и средства синхронизации: мьютексы, условные переменные, блокировки чтения-записи, спинлоки, атомарные операции
  • Межпроцессное взаимодействие: семафоры, разделяемая память, кольцевой буфер
  • Сокеты (UDP, TCP) с поддержкой IPv4 и IPv6
  • Хэш-функции: MD5, SHA-1, SHA-2, SHA-3, GOST (R 34.11-94)
  • Бинарные деревья: несбалансированное, красно-черное, АВЛ
  • Загрузка разделяемых библиотек
  • Работа с памятью: mmap, установка собственного аллокатора
  • Замер времени исполнения (по возможности — в высоком разрешении)
  • Базовая работа с файлами и директориями
  • Парсер файлов INI
  • Макросы для определения архитектуры ЦПУ, ОС и компилятора
  • Различные вспомогательные структуры данных типа связанного списка, хэш-таблицы, обработка строк

На все есть документация.

( читать дальше... )

>>> Подробности

 , , ,

HardCode
()

Новый алгоритм градиентного бустинга от Яндекса

Новости — Open Source
Группа Open Source

Компания «Яндекс» представила новый алгоритм градиентного бустинга на деревьях решений CatBoost. Также опубликован исходный код и ряд утилит для обучения и визуализации его результатов под лицензией Apache 2.0.

Градиентный бустинг активно используется в машинном обучении. Алгоритм CatBoost отличается поддержкой категориальных параметров «из коробки», а на тестах (с открытыми датасетами и исходным кодом) демонстрирует лучшие результаты, чем основные конкуренты: LightGBM, XGBoost, H2O.

>>> Репозиторий на GitHub

>>> Подробности

 , ,

rymis
()

Представлен слой совместимости для запуска приложений Android на десктопных дистрибутивах Linux – Anbox

Новости — Android
Группа Android

Anbox – это слой совместимости для запуска Android-программ в десктопных дистрибутивах Linux. Anbox похож на Wine (который запускает Win16/Win32/Win64 программы) и Darling (который запускает macOS программы, но находится на раннем этапе разработки). Anbox использует технологию контейнерезации (как и Darling). Anbox использует технологию LXC-контейнеров (Darling также использует похожую технологию). Установить Anbox можно набрав в консоли snap install --classic anbox-installer или скачав скрипт по ссылке: https://raw.githubusercontent.com/anbox/anbox-installer/master/installer.sh.

( Основные возможности Anbox )

>>> Подробности

 

Root-msk
()

Шахматы, или «Как правильно почесать руки»

Новости — Игры
Группа Игры

Как известно, мало не много, а иного много не бывает. Представляем вам самую сложную настольную игру умной части человечества — шахматы.

Шахматы написаны на чистом sed без использования расширений GNU. По текущему уровню реализованой логики игра ведётся по правилам XIV века. Отсутствуют рокировки и взятия на проходе, уход от шаха примитивный.

Как заявил автор, писал игру:

примерно две недели, правда с гигантскими перерывами), я пару раз порывался бросить это занятие.

Новость написана по итогам прочтениясовсем другого сайта.

>>> Узреть степень своего ничтожества

 , ,

leonidko
()

Новое семейство свободных шрифтов Go

Новости — Мультимедиа
Группа Мультимедиа

Разработчики языка Go анонсировали новое одноимённое семейство шрифтов, включающее в себя пропорциональный и моноширинный варианты с нормальным, полужирным и курсивным начертаниями. Сообщается, что шрифты хорошо подходят для технических целей, в частности для программирования, а код на Go отображается особенно хорошо при их использовании.

Семейство было разработано студией Bigelow & Holmes специально для проекта Go и доступно под той же BSD-подобной лицензией, что и язык Go. Доступны символы набора WGL4, который включает западноевропейские, восточноевропейские, греческие и кириллические буквы, а также дополнительные знаки (в общей сложности более 650 символов). Шрифты Go без засечек метрически совместимы с Helvetica и Arial.

>>> Анонс в блоге

 ,

Davidov
()

Rust 1.13

Новости — Mozilla
Группа Mozilla

Представлен релиз Rust 1.13 — системного языка программирования, нацеленного на безопасную работу с памятью, скорость и параллельное выполнение кода. В этот релиз вошли 1448 патчей.

Этот сезон оказался очень плодотворным для Rust. Проведены конференции RustConf, RustFest и Rust Belt Rust. Обсуждено будущее языка, разработан план на 2017 год и созданы новые инструменты.

Новое в 1.13

Выпуск 1.13 содержит несколько расширений языка, включая долгожданный оператор ?, оптимизацию времени компиляции, новые возможности cargo и стандартной библиотеки, а также множество мелких улучшений в документации и исправления ошибок.

Cargo в этом релизе содержит важные обновления безопасности, связанные с зависимостями от curl и OpenSSL, для которых также недавно были опубликованы обновления безопасности. Подробную информацию можно найти в соответствующих источниках для curl 7.51.0 и OpenSSL 1.0.2j.

( читать дальше... )

>>> Подробности

 

dotcoder
()

Опубликовано видео докладов slcon3 (suckless conference 2016)

Новости — Конференции и встречи
Группа Конференции и встречи

23—25 сентября в небольшом немецком городке Хофхайм-ам-Таунус (Hofheim am Taunus) близ Франкфурта-на-Майне состоялась третья конференция участников проекта suckless.org. В своей философии разработчики придерживаются принципов минимализма, что давно и успешно демонстрируют такими проектами, как dwm (dynamic window manager), dmenu (dynamic menu), st (simple terminal), sxiv (simple X image viewer), stali (static linux) и множеством других.

В этом году в программе, помимо кофе-брейков, оказалось 14 докладов. Среди них:

  • libzahl — простая библиотека длинной арифметики (Mattias Andrée);
  • портирование Stali на Raspberry Pi B+ и успехи проекта (Manu Raster, Anselm R Garbe);
  • будущее формата растровых изображений farbfeld и цветовые пространства (Laslo Hunhold);
  • готовность scc / Simple C Compiler и его преимущества перед GCC (Roberto E. Vargas Caballero);
  • язык программирования Myrddin, построенный на идеях C и ML (Ori Bernstein);
  • дисплейные серверы непригодны для использования (suck) и как с этим бороться (Mattias Andrée).

Конференция slcon проводится с 2013 года в европейских городах летом или в начале осени и объединяет разработчиков с отличным от мейнстримного мнением на путь развития программного обеспе́чения.

>>> Подробности

 ,

d
()

Causality Ltd прекратила свою деятельность

Новости — Open Source
Группа Open Source

Компания Causality Ltd прекратила свою деятельность в связи с отсутствием спроса на коммерческую поддержку языка программирования pony.

Об этом 21 августа 2016г. сообщил в своём аккаунте в LinkedIn бывший генеральный директор компании Constantine Goulimis.

Язык программирования pony - это объектно-ориентированный безопасный язык программирования, использующий модель акторов (аналогичную Erlang), имеющий легковесный FFI.

Безопасность языка обеспечивается за счёт:

  • математически доказанной типобезопасности;
  • памятебезопасности (как следствия типобезопасности);
  • безопасности исключений (по заверению авторов языка, все исключения обрабатываются);
  • безопасности от гонок (отсутствие конкурентного доступа обеспечивается средствами компилятора);
  • свободы от вечной блокировки (блокировки не используются).

По мнению Грейдона Хоара (автора Rust), «создатели pony провели великолепную работу, превосходящую ту, что он сделал в Rust...»

Компания Causality Ltd была основана с целью оказания коммерческой поддержки компаниям, использующим pony в своей IT-инфраструктуре.

По словам своего бывшего главы, Causality Ltd не смогла найти достаточно широкой клиентской базы. В частности 25-летний менеджер одного из американских инвестиционных банков, использующих pony в критически-важном компоненте своей инфраструктуры, отказал компании на основании того, что она была «слишком маленькой».

Однако основатель проекта Sean T. Allen считает, что закрытие Causality Ltd не приведет к гибели столь интересного и многообещающего проекта, т.к. прекращение деятельности компании не привело к снижению интереса к языку, и что сообщество проекта продолжает расти.

Ссылки:
Pony на GitHub
Введение
Безопасность pony

>>> Подробности

 , ,

shkolnick-kun
()

Релиз Kaitai Struct v0.4

Новости — Open Source
Группа Open Source

Состоялся релиз v0.4 проекта Kaitai Struct — декларативного языка для описания форматов структур данных. Описание структуры составляется в виде файла .ksy (в простом YAML-подобном виде), а затем с помощью предлагаемого компилятора транслируется в исходный код парсинга (на данный момент поддерживаются C#, Java, JavaScript, Python, Ruby и предварительно — C++). Типичная сфера применения — разбор и импорт существующих бинарных форматов файлов (в том числе закрытых и проприетарных), сетевых пакетов (например, в составе IDS или систем мониторинга трафика) и т. п.

Кроме компилятора, в состав поставки входит визуализатор, с помощью которого удобно отлаживать разрабатываемое описание (особенно, если формат неизвестен и необходимо пробовать много разных гипотез), применяя его сразу к существующему файлу и наблюдая результат парсинга в виде дерева с подсветкой соответствующих элементам этого дерева мест в hex-дампе.

Инструментарий распространяется под GPLv3, используемые в компилируемом коде runtime-библиотеки — под MIT/Apache. Референсный компилятор написан на Scala, но существует версия для веба на JavaScript, работающая в браузере целиком на стороне клиента.

Из нововведений нового major-релиза можно отметить:

  • поддержку 2 новых целевых языков: полная поддержка C# и предварительная — C++ с STL;
  • полную поддержку JavaScript в runtime-библиотеке;
  • поддержку новых типов данных: числа с плавающей точкой и выделенные типы для массивов байт;
  • расширение встроенного языка выражений: добавлены операции для работы с массивами, преобразования типов данных, доступа к объекту потока и т. п.;
  • существенную переработку и унификацию runtime-библиотек всех поддерживаемых языков для приведения их всех к единому API (в рамках дозволенного правилами конкретных языков).

>>> Подробности

 , , , ,

GreyCat
()

Документация к языкам программирования

Форум — Development

Всевозможные учебники и книги - это хорошо, но обычно их предлагают купить и часто не совсем дёшево, даже если они описывают базовый уровень. Бесплатным решением, очевидно, является официальная документация. Когда я открыл документацию к python, я был приятно удивлён, что она написана практически как учебник. Для Java вроде бы тоже всё относительно неплохо в этом плане, хотя хотелось бы отдельный оффлайновый pdf.

Мне захотелось скачать себе документацию в подобном виде для C и C++. Зашёл на их официальные сайты, там описание стандарта предлагают получить на сайте ISO за немалые суммы денег. Да и само описание стандарта далеко не для обучения. Хорошо, подумал я, попробую тогда посмотреть документацию к одной из реализаций языка - GCC-CPP, и вижу, что описанное там тоже вовсе не подходит для обучения. Даже описания типов и примеров объявления нет (может плохо искал, но в заголовках не заметил).

Нет, это не тред «подскажите книгу по Сям», таких для начинающих я и сам могу гору насоветовать.

Вопрос следующий: существует ли нормальная доступная бесплатная документация по которой можно изучать C, C++? Официальная документация по другим языкам была бы тоже интересна.


Update

C, C++
Online-ресурсы и учебные пособия для начинающих:

Как дополнение: Рабочая версия стандарта C++14 от 19 ноября 2014 г. (с официального сайта стандарта)


Fortran


Python
В дополнение к официальной документациипереводу руководства Python 3.1):


Object Pascal. Lazarus

Перемещено Klymedy из talks

 , , , ,

grem
()

Написание свободной(Free as in Freedom) книги-самоучителя по программированию: планы, цели, задачи

Форум — Development

Итак, я решил написать(или как вариант, собрать из кусочков) книгу-самоучилель по программированию, в которой бы не было глупых и нелепых ограничений на распространение. Однако копилефт я все же считаю приемлемым в данном случае. Общественным достоянием это не будет т.к. вполне могут найтись желающие использовать результат в своих проприетарных книгах, а проприетарные книги — плохо. Лицензия самого текста книги-учебника будет или Creative Commons Attribution-ShareAlike (что позволит без каких-либо проблем переиспользовать текст из википедии) или что-то вроде GNU Free Documentation License (без неизменяемых разделов естественно).

Лицензии всяких примитивных программок, написанных мной лично, будут вообще выложены под общественным достоянием, WTFPL или аналогичной лицензией т.к. являются тривиальными. Примерно вот так. Если я буду использовать чужие исходные тексты, они будут как включения, лицензируемые отдельно от всего остального. Проблем тут быть не должно.

Теперь к теме того, на кого книга ориентирована, какие начальные знания предполагаются, чему книга будет учить, какой первый ЯП взять и каков будет авторский самысел: С этим моментом я пока что не определился окончательно, и тут есть что обсудить. В частности, я не вижу особого смысла объяснять какие-то базовые понятия комбинаторики, об этом можно доступным языком прочитать из школьных учебников. Системы счисления(СС), перевод из одной СС в другую - вот это еще можно. One's и two's complement представления знаковых чисел — про это тоже можно написать. Если же человек не понимает комбинаторику, он ее быстро поймет на примере кода, который будет достаточно наглядно это показывать, и который всенепременно будет.
Пока что в качестве первого языка я склоняюсь к Си, и тому есть причины. Все прочие распространенные языки (кроме ассемблера, хотя его трудно назвать распространенным) не настолько близки к аппаратному уровню. Про нужность понимания на низком уровне написано тут http://russian.joelonsoftware.com/Articles/BacktoBasics.html https://habrahabr.ru/company/piter/blog/271347/ , не вижу смысла повторяться. Приведу лишь цитату:

«Просто плохой воркшоп попался», — скажете вы. Но на этом примере я хочу подчеркнуть более масштабную проблему: не изучив для начала C, программист оказывается лишен необходимых орудий, позволяющих понять, что именно происходит в используемой системе. Если вы — умный и пытливый питонщик, то вскоре докопаетесь до плотных пород языка C. Под этими горизонтами, скажут вам, «бойся драконов, костей и отладчиков». Соответственно, если вы не будете достаточно отважны и не проигнорируете предупреждений «да не берись ты за этот C», вы никогда не исследуете глубин, на которые можно забраться просто из любопытства.

Притом еще один важный момент: Си будет изучаться параллельно с ассемблером. Если речь идет об изучении ассемблера, необходимо четко зафиксировать то, на какой архитектуре это все происходит и в какой ОС. Так вот, ОС будет GNU/Linux а архитектура x86-64. Будут постоянно проводиться параллели между тем, что из себя представляет код на Си в текстовом виде, и тем, в какой текст на ассемблере его превращает компилятор. В связи с этим, первым делом будет рассказано о goto и конструкции if(условие) goto метка;. Про конструкции вида

if(условие)
{
  что-то_делаем;
}
else
{
  что-то_другое_делаем;
}
Будет рассказано немного позже, притом это будет рассказано и словами, и через написание эквивалентного кода через if(условие) goto метка;. Циклы, for(){} while{}, do{}while(), конструкция switch-case и break continue внутри них будут так же объясняться через все тот же if(условие) goto метка; притом будет делаться явный акцент на том, что намного лучше использовать нормальные циклы, чем лепить всюду этот условный goto. Кроме того, будет так же рассказано про Labels as Values. Почему так важна эта странная штука, if(условие) goto метка;? Потому что она имеет наипрямейшее отношение к тому, как работают ЭВМ, а всякие циклы СКРЫВАЮТ это. Рекурсия в Си будет объясняться только после того, как будет объяснено, что такое стекфрейм и соглашения вызова, будет сказано про оптимизацию хвостовой рекурсии, и о проблеме забивания стека, если такая оптимизация не происходит, притом это будет наглядно показано в ассемблере. Учиться отлаживать код надо будет тоже «с пеленок», притом отлаживать и ассемблер, и всякие там Си. Будет и про асм-вставки в Си, clobber list. В качестве ассемблера будет рассматриваться GAS, а никакой не NASM т.к. GCC умеет выплевывать ассемблер именно в GAS синтаксисе. Насчет выбора Intel или AT&T синтаксиса - тут я склонюсь пожалуй к тому, что надо ЗНАТЬ И УМЕТЬ ПОНИМАТЬ ОБА. Кроме того, GAS давно уже умеет в оба синтаксиса, так что проблем с этим не будет. Единственная проблема с GAS в том, что это однопроходной ассемблер, так что можно освоить и какой-нибудь NASM, YASM.

Первые хеллоуворды будут написаны вообще в особом стиле, без использования printf() и вообще без библиотеки Си; Будут использованы куски на ассемблере, которые делают системный вызов write и read, и с ними можно(нужно) будет линковаться, чтоб что-то вывести на экран. Будет рассказано и про printf естественно, но только когда будет совершенно четко ясно, что такое вообще va_list. Будет куча отсылок к драфту стандарта Си (недрафт почему-то платный). Будет так же рассказано про устройство ОС. В конце скорее всего будет дано задание сделать свою игрушечную ОС так что предполагается что человек к тому моменту должен уже отлично понимать всякие там связные списки, графы, очереди, спинлоки-аллокаторы свои уметь делать на асме при желании. Алгоритмы сортировки, обхода графов, хеш-таблицы, все это будет объяснено на языке Си, и плюсов вообще касаться я не буду.

Насчет графики: работу с протоколом иксов тоже можно будет рассказать, обработку нажатий клавиши. Правда там надо дофига писать про кучу всего, например что есть сокеты, есть AF_LOCAL... Тогда это можно еще и сетевому программированию учить на каких-нибудь беркли-сокетах.

Кроме того, после моей книги предполагается, что человек должен уметь заниматься такими ненужными (в GNU/Linux) на первый взгляд вещами, как крякинг, реверсинг, исправление ошибок в бинарниках, не обладая исходным текстом. Восстановление логики работы программы по дизасму. Ну и программирование в машинных кодах (без ассемблера, одним HEX редактором).

Как-то уж слишком дофига, не находите? Может быть не надо так глубоко во все это нырять? Жду предложений и критики по поводу того, что нужно, а чего не нужно писать. Возможно что я слишком много хочу.

cast ASM be_nt_all mister_VA

UPD: Программирование и отладка на C/ASM - Первые программы. Знакомство с C и ассемблером. Компиляция, линковка, код возврата. Вывод текста.

 , , ,

SZT
()

Классика на свободных движках

Форум — Games

Здравствуйте, любители свежей олдятинки!
Провёл ревизию и выяснил, что есть вполне живые и работоспособные движки к классическим игрушкам. Вот некоторые примеры:

  • openKB - движок для King's Bounty - идейного прародителя Heroes Of Might & Magic, Warlords, Disciples, Age Of Wonders.
  • FHeroes2 - Heroes of Might & Magic 2 - прошёл 2 больших карты против AI, всё вполне работоспособно, быстро, красиво, поддерживается вся серия HOMM2, смена разрешений, в настройках можно добавлять плюшки из HOMM3.
  • VCMI - Heroes of Might & Magic 3 - играл против AI, тестировал новые версии движка, испавлял баги, добавлял города. Поддерживаются WOG и ERA, но можно играть и на чистых HOMM3 (поддерживается вся серия). Также много плюшек, новых артефактов, городов, юнитов, героев, смена разрешений и другие вкусности.
  • Dune Legacy - Dune 2 - прошёл несколько миссий за разные дома, играл скирмиши, всё прекрасно работает. Движок вполне современный, взято много идей из последующих игр серии, например выделение множества объектов, очереди строительства, векторы движения, естественно, есть смена разрешений и куча приятных настроек. Также поддерживаются моды.
  • War1gus - движок для Warcraft I, основан на Stratagus.
  • Wargus+Aleona's Tales - свободный движок для Warcraft II + свободные ресурсы (можно играть и с оригинальными) - тоже вполне играбельно и удобно, основа движка - Stratagus, возможность выделять множество объектов, векторы движения, разные разрешения...
  • Stargus - движок для Starcraft I, основан на Stratagus.
  • 7KAA - движок для своеобразной стратегии Seven Kingdoms.
  • OpenRedAlert - движок для Red Alert 1, написанный на C++, в отличие OpenRA (Mono).
  • OpenRA - модифицированный движок для Red Alert, Command & Conquer и Dune 2000 (Achtung! Mono!).
  • OpenXcom - UFO: Enemy Unknown - прохожу капманию, всё работает, с каждой новой версией всё лучше. Также с версии 1.0 поддерживается мод с Ктулху.
  • FreeSynd - Syndicate - тоже вполне играбельно, наконец-то починили радар.
  • Syndicate Wars Port - движок для Syndicate Wars, продолжения Syndicate.
  • GemRB - движок для Baldur's Gate, Icewind Dale и Planescape: Torment. Вполне рабочий, я почти прошёл Baldur's Gate.
  • Micropolis - Свободный движок для SimCity.
  • ECWolf - модернизированный движок для Wolfenstein 3D, Spear of Destiny и Super 3D Noah's Ark, основанный на кодах Wolf4SDL и ZDoom.
  • Cytadela - движок для Cytadela, стрелялки от первого лица для Amiga.
  • Rise of the Triad - движок для уникальной для своего времени игры Rise of the Triad, основанной на сильно модифицированном движке для Wolfenstein 3D.
  • ZDoom+FreeDoom - Модифицированный и современный движок для Doom, Doom 2, Heretic, HeXen, Strife + свободные ресурсы. Множество улучшений: свободный обзор, прицел, приседания и прыжки, объекты больше не имеют бесконечную высоту, высокое разрешение. Также есть замечательный мод BrutalDoom, привносящий моря кровищщи, горы кишок и ультранасилие.
  • GZDoom - OpenGL-форк ZDoom.
  • Doomsday - модифицированный OpenGL-движок для Doom I&2, Heretic, Hexen, HacX, Chex с поддержкой трёхмерных моделей вместо спрайтов.
  • uHexen2 - SDL/OpenGL движок для Hexen II: Hammer of Thyrion.
  • DarkPlaces + Quake Revitalization Project - модифицированный OpenGL-движок для Quake I + обновлённые текстуры.
  • Yamagi Quake II - модифицированный движок для Quake II, также поддерживает дополнения Mission Pack 1 'The Reckoning' и Mission Pack 2 'Ground Zero'.
  • ioquake3 - модифицированный движок для Quake III.
  • Eduke32+HRP - Модифицированный SDL/OpenGL движок для Duke Nukem 3D (свободный обзор, прицел, прыжки, приседания, высокое разрешение) + набор свободных трёхмерных текстур. Прошёл всего Дюка с трёхмерными текстурами и продвинутой отрисовкой Polymer.
  • eRampage - движок для стрелялок Redneck Rampage, Suckin' Grits on Route 66, Redneck Rampage Rides Again и Redneck Deer Huntin'. Основан на EDuke32.
  • BloodCM + HRP for BloodCM - Blood на движке EDuke32 + текстуры в высоком разрешении. Готовы 2 эпизода игры, третий в разработке.
  • Aleph One - модифицированный движок для Marathon, Marathon 2: Durandal и Marathon Infinity. Также сообществом разработаны новые игры Marathon: EVIL, Tempus Irae, Marathon RED, Marathon: Eternal, Marathon: Rubicon X, Marathon: Phoenix. Ещё есть отдельная игра Excalibur: Morgana's Revenge. Эти игры особенно придутся по душе латентным, активным и пассивным любителям Macintosh, ибо изначально Marathon разрабатывался исключительно под эту платформу.
  • Xash3D - свободный движок для Half-Life (аналог GoldSource).
  • D2X-XL - OpenGL движок для трёхмерной леталки-стрелялки Descent. Также разработан редактор уровней DLE.
  • DXX-Rebirth - SDL/OpenGL движок для трёхмерных леталок-стрелялок Descent 1&2.
  • ForsakenX - движок для трёхмерной леталки-стрелялки Forsaken, клона Descent.
  • OpenTTD - свободный движок для Transport Tycoon Deluxe + свободная графика и звуки.
  • JA2-Stracciatella - Jagged Alliance 2. Несмотря на периодические приостановки, проект до сих пор жив и недавно снова вошёл в активную фазу.
  • ScummVM - набор свободных движков в основном для игр в жанре quest (приключение), например от Lucas Arts, Sierra, Westwood, Coktel Vision, The Neverhood Inc., The Dreamers Guild, Revolution Software, Psygnosis, Infocom, Delphine Software International, Adventure Soft, также и для некоторых ролевых игр: Eye of the Beholder I&II, Lands of Lore: The Throne of Chaos. На данном этапе ведутся работы по поддержке таких замечательных игр, как Myst, Riven: The Sequel to Myst, Gabriel Knight, Gabriel Knight 2: The Beast Within, King's Quest VII, Phantasmagoria I&II, Police Quest IV, Police Quest: SWAT, Quest for Glory IV, Space Quest 6: The Spinal Frontier, Leisure Suit Larry 7, Broken Sword 2.5...
  • ResidualVM - движки для трёхмерных игр Grim Fandango и Escape from Monkey Island от Lucas Arts, также добавлена поддержка для Myst 3 Exile. Для Grim Fandango разработан 'point & click интерфейс'.
  • Pentagram - движок для Ultima VIII с поддержкой разных разрешений, разных звуковых систем, миникарты, TrueType.
  • Exult - движок для Ultima VII с поддержкой разных разрешений, разных звуковых систем, статусбаров, Exult Studio для разработки своих игр.
  • Nuvie - движок для Ultima VI.
  • XU4 - движок для Ultima IV с поддержкой VGA и 16-bit графики, смешивание заклинаний как в Ultima V.
  • OpenMW - The Elder Scrolls III: Morrowind. Проект активно развивается, добавляется новый функционал, поддержка модификаций, но на данном этапе поиграть пока не удастся.
  • Lord of the Rings game engine - движок для ролевой игры Lord of the Rings.
  • Arx Libertatis - движок для трёхмерной ролевой игры Arx Fatalis.
  • FS2Open - движок для космического симулятора FreeSpace 2. Также есть fsport - адаптация кампаний FreeSpace 1 для FS2Open.
  • CorsixTH + CorsixTH-Graphics - движок для симулятора больницы Theme Hospital и набор новой свободной графики.
  • Abysmal Engine - движок для System Shock 1 и Ultima Underworld. Проект жив, потихоньку развивается.
  • OpenAge - движок для Age of Empires II. Проект на начальной стадии, ещё сырой. Разработчики пока толком не определились с технологиями, хотят для изометрической графики задействовать OpenGl и шейдеры.
  • Antares - движок для космической стратегии Ares. Трепещите, латентные, активные и пассивные любители Macintosh, игра изначально разрабатывалась исключительно под эту платформу.
  • CaesarIA - симулятор Римской Империи и Цезаря в частности Caesar III.
  • Falltergeist - свободный движок для Fallout 1&2, разрабатываемый на C++ с использованием SDL2. Проект на начальной стадии, но активно развивается.
  • freeablo - свободный движок для Diablo 1 с использованием SDL2. Проект на начальной стадии, готов начальный посёлок с нейтральными персонажами и пара случайно генерируемых подземных уровней.
  • Abuse - аркадная стрелялка-платформер, сюжет вдохновлён вариациями на тему «Хищник против Чужих». Движок использует отрисовку через SDL или OpenGL (на выбор), работает на 32-bit и 64-bit платформах. К игре прилагаются освобождённые ресурсы.
  • New RAW - интерпретатор для аркадной игры Another World.
  • Bermuda Syndrome - SDL-движок для аркадного приключения Bermuda Syndrome.
  • REminiscence - SDL-движок для аркадного приключения Flashback.
  • f2bgl - SDL/OpenGL-движок для трёхмерного приключения Fade To Black.
  • Igor - SDL-движок для испанского квеста Igor: Objetivo Uikokahonia.
  • Carlos - SDL-движок для платформера Carlos.
  • xBaK - движок для уникальной для своего времени ролевой игры Betrayal at Krondor. Относительно играбельно, но некоторых важных функций может не оказаться. Проект, к сожалению, заброшен. Форкайте, господа, пилите для ScummVM.
  • bstone - движок для стрелялки от первого лица Blake Stone: Planet Strike.
  • CatacombSDL - SDL2-движок для фентези-стрелялки Catacomb II.
  • NXEngine - SDL-движок для платформера Doukutsu Monogatari (также известного как Cave Story).
  • Commander Genius - движок для серии платформеров Commander Keen.
  • The Ur-Quan Masters + Ur-Quan Masters HD - движок для космического аркадного ролевого стратегического квеста Star Control II + текстуры в высоком разрешении.
  • OpenJK - движок для Jedi Knight II: Jedi Outcast и Jedi Knight III: Jedi Academy с минимальными измененями, максимально близкий к оригинальному.
  • JediOutcastLinux - ещё один движок для Jedi Knight II: Jedi Outcast.
  • JediAcademyLinux - ещё один движок для Jedi Knight III: Jedi Academy.
  • SDL Sopwith - SDL/GTK+ движок для классического аркадного авиасимулятора Sopwith.
  • Ultimate Stunts - OpenGL движок для классического гоночного симулятора Stunts.
  • Freeserf - SDL-движок для классического симулятора поселенцев The Settlers 1 «Serf City».
  • Return to the Roots - OpenGL-движок для для классического симулятора поселенцев The Settlers II Gold Edition.
  • OpenRaider - OpenGL-движок для серии приключенческих игр Tomb Raider (1-5). 5-я игра серии пока не полностью работоспособна.
  • OpenTomb - ещё один OpenGL-движок для серии приключенческих игр Tomb Raider (1-5).
  • Privateer - Gemini Gold - OpenGL-движок для Wing Commander, основан на кодовой базе Vega Strike.
  • ET: Legacy - модифицированный движок для многопользовательской игры Wolfenstein: Enemy Territory.
  • Zod Engine - движок для уникальной стратегии Z.

Статья на LOR Wiki.

 ,

toney
()

Форк SolveSpace теперь с полной поддержкой i18n

Новости — Open Source
Группа Open Source

Спустя несколько лет после официального открытия исходников минималистичной 2D и 3D САПР SolveSpace v2.0, изначально работающей только на Windows, силами сообщества был создан форк SolveSpace v2.1, портированный также на GNU/Linux и OS X. Кроме того было внесено много улучшений и добавлено несколько новых форматов экспорта и инструментов для работы с чертежами и моделями.

В свежей сборке от 2016-02-14:

  • теперь поддерживается большинство языков как для интерфейса, так и для надписей в чертежах (хотя все ещё есть проблемы с некоторыми символами);
  • добавлена возможность подогнать вид под выбранные объекты («Zoom to Selected»);
  • улучшено отображение кривых Безье;
  • улучшено управление экспортом и отрисовкой хорд;
  • другие исправления.

>>> Подробности

 , ,

atsym
()