LINUX.ORG.RU

Сообщения SR_team

 

Использование системной темы в flatpak gtk приложениях (в KDE)

Делюсь историей успеха, для закрепления в выдаче гугла.

Проблема: В KDE у gtk-flatpak приложений используется дефолтная белая тема Adwaita

Решение:

flatpak --user override --filesystem=xdg-config/gtk-3.0:ro

Это даст всем flatpak-приложениям текущего пользователя рид-онли доступ к настройкам gtk3.

Для отдельного приложения:

flatpak override --filesystem=xdg-config/gtk-3.0:ro {appname}

Еще совет из сети - дать доступ к ~/.themes:

flatpak --user override --filesystem=~/.themes:ro

Это позволит не плодить копии тем в flatpak

P.S. Сейчас гуглится как правило совет с ~/.themes и иногда можно найти рекомендации копировать папку gtk-3.0 во все flatpak приложения

 , , , ,

SR_team
()

CSD в KDE

https://www.youtube.com/watch?v=MA-dtQ31VNs

Костыль, но выглядит прикольно, я даже не задумывался о том, что в KDE тоже можно прикрутить CSD, хоть и не для всех приложений (с чисто Qt приложениями такое не получится).

Ъ: Чел добавляет кнопку выхода в тулбар, отделяет ее спейсером и меняет иконку на ту, что используется в теме

 , ,

SR_team
()

Windows 11 не копирует KDE 5

Недавно KDE выпустили обновление, где иконки дефолтной панели можно отцентровать, а сама панелька и апплеты становятся прозрачными, если нет развернутых на весь экран окон. Теперь появилась Windows 11 с такими же фичами и ТАДАМ - https://filipfila.wordpress.com/2021/06/15/565/

Ъ: «Нет, мы не копируем друг друга, посмотрите, как много отличий!»

P.S. Это сравнение принес, потому что его опубликовали в Planet KDE

 , ,

SR_team
()

SJW проиграли битву за гимп

 , ,

SR_team
()

Получить активную раскладку клавиатуры

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

int result;
auto display = XkbOpenDisplay( getenv( "DISPLAY" ), NULL, NULL, NULL, NULL, &result );
auto keyboard = XkbAllocKeyboard();
XkbGetNames( display, XkbGroupNamesMask, keyboard );
XkbStateRec state;
XkbGetState( display, XkbUseCoreKbd, &state );
keyboard->names->groups[state.group];

А как под Wayland? Можно ли под ним вообще как-то универсально получать информацию о раскладке, не зависимо от DM?

 , ,

SR_team
()

Что грееется в современных видеокартах?

Раньше были только бюджетки типа 750Ti и RX560. Сейчас стоят 5600XT (хост) и 1660S (виртуалка).

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

В виртуалке система 99% времени в режиме ожидания с погашеным экраном, но видюха вечно греется чуть больше 50 градусов и подрубает вентиляторы каждые 2 минуты для остужения до 49 градусов.

Расстояние между видюхами 2.5см, плюс дополнительно обдуваются. В открытом корпусе ведут себя так же, как и в закрытом.

Vrm под самой горячей 5600XT живет на 50 градусах, nvme под ней же на 56 градусах

Проц все в том же корпусе, с мньшим обдувом работает на 38 градусах.

Что не так с средне-ценовыми видюхами? Шутки про обогреватель вышли из под контроля и производители видюх теперь встраивают его в видеокарты?

 , ,

SR_team
()

GPU Passthrough

Купил недавно ноут Asus TUF Gaming fx505dt на рязане r7 3750H и с видюхой gtx1650. Из блобов для работы под линуксом понадобились:

  • дрова nvidia
  • драйвер на wifi
  • драйвер для управления подсветкой

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

Оказалось все очень просто. Видюха была в отдельной группе IOMMU, а ошибка 43 легко пофиксилась по арчвики - надо было помимо подмены vendor_id, прикрутить эмуляцию ноутбучной батарейки.

Однако пост не о успехе. Теперь я хочу провернуть тоже самое на компе. Прокинуть видюху через райзер через PCI-e 1 не вышло из-за групп IOMMU. Я еще не пробовал накладывать патч ACS на ядро, но из-за того что могут вылезти другие баги пробовать и не хочу. Вместо этого хочу совета по выбору материнки под AM4 с 2+ PCI-e 16, где группы IOMMU будут раздельны. Гугл советует x570 за 20+ т.р. Однако в магазинах есть куча b450 в двое дешевле с 2 и 3 PCI-e 16. Может кто из лоровцев брал такие и там были раздельные группы IOMMU?

 , , , ,

SR_team
()

GRUB на диске полностью под BTRFS

Несколько лет поставил систему на диск с BTRFS, без MBR/GPT, сейчас переношу систему на новый диск и больше grub на такие диски вставать не хочет, при чем и переустанавливаться на старый диск тоже:

# grub-install /dev/nvme0n1 
Выполняется установка для платформы i386-pc.
grub-install: предупреждение: данный core.img необычно большого размера. Он не влезет во встраиваемую область.
grub-install: ошибка: файловая система «btrfs» не поддерживает списки блоков.

Диск форматировал так же, как и старый: mkfs.btrfs /dev/nvme0n1

 , ,

SR_team
()

Перегрузка методов с наследованием C++

Допустим есть класс:

struct Base{
    void operator +=( int i ){}
};

И мы от него наследуемся с перегрузкой оператора:

struct Dirived : public Base{
    void operator +=( float f ){}
};

При создании объектов типа Dirived, опреатор из класса Base будет не доступен. Если его не перегружать, то все хорошо. Напомните плиз как сделать оба их видимыми. Вроде как-то через using можно было вытащить оператор из Base.

Такой код не работает:

struct Dirived : public Base{
    using void Base::operator +=( int i );
    void operator +=( float f ){}
};

 ,

SR_team
()

Телеметрию в KDE подвезли

В LTS релизе Plasma 5.18 появится модуль KUserFeedback для сбора телеметрии.

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

Подробнее про телеметрию (и другие методы тестирования): Телеметрию в KDE подвезли (комментарий) (Обязательно к прочтению, если телеметрия не дает Вам покоя, даже будучи выключенной и не установленной)

 ,

SR_team
()

oom killer в systemd

Ленарт сказал, что как только Facebook допишет свой oomd, оный будет включён в состав systemd.

oomd - юзерспей реализация oom killer

Скажите мне, а в чем проблема настроить ядреный oom killer? В андроиде вроде он хорошо работает

 , ,

SR_team
()

5.1 Нецензурные выражения

С каких пор слова кал и говно стали не цензурными?

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

или я задел чувства мейл/Яндекс фанатика?

тред: ВКонтакте станет первым в России суперприложением

cast @shell-script

 

SR_team
()

Linux в Dex | SAMSUNG

Они таки решились запилить для своего Dex нормальный Linux, и сейчас начинается закрытый бета-тест.

Вот такое письмо я получил: https://dl.prime-hack.net/300311542210179.png

As an early adopter, you signed up for Linux on Galaxy at the Samsung Developer Conference (SDC) 2017. This service allows you to project a Linux development environment onto a desktop environment, complete with a monitor, keyboard, and mouse. So you can bring your code with you, wherever you go.

This year, we have renamed the service Linux on DeX, and are beginning a private beta trial. Please visit our booth at SDC 2018 or visit linuxondex.com to find out more about Linux on DeX and register for our beta program.

 ,

SR_team
()

А как произносить большие числа не десятичной СС?

Вот например 0x5F, тут вроде легко - пятьдесят эф. А как быть, когда буква в другой позиции, типа 0xF5? Эфдесят пять? А в более сложных 0xAC4? Асот цесят четыре? Звучит как бред. Как правильно? Есть ли вообще правильное произношение?

 

SR_team
()

KMail, Akregator и VPN

Недавно заметил, что KMail перестал загружать почту по VPN. Потыкал в другие почтовики - грузят без проблем.

Позже заметил, что и Akregator не обновляет ленты, но на него хер клал, ему до QuiteRSS далеко топать, а вот почтовик у кед хороший.

Куда копать? Какой из модулей кед снести/даунгрейднуть, что бы все заработало?

Archlinux

 , , ,

SR_team
()

a2img или LOR с картинками

Написал не большой user-script, который преобразует ссылки на картинки в обычные картинки. Так что теперь на лоре (у меня) есть картинки.

Кастую любителей картинок на лоре: hobbit, zaharov, rj45, dk-, Zhbert

P.S. Любители видео, могут использовать yt2p

 , ,

SR_team
()

Форумный движок с markdown

Собственно, хочется поднять форум с markdown вместо всяких bb-кодов.

Нашел только discourse, но он убог:

  • Ставится геморно, никак не хочет дружить с другими сайтами на VPS.
  • Имеет лимит 1000 сообщений на топик.
  • все сообщения в топике на одной странице, при этом новые в самом низу.
  • Имеет динамическую подгрузку сообщений, но не имеет динамической выгрузки.
  • Не может в Latex формулы.

Так же находил хорошие плагины для WordPress, но вот форумы для него не поддерживают MD (исключение bbPress, но эта кривая, тонкая писюлька в середине экрана совершенно не юзаьельна).

Может лоровцы знают такие движки?

 , ,

SR_team
()

Имена пакетов в NixOS

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

nix-env -iA nixos.qt5.qtbase
Устанавливает тулкиты для qt - qmake и прочее. Но не прописывает в окружение пользователя, пока я не сделаю
nix-env -i /nix/store/кучаговна-qtbase-версия-dev
Очень не удобно. Такая конструкция естественно не работает:
nix-env -i nixos.qt5.qtbase
Вместо этого работает
nix-env -i qtbase-версия
но он ставит не dev версию, а только библиотеки qt. Как поставить dev не ясно, всякие `-dev` и `.dev` не работают.

Я понимаю что в -iA указывается аттрибут, а в просто -i название пакета, но как заставить nix прописать именно dev пакет?

 , ,

SR_team
()

Яндекс капча

Помнится тут были те, кто устал отмечать дороги в гугл капче.
Как вам капча от яндекса?

https://dl.prime-hack.net/2018-07-22-174502_637x389_scrot.png | 'squares жолирп' не принял
https://dl.prime-hack.net/2018-07-22-174632_620x365_scrot.png | '/Menu/ Copolymer' не принял

Linux тут при том что браузер с яндексом был запущен на линуксе

 

SR_team
()

Привести функцию типа void(C::*method)(Args...) к void*

Надо пихнуть вызов метода класса в asm. Для этого надо привести метод к void*.
Если использовать обычную C функцию, то все достаточно просто - (void)func, но с методами класса чета все не так просто.

Код:

	template<class C, class ...Args>
	bool hookMethod(int id, C *object, void(__attribute__((__thiscall__)) C::*method)(Args...)){
		if (!isIdValid(id))
			return false;

		CShortAsm *_asm = new CShortAsm();
		_asm->push(r86::ECX);
		_asm->mov(r86::ECX, (const int)object);
		_asm->jmp((void*)method);
		hookMethod(id, _asm->getAddr());

		return true;
	}
Компилятор ругается на строку
_asm->jmp((void*)method);

Ранее писал подобный код для коллбеков, и там все работает. Тут вроде ничем не отличается, а не работает. Не понимаю, что делаю не так.
Вызываются тоже одинаково:
g_class.DirectX->connect(this, &TestAntiInject::Present, proxyIDirect3DDevice9_Present);
testHook->hookMethod(25, this, &TestAntiInject::_RPC25);

 , ,

SR_team
()

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