Обновить
3
0
Kirill Dimitrenko@Newpson

Пользователь

Отправить сообщение

так ведь на пониженной надо))

человеческой

На современных великах пониженная есть

Причём иногда достаточно сильная

Интересно, как бы выглядела органическая коробка передач :D

часто про дороги, без которых оно малополезно

Как вам такие дороги? :)
По скалам вполне едет)
По скалам вполне едет)
Да и по воде неплохо катится)
Да и по воде неплохо катится)

что насобираете, то и будет

если быть точным, то без ручной пересборки некоторых пакетов (mesa, gtk3, gtk4, qt6-base и пр.), в зависимостях которых есть либы обоих протоколов, у вас не выйдет сделать отдельно иксовую или отдельно wayland сборку, только солянку.

xscr -- scrot + xclip + удалить файл (т.е. скриншот сразу в буфер обмена)

вам не кажется расточительным создавать файл лишь ради того, чтобы через мгновение удалить? или он создаётся в tmpfs?

Может немного оффтоп, но как думаете, реально ли уместить в 512 байт (максимум, 1 килобайт) инструкций AVR хотя бы двухканальный синтезатор (шум и меандр) и в ещё 1 килобайт мелодию минуты на 3 (несколько небольших партий, которые повторяются в течение всей мелодии)? Сжимаю Bad Apple, видео вместе с декодером уже умещаются в 32 килобайта с выводом на дисплей (40x32, 7 FPS), думаю, стоит ли ещё музыку приделать. Модулировать планирую в половину амплитуды динамика через ШИМ за неимением ЦАП.

  1. Использую локальный менеджер паролей, синхронизирую между устройствами через провод.

  2. После копирования менеджер паролей через 10 секунд очищает буфер обмена (что на пк, что на мобилке), а мастер-пароль вручную вбиваю каждый раз. Вероятность кейлоггера низкая в моём сценарии использования.

пароли впринцепе изжили себя, никто не будет набирать пароль в 20 символов.

Набираю из головы мастер-пароль длиной ~70 символов за 10 секунд (осмысленная фраза), открывая доступ к базе случайно сгенерированных паролей из 32+ символов и TOTP. ЧЯДНТ?

никогда не понимал желания того чтобы ОС загружалась за пару секунд

У меня на основном компьютере хранится куча всякой информации, которая редко нужна, а последнее время я работаю с ноутбука для удобства, поэтому основной компьютер (как ни странно) большую часть времени выключен и стоит ко мне задом. Одним движением руки я управляю блоком питания, компьютер автоматически включается при появлении питания, и пока я с ноутбука в проводнике захожу на нужный раздел FTP или в терминале открываю SSH-сессию, компьютер уже загрузился и принимает соединения.

Повторюсь, очень редко включаю компьютер, но иногда может понадобиться несколько раз в день это делать, и когда он грузится 5 секунд, а не 30 - это немного делает жизнь легче.

А этот EFI отжирает целый гигабайт

На ноутбуке у меня одна система, раздел EFI я делал размером 256 мегабайт - и это очень избыточно (даже если бы было две системы).

$> ls -lah /boot
total 84M
drwxr-xr-x  2 root root  16K Jan  1  1970 .
drwxr-xr-x 16 root root 4.0K Oct 22 12:58 ..
-rwxr-xr-x  1 root root  50M Oct 22 12:59 initramfs-linux-fallback.img
-rwxr-xr-x  1 root root  19M Oct 22 12:59 initramfs-linux.img
-rwxr-xr-x  1 root root  16M Oct 22 12:59 vmlinuz-linux

Как видите, большую часть занимают два варианта стартовой rootfs. fallback вариантом я не пользуюсь никогда, мне просто лень его отключить в конфиге. Обычный вариант можно тоже убрать, если пересобрать ядро с модулем используемой на корневом разделе файловой системы, но мне тоже лень. В итоге останутся жалкие 16 мегабайт.

На линуксе можно вместо загрузчика (вроде GRUB) использовать "встроенный" в UEFI загрузчик, который будет грузить EFIStub-ядро напрямую с раздела EFI, это немного ускоряет процесс загрузки и избавляет от костылей при настройке дуал- и более бут с виндой или разными дистрибутивами. Если ещё fastboot активировать, то компьютер включается с нуля почти за то же время, что и при выходе из сна.

что касается СДВГ, это реально современная проблема

Если зайти в r/adhd, можно увидеть 700 тыс посещений в неделю. Подписчиков скрыли недавно, но было что-то около ~2 млн. Часто там публикуют "истории успеха" о победе над синдромом с помощью медикаментов или без; очень много и жалоб навроде "помогите, я не могу(!) ничего делать". Интересный феномен, большое кол-во людей неким образом диагностировало себе СДВГ, собралось в одном месте и обсуждает проблемы этого самого СДВГ. В интернете. Наверянка вместо того, чтобы "делать дела" (прямо как я сейчас пишу этот комментарий). Проблема возникла из-за самого интернета? Что бы делали эти люди в доинтернетные времена и ощущали бы они себя "больными" в принципе? Судя по некоторым ответам от людей постарше на этот вопрос в том же сабреддите, "проблема" существовала и раньше; люди читали книги и учились всякому, что на слуху, гуляли. Есть ощущение, что это не проблема вовсе, а зеркало образа жизни, которое "с непривычки" помутнила возможность мгновенного доступа к любой информации в любой момент времени (чего не было ранее).

Понял. Как насчёт такого? Теперь разве что вручную прострелить себе колено и преобразовать один указатель в другой.

#include <stdio.h>
#include <stddef.h>

void myfunc(const int (*arr)[3][2])
{
    for (size_t i = 0; i < 3; ++i) {
        for (size_t j = 0; j < 2; ++j) {
            printf("%d\n", (*arr)[i][j]);
        }
    }
}

int main(void)
{
    const int arr[3][2] = {1, 2, 3, 4, 5, 6, };
    myfunc(&arr);

    const int little_evil_arr[][2] = {{1, 2}};
    myfunc(&little_evil_arr);
    return 0;
}
[newpson@archlinux tmp]$ gcc -o bin -g -fsanitize=address -Wall -Wextra -Wpedantic -O2 demo.c
demo.c: In function ‘main’:
demo.c:15:27: warning: missing braces around initializer [-Wmissing-braces]
   15 |     const int arr[3][2] = {1, 2, 3, 4, 5, 6, };
      |                           ^
      |                            {   } {   } {     }
demo.c:19:12: error: passing argument 1 of ‘myfunc’ from incompatible pointer type [-Wincompatible-pointer-types]
   19 |     myfunc(&little_evil_arr);
      |            ^~~~~~~~~~~~~~~~
      |            |
      |            const int (*)[1][2]
demo.c:4:25: note: expected ‘const int (*)[3][2]’ but argument is of type ‘const int (*)[1][2]’
    4 | void myfunc(const int (*arr)[3][2])
      |             ~~~~~~~~~~~~^~~~~~~~~~

Отстреливание колена:

// ...
myfunc((const int (*)[3][2]) &little_evil_arr);
// ...

Попробуйте передать в функцию хотя бы двумерный массив

В чём проблема?

#include <stdio.h>
#include <stddef.h>

void myfunc(const int arr[3][2])
{
    for (size_t i = 0; i < 3; ++i) {
        for (size_t j = 0; j < 2; ++j) {
            printf("%d\n", arr[i][j]);
        }
    }
}

int main(void)
{
    const int arr[3][2] = {1, 2, 3, 4, 5, 6, };
    myfunc(arr);
    return 0;
}

Компилируем:

[newpson@archlinux tmp]$ gcc -o bin -fsanitize=address -Wall -Wextra -Wpedantic -O2 demo.c
demo.c: In function ‘main’:
demo.c:14:27: warning: missing braces around initializer [-Wmissing-braces]
   14 |     const int arr[3][2] = {1, 2, 3, 4, 5, 6, };
      |                           ^
      |                            {   } {   } {     }

Запускаем:

[newpson@archlinux tmp]$ ./bin
1
2
3
4
5
6

в некоторых* городах больше удручают перебои в работе мобильного интернета, которые накладываются на невозможность использования спутников для определения местоположения: заказы либо не приходят, так как приложение думает, что ты в пригороде, либо не приходят (или нельзя отметить принятым), так как связи нет (и на каждый принятый заказ по два раза нужно в поддержку звонить, чтобы статусы проставляли). И потом ещё после слота отбиваться от штрафов за "офлайн", "подмену местоположения", "опоздания" и прочее. А так, конечно, попроще.

но формально дозвон идёт по какому-то номеру, при этом линия становится "занятой", не дозвониться до меня. Собственно, поэтому и ответил на коммент)

Нет, GPRS/EDGE. Скорость аж до 100 килобит иногда подскакивает!)

upd. аппарат Nokia 6303ic.

dial-up

1) Использование кнопочника в качестве модема считается? Tele2 позволяет)

Скрытый текст

2) По приколу. upd. Для сессий SSH и входа на простенькие веб-интерфейсы хватает.

как увидеть всю эту красоту

Я использовал первое попавшееся приложение по запросу "apk analyzer" в Google Play. Можно онлайн сервисами распаковать (например). Можно aapt2 из Android SDK использовать. И так далее, куча средств.

приложение ничего не спросило

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

P.S. не относится к RuStore, так как не пользуюсь, не знаю, но бывали случаи, что приложение просто не пускает в себя, если не разрешишь все всплывашки.

разрешений нет никаких кроме уведомлений

неужели?

Скрытый текст

Полный комплект.

Информация

В рейтинге
Не участвует
Откуда
Воронеж, Воронежская обл., Россия
Дата рождения
Зарегистрирован
Активность