box86(64) или есть ли жизнь на ARM-e?

Запуск программ, собранных для архитектуры x86, на Linux-системах с ARM-процессорами
( читать дальше... )
Запуск программ, собранных для архитектуры x86, на Linux-системах с ARM-процессорами
( читать дальше... )
Один крутой мэн сумел написать работающий компилятор Си, объёмом меньше 512 байт.
На Хабре перевод статьи о компиляторе https://habr.com/ru/companies/ruvds/articles/740310/
В кодировке base64 это будет
( компилятор Си )
А вам слабо сыграть ноктюрн на флейте из водосточных труб засунуть компилятор в загрузочный сектор диска?
Спустя 1 год 9 месяцев и 28 дней активной разработки, проект Debian рад сообщить о выходе очередного стабильного выпуска операционной системы Debian 12 кодовое имя «bookworm»
Данный выпуск будет поддерживаться в течение 5 следующих лет благодаря работе команд Debian security и Debian LTS.
В соответствии с решением, принятым в ходе общего голосования разработчиков Debian, несвободные прошивки для аппаратного обеспечения вынесены из секции non-free в отдельную секцию non-free-firmware и добавлены в официальные установочные образы. При этом в процессе установки пользователь может отказаться от их использования для установки полностью свободной операционной системы.
В Debian 12 поддерживается 9 архитектур:
В выпуск Debian 12 добавлено 11,089 новых пакетов, а общее число пакетов достигло 64,419. По тем или иным причинам 6,296 пакетов были удалены. 43,254 пакетов обновлены в этом выпуске. Общий объем пакетов в Debian «bookworm» составляет 365 гигабайт и содержит 1,341,564,204 строк исходного кода.
Доступны новые версии окружений рабочего стола:
В репозитории Debian 12 доступно и множество других окружений и оконных менеджеров.
Ядро Linux обновлено до версии 6.1 (непосредственно в выпуске 12.0 используется версия 6.1.27).
В Debian 12 проведена огромная работа по переводу man-страниц на различные языки, включая русский. также добавлен новый менеджер шрифтов fnt, через который доступны для установки более 2000 различных шрифтов.
Из установки по умолчанию удален запуск сервиса rsyslog, единственным сервисом для ведения логов оставлен systemd-journald. При этом сохранена возможность установить rsyslog или любой другой сервис логирования из репозитория.
Обновлено и множество другого программного обеспечения. В Debian 12 включены: Apache 2.4.57, BIND DNS Server 9.18, Cryptsetup 2.6, Dovecot MTA 2.3.19, Emacs 28.2, Exim 4.96, GIMP 2.10.34, GNU Compiler Collection 12.2, GnuPG 2.2.40, Inkscape 1.2.2, The GNU C Library 2.36, lighthttpd 1.4.69, LibreOffice 7.4, LLVM/Clang 13.0.1, 14.0 и 15.0.6, MariaDB 10.11, Nginx 1.22, OpenJDK 17, OpenLDAP 2.5.13, OpenSSH 9.2p1, Perl 5.36, PHP 8.2, Postfix MTA 3.7, PostgreSQL 15, Python 3, 3.11.2, Rustc 1.63, Samba 4.17, systemd 252, Vim 9.0.
Как всегда официально поддерживается обновление с предыдущего стабильного выпуска Debian 11 до Debian 12.
Замечания к выпуску
Инструкция по установке
>>> Подробности
После более года разработки состоялись выпуски 1.7 и 1.7.1 программы создания двумерных анимаций OpenToonz.
( читать дальше... )
>>> Подробности
Что ж, этот день настал. Будем делать gtk 2.26.
Минимальный план работ такой:
Приглашаются все желающие. Пишите ваши соображения.
Разные частичные наработки у меня есть, но я их пока нигде не публиковал. Причешу немного и выложу на гитхаб.
P.S. hobbit, верни тэг gtk2 в БД сайта!!!
Сегодня, 23 апреля 2023 года, состоялся очередной релиз симулятора электронных схем Qucs-S. Особенностью Qucs-S является то, что он не содержит собственного движка моделирования, а использует сторонние SPICE-совместимые движки. Рекомендуемым движком является Ngspice, который предлагается по умолчанию при старте программы.
( читать дальше... )
QEMU Team выпустила новую версию эмулятора QEMU 8.0.0, которая содержит более 2800 коммитов от 238 авторов. Создатели выразили благодарность всем, кто внес свой вклад в разработку, будь то написание кода, сообщение об ошибках, улучшение документации, тестирование или предоставление ресурсов CI.
QEMU (Quick Emulator) — это эмулятор с открытым исходным кодом, который позволяет пользователям запускать операционные системы и приложения на различных аппаратных платформах. Он может эмулировать различные архитектуры ЦП, что позволяет разрабатывать и тестировать кроссплатформенное программное обеспечение.
Исходный код новой версии доступен для скачивания на официальном сайте QEMU.
( читать дальше... )
>>> Подробности
Давно хотел начать описывать реалии использования OpenBSD, поскольку информации в сети по ней мало, а та что есть часто устаревшая, либо касается исключительно серверного использования.
Вот тут начало, по мере накопления тем буду публиковать детали.
На скриншоте 7.3 OpenBSD, недавно обновленная, с кастомным ядром.
Xfce4 в виде DE, тема оформления видна в выводе neofetch на скриншоте.
Привет, ЛОР.
В последнее время на форуме резко подскочило количество новостей, частично (а чаще полностью) перепечатанных с уважаемого ресурса opennet.ru. Дело дошло до того, что в новости про Nginx 1.24.0, пока я её чуток не почистил, обсуждали не сам Nginx, а исключительно факт копипасты с опеннета.
В такой ситуации толку от копипаст, конечно, нет. На мой взгляд, весь смысл этих перепечаток сводился к тому, чтобы дать людям возможность обсудить новость в привычном кругу. Не у всех есть аккаунт на опеннете (да, там разрешён анонимный постинг, но это не совсем то), кому-то ЛОРовский формат комментариев нравится больше, чем опеннетовский древовидный, третьим хочется обсудить именно с ЛОРовцами. До определённого времени это работало, сейчас, как видно на примере с Nginx, работать перестало.
Напомню, что полтора года назад однозначно против копипаст было всего 11% опрошенных, остальные были либо за, либо равнодушны. Соответственно, честные перепечатки (с указанием ссылки на источник) я подтверждал без проблем. (К нечестным это, разумеется, не относится, их я либо сносил, либо, если новость была действительно интересная, подтверждал без начисления скора и с восстановлением ссылки.)
Однако это не догма, можно и вернуться к этому вопросу. Я сейчас склоняюсь к тому, чтобы ужесточить подтверждение и пропускать такие новости только в крайних случаях (например, новая версия ядра). Новости с опеннета можно почитать и на самом опеннете, а набирать рейтинг можно и более здоровыми методами, и вообще, «ни в коем случае не следует рассматривать рейтинг как показатель некой личной крутизны, это лишь показатель активности человека на форуме» (сами знаете, откуда).
В тему призываются все, чьи комментарии пострадали :) в новости про Nginx — Extraterrestrial,
Aleksandra,
UriZzz,
anonymous_sapiens,
Original_1 — ну и все остальные заинтересованные, конечно.
Компания Сollabora представила open-source драйвер Vulkan для видеокарт NVIDIA под кодовым названием «NVK».
Что такое NVK?
NVK — новый видеодрайвер Vulkan API с открытым исходным кодом для видеокарт NVIDIA в Mesa. Драйвер был полностью написан с нуля с использованием официальных заголовков «NVIDIA Open GPU Kernel Driver» от самой компании NVIDIA.
( читать дальше... )
Источники:
https://www.collabora.com/news-and-blog/news-and-events/introducing-nvk.html
https://www.phoronix.com/news/NVK-Running-Talos-Game
https://www.phoronix.com/news/NVK-Running-Talos-13-FPS
>>> Подробности
Вышла новая версия Boost, набора кроссплатформенных библиотек C++. Некоторые крупные изменения:
А также множество улучшений и исправлений в Core, Asio, Filesystem, JSON, Math, URL и других библиотеках.
>>> Подробности
10 апреля состоялся выпуск версии 4.2 библиотеки STC (Smart Template Containers), написанной на языке C (C99) и распространяемой по лицензии MIT.
Изменения:
Coroutines
и сопутствующая документация;crand.h
. Предыдущий crandom.h
объявлен устаревшим;c_const_cast
;c_foreach_r
переименован в c_foreach_rv
;c_flt_count
переименован в c_flt_counter
;c_flt_last
переименован в c_flt_getcount
;c_ARRAYLEN
переименован в c_arraylen
;c_ARGSV()
;c_PAIR
.По утверждениям разработчиков, STC — это современная быстрая типо-безопасная небольшая библиотека контейнеров и алгоритмов для языка Си (стандарт C99). Библиотека создана под влиянием C++ STL, а также некоторых идей из Rust и Python.
Пример использования:
#define i_extern // include external cstr, utf8, cregex functions implementation.
#include <stc/cregex.h>
int main() {
const char* input = "start date is 2023-03-01, end date 2025-12-31.";
const char* pattern = "\\b(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)\\b";
cregex re = cregex_from(pattern);
// Lets find the first date in the string:
csview match[4]; // full-match, year, month, date.
if (cregex_find(&re, input, match) == CREG_OK)
printf("Found date: %.*s\n", c_SV(match[0]));
else
printf("Could not find any date\n");
// Lets change all dates into US date format MM/DD/YYYY:
cstr us_input = cregex_replace(&re, input, "$2/$3/$1");
printf("%s\n", cstr_str(&us_input));
// Free allocated data
cstr_drop(&us_input);
cregex_drop(&re);
}
>>> Подробности
Это текстовая версия статьи, оригинал с картинками вот тут
( читать дальше... )
Данный топик про игры в юниксовом терминале. Здесь я буду на регулярной основе (в идеале) описывать в отдельном комментарии какую-нибудь игру. В стартер-посте будут ссылки на эти комментарии. Обзор будет не очень подготовленным, поэтому не ждите литературных изысков. Но тем не менее те, кто любит подобное красноглазие, смогут познакомиться с играми и выбрать на свой вкус понравившуюся вещицу. Данная тема создана по аналогии с соседним топиком про стимовские игры.
Приглашаются красноглазые задротики, которые любят тупить в консольку между сессиями компиляния очередного ядра линукса. Можете подписываться на темку, ставить лайк, прожимать колокольчик или что тут у вас принято.
Теги для поисковых ботов (жрите мои любимые ботики): ascii games, terminal games, ncurses games, tty games, console games, cli games, tui games, text-based games, command line games, игры в терминале, игры в консоле, игры для командной строки.
!!!NEW!!! 1. 8f - Терминальный вариант карточной игры Сумасшедшие восьмёрки (Crazy Eights).
Перечитывая, в очередной раз, книгу Линуса Торвальдства «Ради удовольствия: Рассказ нечаянного революционера» (Just for Fun: The Story of an Accidental Revolutionary) и всё больше погружаясь в историю раннего развития ядра Linux, начинаешь находить какие-то факты, на которые ранее совершенно не обращал внимание.
Вот, например, читая эти строки:
Мой эмулятор терминала обрастал наворотами. Я регулярно использовал его, чтобы подключиться к университетскому компьютеру и получить почту или поучаствовать в конференции по Minix.
Я мысленно спросил себя, а как это делалось тогда? Ведь в minix не было никакого сетевого стека (amoeba не в счет). Да, были попытки внедрения сети, и наверно, самый известный проект, это TNET, на основе которого уже был проект по поддержке сетевых карт, таких как WD8003, NE1000/NE2000, 3C503/3C509. Но, во-первых, Линус ничего не упоминал об этом (даже в Linux сеть появилась далеко не сразу), а во-вторых у него на домашнем компьютере просто не было сетевой карты, был только модем.
Хорошо, модем так модем. Но как с помощью него он подключался к университетскому компьютеру? Все достаточно просто (с точки зрения современных технологий) модем Линуса звонил на университетский модем и если он был свободен, происходил пшшш-шшш-дын-дын-пшш.. или modem handshake и если модемы устанавливали связь, оба модема переходили в режим передачи данных, со стороны «университетского сервера» запускался /bin/login
, и пользователь авторизовывался там, вводя свой логин/пароль, тем самым попадая на сервер, прям как мы сейчас подключаясь по ssh. И уже на сервере, можно было и почту прочитать и в конференциях поучаствовать…
Но вернемся в наше время. С тех пор, как мне удалось в 86Box собрать minix-386 и в нём скомпилировать и запустить Linux версии 0.01 мне всегда хотелось выйти с него в интернет. Но 86box нет поддержки модема, только сетевые карты, но использовать сетевые карты, с вышеупомянутым TNET, мне не хотелось потому, по-первых, это был бы не канон, а во-вторых TNET у меня не заработал :) (возможно, просто из-за моей криворукости).
И вот, недавно, разработчики 86Box’а зарелизили фичу проброса серийного порта (serial port passthrough) на хостовую ОС и мои руки зачесались…
Первым делом, в настройках 86Box включил passthrough, я задействовал 2-ой com-порт (в minix это устройство /dev/tty2) с режимом Pseudo Terminal/Virtual Console и скоростью 2400 8n1. При запуске 86Box автоматически создать PTY-устройство /dev/pts/XX
(у меня это было /dev/pts/19
) и уже с этим файлом можно взаимодейстовать как с minix, так и с хоста. Ну, ОК, скажите вы, а что дальше-то, где модем? А модем будем эмулировать через modemulator программа на Go которая реализует небольшой сабсет АТ-комманд модема. Сам modemulator представляет из себя сервер, который при старте открывает tcp порты для работы на различных модемных скоростях, а после установление CONNECT’а, производит подключение по telnet на указанный хост.
Т.к. modemulator открывает сетевой порт, а со стороны 86box есть только pty, то пришлось задействовать socat для форварда данных между pty и tcp портом. Причем у меня не получилось напрямую пробросить /dev/pts/19
на tcp порт (localhost:10024), пришлось вначале socat’ом создать ещё одно устройство pty с пробросом на tcp, и уже потом cat’ами гонять данные туда сюда (см схему внизу скриншота). И в самом конце цепочки CentOS 7 c телнет сервером. Спросите зачем целая виртуалка с CentOS? По простой причине, она у меня уже была настроена.
Собственно, осталось только скомпилировать minicom v1.3.2 вот minix-386 уже попытаться дозвонится (верхний левый скрин). По факту, конечно, с компиляции minicom’а я и начал. В самом процессе компиляции нет никаких проблем, достаточно в Makefile убрать комментарии с флагов предназначенные для Bruce Evans’ bcc и закомментировать, соотвественно, PC Minix ACK compiler. Если всё происходит удачно, то можно попробовать запустить minicom в режиме конфигурации (-s), указать, что модем у нас находится на /dev/tty2 и сохранить как дефолтный конфиг. И потом запустить minicom! minicom отправит команду инициализации модема, но нашему эмулятору модема на неё всё равно, он просто отвечает ОК. И далее «звоним», набираем ATD4242. Когда эта команда прилетит на modemulator, то он откроет телнет соединение с сервером указанный в программе (в моем случаи на telnet://localhost:2323), где надо будет авторизоваться, и уже там можно и «получить почту или поучаствовать в конференции по…».
Но это всё текстовые протоколы, а как на счёт файлов? Линус же как то заливал свое ядро на ftp сервер ftp.funet.fi? А для этого в давние времена придумали протоколы xmodem/ymodem/zmodem + были альтернативные протоколы, такие как kermit и др. Чтобы залить куда-то файл, например по zmodem, необходимо было с одной стороны запустить программу по приему (rz, Receive ZMODEM), а с другой отправить файл через sz, Send ZMODEM. На втором скриншоте справа вы как раз и видите процесс передачи оригинального ядра linux-0.01.tar.Z на «университетский» сервер.
MidnightBSD — это Unix-ориентированная операционная система для настольных компьютеров, изначально созданная на основе FreeBSD 6.1 и периодически обновляемая кодом и драйверами из более поздних выпусков FreeBSD.
( читать дальше... )
Ссылки:
http://www.midnightbsd.org/notes/
https://www.opennet.ru/opennews/art.shtml?num=58866
>>> Подробности
(Продолжение UnixWare 7 Definitive 2018 CDE)
Это тоже версия 2018 года, тоже триал, тоже скачанная с официального сайта. Ставил его на VBox, ибо QEMU глючит с ней. В отличии от UnixWare 7, есть Firefox и KDE 3.
Вот так выглядит CDE на настоящем сертифицированном UNIX’е! Даже в редакции 2018 года до сих пор древний Mozilla (ещё без Firefox). Вот что такое коммерческий UNIX!
P.S.: Скачал с сайта наследницы SCO (xinuos.com). Достаточно зарегистрироваться, после чего дадут скачать триалку на 30 дней. Там ещё доступны дополнительные патчи для Defenitive 2018, но я их не стал качать. Ставятся эти патчи через утилиту patchck. Но там, естественно, нету обновлений браузера (ибо это древняя ОС). Только обновление OpenSSL и прочих системных утилит.
GoldenDict - замечательный мультиформатный электронный словарь, которым я пользуюсь много лет.
Но у оригинального GoldenDict есть несколько проблем:
В попытках исправить положение, китайский программист xiaoyifang развивает свой форк со следующими изменениями:
Полный список изменений.
Нашёл интересное микроядро:
Написано на С++ с использованием идей С++20. Лицензия MIT.
У них на скриншоте даже glxgears работает (мне пока не удалось запустить).
Как вам, а? И знали ли вы о таком проекте? :)
← предыдущие | следующие → |