henry_flower: A melancholy wolf (Default)

Останній раз я дивився на Wine > 10 років тому. Вчора знадобилося запустити "an app" з ери win2k, яка не працює ані у w10, ані у w7 vm (the compatibility mode не допоміг).

The app запрацювала, що мене неабияк вразило, але поведінка Wine у Fedora 25 засмутила.

По-1-ше, при 1-му запуску winecfg, воно навіженого почало щось кудись копіювати: виникла дивна пауза, так що я подумав, може за ці роки той Wine переписали на джаві. Свої dotfiles у $HOME я зберігаю у the git repo, тому набравши git status я побачив, що Wine створив ~/.wine директорію. Але чому так повільно?

$ du -h ~/.wine | tail -1
516M    /home/henry/.wine

I don't even.

По-2-ге, я помітив, що можу запускати win executables просто з bash'у, e.g.:

$ file -b ~/.wine/drive_c/Program\ Files/Internet\ Explorer/iexplore.exe
PE32+ executable (GUI) x86-64, for MS Windows

$ !$

запускає Wine'івську пародію на IE, незважаючи на те, що той файл не є лайнуксним ELF.

БОРЯ
Дівчата, катай сюди, дядя фокус покажет!

            Ріта і Чіта подбігають ближче.

ЧІТА
А Ви умєєтє?

ЖОРА
(становиться раком)
Нєт нічєго прощє. Ейн, цвей, дрей!

            На слові "дрей" приліта птеродактиль Гриша,
            хапа хтивого павіана Жору за бордову сраку
            і зникає в невідомому напрямку.

БОРЯ
(філософськи)
Жора хотів вам показать фокус, який називається "сєвєрноє сіяніє".

РІТА І ЧІТА
Как інтєрєсно! Чєм ето достігаєтся?

Т.я. екосистема Windows відома тотальною відсутністю malware і ransomware, а Wine--куленепробивною пісочницею, останнє що я хочу, це автоматичний запуск таких виконуваних файлів. Як відключити таку capability?

Якщо лайнуксне ядро зібрати з опцією CONFIG_BINFMT_MISC, тоді у execve(2) з'являється можливість запускати винуковані файли у будь-якому форматі. Коли ядро натикається на невідомий йому формат, то перед тим як здатися, воно питає binfmt_misc підсистему, чи знає вона, наприклад, PE32+ (як у прикладі вище). Щоб відповісти, binfmt_misc потребує спеціальної runtime конфігурації.

Спочатку користувач маунтує /proc/sys/fs/binfmt_misc/; щоб додати нову проводку до бази даних binfmt_misc, він пише у файл /proc/sys/fs/binfmt_misc/register спеціально сформатований рядок. Напр., для PE32+:

# echo :windows:M:0:MZ::/usr/bin/wine: > /proc/sys/fs/binfmt_misc/register

# cat !$:h/windows
enabled
interpreter /usr/bin/wine
flags:
offset 0
magic 4d5a

Тут 0:MZ є приклад зсуву і послідовності байтів, за яким визначається певний формат. Для віндюкових .exe це є 1-ші 2 байти:

$ hexdump -C -n10 iexplore.exe
00000000  4d 5a 40 00 01 00 00 00  06 00                    |MZ@.......|
0000000a

Тобто, коли ми намагаємося виконати foo.exe, ядро виявляє, що foo.exe це є the Windows app і робить facepalm.jpg, передаючи foo.exe як параметр до /usr/bin/wine.

Щоб видалити проводку з БД binfmt_misc, можна записати -1 в файл тої проводки:

# echo -1 > /proc/sys/fs/binfmt_misc/windows

So far so good, але у Федорі 25, у нашу гру вступає systemd. До чого тут systemd?

systemd вважає, що маунтити і писати щось руками--то є нижче гідності користувача, тому воно надає an early boot сервіс під назвою systemd-binfmt.service, який маунтить binfmt_misc файлову систему і читає .conf файли (напр. у /usr/lib/binfmt.d/), за якими воно самостійно додає проводки до БД binfmt_misc.

Моєю 1ю реацію на авто-виконання .exe файлів було видалити rpm, який відповідає за створення такого авто-виконання:

# rpm -qf /lib/binfmt.d/wine.conf
wine-systemd-2.3-1.fc25.noarch

# rpm --nodeps -e wine-systemd
# systemctl restart systemd-binfmt

На що може сподіватися a humble user після таких команд? На те, що systemd, який намагається за будь-який кошт захистити сором'язливого користувача від лячного лайнуксу, видаліть зайві проводки з БД binfmt_misc.

га-га-га (регоче)

$ ls -l /proc/sys/fs/binfmt_misc
total 0K
--w------- 1 root root 0 Mar 23 19:26 register
-rw-r--r-- 1 root root 0 Mar 23 19:26 status
-rw-r--r-- 1 root root 0 Mar 23 20:11 windows
-rw-r--r-- 1 root root 0 Mar 23 20:11 windowsPE

Все як і було після інсталляції Wine, і можно перезапускати systemd-binfmt хоч до завтра.

А якщо сором'язливий користувач не знає нічого про binfmt_misc, як йому відключити авто-виконання? Можна перезавантажити лайнукс, на що десь у непідступному замку Майкрософт захіхікає проста і добра пика С. Наделли.

Видаляння wine-systemd не є найкращім рішенням, бо з кожним оновленням dnf сумлінно встановить ного знову. Я вже думав прописати щось на кшталт

echo -1 | tee /proc/sys/fs/binfmt_misc/w*

десь у /etc/rc.local, аж раптом вирішив прочитати binfmt.d(5).

Виявляється, рекомендованим способом є зробити у /etc сімлінк на /dev/null з таким самим ім'ям файлу з /lib/binfmt.d/, який ми не хочемо, щоб systemd читав. Тобто,

# ln -s /dev/null /etc/binfmt.d/wine.conf
# systemctl restart systemd-binfmt

henry_flower: A melancholy wolf (Default)

Яка гарнюня: https://www.gnu.org/software/guix/

Вся the configuration system написана на Guile.

(define %my-services
  ;; My very own list of services.
  (modify-services %base-services
    (guix-service-type config =>
                       (guix-configuration
                        (inherit config)
                        (use-substitutes? #f)
                        (extra-options '("--gc-keep-derivations"))))
    (mingetty-service-type config =>
                           (mingetty-configuration
                            (inherit config)))))

(operating-system
  ;; …
  (services %my-services))

Я вражений!

At the Scheme level, the bulk of an operating-system declaration is instantiated with the following monadic procedure (see The Store Monad):

Monadic Procedure: operating-system-derivation os

Return a derivation that builds os, an operating-system object (see Derivations).

The output of the derivation is a single directory that refers to all the packages, configuration files, and other supporting files needed to instantiate os.

Ааааа, the stored monad!

Колись, коли майже 9 років тому я писав кастомний лайнукс дістро (для стартапа, який лопнув ще до етапу MVP, гагага), то намагався геть усе писати на Tcl. Інсталятор був на Tk, частина скриптів у /etc була на Tcl, тощо. Tcl був вибраний, бо він був крихітній, uber fast, не потребував ніяких dependencies і мав Tk.

Але в порівнянні з оцим guix дістро, то було ніщо, нуль. Ці пацани з Guile це як Генрі Форд vs. паровий двигун.

henry_flower: A melancholy wolf (Default)

Jörg Schilling--автор cdrtools і персональної сторінки у стилі the year 1996 that never ended.

Date: Mon, 20 Feb 2017 19:14:44 +0100
From: Joerg Schilling <schily-lSlhzV3CM+2sTnJN9+BGXg@public.gmane.org>
Newsgroups: gmane.org.unix-heritage.general
Subject: Re: Mach for i386 / Mt Xinu or other
User-Agent: nail 11.22 3/20/05
Message-ID: <58ab3214.+jRaJEWVki5gYHFz%schily@schily.net>

Larry McVoy <lm-VxhRmpcwSR4AvxtiuMwx3w@public.gmane.org> wrote:

> Linus had the qualities of being a good programmer, a good architect,
> and a good manager.  I've never seen all 3 in a person before or since.

My memory is different. He claims that his intention is to keep
kernel/userspace interfaces stable, but given the fact that this did
never happen, I tend to believe that he lacks the understanding on
what all is part of the kernel/userspace interface.

He also send me a 10 line patch for cdrtools in 2004 and I did never
get a worse patch (a patch that includes more new bugs) for my
software.

So I cannot confirm your view.

He is a person with a strong ego and this may have helped to spread
Linux.

Jörg

#інтриги #розслідування

henry_flower: A melancholy wolf (Default)

Цікаво, яка з 2х colour schemes найбільш прийнятна для глаз in the long run? Я все життя користувався lightgray-on-black для терміналів і black-on-lightgray у текстових редакторах.

В macOS, як відомо, дефолтна скіма для терміналу є black-on-white. В Windows для консолі powershell багато років за замовчуванням стояла страшненька white-on-blue, яка була гарним індикатором чи користувався хто powershell на цій машині чи ні, бо той хто користувався--зазвичай змінював ото одоробло на якусь lightgray-on-black.

Read more... )
henry_flower: A melancholy wolf (Default)

https://github.com/fvwmorg/fvwm/issues/18

Window-specific bindings rely on the application receiving synthetic
events. This used to be quite common, but in more recent times has
been a security concern, so not many applications accept them (XTerm
does, but you have to tell it to allow them, for instance).

Hence, this feature in FVWM has been removed.

There's nothing FVWM can do about this.

Чудово, тобто раніше я міг переключатися між вікнами у screen жмакаючи Alt-Fx, натомість зараз я як жмакаю Alt-F4, то замість очікуваного 4го вікна, fvwm закриває xterm нахуй разом з screen'ом.

#прогрес #інновації

henry_flower: A melancholy wolf (Default)

"In the old days, Callaway said, Red Hat made Red Hat Linux, entirely in-house. What the company didn't make was any money; sales of hats generated more profit than sales of Red Hat box sets, which apparently were sold at a loss. It was felt that this plan wouldn't work out in the long term, so Red Hat changed to making Enterprise Linux."

ггг

https://lwn.net/SubscriberLink/714524/0c495ef932cd49a8/

henry_flower: A melancholy wolf (Default)

Оновився до Chromium 56: вони знову зламали hdpi для лайнукса. Знову доводиться пускати з --force-device-scale-factor=1. Шрифти у вьюпорті ніби виглядають як і раніше, але тулбар, таби, меню і статусбар рендерятся міліпіздричним Sans 9.

:(

Погуглив, ага я не один; у когось така ж сама проблема: https://bugs.chromium.org/p/chromium/issues/detail?id=687080.

henry_flower: A melancholy wolf (Default)
I don't even.

$ pwd
/home/henry
$ /bin/cd /tmp
$ pwd
/home/henry

Huh?

$ cat /bin/cd
#!/bin/sh
builtin cd "$@"

Only in Fedora!

Permalink: https://plus.google.com/115290581164606462017/posts/7SqieYJsRrV

henry_flower: A melancholy wolf (Default)
га-га-га, a grumpy Russian in @fedora-devel!

"24 yumex in Fedora has been removed place it in yumex-dnf . I have a question where Russian language .
"here I do not speak English I now to guess where to click or to sit with a dictionary"

"your I should follow packet . I just want to enjoy and not to think
what else is there to remove in the new issue"

Eat shit, moron.
Attachments:

Gmane -- Search


+1'd by:
  1. Udger R

Permalink: https://plus.google.com/115290581164606462017/posts/j9ivRBzMYfB

henry_flower: A melancholy wolf (Default)
Several questions that always bothered me: who are all those ppl who maintain texlive pkgs? What are they doing when they are not maintaining texlive pkgs? Do they have time for anything except maintaining texlive pkgs?

$ rpm -qa texlive\* | wc -l
319


Permalink: https://plus.google.com/115290581164606462017/posts/aHP5ck9bMh5

henry_flower: A melancholy wolf (Default)
LP:

"They [Gentoo] used to be like Arch Linux is now--they used to be the young people who adopted things quickly. But the Gentoo people aged, and they became more conservative."
Attachments:

www.linuxvoice.com/issues/012/interview.pdf


Permalink: https://plus.google.com/115290581164606462017/posts/7jLdgNRrx2g

henry_flower: A melancholy wolf (Default)
Here's a new, very real Fedora innovation! Suck it, naysayers!

'we should say goodbye to the concept of separate bin/sbin, we kinda did already by adding both to $PATH for all users, but we should work on making this go away in the FS hierachy too, and replace sbin by a symlink.'
-- LP

Let's party!

Permalink: https://plus.google.com/115290581164606462017/posts/j7PSot5yedr

henry_flower: A melancholy wolf (Default)
After skimming through a parallel(1) man page I have only 1 question: is the author nuts?

What €10,000, what citations?

And those examples.
Imagine you've bought a car, say, Ford.

You look in the manual & there is a section 'how to change a tire' & suddenly in the very same section there are big subsections 'how to change a tire for GM, Honda, BMW & Peugeot vehicles. WTF.

Who cares about ppss, prll, dxargs, etc? I don't even know what those utils are for; I've literally never heard of them, why are you dumping their examples on me?

Btw, the info about GNU Make is completely wrong (outdated), Make does support the output sync for parallel executions. To make things for a crazy author of parallel(1) even worse, Make also works faster. At least in my tests on my machine w/ -j8.

Maybe I'm a bit too harsh on a dude who likes Perl. (parallel(1) is written in Perl.) If somebody uses Perl in 2010s, then I shouldn't wonder of his insanity.

Permalink: https://plus.google.com/115290581164606462017/posts/8UeuBYVBukC

henry_flower: A melancholy wolf (Default)
For how many years I've been using bash (after switching from tcsh)? 3-4?

TIL

show-all-if-ambiguous
glob-expand-word (C-x *)
glob-list-expansions (C-x g)

Unfortunately bash (readline) completion & history manipulation are still inferior compared to tcsh.

Permalink: https://plus.google.com/115290581164606462017/posts/hPS2ZfUasSL

henry_flower: A melancholy wolf (Default)
A little dbus deamon
Sat on a socket,
Eating its requests and one-ways;
Along came a kdbus driver,
Who sat down beside it
And frightened the dbus deamon away.
Attachments:

Gmane Loom


Permalink: https://plus.google.com/115290581164606462017/posts/NHNpnoYQNQw

henry_flower: A melancholy wolf (Default)
Неприлично смеюсь.

'Инновационная операционная система класса Linux'
'Получены сертификаты соответствия № СФ/014-2578 и СФ/014-2579  *на доработанную отечественную операционную систему* специального назначения «Astra Linux Special Edition»'
'Предустановка на новые ЭВМ'
'Выпускаемые релизы этой операционной системы носят названия городов-героев России и стран СНГ.'
'релиз "Смоленск"'
'релиз "Новороссийск"'
'релиз "Мурманск"'

АААААА!!!
Инавацаоная!
Класа Linux!
Даработаная!
Атечественая!
На новые ЭВМ!

"Стоимость изделий 21300.00 RUB"

(~ ₴ 8500, между прочим.)

PS
Все, омерике--пизда, 100%.
Attachments:

Astra Linux - сделай систему правильно!


+1'd by:
  1. Олег Мороз
  2. Ed Shevsky
  3. Udger R

Permalink: https://plus.google.com/115290581164606462017/posts/icSPof5dsgP

henry_flower: A melancholy wolf (Default)
Вечер свободного лайнуксного десктопа.

  # reboot
  Failed to start reboot.target: Connection timed out

(плачет)
Comments:
  1. Oleksii Shevchuk, 2015-03-19T05:23:36.857Z

    Arch?)

  2. Henry Flower, 2015-03-19T14:59:26.172Z

    федора 21 после того как `npm search` съело всю memory & swap.


Permalink: https://plus.google.com/115290581164606462017/posts/XYJsDGccmK6

henry_flower: A melancholy wolf (Default)
ггг

'The GNU kernel was not originally supposed to be called the Hurd. Its original name was Alix—named after the woman who was my sweetheart at the time. [...] Michael (now Thomas) Bushnell, the main developer of the kernel, preferred the name Hurd, [...]

Later, Alix and I broke up, and she changed her name;'

Permalink: https://plus.google.com/115290581164606462017/posts/fPHbTfxoC7w

henry_flower: A melancholy wolf (Default)
Терпеть не могу когда релизам или бранчам дают имена за пределами 'release' или 'testing'. Так сложно пользоваться цифрами/semver, без натужной пошлости и вульгарности?

Каждый когда мне говорят "я протестировал _ на jessie, все ок; на sid пришлось _", я мучительно пытают вспомнить о каких бранчах идет речь. Т.е. то, что это дебильный дебьян лайнукс я еще помню, но их скуиз/визи/джеси/сиды/хуиды у меня исчезают из головы аккуратно в момент окончания разговора.

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

Повбивав би.

Permalink: https://plus.google.com/115290581164606462017/posts/FdZKpssg4zW

Page Summary

April 2017

M T W T F S S
     12
3 4 56789
1011 121314 1516
171819 2021 22 23
24 25 26272829 30

Expand Cut Tags

No cut tags