LINUX.ORG.RU

Сообщения MOPKOBKA

 

Vim, Emacs или Xorg две колонки

Форум — Desktop

Вертикально на монитор текста вмещается мало, в читалках есть возможность отображать две страницы рядом, так пустое пространство справа всегда занято, есть ли такой режим в vim без плагинов? А в Emacs? Если нет, то можно ли как то с помощью Xorg отобразить высокое окно в виде широкого разбитого?

 , ,

MOPKOBKA
()

Антиваксер реанимирует X.Org

Форум — Talks

Энрико Вайгельт в одиночку улучшает X.Org, 22 июля он предложил патч который вводит общий способ включения VRR. До этого VRR работал через перехватчики драйверов, которые разработчики драйверов реализовывали сами, что было архитектурно неправильно.

Так же Энрико выступает против античеловечных экспериментов по выведению новых видов гуманоидов с измененной ДНК. Но конечно это не сравнится с безумнейшим предложением разработчиков Wayland иметь DOS фреймбуфер без права получить положение окна в качестве замены оконной системы.

Все его патчи можно посмотреть тут, их очень много, есть исправление багов в том числе и под BSD, удаление мертвого кода, добавление новых возможностей: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests?author_username=...

Так что слухи о прекращении разработки X.Org недействительны.

 , ,

MOPKOBKA
()

Как бы вы реализовали аналог bit flags на архитектуре без поддержки целых чисел, и без поддержки стандартных битовых инструкций?

Форум — Development

Числа представлены в float. Битовый сдвиг отсутствует. Нужна не сам bit flags, а что нибудь альтернативное, что было бы эффективно на такой платформе.

Ситуация вымышленная, воспринимайте как головоломку.

 

MOPKOBKA
()

Slackware исполнился 31 год!

Галерея — Скриншоты

Slackware уже исполнился 31 год! Как написано на Wikipedia, 17 Июля 1993, вышла версия 1.00. И как хорошее вино, с годами она становится только лучше. На скриншоте виден qemu с версией 1.01.

С прошлого скриншота изменилось многое.

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

Теперь собираю сам Chromium, отказался от Palemoon. Играясь с настройками сборки Chromium, я и создал тред о жаре, каждая пересборка длится очень долго, не замерял, но где то 40 минут, 20+ гб исходного кода в распакованном виде! Firefox тоже установлен, ради недавнего обновления, пришлось поставить две версии icu4 одновременно, Slackware делает простые вещи проще, а сложные возможными.

Не использую deadbeef, перешел на cmus, интерфейс удобнее, и меньше багов.

Вместо smplayer использую mpv, qt5 тормозит, и плохо подхватывает тему, раньше я его собирал с qt4.

Geany заменил на vim, версия Geany с Gtk3 слишком плоха для меня. Vim использую с двумя строчками в конфиге, но пришлось пересобрать с поддержкой clipboard, и для включения .desktop файла.

Все так же использую Xfce4, но перешел на свежую версию, все темы кроме Elementary работали очень плохо, а она мне не нравится, оставил Adwaita, и значки Gnome. Обои стандартные из artwork пакета Xfce4. Дефолт конечно, но я его еще не видел в галерее. Пересобран freetype для включение запатентованного алгоритма. vte собран с поддержкой sixel.

Компьютер используется для работы, игр, чтения ЛОРа.

В качестве дополнения, предлагаю прочесть старое, но интересное интервью с Патриком, где он рассказывает про появление Slackware в том числе: https://www.linuxquestions.org/questions/interviews-28/interview-with-patrick...

 

MOPKOBKA
()

Умираю от жары, помогите раскидать процессы по ядрам!

Форум — Linux-hardware

В комнате трудно дышать, пот льется ручьем, запах расправленного китайского пластика по всей квартире, виновник i9-14900K.

Когда запускаю программу, процессор сильно нагревается.

Я хочу выделить программе 8 ядер, и заставить Linux перекидывать процесс между ядрами, так, что бы они не нагревались, с горячих на холодные, но как это сделать?

Через taskset можно задать ядра, а как раскидывать процессы на основе температуры? Ядро 6.9.9

Водяное охлаждение не предлагать, оно уже есть! Все окна раскрыты, но дом превращается в сауну!

--- Нашел решение ---

thermald работает замечательно, спасибо krasnh!

Перемещено hobbit из general

 , ,

MOPKOBKA
()

Geany — между редактором и IDE

Статьи — Разработка

Описана установка и настройка текстового редактора Geany, в том числе для редактирования кода.

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

 

MOPKOBKA
()

Slackware, ядро из current на 15.0, slackpkg+

Форум — Desktop

Можно ли что то прописать в slackpkg+, что бы ядро ставилось из current, а все остальные пакеты так же из 15.0? Столкнусь ли я с какими то проблемами? Использую драйвер NVIDIA, но с офф.сайта, и собираю сам.

 

MOPKOBKA
()

Wayland, 15 лет, итоги: В играх 30 фпс

Форум — Desktop

Решил протестировать готовность Wayland, скачал Ubuntu 24.04, поставил, ничего не настраивал, не удалял, просто выбрал Wayland сессию, которую Canonical старательно убрал как стандартную, что бы оберечь нормального пользователя от этого лакомства.

Через Lutris стал запускать Epic Games: GTA V, RDR2. И через Steam CS2.

Во всех играх около 20-30 фпс, я сначала подумал что Wayland неправильно определил частоту моего экрана, 277 гц, и сделал лок на 30, но нет, 40 фпс иногда проскакивает.

Переключился на X сессию, 200-500 фпс, в зависимости от игры, так же как на Slackware XFCE, почему так? Консольный экспириенс?

RTX 4070 + драйвер 555, i9-14900K

 

MOPKOBKA
()

Как в Nautilus создать файл, и тут же ему назначить имя?

Форум — Desktop

Если поместить в шаблоны, то нужно отдельно жать кнопку переименовать.

И второй вопрос, file roller выкинули из gnome, как зайти в большой архив и извлечь один файл?

 

MOPKOBKA
()

(neo)vim, разные отступы для html, css, js, php в одном файле php

Форум — Development

Я обычно пишу все в одном файле *.php, иначе потом забываю какие файлы нужно закинуть через WinSCP на сервер, а какие нет. Там есть php, html, js, css.

Но я привык иметь для css и html отступ в два пробела, а для php и js в четыре. Как мне это настроить? Речь про авто-отступ.

 ,

MOPKOBKA
()

Как ограничить доступ к ~/.config/google-chrome?

Форум — Desktop

Вот есть всякие флатпаки, firejail, они требуют что бы приложения запускались через них, но как мне ограничить доступ всем к папке ~/.config/google-chrome, кроме избранных приложений, thunar, mousepad и самого google chrome?

Не запускать же все через firejail, удобнее было бы наоборот, выдавать разрешение, а не вешать ограничения на процессы.

 

MOPKOBKA
()

Несколько flexible array member

Форум — Development

Почему не добавят в стандарт, и какие приемы используют что бы реализовать это?

Описание того что я хочу:

struct String {
  int length;
  char str[length]; // == char str[];
                    // указание длинны, просто подсказка для компилятора
};

struct Item {
  struct String name; 
  struct String description;
  bool flag1, flag2, flag3;
  int elements_length;
  struct Element elements[elements_length]
};


// Item *i = malloc(999999999);
// (char*)&i->description.length == ((char*)&i->name.str) + i->name.length

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

 ,

MOPKOBKA
()

Есть ли программа для очереди заданий?

Форум — General

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

Писать сам это не собираюсь, хотелось бы что то не васянское, может systemd такое уже умеет?

 

MOPKOBKA
()

Си. Почему бы не запретить запись в стек?

Форум — Development

Решил немного разобраться как работают уязвимости. Как я понял, весомая их часть модифицирует стек.

#include <stdio.h>

register long unsigned rsp asm("rsp");

void print_arg(int arg) {
    ((int*)rsp)[3] = 0xBADC0DE;
    printf("arg = %x\n", arg);
}

int main(int argc, char **argv) {
    print_arg(0xF00D);
    return 0;
}

Этот код отрабатывает и не выводит ошибкок с

-fhardened -fcf-protection=full

На мой взгляд выглядит небезопасно.

Почему бы не вставлять проверки на ассемблере при записи в память, на включаемость в регион стека? Если нужно записать что то в аргумент на стеке (int), то проверку можно не вставлять. При записи по указателю, уже обязательно вставлять. Если адрес стека то ошибка. В memset проверять пересечение двух диапазонов.

Если на стек пишет fread(), то нужно вставить еще проверку на разрешающий диапазон буфера в который он пишет. Но тут компилятору нужно обязательно отслеживать откуда приходит поинтер, но если мы говорим про значения на стеке, то это не должно представлять сложности, значение всегда лежит в прошлых значениях стека, а значит вычислить размер буфера можно в момент компиляции, ну или записать в какую нибудь дополнительную переменную на стеке, если речь о сложном потоке управления и alloca.

void read_file(const char *name)
{
        char buff[999];
        FILE *f = fopen(name, "rb");
        read_block(f, buff);
}

void read_block(FILE *f, char *buff)
{
        // тут компилятор должен вывести что len(buff) == 999
        fread(buff, 1, 9999, f);
}

Что бы все идеально работало, нужно будет:

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

 

MOPKOBKA
()

Orage (программа для организации времени) из Xfce портирована на gtk3

Форум — Desktop

Orage - программа для Xfce для организации времени. Раннее она оставалась на gtk2 и не была доступна для новых версий Xfce.

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

Подробности

Перемещено hobbit из office

 ,

MOPKOBKA
()

Linux непригоден для просмотра котиков

Форум — Talks

Решил запустить последний RoboCop на Linux, в меню меня встретили фризы в пару секунд, поэтому я побежал в магазин за новой видеокартой, но фризы не прошли, и я поставил Windows, а там тоже самое! Оказалось нужно просто подождать 10-20 секунд, и больше такого не будет, даже при следующем запуске.

Но под протоном испорчены разные вещи, например коты

Proton - https://ibb.co/g7KHmw6

Win - https://ibb.co/6byWNF8

 ,

MOPKOBKA
()

Red Hat угощает Wayland-ом разработчиков Firefox

Форум — Talks

Мартин Странски из Red Hat написал Wayland-Proxy как C++-версию предыдущей экспериментальной концепции, написанной на Rust

Среди ошибок Firefox Wayland одна из самых распространенных ошибок связана с потерей соединения с компоновщиком Wayland. Чтобы справиться с этим, необходимо иметь прокси-сервер между Firefox и компоновщиком Wayland для кэширования сообщений и предотвращения переполнения очереди сообщений компоновщика.

В комментариях разбирают подробнее

Mutter (и, возможно, другие) завершает работу клиента Wayland, если он распознается как зависший. Обычно это означает, что клиент Wayland недостаточно быстро читает сообщения из сокета дисплея Wayland и буфера вывода сообщений компоновщика. заполнено. Это может быть ошибка в самом приложении (цикл событий не обрабатывается) или это вызвано устройствами ввода, такими как мышь с частотой 1000 Гц, которая генерирует слишком много событий.

Такая ошибка действительно есть, любители Wayland с высокой герцовкой мыши, ранее делились советами не двигать мышкой когда открыт Firefox, иначе это может немедленно привести к его закрытию.

https://www.phoronix.com/news/Wayland-Proxy-Firefox

 

MOPKOBKA
()

ДИН, почему забанили космоспеца?

Форум — Linux-org-ru

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

www.linux.org.ru/people/kompospec/profile

 ,

MOPKOBKA
()

Может ли быть software rendering лучше hardware (сюда отнесу OpenGL) по задержке?

Форум — Development

Можно заметить что без композитора чистые X11 приложения ощущаются намного более отзывчивыми и быстрыми, так же на Windows приложения использующие GDI с выключенным композитингом чувствуются очень хорошо, в чем причина?

Композитинг тормозит из за того что окна выводятся в промежуточные буферы а потом копируются в итоговый?

 ,

MOPKOBKA
()

Debian/Ubuntu собрать Emacs только с gtk (deb)

Форум — General

Делаю

apt source emacs
если выполню
fakeroot rules/binary
то он начнет собирать со всеми фронтендами, а нужно только с gtk. Как мне это указать?

Нужно https://packages.debian.org/buster/emacs-gtk

Собирает:
https://packages.debian.org/buster/emacs-nox
https://packages.debian.org/buster/emacs-gtk

 , ,

MOPKOBKA
()

RSS подписка на новые темы