LINUX.ORG.RU

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

Пользователь без доступа в интернет

Форум — Security

Моя задача: заблокировать программе в wine доступ в интернет.
Было решено сделать это через iptables для пользователя. Но я столкнулся с проблемами из-за неполных мануалов.
Инструкция
Создаём группу пользователей без интернета: «group_no_inet»

sudo groupadd group_no_inet

Имя пользователя: «user_no_inet»

Опции:

  • без домашнего каталога
  • оболочка командной строки bash
sudo useradd user_no_inet -M -g group_no_inet -s /bin/bash

Даём пользователю пароль:

sudo passwd user_no_inet

Блокировка интернета для группы:

sudo iptables -I OUTPUT 1 -m owner --gid-owner group_no_inet -j DROP

Сохранение правила:

iptables-persistent save

Запуск нужной программы (для теста):

sg group_no_inet firefox

Запуск нужной программы через Wine:

sg group_no_inet команда 

Конец инструкции

Здесь меня смущает:

  1. Команда
sudo iptables -I OUTPUT 1 -m owner --gid-owner group_no_inet -j DROP

в другом месте видел такую запись:

sudo iptables -A OUTPUT -p all -m owner --uid-owner user_no_inet -j DROP

Что из этого правильно? 2. Команда

sg group_no_inet firefox

Что такое «sg»? Терминал отвечает:

Использование: sg группа [[-c] команда]

Но что это значит? И здесь запуск программы осуществляется от группы, а не от пользователя. Блокировалась через iptables тоже группа, возникает вопрос - а зачем тогда создавать пользователя? Я только вчера начал разбираться с пользователями в линукс. И вообще команда

sg group_no_inet firefox

просит пароль, а я не пойму, что за пароль?

 

Kurum2
()

NSA опубликовала инструмент для реверс-инжинринга Ghidra

Форум — Talks

Агентство национальной безопасности США обещало, что опубликует в марте свой инструмент для реверс-инжинринга. Собственно обещание они выполнили:

https://ghidra-sre.org/

(Российские подсети заблочены, заходить с любого VPN)

Исходники сказали подвезут на GitHub чуть попозже. Ссылка для мониторинга: https://github.com/NationalSecurityAgency/ghidra

Новость на Opennet’е: http://www.opennet.ru/opennews/art.shtml?num=50260

Для тех, кто в танке, это может стать отличной альтернативой IDA Pro. Так как там из коробки есть возможность декомпилировать самые разные бинари в псевдо-код аля C, то есть, чем в IDA Pro занимается плагин Hex-Rays Decompiler.


Как и ожидалось, для запуска Ghidra потребовалась Java, JDK версии 11+; для сравнения – в IDA Pro используется (в настоящее время) библиотека Qt 5.

В Ghidra скорее всего используется SWT, но не ковырялся сильно. Возможно тупо AWT+Swing на стероидах. Внутри релиза от АНБ полно ошмётков от различных Eclipse-проектов. Главное окно программы, в котором можно создавать одиночные и совместные проекты, выглядит следующим образом:

http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_main.png

Из интересного – широкие возможности совместной работы над дизассемблированием файлов. Так сказать, можно звать товарищей на помощь и медитировать на выхлопы местного дизассебмлера холодными зимними вечерами вместе с ними. Список поддерживаемых процессорных архитектур:

http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_cpu.png

Самый вкусный инструмент это, конечно же, «CodeBrowser». В отличие от IDA Pro, тут всё довольно инуитивно и кнопочек с окошечками гораздо меньше. Просто импортируешь файл, открываешь его в «CodeBrowser», соглашаешься на его анализирование и через некоторое время (как закончится анализ) уже можно смотреть псевдокод тех или иных функций:

http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_codebrowser1.png

Непонятно для чего они захардкодили стиль виджетов «Solaris» от ныне почившего Sun Microsystems, с ужаснейшими половинчатыми скроллбарами. При анализе бинарника разработчики Gidra даже сделали весёлую анимацию, где красный дракончик кушает бинарный код вида 00010001010. Сотрудники АНБ не лишены чувства юмора. Так что ждём в ближайшем апдейте миниатюрных лошадей и миленьких глазастых девочек. Больше скринов:

http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_codebrowser2.png
http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_codebrowser3.png

Кроме того, стоит отметить, что из коробки в Ghidra имеется полезный дизассемблерский инструмент, который называется «Version Tracking». Суть этого инструмента в том, чтобы реверс-инженеру было удобно переносить уже проделанную работу на новые версии программы. Отслеживать все изменения, которые сделали разработчики по паттернам, сдвигам и т. д.

http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_versiontracking.png

Я попробовал разобрать бинарь ARMv7, либу ARMv8 из APK и dex’ированные Android’овские Java-классы. На всех вариантах показался более-менее осязаемый псевдокод. Кому интересно, можете сравнить с той же IDA Pro:

http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_vs_idapro.png

Я ранее использовал IDA Pro для разбора бинарного файла ARMv7, который работал с камерой телефона. Проанализировав псевдокод я узнал правильный порядок инициализации и подсмотрел как работали с нужными мне проприетарными классами, на которых нет ни документации, ни заголовочных файлов. Я думаю, воспользовавшись Ghidra’ой, я бы тоже справился с этой работой.

Так что в полку интересных и полезных инструментов прибыло.


Update. Посмотрел внимательнее на структуру релиза и оказалось что там уже лежат архивы с исходным кодом на Java для большинства компонентов этой программы. Поковырялся в них и нашёл небольшой GUI-фреймворк базирующийся на AWT+Swing, по типу того, как оно сделано у платформы IntelliJ IDEA. Корней SWT не нашёл. Декомпиляторы выполнены в виде нативных исполнительных (соответственно платформозависимых) файлов; их исходников в этом релизе я не обнаружил.


Под Windows выглядит эта Ghidra более-менее цивильно. Видимо под неё и затачивалась. А вот под macOS, просто ужас:

http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_win.png
http://esxi.z-lab.me:666/~exl_lab/screens/ghidra_macos.png

Даже хуже, чем на Linux c Solaris-темой.

 ,

EXL
()

Многомерный issue-трекер

Форум — Development

Коллеги, нужна подсказка.

В компании регулярно запускается тестирования продукта. Версий продукта много. Тестов много разных, запускаются вручную и автоматически. Есть сломавшиеся, которые требуют внимательного изучения, есть успешно прошедшие, которые требуют сохранения отчета об успехе… Вот как-бы все это учитывать…

Я не настоящий сварщик тестер, я мимо проходил и засосоало, но мне видится что для этого нужен какой-то многомерный issue-трэкер, в котором во-первых записи можно выстраивать вокруг разных осей: версия продукта, тип тестов, тип срабабатывания, если тест не прошел и т.п. Возможно выборки по пересечению множеств. А так же в котором можно было бы хранить иерархическую информацию. Напремер категории «Тестирование 2021» -> «Тестирование в рамках такого-то релиза» -> «Тестирование такой-то подсистемы». Чтобы по этим категориям можно было бы нормально перемещаться, и иметь нормальное визуальное представление (а не по одному уровню на страницу например)

Бывает ли вообще такое? Естественно лучше опенсорс, но и закрытый код рассматривается тоже.

Спасибо!

Update:

summary ответов:

https://testlink.org/ (via @pon4ik)

Redmine с Luxury Buttons(https://www.redmine.org/plugins/luxury_buttons) (via @byko3y)

https://www.openproject.org/ (via @XMs)

https://www.dolibarr.org/ (via @XMs)

Редмайн и багзилу как очевидные в список не включал

 

shaplov
()

Где нынче регистрировать домен...

Форум — General

…под личный бложик и пет-проекты?

Давным-давно брал на 2domains.ru.

Лучше брать домен у зарубежного регистратора? У какого? Какие подводные камни могут быть с оплатой или еще чем-нибудь?

 

wandrien
()

«Это вам за Трампа!» - сказал РКН Твиттеру.

Форум — Talks

Сабж

Роскомнадзор заблокирует Twitter в России через месяц, если сервис не удалит запрещенную информацию, сообщил «Известиям» во вторник, 16 марта, замглавы ведомства Вадим Субботин.

«Есть готовность Роскомнадзора ограничить доступ к сервису Twitter, если в течение месяца компания не выполнит требования российского законодательства», — сказал он.

Он уточнил, что регулятор отсчитывает месяц с момента начала замедления трафика Twitter, то есть с 9 марта. При этом, по словам замглавы ведомства, если компания приступит к блокировке требуемого контента, однако через месяц не удалит все требуемые материалы, регулятор не станет блокировать весь сервис на территории страны.

В Twitter на обращения Роскомнадзора пока не ответили, добавил Субботин. Ведомство будет наблюдать за действиями компании, отметил он.

После объявления о замедлении трафика Twitter в России РКН сообщил о направлении протоколов в суд. Причиной стало игнорирование соцсетью требования регулятора об удалении противоправного контента.

Как ранее подчеркивал в беседе с «Известиями» Субботин, с 2017 года таких материалов накопилось свыше 3 тыс. Также игнорирование требований регулятора может повлечь за собой блокировку сервиса в стране, отмечал он.

В свою очередь Twitter выразил обеспокоенность «попытками ограничить общественную дискуссию» в интернете в связи с замедлением работы сервисов компании на территории РФ.

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

А чё, забавно выйдет, если заблокируют.

 , , , ,

tiinn
()

В чем рисовать электрические схемы под Linux?

Форум — General

Допустим, подключил я светодиод через резистор к двум выходам Arduino Uno. Схема не простая, а годы уже не молодые. Можно и забыть как оно было подключено.

Хорошо бы сохранить данную схему в каком-нибудь свободном формате, который можно читать и редактировать свободным ПО под Linux. Еще лучше описать схему декларативно в текстовом файле и иметь возможность генерировать картинки и какую-нибудь документацию. Кажется, что-то такое я мельком видел.

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

 ,

aquadon
()

Live CD для генерации Bitcoin адресов

Форум — General

Доброго времени суток.

Заказчику раз в неделю нужно печатать новые ключи для Bitcoin адресов.

Он мне объяснил, как он все это видит. Зашел в комнату, включил компьютер, вставил DVD диск, загрузилась OS, сгенерировал новый ключи, напечатал на принтере, вытащил DVD-диск, выключил компьютер, забрал из принтера лист А4, вышел из комнаты.

В комнате нет окон и нет видео наблюдения.

В комнате только компьютер и принтер. Компьютер собран таким образом, что в нем нет Wifi, сетевой карты, HDD/SSD/Карты памяти/Флешки и прочих устройств, с которых сгенерированная информация может хоть как-то передаться или где-то сохраниться.

То есть все ключи сохраняются только на листе A4.

Все, что он хочет от меня, это чтобы я ему сделал DVD диск(LiveCD), с которого он будет загружать OS.

Подскажите, у кого-нибудь был опыт подобных сборок? Особенно интересует, как в сборку добавить драйвера для принтера и html файл, который собственно и генерирует ключи.

 ,

linuxorgru1
()

Ваш опыт инвестирования в криптовалюты

Форум — Talks

Не жалеете что когда-то передумали заняться майнингом или купить криптовалюту (любую из тех, что сильно подорожала) ? Я в году 2014 продал 0.9 биткоинов, кажись за 300$. Теперь сильно жалею что поддался эмоциям и продал его. А до 2014 года я не меньше кусал локти, что не занялся майнингом 4 года назад, стал бы миллионером. Я в том же году попробовал майнить Dogecoin на CPU (нужных видеокарт у меня не было) и случайно за сутки добыл четырёхзначную сумму, а после этого несколько дней добывались лишь жалкие копейки и так как Dogecoin стоит очень и очень мало а майнинг сильно грузит комп, я больше я не занимался майнингом. Dogecoin тогда только появился и стоил 0.0002$, а теперь он стоит 0,06$. Я хотел тогда купить себе простенький майнер размером с флешку, подключить его миникомпьютеру и за 7 лет накопилось бы много догкоинов. Но пожалел денег, зная что на рынке криптовалют спекулянты иногда специально чтобы поднять курс, скупают крипты в большом количестве и потом продают их обваливая курс.

Вы тоже жалеете что не захотели майнить / покупать крипты ? Или не стали этим заниматься по той причине, что криптовалюты это спекуляция и используются в основном в незаконных целях ?

 

enalesck
()

Xilinx открыла исходный код Vitis HLS

Новости — Open Source
Xilinx открыла исходный код Vitis HLS
Группа Open Source

Компания Xilinx, выпускающая интегральные микросхемы программируемой логики, открыла исходный код Vitis HLS — набора инструментов, который позволяет синтезировать высокоуровневое описание логической структуры FPGA из кода на Си/Си++ (в том числе с использованием OpenCL).

По словам представителя компании, публикация исходного кода интерфейса Vitis HLS открывает новые возможности для исследователей, разработчиков и энтузиастов компиляторов в использовании и модификации Vitis HLS в соответствии с конкретными потребностями своих приложений.

Исходный код опубликован на условиях лицензии Apache 2.0 и доступен в репозитории на GitHub.

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

 ,

ymn
()

Как оптимизировать линукс под использование харда?

Форум — Desktop

Современный линукс повернулся к ssd лицом, к hdd задом. То что раньше называлось 12309 разраслось кустистыми ветвями. И раньше-то способов побороть небыло, у одних помогало, у других ухудшало. А теперь вообще непонятно, что делать?

У меня на лаптопе ssd и хард. При обращении к ssd есть фризы интерфейса, но он работает быстро и быстро отпускает. Но при обращении к харду всё хуже, жёстче и терпения уже не хватает. Но я смиренный, я живу так и терплю, потому что смена всяких там bfq, cfq ничего не даёт.

Лопнуло терпение вчера. Ковырялся в компах с хардом. Один стаааарый десктоп - семпрон с ide хардами замученными. Другой ляптоп - Асус из новых, дешёвых, на i3 каком-то, с терабайтным хардом. На старом запустил Slitaz и стал скидывать файлы с больного харда на здоровый. Работает. Достаточно быстро. При этом система не фризится. А при работе с хардом на лаптопе всё колом становится. Поставил копировать - иди кофе пить, мышь не шевелится, только изредка «размыкает» и начинает работать. Попробовал и Убунту и Манджару. Обе затыкаются. Подумал-подумал и попробовал Slitaz на лаптопе - при работе с хардом ничего не фризится. Ёрш твою мать!!!

Сегодня поеду продолжать копировать/переносить, хотелось бы попробовать разное. Накидайте идей.

Ну и конечно, расскажите мне о моей криворукости, неправильности дистра, лаптопа, переходе на винду и пр.

 , , ,

ChekPuk
()

Налетай, не ленись - интерпретатор плюсов

Форум — Talks

сетевые раскопки привели к интересному :

http://home.mweb.co.za/sd/sdonovan/underc.html

старинный интерпретатор (!!) С++. С эксепшинами и stl

Кому писать дипломы и прочие курсовые - срочно брать и апгрейдить до современного окружения. А то развелось понимаешь питонятины :-)

 , interpetator

MKuznetsov
()

Xatab умер

Форум — Talks

Смотрим объявление.

«Линукс» здесь при том, что его репаки идеально работают в Wine под «онтопиком».

 ,

Korchevatel
()

Грехи разработчиков МИСов

Форум — Talks

Несмотря на отсутствие большого профессионального стажа я имел честь быть пользователем 5 МИСов и еще с несколькими я познакомился благодаря коллегам. Разумеется, я работал с этими МИСами в разных учреждениях в разное время и даже в разных городах. У этих систем есть ряд общих черт, которые вызывают неудобство при работе за ними. Почему-то разработчики упорно копируют эти недостатки друг у друга. Я не буду упоминать конкретные МИСы, потому что они специфичны для регионов или даже отдельных учреждений, так что указав название я фактически назову места своей работы. В этой теме я просто жалуюсь. Может быть это прочтет разработчик МИСа и возьмет на заметку. Возможно, это будет полезно разработчикам других систем электронного документооборота.

А теперь перечислю грехи:

1. Отсутствие кастомизации интерфейса и стремление свалить все кнопки в кучу. Как и многое другое ПО, МИСы можно поделить на 2 типа - нативные и web-приложения.

Если в нативных программах часто все же есть возможность влиять на интерфейс, то в web-МИСах такой роскоши для обычного пользователя не замечено.

Основная проблема заключается в том, что некоторые разработчики МИСов не всегда понимают, что от них ожидают. Абсолютно обычная ситуация, когда самыми первыми в списке и постоянно находятся на экране кнопки для выведения списка выбывших или оценки занятости коечного фонда (которая нужна единицам пару раз в год и то они ею не пользуются). В то же время часто используемые функции могут быть спрятаны в подменю.

Поэтому хочется видеть возможность настраивать интерфейс во всех МИСах. А еще лучше, если настройка будет производится подключением/отключением модулей.

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

2. Мощный текстовый редактор и отсутствие режима чтения. Есть МИСы, где единственный способ удобно прочесть документ - вывести его на предварительную печать.

Также при клике по чужому старому документу в списке документов, последнее что хочется - его редактировать. Хочется, чтобы при работе с документами в интерфейсе отдавался приоритет открытию документа для чтения над открытием редактора.

3. Цифровой гулаг. Это самый страшный грех разработчиков - когда они внезапно решают, что необходимо ввести политики безопасности. Я сталкивался с таким лично один раз, но знаю еще один случай. В моем случае новшество просуществовало всего несколько дней. В другом - около 2 недель.

Иными словами, разработчики выполнили работу, ее согласовали, а потом все откатили.

Суть цифрового Гулага примерно следующая: медицинский работник получает возможность смотреть и редактировать документы, а также выполнять многие действия в электронной медицинской карте пациента только если в МИСе это было явно разрешено. Врач получает возможность работать с ЭМК пациента только если он является лечащим врачом. Нельзя посмотреть, что происходит в соседнем отделении или ЭМК произвольного пациента.

Помимо того, что это просто жутко неудобно и ломает рабочий процесс, то также становится принципиально невозможной в МИСе работа врачей-консультантов или совмещающих дежурных врачей. Если пациенту одного отделения потребовалась помощь врача другого, то придется писать документы вручную. При этом никаких достоинств у таких ограничений нет. Кто это делает и зачем?

4. МИС думает, что он умнее пользователя.

В основном этот грех заключается в том, что некоторые действия невозможно выполнить, пока не будут выполнены другие. Например, невозможно создать документ А пока не будет заполнен документ Б. Невозможно напечатать документ с незаполненным полем. А если я хочу, например, именно документ Б без документа А? Возможность прострелить себе ногу должна быть, пусть и после предупреждения. Еще отдельную категорию проблем создает отсутствие возможности в некоторых МИСах создавать документы задним числом. В большей части известных мне систем, к счастью, такого нет.

Пожалуй, это основные недостатки, которые явно обращают на себя внимание.

 ,

Leupold_cat
()

Анонсирован ETS 2 — Heart of Russia

Форум — Games

https://blog.scssoft.com/2021/03/heart-of-russia.html

https://store.steampowered.com/app/1536500/Euro_Truck_Simulator_2__Heart_of_R...

Собственно, новое дополнение, полностью посвящённое России. Планируют добавить часть европейской территории страны, дата выхода пока неизвестна.

Напомню, впервые Россия появилась в DLC Beyond the Baltic Sea, но в тот раз разработчики ограничились лишь парой городов.

 ,

pelmeshechka
()

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

Форум — 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
()

Помоги перенести скрипт bash -> sh

Форум — General

Здравствуй, мой дорогой, уважаемый друг!

У меня возникили трудности при написании скрипта на shell, я так сильно привык к bash, что немного вошел в ступор и надеюсь на твою помощь.

Задача

Имеем:

export APP_NAME='test'
export APP_DESCRIPTION='Test app'
export APP_VERSION='beta'
export APP_COMMIT_HASH='000000000'
# и черт пойми еще какие APP_* могут быть
export PROJECT_DIR='./src'

На bash-е сделал так:

#!/bin/bash
for k in ${!APP_*}; do
  grep -q "^$k" "$PROJECT_DIR/.env" && \
    sed -i "s|^$k=.*|$k=${!k}|" "$PROJECT_DIR/.env" || \
    printf '%s=%s\n' "$k" "${!k}" >> "$PROJECT_DIR/.env"
done

Очень нужно перенести на shell, там где это будет работать - товарищ майор запрещает использовать bash. На скорую руку сделал так:

#!/bin/sh
vars=$(env | grep -o '^APP_.*=' | tr -d '=')
for k in $vars; do
  eval "v=$k"
  grep -q "^$k" "$PROJECT_DIR/.env" && \
    sed -i "s|^$k=.*|$k=$v|" "$PROJECT_DIR/.env" || \
    printf '%s=%s\n' "$k" "$v" >> "$PROJECT_DIR/.env"
done

Проблема

  • eval == зло
  • сложное получение списка названий переменных

Изящный способ то существует?

Скорее всего env и eval можно заменить на set, но решил спросить у тебя, может быть подскажешь что-то более практически и эстетически верное.

Решение

Всем спасибо за помощь!

Пока оставил в таком виде:

#!/bin/sh
cat /proc/self/environ | tr -d '\n' | tr '\0' '\n' | \
grep '^APP_[a-zA-Z0-9_-]*=.*$' | \
while IFS='=' read -r k v; do
  grep -q "^$k" "$PROJECT_DIR/.env" && \
    sed -i "s|^$k=.*|$k=\"$v\"|" "$PROJECT_DIR/.env" || \
    printf '%s="%s"\n' "$k" "$v" >> "$PROJECT_DIR/.env"
done

 , ,

WoozyMasta
()

Настройка ZSWAP/ZRAM

Форум — General

Такой сабж, есть ноутбук с debian (i3/4gb ram/128 ssd), есть ли смисл играться с ZSWAP (ZRAM ?), и если да, то какой должен быть конфиг для этого, как минимум какой vn.swappiness и zswap.max_pool_percent ?

 , ,

fpbeat
()

REDHAT end ?

Форум — Talks

Red Hat удвоил минимальную стоимость подписки за RHEL для виртуальных машин

https://www.opennet.ru/opennews/art.shtml?num=54704

Хотелось бы услышать комментарии alpha по поводу строк :

сворачивания классического CentOS программа Red Hat Developer, позволяющая бесплатно использовать RHEL в окружениях, насчитывающих до 16 виртуальных или физических систем, распространяется только на индивидуальных разработчиков, а не на предприятия. Т.е. сотрудники компании могут использовать дистрибутивы по подписке Red Hat Developer только в личных целях, но для коммерческого применения RHEL на предприятии требуется покупка лицензии.

 , ,

mx__
()

Чем приклеить радиатор к Raspberry

Форум — Linux-hardware

Добрый день, купил какие-то радиаторы из меди, из клеющего вещества нечто «черное» с двух сторон, в итоге все нагрелось и отвалилось. Чем бы таким все это приклеить (и чем прикрепляют по-канону).

 

da17
()

Имеет ли смысл Open source в данном случае?

Форум — Web-development

Всем привет.

Хотелось бы узнать мнение форума - имеет ли смысл открывать код у веб-приложения, пользователи которого будут далеки от программирования.
Бытует мнение, что open source полезен там, где люди, использующие его, сами будут принимать активное участие в развитии проекта (создастся комьюнити, ищьюсы, пулл реквесты и т.п.). Что библиотеки, программы для программистов - это основная сфера open source. Нужно ли людям, далеким от программирования, свободное ПО, или «главное шоб бесплатно и работало, а остальное неважно»?

Я разрабатываю товароучетную систему для торговли. Пользователи - мелкие фирмочки и ИП, самозанятые. Там не то что программистов --- людей знающих что такое open source то будет исчезающе малый процент. Решил что она будет open source, но постоянные сомнения - стоит ли.

Пока что для себя выделяю следующие + и -

Плюсы
- Доверие пользователей
- Возможность совместной разработки (при условии, что все-таки возникнет какое-то комьюнити)
- Распространение - возможно, найдутся люди, желающие заработать на этом приложении (услуги по настройке серверов, тех. поддержке или даже продаже этого ПО)

Минусы
- Мы живем в России, с нашим ведением бизнеса по-русски оставлять что-то уже готовое и работающее лежащим в открытом виде кажется не очень правильным. Ходи потом по судам, доказывай что это твоё.
- Скорее всего, будет сложнее найти инвестора, т.к. в его глазах open source - лишние риски (вкладываешься в то, что и так уже открыто, украдут наработки и т.д.)
- Считаеется, что код в open source должен быть идеален. Я можно сказать джун и на фронте и на бэкэнде, прекрасным кодом и «правильными решениями» похвастаться не могу (а говнокодом - сколько угодно)). Так что как-то обломно выставлять напоказ всю эту кухню))

Ваши мнения на сей счет?

 ,

eager_beager
()