LINUX.ORG.RU

Форум (тех. форум)

Активные теги:

 , , , , , , , , , , , , , ,

Не получается установить игру

Форум — Games

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

Попробовал также через lutris, но там все еще хуже: постоянно падают ошибки типа «wine: RLIMIT_NICE is <= 20, unable to use setpriority safely» или «wine: Using setpriority to control niceness in the [-19,19] range». Я гуглил эту ошибку, я правил файл /etc/security/limits.conf по разному, но ничего не помогает. Инсталлятор не запускается вообще.

Помогите плиз

 ,

DarkByte
()

Как живется на 2.x в 2024?

Форум — General

Субж. В сообществе винды есть довольно много фанов ламповой XP и не менее трушной семерки. Отличные системы, бесспорно, которые заслуженно получили апгрейд ядра (а вернее юзерспейс ништяков) до более свежих версий, дабы запускался софт с современных версий системы.

Но я слышал, что даже на ЛОРе есть ребята, увлекающиеся ретро-верасиями Linux, как раз вышедшие во времена актуальности XP. И если реальных пользователей Ubuntu 9.10 я не видел, то сообщения о запуске RH 7.1 всё ещё можно наблюдать на форуме. Так вот, вопрос к вам: как людям живется на дистрах с ядром 2.x (желательно ~2.4, 2.6 слишком свежий и много где в эмбеде до середины десятых использовался), с учетом того, что условно для юзерспейс повседневных программ поменялось не так много (новых сисколов вроде нет, ABI для x86 не поменялся) и теоретически некоторый свежий софт можно собрать с минимумом изменений?

 

fanat_baldezha
()

как добавить /data/data/com.termux/files/usr/bin в андроидовский ADB sh $PATH?

Форум — Mobile

хочу чтобы после того, как я сделал

adb shell

я уже мог запускать всё, что лежит в

/data/data/com.termux/files/usr/bin

я сейчас уже могу это делать, но я вынужден каждый раз делать

cd /data/data/com.termux/files/usr/bin

а потом ещё и запускать бинари через ./

как сделать нормально и удобно?


сейчас $PATH выглядит так
:/ # echo $PATH[br]/product/bin:/apex/com.android.runtime/bin:/apex/com.android.art/bin:/system_ext/bin:/system/bin:/system/xbin:/odm/bin:/vendor/bin:/vendor/xbin

как туда добавить путь /data/data/com.termux/files/usr/bin?

 , , , ,

smilessss
()

Ошибка при каждом запуске Kali Linux

Форум — General

Здравствуйте! Пользуюсь линуксом не так давно, поэтому многие вещи вызывают затруднения. Сейчас устанавливал Kali Linux на основной компьютер и после полной установки столкнулся подобными ошибками: [ 0.214765] ACPI BIOS Error (bug): Failure creating named object [\ADBG], AE_ALREADY_EXISTS (20230628/dswload2-326) И [ 0.214774] ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20230628/psobject-220)

Каких то особых дополнительных комментариев дать не смогу, потому что я в этом деле ещё очень зелёный… И заранее прошу всех умников с советами перейти на Ubuntu идти и комментировать другие посты, не засоряйте ленту! Заранее благодарю всех, кто откликнулся!

 , ,

com_
()

матрикс всё?

Форум — General

я что-то пропустил! Пользователи россии жалуются что зайти не могут. морг у них не грузит. раньше они сидели в комнате и нормально было. Почему там такое, санкции или что? Что сделать нужно чтобы они могли войти и видеть старые сообщения в комнате? А от VPNов всяких воняет костылями и превозмоганием

ЗЫ: если что, я не про сайт, а в протоколе, где сообщения пишутся

 , ,

Pinux001
()

Как вычислить crc структуры в complie-time?

Форум — Development

Привет, лор.

Речь про плюсы. Хочу разместить в начале прошивки структуру, содержащую некоторую инфу. Типа такого:

// вот упрощённая структура
struct AppInfo
{
    uint32_t signature;
    uint32_t version;
    char name[20];
    uint32_t crc;
}

// и вот я пытаюсь её снабдить CRC:
constexpr AppInfo appInfo __attribute__((section(".app_info"), used)) =
{
    0x0002,
    0x0001,
    "My Device",
    calcCrc32(&appInfo, offsetof(AppInfo, crc))
};

// вот как выглядит функция calcCrc32:
static constexpr uint32_t calcCrc32(const uint8_t* buf, size_t bufLen)
{
    // тут вычисление crc
}

И вот тут ну никак не получается. Компилятор отказывается преобразовывать указатель в const uint8_t* в compile-time. Я нагуглил кучу вопросов про это, и ни одного работающего решения. Вроде как в c++26 обещают что-то подкрутить. Единственное (очень костыльное) решение, которое я придумал - превратить структуру в массив uint8_t:

struct AppHeader
{
    uint8_t bytes[128];
    uint32_t crc;
};

constexpr AppInfo appInfo __attribute__((section(".app_info"), used)) =
{
    .bytes =
        "\0"
        "\1"
        "My Device",
    .crc = calcCrc32(appInfo.bytes, sizeof(appInfo.bytes))
};```

Это коряво, придётся потом вручную парсить массив байтов, вычленяя элементы. Но деваться некуда, таков уж современный c++. Или так, или добавлять в процесс сборки отдельный скрипт для подсчёта crc32. Грустно.

 , c++17

Beewek
()

После обновления не запускается bspwm

Форум — Desktop

Крч была проблема с фпс, доверился какому то форумчанину и ввел команду обновления bspwm и установки дров на видюху. Кароче, вместо автологина и автозапуска иксов у меня теперь sddm которыц ничего не запускает, а в консоли не могу залогиниться, потому что в автостарт стоит неработающий bspwm, че делать и можно ли обойтись без переустановки системы с бекапом?

 , ,

kashath
()

Нужны советы по созданию композитора Wayland на языке Rust

Форум — Development

Есть у меня странное хобби - упрощать оконные менеджеры до минимума, урезая все ненужные мне фичи.

Например, я не пользуюсь тайлингом. Даже в Sway настроил так, чтобы вообще не было тайлинга. Однако, из-за того что Sway тайловый, всё таки баги есть: иногда окна под активным оказываются в фокусе клавиатуры, даже если курсор мыши над активным окном. Кроме того, в Sway глючат некоторые новые игры, такие как Atomic Heart и Horizon Forbidden West. Когда просто ходишь, то всё нормально, а когда начинаешь водить мышкой - экран дёргается. А эти игры на разных движках. Странно и то, что в игре Baldurs Gate 3 такого глюка нет даже в Sway. Кроме того, этого глюка нет, если поменять композитор на растовый Anvil.

На Расте есть библиотека Smithay, на которой активно разрабатывают новый оконный менеджер для Pop-Os (Cosmic). В принципе, годная вещь. И в ней нет этих глюков с играми. Но есть другие глюки. Пока что читаю исходники, разбираюсь что и как…

Тут в новостях периодически пишут что Wayland якобы «хуже Х11», но ведь очевидно что игры в Wayland дают лучший FPS. Как можно их сравнивать вообще? Есть какие-то идеи, как настроить тестовую конфигурацию для того чтобы сравнивать производительность? И вообще, мне интересно, какие есть идеи добиться максимального фреймрейта в полноэкранной игре? Ну или хотя бы ссылочки на ликбез по этой теме.

Я, в принципе, спокойно отношусь к критике, мне особенно интересны возражения со стороны тех, кто критикуют сам Wayland. Особенно, когда указываются конкретные примеры, которые можно легко сравнить, замерить. Желательно с примерами кода, что конкретно не работает либо не стандартизировано. Может быть я просто не пользуюсь этой фичей и не знаю что это и зачем оно.

 rust wayland smithay compositor

svyatozar
()

QtCreator, билд подпроекта и только его зависимостей

Форум — Development

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

С моими настройками Always deploy application before running it и Build only Application to be run компилит только запускаемый проект без использованных либ, а если в комбике выбрать Whole, то компилит всё, в тч ненужное (т.е. все подпроекты в проекте, а мне надо только зависимые либы и т.п.)

В MSVS подобное работает, Build проекта билдит и его либы и только его.

 

pethead
()

Wireguard клиент - сервер как оставить внешний IP?

Форум — Admin

Всем доброе время. Ubuntu сервера.

У меня 2 VPS. Один сервер вайргард А, второй сервер клиент Б. Я соединяюсь с сервером Б. Если я соединяюсь клиентом Б к серверу А, на сервере Б перестает быть доступным внешний IP адрес, SSH и любые прочие соединения. Можно ли как-то завернуть трафик в интернет через Б на А так, чтобы службы сервера Б тоже были доступны? Или wireguard для этого не годится? По сути нужно с моего компа видеть и сеть сервера Б и А, но весь интернет должен идти на А?

Не знаю сумбурно может.

Я –> (сервер Б) –> (сервер А) Пропадает соединение с сервером Б.

[Peer] AllowedIPs = 0.0.0.0/0 AllowedIPs = ::/0

Это заворачивает все и внешний IP сервера становится недоступным. :(

 

overself
()

Как в vim вставить текст из буфера и переместиться к началу вставленного текста?

Форум — Desktop

Есть текст

111, 555!

и текст «222,» в буфере (")

Курсор стоит на пробеле (после запятой).

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

 

Harliff
()

HBA-контроллер LSI SAS 9201-16i, вопрос по HDD LED

Форум — Linux-hardware

Есть сабжевый контроллер. У него четыре канала (A,B,C,D) с типономиналом интерфейсного разъема SAS/SATA устройств — SFF-8087, для каждого канала нужен свой HDD LED, причем сказано, что один электрод светодиода идет на +3.3V, другой — на сигнальный пин. Можно ли обойтись одним HDD LED, и как это сделать?

Мне в голову стукнула идея спаять диодную сборку из четырех 1N4148 с общим анодом, подсоединить катоды этой сборки к сигнальным пинам HDD LED (каналы A, B, C, D), катод HDD LED — к аноду сборки, а 3.3V — к аноду HDD LED. Насколько такая схема может быть рабочей?

Дело в том, что на лицевой панели серверного корпуса — только один HDD LED, и курочить эту лицевую панель с целью установки четырех светодиодов HDD LED будет еще сложней, чем паять на коленках такую схему запитки HDD LED. А в настройках BIOS контроллера не нашел, как ему сказать, чтобы HDD LED был один на все четыре канала.

 , ,

Infra_HDC
()

Как-то странно не работает SNAT (MASQUERADE)

Форум — Admin

Всем привет!

Как-то не приходилось сталкиваться с VPS и вот столкнулся.
Короче есть VPS, надо поднять между ним и обычным Linux сервером (VDS) vpn и NATить трафик. По сути клаcсический VPN+NAT кейс.

VPS: Debian 12
VDS: Debian 10
Test: Windows 10/11

В общем взял я и установил на VPS strongswan. Настроил на нем IKEv2 + EAP_MSChapV2 сервер (к слову не в первый раз, по известной тропинке). VPN вроде как работает, клиента принимает и выдаёт ему IP и DNS.
Теперь очередь за NAT. Пока всё пусто, iptables пустой и везде ACCEPT.
добавил одну строку:

iptables -t nat -A POSTROUTING -o venet0 -s 10.10.10.0/24 -j MASQUERADE

или пробовал
iptables -t nat -A POSTROUTING -o venet0 -s 10.10.10.0/24 -j SNAT --to x.x.x.x


Иииии не работает. Но не работает как то странно.

в tcpdump VDS я вижу, что он корректно на первый взгляд натит пакеты. Он их шлёт. Но вот сами пакеты до назначения не доходят. Я пробовал пинговать подконтрольные мне сервера в интернете и если исходящий с NAT пинг уходит, то входящий для target не приходит. Что происходит в промежутке мне не доступно.

10:07:23.691176 IP 10.10.10.2 > 8.8.8.8: ICMP echo request, id 1, seq 99, length 40
10:07:23.691261 IP x.x.x.x > 8.8.8.8: ICMP echo request, id 1, seq 99, length 40
10:07:26.211308 IP 10.10.10.2 > 8.8.8.8: ICMP echo request, id 1, seq 100, length 40
10:07:26.211397 IP x.x.x.x > 8.8.8.8: ICMP echo request, id 1, seq 100, length 40
10:07:34.571123 IP 10.10.10.2 > 1.1.1.1: ICMP echo request, id 1, seq 101, length 40
10:07:34.571210 IP x.x.x.x > 1.1.1.1: ICMP echo request, id 1, seq 101, length 40


Акцент на VPS потому как, на любом другом доступном мне VDS та же самая настройка корректно работает как ожидалось. А тут никак.

 , ,

Spider55
()

Вопрос по командам в линуксе

Форум — General

Пишу баш скрипт,

#!/bin/bash
mkdir charmander4 geodude7 quaqsire4
touch sewaddle4 cleaffa6 loudred
touch machamp houndour bisharp
mkdir kabutops
echo "Развитые способности Steadfast" > machamp
echo "Тип покемона DARK FIRE" > houndour
echo "Возможности  Overland=9 Surface=7 Jump=4 Power=4 Intelligence=4 Tracker=0 Stealth=0 Pack Mon=0 Aura=0" > bisharp
echo "Возможности  Overland=2 Surface=1 Jump=2 Power=1 Intelligance=3" > cleffa6
touch koffing gengar wartortle
mkdir eelektross
echo "Живёт  Marsh Mountain Urban" > koffing
echo "Развитые Способности Poison Touch" > gengar
echo "Ходы  Aqua Tail Body Slam Brine Counter Defense Curl Double-Edge Dive Dynamicpunch Focus Punch Ice Punch Icy Wind Iron Defense Iron Tail Mega Kick Mega Punch Mud-Slap Rollout Seismic Toss Sleep Talk Snore Water Pledge Zen Headbutt" > wartortle
echo "Ходы  Body Slam Counter Defence Curl Doubl-Edge Dynamicpunch Endeavor Fire Punch Hyper Voice Ice Punch Icy Wind Low Kick Mega Kick Mega Punch Mud-Slap Psych Up Rollout Seismic Toss Shock Wave Sleep Talk Snore Thunderpunch Uproar Water Pulse Zen Headbutt" > loudred2
echo "Способности String Shot Tackle Bug Bite Razor Leaf Struggle Bug Endure Bug Buzz Flail" > sewaddle4
mkdir machamp meditite magby mightyena

Но почему-то скрипт создаёт 2 экземпляра файла/каталога. Один с нормальным названием, другой со знаком вопроса на конце. Писал скрипт в обычном блокноте win11 с кодировкой UTF-8, в чём может быть проблема?

 , ,

acrighthere
()

как из папки вызвать все файлы в один момент

Форум — General

в папке находятся исполняемые файлы их нужно не по одному а все сразу вызвать для исполнения такой командой как

 for IFILE in "$DOME/$SHA"/*; do "$IFILE"; done 

 

zte
()

Странная ошибка при создании функции в PostgreSQL

Форум — Development

Имеется следующий короткий код на Python. В основе кода используется библиотека psycopg2. Весь код работает в одной транзакции.

Что делает код? Он должен просто создать функцию с именем update_change_time_column(). После создания, функция, естественно, существует одна на всю схему.

# Рекомендательная блокировка на момент создания функции
self.exec( "SELECT pg_advisory_lock(12345);" )

# Проверка что функция уже есть в БД
resultCursor = self.exec( """SELECT EXISTS (
                          SELECT 1
                          FROM information_schema.routines
                          WHERE routine_name = 'update_change_time_column'
                            AND routine_schema = current_schema()
                          );""" )
isFunctionExists = resultCursor.fetchone()[0]

# Если функции нет, она создается
if not isFunctionExists:
    self.exec( """
               CREATE OR REPLACE FUNCTION update_change_time_column()
               RETURNS TRIGGER AS $$
               BEGIN
                 IF current_setting('custom.disable_change_time_trigger', true) IS NOT NULL THEN
                   RETURN NEW;
                 END IF;

                 NEW.change_time = now();
                 RETURN NEW;
               END;
               $$ language 'plpgsql';
               """ )

# Рекомендательная блокировка снимается
self.exec( "SELECT pg_advisory_unlock(12345);" )

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

И при работе иногда возникает ошибка:
Ошибка при выполнении SQL-запроса
CREATE OR REPLACE FUNCTION update_change_time_column()
RETURNS TRIGGER AS $$
BEGIN
  IF current_setting('custom.disable_change_time_trigger', true) IS NOT NULL THEN
    RETURN NEW;
  END IF;

  NEW.change_time = now();
  RETURN NEW;
END;

ОШИБКА:  повторяющееся значение ключа нарушает ограничение уникальности "pg_proc_proname_args_nsp_index"

DETAIL:  Ключ "(proname, proargtypes, pronamespace)=(update_change_time_column, , 2200)" уже существует.

Вопрос: почему возникает такая ошибка?

Вроде как предприняты меры по блокировке на время создания функции. Функция создается только в случае, если ее нет. Все обернуто в транзакцию. Что еще надо учитывать чтобы ошибки не возникало?

 , , , транзакция,

Xintrea
()

string[] to char * char[]

Форум — Development

Приветствую.

День тупняка сегодня…

Надобно передать мне в сишную функцию чужой либы статичный массив char * const *, но как бы вот так хитрожопо его создать вроде

char * services[] = {(char*)"1", (char*)"22", (char*)"333"};

но что бы можно было собрать его из std::string по типу

std::string services[] = {"1"+var1, var2+"22", "333" + var3 + "333"};

штоб не создавать левых переменных, динамических массивов, циклов переприсвоения и все освободилось атхаматом выйдя из области видимости )

 ,

wolverin
()

Проблемы со скоростью интернета в Eve-ng

Форум — Admin

В вузе создаем подобие киберполигона на основе Eve-ng, после настройки сети на конечных узлах инфры наблюдается низкая скорость загрузки, что мешает даже загрузить агента Caldera для автоматизации атак. Пакеты идут так: Windows тачка->Cisco Sw->Cisco Router->Cisco ASA->Mikrotik->Mikrotik->C2C с Caldera Подскажите, пожалуйста, может нужно какой то протокол настроить, заменить образ сетевого устройства либо же вообще отказаться от использования Eve-ng и если это так то чем лучше всего заменить.

 ,

OsamuDazai
()

Инициализация const переменной класса?

Форум — Development

Приветствую.

Как бы вот такое провернуть, чтобы можно было объявить переменную как const даже для методов класса с учетом того, что в конструкторе нужно сначала проинициализировать другие переменные, прежде чем посчитать const ?

Т.е. что то вроде


class X
{
private:
  T * ptr;
public:
  const std::string city;
  X ()
  {
     ...
     ptr->start();
     city = ptr->CalcCity();
  }
}

 

wolverin
()

Droidian кто пробовал?

Форум — Mobile

Как оно вообще, юзабельно или нет? Гугл забанил, есть в планах или lineageOS поставить или ubuntu touch или droidian

 , ,

serg002
()

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