RSS
# Re: Установка Etch с 8(?) CD дисков : дневник путешественника
oldpc.51t.ru
vvs(ping,12) — oldpc
2020-10-26 17:07:41


oldpc> freecraft работает, эх blizzard, забанили такую игру: сейчас был бы нормальный второй warcraft.

Не понял этот пассаж. А как же https://github.com/Wargus/wargus ? Есть еще куча интересных модификаций, например http://andrettin.github.io/

# Установка Etch с 8(?) CD дисков : дневник путешественника
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-26 03:57:51


Конечно, сейчас все разбалованы. Интернет, сеть, все удовольствия. Хочешь ставить etch - ставь etch, бери весь репозиторий, используй non-free, используй backport-ы. Или пиши на 3 DVD. Но вот можно ли жить с CD?

Все 21 CD я записывать не стал. Я записал 8 CD, и теперь посмотрю, можно ли жить с ними. Исходный компьютер - P3/1000, набитый 384 мб памяти. На etch выделено 3 гб на диске.

Правда, wifi прошивки на дисках нет. Но их нет ни в etch non-free, ни в etch-backports, так что в любом случае эту прошивку надо ставить вручную. Но мы то живём без сети, так что прошивку проигнорируем вообще. Без сети, значит с CD.

Инсталляция пойдёт с первого диска, но ничего, кроме базовой системы, ставиться не будет, потом будут добавляться другие диски.

Дискотека начинается.

Диск первый
-----------

Всё загрузилось, console-cyrillic на месте, можно писать. С первого диска прежде всего нужны иксы и gnome, но и вообще не помешает поглядеть, что там есть.

Так, из задачи desktop берём alsa-base, alsa-utils, desktop-base, iceweasel, menu, xorg, xresprobe, и оба xserver*all. twm тоже берём. Из гнома не берём блютусы, принтеры и прочее не особо нужное, остальное берём, там разберёмся, что именно набрали. Ещё не берём gnome-screensaver и update-manager, надеюсь их потом в зависимости не засунут.

Ставим. С первого диска ставлю сразу, с остальных буду просто накапливать отметки для установки, а потом ставить разом, чтобы дискотека "вставьте диск 1, 2, 28", была один раз, а не постоянно. Говорит, будет занято 815 мб. И уже занято 374.

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

Опс, случайно выключил питание, а батареи в ноутбуке нет. Сейчас сделаем dpkg --configure -a, посмотрим что там. Так, иксы вроде запустились. Ищем дальше. build-essential - берём! Берём и linux-headers, может пригодятся.

openoffice-core тоже поставлю, остальные компоненты openoffice поищу на других дисках. Ещё по мелочи полезного. apache2 поставлю, буду сам к себе в гости ходить.


Диск второй
-----------

acpi-support и cpufrequtils - они обычно по сети сами ставятся, поэтому беру. Собираем весь OpenOffice.org. Gimp, порисуем. Иксовые русские шрифты - нужно. Сейчас попробую поставить и посмотреть, затребует ли диск 1. Затребовал. Ладно, потом выдам


Диск третий
-----------

Русский хелп для openoffice. Я и сам openoffice открываю крайне редко, а уж хелп вообще никогда, но для порядка поставлю. Появились kdegames, но их ставить не буду. myspell-ru пригодится. Русская локаль для iceweasel 2.0 тоже - буду на свой апач ходить, как русский человек!

По-прежнему нет ни полного vim, ни mc. Перешёл с vim.tiny на gedit.


Диск четвёртый
--------------

parted потом пригодится для gparted и qtparted, беру. minicom и setserial (без него тут нельзя даже модуль irda запустить) нужны. cvs... шарман! беру. subversion тоже. Наконец-то появился vim (но не gvim) и emacs21 (не беру). planner пусть будет, буду планировать. imagemagick нужен всегда. mplayer, отлично! qemu что-то у меня мусор на экране писало, повторно ставить не буду. php5 для apache - пригодится. плюс wine. плюс xpdf (хотя уже есть evince). плюс ещё немного полезняшек. ура, mc! только на четвёртом диске.


Диск пятый
----------

Тут уже появляются игрушки. Сейчас это bsdgames, planetpenguin-racer и frozen-bubble. Пока берём все три. Появился метапакет gnome, предлагающий дополнительные фичи. scribus. Полезняшки для gimp. sqlite3. dillo. squid ставить не буду, сами к себе буду коннектиться напрямую. compiz завезли, но он без надобности.


Диск шестой
-----------

Перед записью дисков я специально смотрел, на каком диске battle for wesnoth. на шестом, а его кампании на седьмом. vrms тут же, без non-free он будет мною доволен. git версии 1.4.4, нужно. разные документации и howto, набираем оптом. дока по питону в contrib, теперь vrms будет недоволен. Кроме веснота из игруш есть freeciv, supertux, экстры для ppracer, scummvm и ещё некоторые - беру только перечисленные. Иконки и темы для гнома, погламурничаем. dosemu в contrib, нужная вещь на старых компьютерах, dosbox они не тянут. iceape (вариант seamonkey). icewm на голодный год берём. Прочие мелочи


Диск седьмой
------------

mercurial используется мной для контроля версий статей oldpc notes, вот и она на седьмом диске. в игрушках nethack-console, кампании веснота и несколько украшалок. tomboy для заметок. шаблоны для scribus. freedos для dosemu (странно, что они по разным дискам). xchm.


Диск восьмой
------------

Вообще ничего интересного. Интересно, зачем я его записывал. Ладно, поставим nexuiz версии 2.2, посмотрим как это добро тут взлетит на атишной карточке. Хотя вот glabels есть, буду визитки рисовать. О, tuxpaint, со штампами, вещь. freemind, посмотрим посмотрим. phpsysinfo какое-то - ну хоть будет, куда браузером ходить.


Эксплуатация
------------

Сразу понимаю, что пропустил localepurge. Она есть, но на каком диске, сейчас не скажу. Остальное вроде пока на месте. Кстати, интересно что gparted уже стоит, хотя самого parted нет, странно. Итак, это всё затребовало 1002 мб на диске, сейчас посмотрим, какие диски ему понадобятся:

вставьте диск 1. о, много ставит, в том числе и gnome-screensaver, как я и предполагал. вставьте диск 2. диск 4. ох, это всё метапакет gnome притянул, видимо, и abiword и gnumeric и всё-всё-всё. диск 8. интересно, зачем мне nexuiz на тачпаде? диск 5. диск 6. диск 3. диск 7.

Надо внимательно изучить диск 9 (и 10), вдруг с ним будет ещё интереснее. Точно знаю, что на 9-м диске есть supertuxkart 0.2, данные от которого есть на восьмом... Изучил, есть смысл записать, есть полезные вещи. Или тогда уже восьмой не надо было писать :) когда-нибудь, надеюсь, запишу все 21 штуки, будет домашней реликвией. :)

Всё поставилось, свободно 320 мб. После localepugre - 637. nexuiz тормозит сильно, при этом смысла на тачпаде нет. удалить! ppracer тормозит, туда же.

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

Но сначала записать ещё пару дисков.


Девятый диск
------------

Записал диски 9, 10 и 11. Болванок больше нет. Что у нас на девятом? Ставим игры: blobwars, bos, freecraft, prboom, powermanga, tuxtype. И по мелочи.


Десятый диск
------------

tcc можно покомпилировать. diveintopython, почитаем. cssed, редактор css - посмотрим. gnotepad+ - тоже посмотрим. из игр поставлю gtans, люблю эту головоломку. посмотрю, что такое mazeofgalious. редактор карт для wesnoth тоже пригодится. gtodo-applet проверим. screem - написано, среда разработки сайтов для gnome, и её проверим. mediawiki - можно будет локально заполнять. Хотя не, оно mysql требует, эта версия ещё не поддерживает sqlite, отказываемся. То же касается wordpress - я как-то как раз в районе etch поставил wordpress из репозитория "как есть", и запустил... на IBM R40 с процессором P4-1600 стартовая страница 40 секунд открывалась, другие вроде вообще не открылись. Так что на p3-1000 я даже не надеюсь, а настраивать в надежде на ускорение не собираюсь, не особо оно и нужно. gwaterfall, говорят, шрифты показывает - проверим. gambas - только runtime: вроде бы, на 11 диске остального нет, жаль.


Одинадцатый диск
----------------
apt-zip для офлайн установки, пусть стоит. gnu hello для вежливости. python2.5-doc (а в etch есть python 2.5? что-то не помню). выбрал python 2.5, но не знаю, на каком он диске. игры пошли... falconseye. gweled. ri-li :) starfighter. xdesktopwaves. holotz-castle. kobodeluxe. nethack-gnome. кстати, не помню такого. ставлю ttyrec для консоли. asciidoc древней версии, тоже интересно. zim. вот, пожалуй, и всё. выбрано на 379 мб. что-то пошло ставиться с 11-го диска. диск 9. диск 4. диск 6 (вот где python 2.5 притаился). диск 8. диск 10. диск 5. диск 1 (я уж боялся, его забудут). диск 2. начинает надоедать. диск 3. всё. для установки софта с трёх дисков понадобилось всего-то 10 дисков из 11, причём в непонятном порядке. И почему-то не понадобилось ничего с диска 7.


Живём
-----

Не поставил jigdo, хотя не особо и надо, места свободного нет. Не поставил irda-utils, хотя тоже надобности особой нет. Вообще, чего-то доставлять страшно - опять дискотека будет. Лучше наотмечать один раз всё, и только потом всё ставить.

Открыл screem. Мда, какой-то он странный, неудивительно, что он не выжил (он же не выжил) по сравнению с тем же bluefish. bluefish отмечу для установки, а дискотека будет тогда, когда отмечу всё, что забыл. gnotepad+ на gtk1, ой какой шарман! понятия не имею, как менять gtk1-темы. кандидат на удаление сразу. xfishtank, видимо, в gnome не работает. xdesktopwaves работает. Потом на icewm проверим.

glabels работает. Есть даже наклейки на дискеты, как мило. tuxpaint со штампами - обожаю! freecraft работает, эх blizzard, забанили такую игру: сейчас был бы нормальный второй warcraft. оригинал на всём старше первого pentium летает так, что играть невозможно. bos на том же stratagus тоже работает, но тут я не разбирался. freemind засыпает ошибками java и не запускается, кандидат на удаление. cssed работает, но я в css не особо разбираюсь. lshw-gtk вообще практически ничего не показывает, на удаление.

В остальном комплект достойный, можно жить и радоваться. По времени вся эта установка заняла примерно столько же, сколько на подобный компьютер ставится какая-нибудь windows xp, особенно через DOS. Зато там после установки только paint и косынка, а здесь - всего и много!

$ vrms
No non-free packages installed on deb4cd! rms would be proud.


Вывод
-----

Одинадцать дисков с софтом, фантастика! Столько всего! С таким набором не стыдно идти в гости туда, где есть старые компьютеры. Но не покидает ощущение, что самое интересное осталось на остальных десяти дисках. :) Когда-нибудь я запишу их все. И боюсь представить, как будет выглядеть установка в этом случае.

Сейчас запакую это письмо в бумажный конверт и отправлю почтой (бумажной) на ближайшую станцию idec. Жизнь без сети есть!

# браузеры на webkit больше не работают на p3
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-21 14:19:00


Теперь окончательно всё. Если раньше что-то где-то как-то можно было (кстати, самодельный браузер на вебките в дистрибутиве slitaz linux довольно неплохо работает с современным вебом на p3 со 192 мб памяти), то теперь в OpenBSD 6.8 любой вебкитный легковесный браузер (luakit, vimb, surf, midori) пишет Illegal instruction.

Seamonkey (2.49.5) всё ещё работает. Медленно, конечно, но lor загрузило, даже с рекламой. :)

# поставил wifi на omnibook 6100
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-21 13:28:43


Странно, но в omnibook 6100 почему-то вообще не реагирует на pcmcia, в любой ОС. Обычно, если даже что-то не работает в pcmcia, оно шлёт ошибки pcmcia, а тут везде - полный молчок.

Зато, что я вообще вижу впервые на ноутбуках, тут два minipci-слота. В первом, вероятно, стоит комбо-карта, а вот второй - пустой. У меня валялось две minipci wifi, ipw2200 и ti ac100 или как-то так. оба требуют firmware (я без firmware только ralink 2500 да ath5k в пост-madwifi-йную эру помню).

acx у меня в OpenBSD сыпал какими-то ошибками и не хотел работать, да и вообще какой-то он весь ржавый, сколько ему лет и зим не припомнят даже сами сторожилы. Вставил ipw. Поскольку антеннка у меня одна, а гнёзд под неё два, Main и AUX, вставил в Main. Всё это как-то затрамбовал в отверстие для слота, кое-как закрутил... вуаля, wifi работает даже в Debian Etch 4 (когда поставил прошивки из lenny). В OpenBSD тоже работает, естественно - я сначала на OpenBSD тестил. Не знаю, медленная или быстрая связь, но для текущих задач этого компьютера хватает :)

# Plan 9: экстремальный KISS #2
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-21 11:15:01


--------
from: hugeping
date: (21/10/20 09:07 GMT)
echo: std.hugeping
idec: ii://RgnPhsdf1I2MtQcMbZds
--------

Постепенно осваиваюсь в 9front. Стало понятно, что кое-где есть неточности в предыдущей статье. Но не ошибается только тот, кто ничего не делает! Так что продолжу свой цикл статей про жизнь в форке Plan 9 -- 9front.

http://hugeping.tk/lib/uploads/acme-mail.png

# Простота кода

Мне не повезло. На eeepc 1000px не работал ни wifi ни ethernet. Поэтому мне пришлось портировать драйверы alc и athn с OpenBSD. В случае athn, для скорости, я перенёс только код для своей карты AR2427. Все наработки по Plan9 я выкладываю сюда: https://github.com/gl00my/plan9hacks

Я понимаю, что этот путь доступен не для всех, но хочу отдельно заострить внимание на простоте кода Plan9. Там, где в Linux/OpenBSD написано 10 строк, в Plan9 будет одна.

OpenBSD:
	/*
	 * Create DMA stuffs for TX ring
	 */
	error = bus_dmamap_create(sc->sc_dmat, ALC_TX_RING_SZ, 1,
	    ALC_TX_RING_SZ, 0, BUS_DMA_NOWAIT, &sc->alc_cdata.alc_tx_ring_map);
	if (error)
		return (ENOBUFS);

	/* Allocate DMA'able memory for TX ring */
	error = bus_dmamem_alloc(sc->sc_dmat, ALC_TX_RING_SZ,
	    ETHER_ALIGN, 0, &sc->alc_rdata.alc_tx_ring_seg, 1,
	    &nsegs, BUS_DMA_NOWAIT | BUS_DMA_ZERO);
	if (error) {
		printf("%s: could not allocate DMA'able memory for Tx ring.\n",
		    sc->sc_dev.dv_xname);
		return error;
	}

	error = bus_dmamem_map(sc->sc_dmat, &sc->alc_rdata.alc_tx_ring_seg,
	    nsegs, ALC_TX_RING_SZ, (caddr_t *)&sc->alc_rdata.alc_tx_ring,
	    BUS_DMA_NOWAIT);
	if (error)
		return (ENOBUFS);

Linux:
	alx->descmem.virt = dma_zalloc_coherent(&alx->hw.pdev->dev,
						alx->descmem.size,
						&alx->descmem.dma,
						GFP_KERNEL);

9front:
        ctlr->tx_ring = mallocalign(sizeof(TxDesc) * DSCN, 8, 0, 0);

А вот ещё один очень наглядный пример из ACPI.

Linux:
	args[0] =
	    acpi_ut_create_integer_object((u64)region_obj->region.space_id);
	if (!args[0]) {
		status = AE_NO_MEMORY;
		goto cleanup1;
	}

	args[1] = acpi_ut_create_integer_object((u64)function);
	if (!args[1]) {
		status = AE_NO_MEMORY;
		goto cleanup2;
	}

	args[2] = NULL;		/* Terminate list */

	/* Execute the method, no return value */

	ACPI_DEBUG_EXEC(acpi_ut_display_init_pathname
			(ACPI_TYPE_METHOD, info->prefix_node, NULL));

	status = acpi_ns_evaluate(info);
	acpi_ut_remove_reference(args[1]);

9front:
	p = amlwalk(dot, "^_REG");
	if (p != nil) {
		amleval(p, "ii", 0x3, 1, nil);
	}
Это не шутка, это эквивалентный код. Код из 9front это мой код, который внесён в 9front, который я писал изучая аналогичный код Linux.

Конечно, с одной стороны можно сказать, что это следствие примитивности, но не только. Весь код системы следует этой идее -- не усложнять!

Немного отвлекаясь, хочу рассказать, что похожие эмоции я испытал, когда смотрел код утилиты cat одной из ранних версий Unix. Исходный код делал именно то, что и должна делать утилита cat. Не больше и не меньше. Сегодня же, можно посмотреть на https://www.gnu.org/software/hello/ чтобы убедиться, насколько технологии переусложнены. Кто-то скажет, что это неизбежно. У нас появились локали, gettext, разные варианты системных вызовов и так далее... Всё это, конечно, так. Но... Как программисту, мне хочется спросить -- адекватна ли цена? В общем, архитектурная простота Plan9 сквозит во всём. Plan9 -- не продукт.

Итак, если вы программист (на C) -- проблем с доработками кода не будет. Кодовая база небольшая, доступна в /sys/src из коробки и очень быстро собирается/обновляется по mercurial даже на eeepc. C компилятор (вернее, даже серия компиляторов для разных архитектур) в Plan9 очень быстрый! Я так понимаю, написан он Кен Томпсоном. Система mk (аналог make) -- тоже очень быстрая и лаконичная. Ну, давайте что-нибудь соберём?

# Выход в сеть

Если у вас qemu установка, то сеть скорее всего просто работает. Попробуйте:

cat /net/ndb
ip/ping ya.ru

Я поднимаю wifi руками, скриптом. Мне так удобнее. Делается это очень просто:

bind -a '#l1' /net # l1 это моя wifi карта, cat /dev/kmesg
aux/wpa -s ACCESS_POINT -p /net/ether1 # ether1 моя wifi карта
ip/ipconfig ether /net/ether1 # dhcp

Как посмотреть доступные точки доступа?

cat /dev/ether1/ifstats

На самом деле bind '#l1' я делаю в lib/profile, до старта rio. Помните? У каждого процесса своё дерево файловой системы. А так, все процессы в rio будут наследовать его и /dev/ether1 станет доступным везде.

Дальше, разберётесь. :)

# git/mercurial

В 9front уже входит mercural. Давайте воспользуемся им, чтобы забрать проект 9front ports, там есть много чего полезного. Открываем окно rio. (Или запускаем win в acme).

cd /sys/
hg clone http://code.9front.org/hg/ports
cd 9ports/dev-vcs/git9
mk install

Теперь у нас есть git! На самом деле, есть второй способ сделать это, подмонтировав к себе один из сетевых ресурсов по 9p, например 9front.

9fs 9front
cd /n/extra
lc

Здесь вы найдёте git9.tgz, который можно распаковать и собрать. Для тренировки (и пользы!) предлагаю собрать irc7.tgz из extra. Скопировать себе в $home, распаковать, собрать (mk install) и зайти на канал #instead сервера irc.freenode.net.

Реализация git своя. Конечно, в виде файловой системы. :) Давайте заберём какой-нибудь проект по git. Я предлагаю попробовать собрать браузер netsutf.

cd
mkdir Devel
cd Devel
git/clone https://github.com/netsurf-plan9/nsport
git/clone -- это не опечатка! lc /bin/git/ да...

Ох, чуть не забыл. Все пароли (от ssh, http, wpa, от _всего_) хранит специальная служба factotum! Вы можете добавлять в неё свои пароли/ключи при запуске, чтобы не вводить пароли руками. Я делаю это через скрипт из lib/profile, который читает файлик и добавляет пароли в factotum. Это небезопасно, т.к. мой файлик -- открытый. Для безопасного способа смотрим man secstore.

Пример добавления пароля github:
echo 'key proto=pass realm=GitHub server=github.com service=http user=gl00my !password=password' > /mnt/factotum/ctl

Для сборки netsurf нужно следовать инструкциям: https://github.com/netsurf-plan9/nsport

Но, не буду разжёвывать и лишать вас радости исследования. :)

В портах вы найдёте golang свежей версии. Полезная в быту вещь.

// На данный момент, кстати, он собирается только если закомментировать строку CLEANCOMMAND в mkfile.

На eeepc мне удалось собрать только go14 (мало памяти), но в qemu установке собрал современную версию. Так что можно собирать софт для eeepc в qemu.

# Браузеры

"Современных" браузеров в 9front нет. Для многих "пользователей" это невыносимая потеря. А для меня это делает 9front настоящей отдушиной. В этой системе нет окна в зашлакованный современный веб! По-моему, это даже здорово.

Если серъёзно, у меня уже был опыт использования урезанных браузеров, так что был подготовлен. Для государственных сайтов и банков придётся использовать другие ОС или запускать в виртуалке (man vmx) OpenBSD. На eeepc я этого не делал. Ну, конечно, можно ещё по vnc ходить куда-то...

Итак, браузеры которые я пробовал.

## abaco

Канонический plan9 браузер. Если честно, чисто эстетически, очень понравился! Но, увы, в 9front он падуч. И, кажется, не поддерживает png. Короче, не рекомендую.

## mothra

Сначала не понравился. Но потом, оказалось, что он удобен. И есть у него кое-какие биндинги на клавиши, что удобно. Например: a ввод - однооконный режим. m ввод - режим скачивания (режим mothra). Выглядел он страшненько в основном из-за русских символов. Но мы уже умеем патчить код:

cd /sys/src/cmd/mothra
acme rdhtml.c
# меняем шрифты, я рекомендую везде dejavusans(it,bd)/unicode.12 и .14
mk install

Мой вариант изменений лежит на https://github.com/gl00my/plan9hacks

Короче, можно пользоваться.

http://hugeping.tk/lib/uploads/opennet-mothra.png

## netsurf

Работает, только для показа картинок нужно раскомментировать jpeg/png библиотеки в mkfile/mkfile.native и добавить флаги -DWITH_PNG -DWITH_JPEG.

Рендерит странички неплохо, но нет многих удобных фич mothra. Подходит для просмотра сайтов, с которыми не справилась mothra.

# Plan 9: экстремальный KISS #1
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-21 11:13:00


--------
from: hugeping
date: (10/10/20 15:02 GMT)
echo: std.hugeping
idec: ii://TF9RuFRon9u7ps9Owka3
--------

# Введение

Про операционную систему Plan 9 я слышал не раз. Но всё это время, мой интерес не переходил в активную фазу, ограничиваясь пассивным любопытством и чтением статей. Так продолжалось до настоящего момента, пока я всё-таки не попался в сети проекта http://9front.org

Я не буду здесь писать энциклопедическую информацию о Plan 9. Но если совсем кратко, то создатели Unix в лице Bell Labs (среди сотрудников которой числятся Кен Томпсон, Деннис Ритчи, Роб Пайк) однажды взяли и решили сделать _правильную_ ОС, без оглядки на проклятый Legacy Unix, в том числе и POSIX. Доведя идею "всё есть файл" до абсолюта и стерев грань между локальными и удалёнными файловыми системами. В качестве примера: tcp/ip это тоже файловая система. Поэтому, если мы подключим к себе удалённую ФС /net, получится что-то вроде NAT. Вот так просто и естественно. В общем, получилась бескомпромиссная, распределённая и при этом крайне простая и красивая ОС. Которая (с некоторыми оговорками) оказалась ненужной. Потому что существующие решения просто работают, и миру этого достаточно...

Но ребята из проекта http://9front.org форкнули Plan 9 и начали делать патчи, которые в том числе помогают Plan 9 работать на современном оборудовании. Итак, 9front можно сказать, это Plan 9, который лучше всего годится для того, чтобы поставить его на железо.

http://hugeping.tk/lib/uploads/mothra.png

На данный момент у меня есть работающий 9front на eeepc 1000px в котором можно даже что-то делать. До этого, я около полугода запускал 9front в qemu и читал различную информацию. И, честно говоря, мало что понимал. Я гробил файловые системы, не мог отредактировать файл и вообще... Не понимал ничего. В общем, я решил начать цикл статей о Plan 9, в которых я буду рассказывать о своём субъективном опыте. Конечно, я не знаток этой ОС, поэтому если кто-то может -- поправляйте меня в комментариях.

# Первые шаги

Итак, начнём.

Я начинал знакомство с ОС с чтения руководства dash с http://9front.org Руководство написано с юмором, с его помощью вы можете попробовать поставить 9front в qemu или на реальное железо (чего я бы пока не делал).

И вот, мы ставим ОС, отвечая на странные вопросы инсталлятора, стартуем... Иии... Что это?

Забудьте про всё, что вы знали. Здесь другой мир. Он прекрасен, но чтобы это понять, вам придётся пойти по пути аскетики и самоотречения. :) Шучу (почти). Для работы с Plan 9 нужна графика и мышь. Без этого -- просто никак. Это может быть ударом для вас. Поверьте, я сам пользуюсь emacs и помню кучу клавиатурных комбинаций. Здесь вам это не понадобится. Пройдёт немало времени, пока вы не привыкните к такому положению вещей и не начнёте получать от этого своеобразное удовольствие (ясность сознания). :)

На ноуте, в принципе, можно обойтись тачпадом. Короче, нужны три кнопки мыши. С случае тачпада это может быть тап 1, 2 или 3-мя пальцами. Или (в случае физических кнопок): 1я, 2я и 2я кнопка вместе с shift.

После загрузки вы увидите нечто, напоминающее терминал. Не спешите радоваться! Это не терминал, к которому вы привыкли. Ладно, наберите ls нажмите ввод. Ну, хоть что-то известное! Правда, вывод какой-то совсем уж аскетичный...

В общем, в этом окне (новые окна вы можете создавать нажав 2ю кнопку мыши и выбрав в меню New) вы можете что-то запускать. Если вы запускаете графическую программу, то её содержимое заменит собой содержимое окна. Это не то, к чему вы привыкли, но это удобно. Чем-то напоминает тайловые оконные менеджеры, когда вы заранее создаёте фреймы. Но пока просто наберите man rio и почитайте, как работать в этом странном "оконном менеджере".

Окно не скроллируется по умолчанию на новый вывод. Вы можете изменить это поведение нажав 3-ю кнопку мыши и выбрав scroll. То, что окно не скроллируется, минимизирует необходимось использования пейджера. Вы просто скроллите кнопками вверх/вниз. Хотя, пейджер всё-таки есть и называется 'p'.

Про историю команд -- забудьте. Клавиши вверх/вниз всегда скроллят окно. Перемещаться по тексту и по истории ими нельзя.

Текст в окне - это просто текст. Вы можете менять его, копировать и вставлять. Таким образом, можно воспринимать его как историю команд. Выбираете мышкой и делаете send. Команда выполнится.

Некоторые хоткеи всё-таки есть, и они -- на вес золота:

- C-a, C-e -- в начало и в конец строки;
- C-u -- стереть всё слева от курсора;
- C-f -- автодополнение путей в файловой системе (tab -- забудьте);
- C-b -- прыжок к приглашению;
- del - аналог C-c в Unix.

Ещё нюанс. Допустим, вы написали:

ls /usrr/glenda

Заметили, что опечатались. Вернулись курсором к r и стёрли его, нажали ввод.

Упс!

ls /usr
/glenda

При выполнении команд, курсор должен находиться в конце ввода! А так, выполнилась команда ls /usr. Используйте C-e.

К этому нужно привыкнуть и это непросто. Все рефлексы заточены на другое. В современных Linux командная строка обвешена дополнениями и клавиатурными сокращениями, но здесь всё не так. Что взамен? Простота! Нет никакого терминала, есть просто поток текста. И всё. Черные буквы на светлом фоне. Всё есть текст.

# Ещё несколько советов

- Используйте lc вместо ls. Вывод lc информативней. Например, после имён каталогов ставится /;

- Копирование в буфер обмена здесь называется snarf;

- Домашний каталог это $home или /usr/glenda в установке по умолчанию;

- Когда вы пишете что-то вроде grep, не надо заключать строки в "". Тогда в ввод эти кавычки и уйдут. Тут вам не bash, тут rc. У него совсем другие (более простые) правила эскейпинга. Можете использовать одинарные кавычки, если нужно. Например: g 'Kcaps' /sys/include/*. Да, g -- это рекурсивный grep;

- Некоторые утилиты расположены в подкаталогах. Например, ip/ping. Что это значит? Что выполняемый файл лежит в /bin/ip/ping;

- Посмотреть свой ip адрес: cat /net/ndb;

- Используйте walk | grep как аналог find;

- Скачать что-то (man hget);

- Смотреть pdf или картинки (man page);

- Браузеры: mothra, abaco (довольно падучий), можно собрать netsurf. Об этом будет другая статья;

- Для переключения раскладки можно запустить: kbmap /sys/lib/kbmap/us /sys/lib/kbmap/ru и переключать мышкой. Чтобы сделать переключение с клавиатуры, можно немного поменять rio, об этом -- в другой раз;

- Копировать каталоги здесь можно с помощью dircp, cp -R -- нет;

- fshalt -r -- перезагрузка;

- fshalt -- выключение;

- В домашнем каталоге есть bin/rc каталог. Здесь можете писать свои скрипты и они будут доступны для запуска. На самом деле, реализовано это за счёт bind. Сейчас поясню...

# Bind

В домашнем каталоге, lib/profile есть файл - который можно назвать аналогом .profile. Сделайте его cat и посмотрите. Видите?

bind -a $home/bin/rc /bin

bind позволяет делать объединение файловых систем. -a -- добавить файловую систему после. В данном случае, мы добавили bin/rc в пространство /bin. Короче, все наши скрипты из bin/rc видны в /bin. (man bind)

Следующая строка, заметьте, использует $cputype. Дело в том, что кросскомпиляция есть из коробки, и есть разные компиляторы (man 6c). И разные каталоги для бинарников для разных архитектур.

Интересно ещё вот что, если вы что-то забиндите в окне rio, а потом запустите другое окно -- не удивляйтесь, что там этого не будет. Пространство файловой системы наследуется процессами. Поэтому в новом окне будет пространство rio. То-есть, каждый процесс может настраивать свое файловое пространство как угодно.

Поэтому в profile стартует webfs (это реалиазция http протоколов в виде файловой системы -- ну потому что здесь _всё_ реализовано в виде файловой системы) -- тогда все процессы из rio (который тоже стартует из profile) смогут работать с вебом.

То, что пространство ФС персональное для каждого процесса имеет интересный практический плюс. Например, смонтировали вы флешку, чтобы отмонтировать её -- вам достаточно прибить окно. Ну или все окна, в которых вы её смонтировали. Хотя команда unmount тоже есть (обратите внимание, не umount, а unmount).

Из profile стартует графическая система rio с флагом -i riostart.

# riostart

Делаем cat /bin/riostart.

Это вот и есть стартовый скрипт rio. Можете кастомизировать под себя. Например, запустив kbmap с нужными параметрами (переключалка раскладки клавиатуры). Упс... Мы ещё не умеем редактировать файлы.

# Редактируем временную зону в acme

Давайте начнём учиться редактировать с того, что выставим нормальную временную зону. Дело в том, что в 9front нет Российских временных зон из коробки. Но это не беда. Ведь всё есть файл!

Пишем:

acme /adm/timezone/local

Открылся редактор acme. В нём -- ваша текущая временная зона. На самом деле acme это не только редактор, это среда. Что-то вроде emacs в Plan 9. Детище Роба Пайка, который, наверняка, писал golang именно в нём. Но только это KISS emacs. :) Я не способен сейчас научить вас работать в acme (тем более, что я сам только учусь), но кратко опишу его принципы.

В acme мы имеем что-то вроде тайлового оконного менеджера. Можем создавать столбцы (3-кнопка на Newcol) и делить их на части (3-кнопка на New).

В acme тоже "всё есть текст". Это значит, что вы можете редактировать зону меню так же, как и текст. Пока не делайте этого, просто не пугайтесь если вдруг сотрёте кнопку Newcol. Просто напишите её там, где вам удобно. :)

Например, добавьте в зоне меню команду win. Просто текст win. 3-кнопкой нажмите на win и запустите "терминальное" окно внутри acme. Другие полезные команды смотрите в man acme. Вы можете писать скрипты, которые будут командами. Скрипты могут выводить текст и потреблять текст из редакторы. Таким образом, можно сделать, например, команду indent параграфа. Кроме того, acme поддерживает файловую систему (да-да, как и всё тут!), с помощью которой можно управлять редактором. Так что в acme можно читать почту и делать что-то ещё, что вам понадобится, просто дописывая нужную вам функциональность.

Поиск делается дописыванием текста после меню | Look, выделением этого текста и 3-кнопка. Так же можно просто выделять текст и жать 2-кнопку.

Открыть файл по номеру строки: добавьте к имени файла в меню :число, выберете всё это и нажмите 2-кнопку.

Режим авто-отступа есть. Он включается Indent on (да, да - допишите это в меню и выполните).

Итак, у вас открыт редактор на файле local. Надо стереть содержимое файла. Стрелочки? СТРЕЛОЧКИ СКРОЛЛЯТ ТЕКСТ! shift-стрелочки? Нет! Выделяем текст мышкой и нажимаем backspace!

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

На самом деле, это жутко раздражает по началу. Но потом, я стал замечать за собой некоторую дисциплину. Всё не так плохо, сознание разгружается. Просто редактируем текст по правилам этого мира. Сейчас, по прошествии времени, я даже нахожу в этом какое-то удовольствие и отдушину (после emacs).

Да! Подсветки синтаксиса нет. Робу не нравится смотреть на код, как на новогоднюю ёлку.

Итак, вернёмся к временной зоне. Для московского времени я оставил одну строку:

MSK 10800 MSK 10800

Это временная зона GMT+3 (в секундах). Зимнее и летнее время.

Сохраняем файл. Ах, да... 3-я кнопка мыши по Put. Если Put пропал - вы сохранили файл. Выйдете из редактора самостоятельно.

Но это ещё не всё! Если у вас в BIOS время настроено в UTC, то надо сделать следующее:

acme /rc/bin/termrc.local

Впишите строку:

TIMESYNCARGS=(-ra1000000)

И сохраните. Ну или вы могли бы убрать параметр L из TIMESYNCARGS в файле /bin/termrc в самом начале, но это хуже. /bin/termrc запускает termrc.local.

/bin/termrc - это скрипт, который стартует вашу терминальную станцию.

# Немного об архитектуре

То, что вы поставили себе в qemu (или на ноутбук?), в терминах Plan 9 называется терминальной станцией. Дело в том, что Plan 9 это сетевая система, где предусмотрены разные типы станций: терминал, файловый сервер, cpu-сервер итд. Границы между ними стёрты с помощью сетевой файловой системы 9p. Теорию почитайте тут: http://doc.cat-v.org/plan_9/4th_edition/papers/ А в 9front вы получаете как бы всё в одном: терминальная станция, файловый сервер и т.д. Но в теории, это всё можно настроить на отдельных машинах. И именно так Plan-9 использовалась в Bell-Labs.

# Файловая система

По умолчанию предлагается использовать CWFS.

"Файловая система" тут тоже реализована как служба-процесс. К которому можно подсоединиться и что-то сделать. Например, подключение к консоли:

con -C /srv/cwfs.ctl
help

Можете проверить fscache командой check.

CWFS это на самом деле интересная файловая система. Точнее -- файловый сервер. Он состоит как бы из двух областей. Есть fscache - в котором и идёт постоянная работа. И есть fsworm (Write Once Read Many) - это место куда архивируются данные и никогда не стираются. То-есть, когда-то ночью грязные блоки fscache сбрасываются в fsworm. Потом снова работаем с fscache. Сброс грязных блоков - это команда dump. Вы можете выполнять её руками через консоль: con -C /srv/cwfs.ctl, тем самым вы освобождаете место в кеше!

fsworm позволяет посмотреть любой слепок из тех, когда были сделаны dump. Смонтировать их можно так:

9fs dump

> Не выключайте питание во время дампа!

По началу я никак не мог понять, почему у меня кончается место на диске! Оказывается, забивался сравнительно небольшой fscache. Надо было бы сдампить его в fsworm. Конечно, cwfs на нетбуке это немного странно. :) Что я буду делать, когда забью fsworm? Вероятно, пересоздам его заново, скопировав последнее состояние в fscache?

# Редактирование plan9.ini

После первой установки, скорее всего вам понадобится поменять что-то в параметрах загрузчика. (man plan9.ini) Например, выставить более комфортное разрешение vesa. Включить acpi, поменять тип мыши и др.

Для этого надо подмонтировать специальный fat раздел:

9fs 9fat
acme /n/9fat/plan9.ini

Помните? Открывайте редактор из этого же окна. В другом окне файловая система не будет подмонтирована. По началу это сбивает с толку.

На этом же разделе, кстати, находится ядро. Но о компиляции ядра мы поговорим в другой раз.

# Доступ к файловой системе по сети из Linux

acme $home/bin/rc/export
Содержимое файла:
#!/bin/rc
aux/listen1 -t 'tcp!*!564' /bin/exportfs -r /

Запустите скрипт в окне и монтируйте с Linux:

9pfuse <адрес>:564 <точка монтирования>

Исходники системы находятся в /sys/src/ :)

# Заключение

К сожалению, вводная статья получилась сумбурной. Очень много информации и всё очень связано: начинаешь что-то писать, сразу понимаешь, что надо рассказать сначала о другом компоненте. Берёшь другое -- снова та же история.

Погружение в Plan 9 для меня было непростым процессом, и я сам ещё нахожусь в самом начале пути. Но в следующих статьях я попробую писать более конкретно, сосредоточившись на конкретных практических задачах.

Примерный план статей такой:

- Собираем netsurf и irc (git, hg, порты, golang);
- Изменяем исходные коды системы (смена раскладки клавиатуры);
- Музыка (и видео???);
- Мои патчи: ethernet alc, ethernet athn, acpi, vgadb;
- Сравнение исходного кода ядер: openbsd, Linux, plan9.

Если что, пишите свои предложения/вопросы.



P.S. Edited: 2020-10-11 10:28:47

# obsd-p2-cd-6.8-i386.iso
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-20 15:23:21


Представляю свой традиционный неофициальный CD для офлайнового использования OpenBSD 6.8 на системах класса Pentium II

Диск не содержит многопроцессорного ядра bsd.mp и набора компиляторов comp68.tgz

Зато на диске представлены некоторые прошивки и набор пакетов для нетребовательного десктопа или домашнего сервера на базе систем P2/P3

http://d.51t.ru/pub/obsd-p2-cd-6.8-i386.iso

# links+ и librsvg
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-20 01:25:06


Смотрю, у зависимости links+ в графике - librsvg, которая занимает 55 мб в сжатом виде, и более 200 - в распакованном. Я всегда на свои CD помещаю links+, отличный браузер для старых пк, который в прошлом немало меня спасал. Этот CD (который скоро выйдет) будет первым, на котором графической версии не будет.

Написал маинтайнеру о том, нужна ли эта зависимость. Он обещал подумать.

# про Pentium II и его Celeron
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-19 08:56:00


Я в своих статьях несколько ошибся, называя процессор P2-400 Celeron-ом, хоть
OpenBSD его так упорно и называет, Debian его называет правильно, Mobile
Pentium II. У Celeron нет кэша 256 кб, как у моей модели.

Сразу же услышал несколько версий о том, что Celeron сильно уступал Pentium II.

Это верно лишь отчасти, когда мы ведём разговор о первых Celeron, которые были
вообще без кэша. Но про эти процессоры быстро все забыли. И, конечно, никаких
400 мгц у них и близко не было, только 266 и 300 мгц. Также, благодаря
отсутствию кэша, эти модели хорошо разгонялись (в тесте ниже 266 разогнан до
400, что дало прирост кадров в квейке с 27 до 39, а в unreal - с 15 до 23)

Потом вышел Celeron на ядре Mendocino, со 128 кб кэша. В отличие от Pentium II,
кэш там был на ядре и работал быстрее, чем на P2. Поэтому по результатам тестов
аналогичные процессоры на P2 и Celeron отличались мало.

Вот, например, тестирование: https://www.ixbt.com/cpu/mendocino.html

Немного цитат оттуда:

... 24 августа Intel представил еще два процессора из семейства Celeron — 300A и 333, которые, по сути, Celeronами не являются. Новые процессоры хоть и выполнены по 0.25 мкм технологии, но содержат новое ядро Mendocino (читается — мендосино), в котором интегрирован кеш второго уровня размером 128 Кбайт. Как известно, стандартный процессор Pentium II содержит 512 Кбайт кеша, но этот кеш находится вне ядра и работает на половинной частоте процессора. В Mendocino же за счет того, что L2 кеш расположен на одном куске кремния вместе с процессором, его частота повышена до полной частоты процессора. Такое решение должно обеспечить значительный прирост производительности.

... Celeron 333 показал производительность, сравнимую с Pentium II 333, а в тесте по игре Unreal даже обогнал его. Это говорит о том, что 128-килобайтного кеша достаточно практически для всех приложений. Однако то, что по WinBench98 CPUMark32 Pentium II 333 обошел Celeron 333 на более чем 20%, говорит о том, что все-таки существуют приложения, где 128 Кбайт кеша недостаточно.

... мы пытались найти среди приложений, активно использующих память, программы работающие на новом Celeron значительно медленнее, чем на Pentium II. Была проверена скорость конвертации AVI-файла MPEG XingMPEG Encoderом версии 2.0 и скорость архивирования программой WinRAR 2.04 c размером словаря 1024 Кбайта. Тестирование показало, что преобразование в MPEG выполняется на Celeron 333 на 2% медленне, чем на Pentium II 333, а архивация — на 4% быстрее. Таким образом, если реальные приложения, более чувствительные к размеру кеша, чем к его быстродействию и существуют, то круг их крайне ограничен и страшно далеки они от народа. Можно уверенно утверждать, что производительность ядра Mendocino сравнима с Deschutes и в офисных приложениях, и в играх.

Что касается мобильных Pentium II, то у них уже 256 кб кэша на ядре, и они
считаются самыми быстрыми в линейке Pentium II.

# Re: Старое железо. Заметка №2: OpenBSD 6.8
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-19 08:10:20


> Круто. Обзоры были? Или будут?

Пока написал вот это: ii://TF9RuFRon9u7ps9Owka3

Правда, по мере изучения уже вижу там ляпы. Хочу написать ещё несколько статей.

> А golang поддерживает этот процессор?

Старая версия собралась, по крайней мере. Та, что ещё на си. (1.04)

> Странно. gtk2-версии вообще работали прилично.

Вот и я не понял, что это было. В любом случае, рад Plan'у. Очень интересная система. :) В 9front, кстати, и питон есть (какой-то старый. правда).

# Старое железо. Заметка №4: iDEC
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-19 03:00:39


= Старое железо. Заметка №4: iDEC
51t.ru
2020-10-19


== Фидо 21 века для компьютеров 20-го

=== Что?

Не знаю, как это правильно пишется, но мне нравится писать iDEC. Пусть думают,
что это придумали в Apple. Лишний интерес не повредит. Или пусть думают, что
это гламурный DEC. А что, модный PDP-11 для домохозяек - это красиво. Как раз
между стиральной и посудомоечной машиной поставить.

Есть такая проблема - некуда сходить по http. Конечно, есть мнение, что и по
https сходить-то особо некуда, лучше вообще дома сидеть и чай пить. Но по
http некуда сходить, даже если очень хочется.

Почему-то появилась мода насильно переводить пользователя на https, даже если
он об этом не просил. Всё для его же блага. Я почему-то думал, что это
пользователь должен сам выбирать, как ему посещать сайты: оказывается, нет.

В любом случае, на сайте http://oldpc.51t.ru никакого https нет. Там будет
собираться вся информация и все источники контента для старых компьютеров.

А если ещё и хочется пообщаться в какой-нибудь живой сети?

И тут гражданин с заднего ряда обязательно спросит "постойте, ведь есть фидо".

Хорошо, настройте-ка bink + тоссер + golded на OpenBSD.

Хорошо, мы не любим OpenBSD, это же самое на старом linux для современных реалий

Хорошо, берём готовый фидо-пакет, учим систему работать с кодировкой ibm866,
получаем пойнта, и у нас фидо, самое настоящее, оригинальное.

Но много ещё вопросов: что делать с бинарными файлами (вместо обычного
текста), что если хочется получать сообщения сразу на несколько систем (в fido
принцип outbound, забрал то, что на тебя лежит, один раз, и оно больше на тебя
не лежит), как посмотреть старые сообщения. И, конечно, как это всё настраивать.

Люди, которые так говорят, не хотят получать сообщения. Они хотят настраивать
фидо. Тоже интересное занятие, но здесь не про это.

И пока гражданин настраивает своё фидо, продолжим. Возьмём вместо майлеров,
тоссеров и прочих глиссеров обычный python2.4-2.7 (либо python 3 для тех, кто
более современен), и продолжим.

=== Что такое iDEC?

Упростим до предела.

По сути, это групповой мессенджер. Такой телеграм для домохозяек с гламурным
PDP-11 или хотя бы Pentium II.

Что лежит в основе мессенджера? Переписка.

Но что такое переписка? "Гы, лол" из телеграма - это переписка. И сообщения,
которые мчались на каретах неделями, это тоже переписка.

Только это разные жанры переписок. Никто не посылал "гылол" неделями на каретах.

В общем, idec это переписка обстоятельная. Когда можно спокойно подумать,
поразмышлять. Можно даже сохранить черновик, попить чаю, подумать ещё раз, и
только потом отправить. Пусть не на карете, но сообщение по роутингу может
пройти путь через несколько почтовых станций, давая на каждой лошадям
отдохнуть (это называется интервал поллинга).

Поэтому я люблю текстовый клиент. Он даёт ощущение текста. Позволяет
оперировать текстовыми файлами. И только потом превращать их в сообщения. Или
не превращать. Над сообщениями телеграма думать некогда, пока вы выписываете
"милостливый государь", там ещё 15 сообщений пришло.

Кто использует P2, тот никуда не спешит. Поэтому обстоятельное общение должно
таким пользователям понравиться. Всё равно, ходить по http больше особо некуда,
а тут сообщения сами приходят. В принципе, этим сервисом можно пользоваться
даже офлайн, перекачивая бандлы хоть через дискеты, но об этом поговорим в
другой раз.

=== Что нужно

Можно использовать веб-интерфейс, если браузер позволяет.

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

Что такое эха? Это когда кричишь куда-то "э-ге-гей", и тебе отвечают. Эха
это общая тема, в которую все пишут-читают. Например, эха oldpc.51t.ru это
эха про старые компьютеры, там ещё заметки выходят. Ну, те самые, где он про
фидо врёт. Кто-то написал в эху - все увидели. Вот такой вот телеграмканал,
только без телеграма. Потому что эха.

Обычно на каждой странице каждой станции есть список эх, с сообщениями в них.

=== Эх, замечательно!

На данный момент по чистому http работают две станции:

http://hugeping.tk (на ней есть эха oldpc.51t.ru)

http://idec.spline-online.tk (на ней на текущий момент эхи нет)

Сайты прекрасно работают в Epiphany 2.14 из Debian Etch, и неплохо там смотрятся.

К сожалению, документации в виде чистого http мне найти не удалось. Думаю, в
ближайшее время я сам её переведу на http. Следите за oldpc.51t.ru, сайтом и эхой

Но для обычного общения документация не нужна. Сайты устроены довольно просто.
Пользоваться клиентами чуть сложнее, но иногда оно того стоит. Особенно, если
эта система из области Pentium 1 с 12 мб памяти: он тоже может быть полноценной
iDEC станцией, если водрузить туда систему, поддерживающую UTF-8 и python 2.4.

=== Caesium

Curses-клиент, написанный на python 3. Интерфейс напоминает старый добрый
GoldEd. Настройки и горячие клавиши описаны в Readme. Хочу лишь заметить,
что клиент ничего не будет получать, пока не будет прописана строка авторизации
в конфиг-файле (строка должна быть после нужной ноды).

Ссылка: http://oldpc.51t.ru/idec/caesium-0.4rc.tar.gz

=== ii-txt

Текстовый клиент, работающий с python 2.4, 2.5, 2.6, 2.7. Проверен на Debian
Sarge и Etch (при локали UTF-8).

Если вы думали, что caesium это текстовый клиент, то вы ошибались. Caesium это
визуальный клиент. Текстовый клиент - это когда уходят и приходят текстовые
файлы, а вы провожаете их взглядом. Интерфейсом текстового клиента являются
просмотрщики и редакторы пользователя: для меня это Midnight Commander.

Для написания и публикации статей это очень удобно: я пишу статью в текстовом
файле, а потом лишь добавляю две строчки заголовка ИМЯ и ТЕМА, и копирую в
директорию нужной эхи под именем new. После чего жму на send.sh, и файл улетает.

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

Ссылка: http://oldpc.51t.ru/idec/ii-txt-0.8.tar.gz

=== Что почитать?

Ну, главная эха для всех старокомпьютерщиков, их центр притяжения - это,
конечно, oldpc.51t.ru. Там и новые, вернее, Старые Записки выходят, там и
общение по теме, и другие сообщения. На станции hugeping.tk эха доступна и
по rss, так что можно читать её и из любого rss-клиента:

http://hugeping.tk/echo/oldpc.51t.ru/rss

Также среди тематических эх: текстовые (но с графикой, музыкой и прочими
спецэффектами) приключения Instead (хорошая тема для старых компьютеров,
это надо разобрать отдельно) в эхах группы std.*, linux в эхе linux.14,
болталка в эхе pipe.2032. Смотрите эхи на станциях, выбирайте и разбирайтесь.

Как же будет приятно, расположившись за своим тёплым и прекрасным Pentium II,
да даже и Pentium I (лишь бы памяти хватило на установку старого OpenBSD или
Debian), погрузиться в мир вашего нового iDEC: сети 21 века, которая отлично
поддерживает компьютеры века 20-го.

=== Все здесь

Конечно же, это сообщение написано сразу в эху, и только потом попадёт на
сайт (в html, t2t, adoc). Написано оно в mcedit в Debian Etch, на ноутбуке
P-III, с прекрасной удобной клавиатурой (удобнее современных), отправлено
клиентом ii-txt. Я тут, буду писать сообщения и отвечать на вопросы.

Нам, старичкам, нужно держаться вместе. Нас дискриминируют, у нас забрали http,
нам желают скорейшего забвения, но у нас есть ещё то, что нас объединяет.

И если твой компьютер стар - здесь этого не стесняются, здесь этим гордятся!

http://hugeping.tk/oldpc.51t.ru/

# Re: Старое железо. Заметка №2: OpenBSD 6.8
oldpc.51t.ru
oldpc(ping,11) — hugeping
2020-10-19 02:51:23


> В итоге, я поставил на него 9front (форк Plan9). Правда, чтобы всё заработало, мне пришлось портировать wifi/ethernet драйверы из OpenBSD и ещё попатчить кое-что по мелочи. Зато теперь, нетбуком действительно интересно пользоваться! И памяти хватает! (Хотя, на сборку последних версий golang её не хватило).

Круто. Обзоры были? Или будут?

А golang поддерживает этот процессор?

> Например, netsurf (gtk версия) сразу пожаловался на нехватку памяти. Скорее всего, потому что был вариант с gtk. Прикол в том, что на этом же нетбуке когда-то крутилась убунта, и не жаловалась.

Странно. gtk2-версии вообще работали прилично. А вот gtk3-версия в свежем 6.8 на p400/128ram+128swap - тормозила до неюзабельности, но на память не жаловалась

# OpenBSD 6.8 released
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-19 01:15:24


Лучший друг всех старичков, OpenBSD 6.8, наконец-то выпущен.

И, наконец-то, снова с песенкой!

https://ftp.openbsd.org/pub/OpenBSD/songs/song68.ogg

Ура, товарищи!

# Re: Старое железо. Заметка №2: OpenBSD 6.8
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-18 12:39:37


По поводу разных систем на старом железе.

Есть у меня eeepc 1000px. Не сказать, что совсем старый. Atom N450, 1Гб памяти. Лет 10 ему.

После долгого перерыва, попал ко мне в руки. Пробовал там NetBSD, Haiku, OpenBSD, alpine Linux.

Haiku работала прилично. Остальные (брал текущие, последние версии) -- вроде терпимо, но только до иксов.

Например, netsurf (gtk версия) сразу пожаловался на нехватку памяти. Скорее всего, потому что был вариант с gtk. Прикол в том, что на этом же нетбуке когда-то крутилась убунта, и не жаловалась.

В итоге, я поставил на него 9front (форк Plan9). Правда, чтобы всё заработало, мне пришлось портировать wifi/ethernet драйверы из OpenBSD и ещё попатчить кое-что по мелочи. Зато теперь, нетбуком действительно интересно пользоваться! И памяти хватает! (Хотя, на сборку последних версий golang её не хватило).

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-18 11:53:46


> а так, я у себя просто грохну файл эхи и заново всё скачаю
Я отредактировал, теперь в http версии можно просто ткнуть на ссылку и скачать. А в "сырой" - base64

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
oldpc(ping,11) — hugeping
2020-10-18 10:57:57


> Сейчас это просто добавление новой версии в базу, а http морда показывает всегда новую версию.

так я и по http не вижу, чтобы наскальная живопись в файл превратилась.

а так, я у себя просто грохну файл эхи и заново всё скачаю

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-18 10:46:16


> а у сообщения id после редактирования изменится? оно ко мне новое придёт?
> я то из текстового клиента сижу :)
id не меняется и сообщение не придёт. Это, на самом деле, вопрос вообще к ii/idec - поддержка изменения сообщений. Наверное, если делать, это многое усложнит. (Надо чтобы новый id как-то ссылался на старый, может тегами?)

Сейчас это просто добавление новой версии в базу, а http морда показывает всегда новую версию.

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
oldpc(ping,11) — hugeping
2020-10-18 10:41:03


>> ага, я видел такое в описании, но подумал, что текстом каноничнее
> А, ну ок. Я на всякий случай сказал.

но файлом, наверное, лучше

а у сообщения id после редактирования изменится? оно ко мне новое придёт?
я то из текстового клиента сижу :)

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-18 10:38:55


> ага, я видел такое в описании, но подумал, что текстом каноничнее

А, ну ок. Я на всякий случай сказал.

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
oldpc(ping,11) — hugeping
2020-10-18 10:26:16


>> файл-то я у себя выложу, а вот наскальный аттач останется навсегда :)
> У меня это на отображение только влияет. Сообщение такое-же, в тело прямо внедрено base64.. Но перед ним стоит строка (тег @base64: имя файла) и нода, при показе через http(s) сделает ссылку на скачку файла прямо из тела письма, чтобы не заниматься самому декодированием. А так - то же самое сообщение, просто одну строку в тексте добавить и всё.

ага, я видел такое в описании, но подумал, что текстом каноничнее

у меня такие аттачи были ещё в самых первых версиях ноды, потом убрал

но если это будет файл со ссылкой, можно и так сделать: наверное, даже удобнее будет

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-18 10:11:46


> файл-то я у себя выложу, а вот наскальный аттач останется навсегда :)

У меня это на отображение только влияет. Сообщение такое-же, в тело прямо внедрено base64.. Но перед ним стоит строка (тег @base64: имя файла) и нода, при показе через http(s) сделает ссылку на скачку файла прямо из тела письма, чтобы не заниматься самому декодированием. А так - то же самое сообщение, просто одну строку в тексте добавить и всё.

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
oldpc(ping,11) — hugeping
2020-10-18 09:59:04


> Тут станция понимает аттачи в base64.
> Можешь отредактировать своё сообщение, и тогда по http можно будет просто скачивать этот архив.
> P.S.
> Ну или разреши мне, я сам сделаю.

это для занесения в анналы, чтобы через 50 лет археологи будущего...

как сейчас, читаешь старый лор 20-летней давности: что ведёт на лор или
заскриншочено на лоре, то сохраняется, а ссылки ведут в никуда.

файл-то я у себя выложу, а вот наскальный аттач останется навсегда :)

# Re: ii-txt-0.8.tar.gz
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-18 09:49:59


Тут станция понимает аттачи в base64.

Вот тут написано:
http://club.syscall.ru/rOf069UX8K24yAzvWa9N#rOf069UX8K24yAzvWa9N

Можешь отредактировать своё сообщение, и тогда по http можно будет просто скачивать этот архив.

P.S.
Ну или разреши мне, я сам сделаю.

# ii-txt-0.8.tar.gz
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-18 06:36:25


Версия ii-txt-0.8, архив в base64, чтобы точно не потерялся. Примерно 5кб
в виде base64, 3856 байт в виде тарбола, MD5 c21ca0f8e107cf36fac64832e313714c

ii-txt-0.8.tar.gz

# Старое железо. Заметка №3: рецензия старых статей
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-18 02:53:00


= Старое железо. Заметка №3: рецензия старых статей
51t.ru
2020-10-18


== Былое и думы

=== Введение

Во первЫх строках хочу с огорчением заметить, что ii-txt (свою версию которого
я скоро опубликую) не работает "как есть" на python 2.3: нет функции set
(которая не особо то и нужна) и по-другому сделано кодирование-декодирование
base64: то есть, портировать на 2.3 можно, но единый код уже не получится.
Впрочем, и в Sarge, и в Etch есть python 2.4, где всё отлично работает.

Посему пересел я с Cel400 на крутейший Omnibook 6100: P3-1000, 256 mb RAM,
ATI M6. OpenBSD 6.8 там тоже отлично работает, но я пересел на Debian 4.0
Etch с Gnome. Тоже всё отлично! Единственное, что меня смущает - что когда-то
в убунте 6.10 в гноме, когда я нажимал ползунок громкости на ноутбуке,
появлялся всплывающий OSD информатор, показывающий текущую громкость. А в
Etch, вышедшем только через полгода, ни-ра-бо-та-ит! Громкость-то оно меняет,
но без спецэффектов.

Но всё равно, это крутейший Gnome 2.14+2.16, где я и пишу эту заметку в mcedit.
Поскольку достучаться до своего сайта я не могу, эта заметка будет сначала
опубликована в iDEC, и только затем как-нибудь перегнана в txt2tags, asciidoc,
html и перенесена на сайт oldpc.51t.ru

По плану это должен быть выпуск про iDEC, но лучше сначала вернуться
к основам и понять, как всё начиналось.

=== oldpc как замена старому сайту про OpenBSD

Целью oldpc notes является подача более-менее свежей информации.
Причиной закрытия сайта про OpenBSD стало "батюшки, как устарело-то всё!".
А что именно там устарело, мы сейчас и разберём.

Кроме того, сохранение всего текста в idec гарантирует, что сайт точно не
закроется, и информация будет доступна всегда. Конечно, копия старого сайта
доступна в виде архива http://51t.ru/s/51t.ru.tar.gz и кто-то даже его
зеркалировал... но я не помню, кто и куда. В общем, даже если все копии того
сайта исчезнут, навсегда сохранится моя рецензия на него. (хотя негейтуемые
эхи тоже имеют свойство исчезать)

Открваем главную страницу: http://51t.ru/s/51t.ru/

Тут устарело практически всё. Нет больше ни проекта gk11.ru, ни беседки, ни
эхи openbsd.talk. Причём, в архивах я даже не нашёл самой эхи openbsd.talk.
Видимо, она была только на моём сервере (эту эху я веду не на своём сервере).

Но не стоит печалиться. gk11 уже не нужен, так как есть хорошие современные
iDEC серверы, где есть всё, что нужно. Вместо эхи openbsd.talk про openbsd
есть эха oldpc.51t.ru (не путать с сайтом), где более широкий охват (а
поскольку на новом железе OpenBSD не особо комфортно себя чувствует, это
небольшая потеря).

Что тут, новости? Новости, понятное дело, давно уже старости.

Открываем раздел игр: http://51t.ru/s/51t.ru/games.html

Тут, в принципе, всё отлично, хоть сейчас печатай на буклеты, и раздавай на
улице вместе с диском OpenBSD. Кроме нескольких отличий. angband сейчас версии
4.1.3, это другая игра, я сам не знаю, как в неё играть, поэтому описание может
отличаться в деталях. Chocolate Doom перёшёл на аппаратную акселлерацию,
поэтому на старых компьютерах уже не бегает. PySol в 6.8 вроде бы сломан
из-за каких-то обновлений Python. И ValyriaTear обновился до 1.1, поэтому
вместо чистого русского языка больше полигры говорит на английском.

Ну а теперь сами статьи. Пойдём по ним снизу вверх:

Мой первый порт (записки капитана корабля, наверное) http://51t.ru/s/51t.ru/txt-firstport.html

По мотивам хакафона g2k14 http://51t.ru/s/51t.ru/txt-g2k14.html

Интервью с Вадимом http://51t.ru/s/51t.ru/txt-vzlor.html

... эти статьи имеют историческую ценность и рецензироваться не будут. Хранить и помнить.

OpenBSD на 8 гб http://51t.ru/s/51t.ru/txt-8gb.html

... просто анонс дистрибутива и среза репозитория, урезанного (урезанный срез,
ай да я, ай да Пушкина внук) до 8 гб. Списка пакетов нет, просто рекламная
брошюра, можно раз глянуть и смело забыть.

Полезняшки http://51t.ru/s/51t.ru/txt-polez.html

... до сих пор актуально. Разве что сайта edOS сейчас нет. Обзор полезняшек,
с матералом из этой статьи, обязательно будет одним из выпусков Старых Записок.

OpenBSD для начинающих №1 http://51t.ru/s/51t.ru/txt-beginners1.html

... мультик прикольный. А в остальном там что-то про дисковые разделы. Я и
раньше не понимал этого, и теперь не понимаю. И больше что про дисковые разделы
писать не буду. А так статья вроде бы актуальная, только вместо
MDROOTFSOPT='-m 0 -o space' лучше сейчас MDROOTFSOPT='-m 0 -o space -F 2',
чтобы создавалась система ffs2, а не ffs1. В остальном, статья так и осталась
непонятой, в том числе мной. Разделы это страшно, и каждый к этому страху
должен подойти по-своему. У нас про старые компьютеры, старые компьютеры не
жалко - развернул OpenBSD прямо на все шесть гигабайт доступного диска и не
паришься с разделами-шмазделами.

Сетевая загрузка http://51t.ru/s/51t.ru/txt-pxe.html

... короткая, но актуальная статья. Пока актуальная, так как выпуск Старых
Записок №5 будет про сетевую загрузку, и он будет ещё актуальнее, хоть и не
только про OpenBSD

Поверхностное сравнение браузеров http://51t.ru/s/51t.ru/txt-browser1.html

... просто рейтинг, один из многих. Сейчас, наверное, что-то в мире изменилось,
про актуальность сказать не могу. Могу только сказать следующее: все браузеры
стали жрать ещё больше.

Для начинающих №2 http://51t.ru/s/51t.ru/txt-beginners2.html

... ну, во-первых, ничего править уже не надо, installurl прописывается
корректно. Xft.xrdb копируется не туда, куда надо. И в целом, OpenBSD
молодого бойца должны быть другим. Надо, как минимум OldPC Notes регулярно
читать. :)

1000 мелочей для P2 http://51t.ru/s/51t.ru/txt-openbsd-pentium2.html

... архив скачать нельзя, но список пакетов до сих пор актуален. Опять же,
более подробно это всё будет разобрано на OldPC и OldPC Notes.

Практика Pentium 2/3 №1 http://51t.ru/s/51t.ru/txt-p2-prac.html

... оптимизм "Современная OpenBSD летает на 64 мб" несколько поугас - и ядро
стало жирнее, и иксы, лучше начинать современное со 128 мб. В остальном, это
просто доказательство "это работает" (или наоборот) с указанием моделей.

Практика P2/3 №2 http://51t.ru/s/51t.ru/txt-p3-prac.html

... проблема с видео на Dell это проблема с EDID, современные Debian тоже
выдавали там чёрный экран, хотя более старые работали, несмотря на активацию
framebuffer. Проблема со звуковыми esa(4) вроде бы решена. И опять же, это
просто факт "рабочести" железок, с картинками.

Зеркалирование OpenBSD http://51t.ru/s/51t.ru/txt-mirror-openbsd.html

... понятное дело, архивы за эти годы выросли. Теперь репозиторий для каждой
архитектуры подходит к 50 гб, а distfiles уже в районе 70. dpb -F у меня уже
давным давно не хочет нормально работать, для зеркалирования distfiles использую
просто make fetch и make checksum. Отличнейшего cvsync тоже больше нет,
теперь есть reposync, работающий через rsync. Более совместимо с другими ОС,
но менее удобно.

OpenBSD 5.7 для старых компьютеров http://51t.ru/s/51t.ru/txt-57.html

... если бы не картинки, то эту статью можно было бы перенести как есть в
очередной выпуск Старых Записок. Хотя некоторая информация там неактуальна.
В общем, после переработки и замены картинок текстом эта статья будет
перенесена. OpenBSD 5.7 до сих пор отличная платформа для старых компьютеров.

OpenBSD 6.2 CD http://51t.ru/s/51t.ru/txt-62cd.html

... очередные полезняшки. Опять же, список надо актуализировать под современные
версии, это будет отдельный раздел на сайте, с периодическими Notes на эту тему.

Для начинающих №3 http://51t.ru/s/51t.ru/txt-beginners3.html

... KARL теперь деактивируется иначе, rm -r /mnt/usr/share/relink. Вместо
synclient теперь используется wsconsctl, активация тапа тачем (велик и могуч
русский язык, а тапа тачнуть нечем) wsconsctl mouse.tp.tapping=1. В общем,
просмотреть для общего познания можно, но изучать по этим статьям OpenBSD не
стоит.

Практика P2/P3 №3 http://51t.ru/s/51t.ru/txt-px-prac.html

... здесь раскрывается страшная тайна, как отключить пищащий pc-speaker. Звучит
она так: config -ef /bsd, disable pcppi, quit. И перегрузиться в новое ядро.
И ещё обзор железа на OpenBSD тех лет. С тех пор прошло 3 года, и что-то
изменилось, нужны новые обзоры, на новых версиях.

Скатерть-самохостинг http://51t.ru/s/51t.ru/txt-localhub.html

... к вопросу использования старого железа + openbsd как хостинга. Думаю, тему
надо расширить использованием не только OpenBSD, статью надо дописывать.

=== Выводы

Подписывайтесь на iDEC-эху oldpc.51t.ru, сейчас она есть на станции http://hugeping.tk

Смотрите за сайтом http://oldpc.51t.ru

Тогда информация будет всегда свежей и актуальной. Записки пишутся, планета движется.

И главное. Старые компьютеры это круто! Клавиатура уж точно у старых
ноутбуков НАМНОГО удобнее. Столько текста, сколько я написал на этих двух
старичках за эту пару дней - я не писал уже очень давно! Отличные машинки для
печатания. Надоели уже крохоборы, которые то Insert схомячат, то PageUp/Down
перенесут туда, куда и третьим тентаклем не дотянешься. А уж сколько проблем
мне создала система, где F1-F12 нажимается ТОЛЬКО через Fn, без возможности это
изменить.

Пишите тексты, публикуйте в iDEC: в общем, выбирайте комфорт!

# Старое железо. Заметка №2: OpenBSD 6.8
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-17 07:33:54


= Старое железо. Заметка №2: OpenBSD 6.8
51t.ru
2020-10-17


== OpenBSD 6.8

=== Зачем нужен новый OpenBSD на старом компьютере

Ну, можно поставить что-нибудь старое. Только потом попробуешь сделать ssh
на свой хост, а он скажет, что нет поддерживаемого алгоритма. Захочешь
опеннет или лор через линкс или дилло почитать... а он скажет, что https
не https-ит. А уж отсутствие в Юникоде символа афро-лесбиянка-трансгендер это
вообще по сегодняшним меркам страшное преступление.

У меня есть две wifi карты для таких компьютеров - pcmcia-карта на malo(4)
и относительно современный wifi на urtwn(4). В старых дебианах добиться
их работоспособности не получилось - ни драйверов, ни прошивок (кстати, в
OpenBSD прошивки ставятся автоматически, но если нужно сразу, лучше позаботиться
об этом заранее и скачать прошивку вместе с установкой). Для Windows XP я
нашёл, пусть и не с первого раза, драйвер на PCMCIA-карту, и он даже видит
все сети. Но подключиться к роутеру с WPA2 оно просто не может.

Вообще, как выглядит подключение к сети wifi с wpa в OpenBSD?

iwconfig malo0 nwid MyNet wpakey MyNetKey
dhclient malo0

либо похожие две строчки в hostname.malo0

Как это выглядит в Linux, хоть современном, хоть более старом, без
тяжеловесных сред для network manager? "Ну, это надо настраивать
wpa_supplicant...". Кто-то вообще знает, как его настраивать?

Другой пример - запись CD. В разных версиях debian - оно разное, то wodim,
то cdrecord, то xorriso, то кто-нибудь ещё. И у всех разные наборы ключей.
Поэтому я никогда не писал диски из консоли, всегда использовал xfburn. Но
последние 3 раза оно мне просто испортило болванку: по-моему, там что-то
безнадёжно сломано, но поскольку диски мало кто пишет, никто на это не обращает
внимание.

И ещё аргумент в пользу новых версий - это такой немаловажный аспект, как
настройка иксов в старых версиях хоть Linux, хоть OpenBSD. С Windows это
упирается в поиск старых драйверов.

Ещё пример. Как записать диск в OpenBSD, хоть сегодняшней, хоть версии
многолетней давности?

cdio tao file.iso

если это rw-диск, то перед этим ещё cdio blank. Всё.

В общем, установка современного OpenBSD имеет немалое практическое применение:
имеем какой-никакой веб, почту, rss и даже современный вариант fido под
названием IDEC, и всё это через WiFi и без проблем с https.

Раньше модно было себе делать "компьютер под фидошку". Вот и сейчас тоже можно.
Я себе сделал. Пишу с Celeron P2/400mhz. И закидываю этот текст и в фидошку,
и себе на сайт через ssh. Ни в Windows XP, ни в Debian 4.0 я бы так сделать
не смог.

Теперь, когда я объяснил, зачем, можно посмотреть, как.

=== Трудный путь OpenBSD 6.8 на старые компьютеры

Казалось бы, это так просто - поставить OpenBSD на старые компьютеры. Но если
вы когда-то ставили ленни, этчи и сквизы на такие компьютеры, и подумали,
что сейчас можно будет поставить это дело на поток, и давай разливать
свежайший OpenBSD, только компьютеры подноси, то вы ошибаетесь.

Нет, конечно есть большое преимущество между старыми ОС, где надо вручную
ставить драйверы - это тот самый поиск этих драйверов. Например, на отличную
PCMCIA-карту Psion 10Mbit + V90, которая 16-битная и работает даже на самых
древних ноутбуках, я не нашёл драйвер ни для одной версии Windows. В то же
время, все версии Debian этого века (привет тем, кто читает это в XXII) и
все версии OpenBSD этого века эту карту видят из-коробки. И так со многим
старым оборудованием. Осложняет ситуацию и то, что сейчас, сделав запрос
"поиск драйвера", вылазит какое-то несметное количество полуспамных ссылок,
которые вместо самого драйвера предлагают скачать "утилиту для скачивания
драйвера". Боюсь представить, что именно там скачивается, не пробовал.

А если надо найти драйвер не на 1 ноутбук, а на 20... тут или OpenBSD спасёт,
или уже никто не спасёт.

Но всё равно, поддержка железа, даже старого, в OpenBSD... прихрамывает.

=== Наш первый враг видеокарта

Большинство ноутбуков класса P2-P3 идут с видеокартой ATI Rage Mobility, или
просто ATI M1. С этой видеокартой проблем в OpenBSD нет, всё будет работать.
У меня самого лет 10 был такой ноутбук, он видел и Саржа, и Ленина, и Сквизина,
и многое другое, включая OpenBSD. На текущем ноутбуке такая же видеокарта.

Однако часто встречаются видеокарты, с которыми у OpenBSD не так хорошо. Тут
отмечу SiliconMotion LynxEM+ (и другие модели Lynx). На ноутбуке IBM 1200
Type 1161 эта видеокарта не работает до OpenBSD 4.6, а после 4.6 постоянно
выдаёт на экран разный мусор и ядовитые палитры. Что несомненный прогресс,
поскольку Type 1171 с такой же видеокартой вообще не работал.

Плохо себя зарекомендовали карты CyberBlade. А вот в Neomagic всё зависит от
модели, NM220 работала отлично, а вот другие модели с 3D в названии - дико
тормозили.

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

Для владельцев более новых компьютеров дополню, что из 4х моих более серьёзных
ноутбуков: (1)Asus с Ryzen2500 и видео Vega 8 (там есть еще nvidia gtx 1050,
но nvidia в принципе не поддерживается в OpenBSD) 1920x1080, (2)Asus с N4200 и
видео Intel 1600x900, (3)13" DEXP с видео Intel 1920x1080 и (4)11" кто-то ещё с
Intel 1366x768 второй и третий ноутбуки в принципе перестали загружаться в
OpenBSD 6.8. Судя по моему анализу коммитов - из-за некорректного видеорежима.
Ждём исправлений когда-нибудь.

=== Наш второй враг - звуковая карта

Есть некоторые звуковые карты, которые требуют прошивки. Например, популярная
в ноутбуках ESS Maestro 3 (там несколько похожих звуковых карт в этом модельном
ряду). Отличить эти карты очень просто: мы не добьёмся от них никакого звука
в Debian, пока не сходим на сайт alsa, не скачаем там исходники прошивок, не
скомпилируем их и не разместим вручную в lib/firmware. В отличие от других
устройств, чьи прошивки есть в non-free, этих прошивок в Debian нет.

Что мы делали в OpenBSD до 5.7 включительно? Просто включали и слушали звук.
Что мы делали после 5.7? А ничего, эти карты были просто сломаны, и вместо
звука выдавали хрюканье и скрипение. Но. Недавно я проверял одну такую карту в
6.7, и она там работала! Означает ли это исправление ошибок, или это просто
конкретное исключение на конкретном устройстве, покажет время и дополнительное
тестирование.

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

=== Наш третий враг - PCMCIA

Тут вообще никакой закономерности нет. Одна карта на одном ноутбуке видится в
Debian, но не видится в OpenBSD. Другая на другом - видится в OpenBSD, но не
видится ни в Debian, не в винде. Что это, как это и что с этим делать - я
понятия не имею. Я с этим просто живу.

=== И не друг, и не враг, а так - KARL

Вы прошли почти весь этап установки, пробежали циферки "устанавливается
пакет такой-то 100%, такой-то 100%". И тут висит клавиша [done], на которую
можно нажать, чтобы сделать завершение установки. НЕ ДЕЛАЙТЕ ЭТОГО!

Тут в дело вступает KARL. То есть, перелинковка ядра. Даже на 256 мб с неплохим
свопом оно может рухнуть, а если не рухнет - компилироваться будет очень
долго. И потом будет так же компилироваться при каждой загрузке. На 128
встанет сразу, особенно если своп небольшой или его нет (сегодняшние версии
на 128 без свопа уже чувствуют себя плохо, но несколько версий назад это
был нормальный способ использования системы), и после перезагрузки система
будет неработоспособна.

Вместо нажатия Enter, чтобы подтвердить это [done], введите ! и нажмите Enter.
В появившемся приглашении консоли введите команду

rm -r /mnt/usr/share/relink

Затем введите exit, и только сейчас можно делать [done]

=== Что дальше

Если загрузка в установленную систему была удачной (что бывает не всегда),
чем нас порадует современный OpenBSD на Pentium 2 или 3?

Лично я сразу ставлю mc, neovim, neofetch, htop, icewm и awesome, затем
links+ с gui (командой pkg_add links+--), dillo, mplayer, youtube-dl,
cmus-ffmpeg.

Консольный Newsboat для RSS. Scrot для снятия скриншотов и feh для их просмотра.

Люблю рогалики, поэтому ставлю (в вариантах no_x11): angband, nethack обе
версии, stone-soup, cataclysm-dda. SDL версии на p2/p3 можно даже не пытаться
запустить.

rsync, unrar, xpdf и прочее - по вкусу.

Для впн-инга есть такая вещь, как dsvpn, deadly simple vpn, которая
элементарнейшим образом настраивается и на клиенте, и на сервере.

txt2tags и asciidoc (есть ещё asciidoctor) позволяют оформлять документы из
текста. Я пишу тексты на своём 400 мгц Celeron в neovim или mcedit (mc
любит крашиться в OpenBSD, осторожнее!) в формате txt2tags. После чего
перевожу в asciidoc. И уже asciidoc оформляю в html. Все три файла выкладываю
на сервер, а asciidoc немного правлю и отправляю в сеть IDEC.

Для контроля версий использую mercurial.

В качестве клиентов idec использую текстовый iitxt (который работает даже
с python 2.4) и caesium (golded-like редактор на python3).

Относительно же youtube и прочих видеосервисов сложно сказать, что можно
легко и просто с них качать. Да, youtube-dl работает, и mplayer вполне может
прожевать видео в низком качестве на pentium 2. Вот только есть маленький,
но в то же время большой вопрос с поиском ссылок: youtube ни в links, ни в
dillo не открывается.

Вот так и живём.

Теперь, когда мы доказали, что OpenBSD 6.8 очень нужен на старых компьютерах,
в следующих выпусках мы докажем, что он там не больно-то и нужен, есть вещи
и поинтереснее. Но не сразу. Сначала будут выпуски про IDEC и про сетевую
загрузку (ну и про прочее использование старых систем в качестве серверов для
полезняшек, облегчающих жизнь). Определённо, к OpenBSD 6.8 я ещё вернусь.

# Re: test echo creation
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-16 16:41:41


Короче, пока подписал как "Старое железо"

# Re: test echo creation
oldpc.51t.ru
hugeping(ping,1) — oldpc
2020-10-16 16:33:46


> а что будет, если создать новую эху?
> +++ Caesium/0.4 RC1

Вообще, это было отключено. :) Но, похоже, не до конца.
Оставлять эху? Если да - как назвать?

# OldPC notes #1
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-16 15:03:22


= OldPC notes #1
51t.ru
2020-10-16


== Жизнь со старыми компьютерами

=== Введение

Что можно делать с компьютерами класса P1-P3? Можно играть в старые игрушки для
DOS и старых версий Windows. Это круто. Правда, и оси для них (кроме FreeDOS),
и сами игрушки (кроме Shareware и освобождённых версий) скорее всего являются
нелегальными. Так когда-то решили их правообладатели.

Хотя в дальнейшем вариант для FreeDOS и shareware-игрушек будет рассмотрен.

Но начать хотелось бы с чего-нибудь хорошего. Хорошим в данном случае является
OpenBSD (вплоть до современного) и старые версии Debian.

=== Быстрый совет

Если не хотите читать дальше, то на выбор предлагаю 4 варианта - Debian 4.0,
OpenBSD 5.7, OpenBSD текущей версии (сейчас это OpenBSD 6.8), Knoppix 5.3.1 DVD
(с загрузкой по сети).

Почему Debian 4.0? Достаточно низкие системные требования, некоторые интересные
игрушки и проекты, которых нет в более поздних версиях. Кроме того, Debian 5, 6
и далее со всеми остановками имеют ключи подписи с истёкшим сроком годности:
установить их можно или с дисков, или переведя время на эпоху заката этих версий.

Почему новейший OpenBSD? Новейший софт, все самые новые юникоды, все самые новые
временные зоны (в отличие от etch), никаких проблем с https, с ssh. Можно поставить
KDE 3.5 (хотя в текущем состоянии он уже практически неработоспособен, надо
проверить). Можно нормально использовать Wi-Fi с современными точками доступа.

Почему OpenBSD 5.7? Ещё есть поддержка linux-эмуляции, можно запускать Opera 12
for Linux, меньшие системные требования, ещё не сломан звук на старых звуковых
картах, можно поставить полный KDE 3.5, ещё можно поставить grub (в 6.1 grub
уже нет).

Почему Knoppix 5.3.1 DVD? ГОРЫ софта на все случаи жизни (но есть и ошибки),
можно подсоединяться к современным SSH, можно даже открывать какие-то
современные сайты. И всё это без установки (загрузка по сети, с директории
HDD, с DVD диска).

=== Системные требования

Современный OpenBSD лучше не трогать без 128 мб памяти (и это при условии,
что будет прибит KARL). Для OpenBSD 5.7 можно начинать с 64 мб памяти.
Knoppix DVD в Live режиме - желательно хотя бы 128 мб памяти (при загрузке
icewm, kde 3 - хотя бы 256 мб). Ну а Debian Etch можно поставить и
эксплуатировать на первом пентиуме с 32 мб памяти. У меня на ноутбуке
hitachi flora с p133 и 32 мб памяти крутится OpenBSD 5.0, с иксами и icewm.

На 192 мб памяти уже можно запускать OpenBSD с kde3 и с wesnoth-lite :),
использовать Opera 12 через Linux-эмуляцию.

=== Трудная жизнь старых компьютеров

Почему на старые компьютеры нельзя поставить всё, что угодно? Основная
причина этому - веб. Когда в мире бушевала виста, с её требованиями 1-2
гб памяти, 3д графика и мощный процессор, я пользовался интернетом через
GPRS по ком-порту на Thinkpad с 486dx75 с 20 мб ram, и спокойно сидел в
форумах, смотрел разные сайты и не испытывал дискомфорта. Во времена
squeeze, то есть менее 10 лет назад, Thinkpad X21 с celeron500 и 128
mb памяти тоже вполне годился для веба, через opera или epihpany.

Когда я выбирал, что поставить на P133/32/516, я выбирал между OpenBSD
5.0 и Windows 8: обе вышли примерно в одно время. Решил всё-таки выбрать
OpenBSD. Шутка. Грустная. Показывающая, что ещё 8 лет назад, когда эти
компьютеры уже были музейными, всё было намного лучше.

Сейчас же браузер ест всё, что найдёт. И даже больше. Стремится от него
не отставать и остальной софт. Поэтому браузинг веб в современном OpenBSD
возможен на старых компьютрах только через графический режим links, через
dillo, и в самом "навороченном" варианте - через netsurf. Понятное дело,
что в таком варианте большинство сайтов будут практически или даже
полностью неработоспособны. OldPC будет стремиться сделать системы
дооставки контента для пользователей старых компьютеров, без https, со
старым дизайном, нормально отображающимся в links и dillo. Право получать
информацию должно быть у всех, и никто не должен быть дискриминирован
только потому, что у него Pentium II

=== Не выбрасывайте старые компьютеры!

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

Данный выпуск был написан на ноутбуке Dell Inspirion 7000, Celeron
на базе Pentium II, 400 mhz. 128 mb RAM. Видео ATI M1. Диск 4гб,
из которых примерно 1.1 гб это Debian Etch и 2.9 гб это OpenBSD.

Оболочка IceWM, текстовый редактор Neovim. Мой .xinitrc

export LANG=ru_RU.UTF-8
export LC_ALL=$LANG
wsconsctl mouse.tp.tapping=1
setxkbmap us,ru -option grp:caps_toggle

icewm-session

# test echo creation
oldpc.51t.ru
oldpc(ping,11) — All
2020-10-16 15:00:51


а что будет, если создать новую эху?

+++ Caesium/0.4 RC1