LINUX.ORG.RU

Сообщения Unixson

 

Хочется необычного десктопа

Помогите с идеями. Хочу чего-то, сам не могу пока понять чего.

Пролистав тонны скриншотов на лоре и r/unixporn понял что давно не собирал качественный рис, и решил вернутся к этой теме. i3 или awesomewm уже надоели. Да и тайлинг в целом надоел. Хочется чего нибудь необычного. Можно какой нибудь DE как-то необычно настроить. Не знаю. GnuStep (windowmaker) тоже хороший вариант, есть одна тема которую хочется попробовать. А так нет идей.

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

inb4: Зачем? Да незачем, просто ради фана. Давно этим не занимался, пробила ностальгия по этим временам.

ps: пока писал, появилась идея сделать закос под MorphOS. Такой рис будет только у меня и у Майкла Джексона 😁

 , , ,

Unixson
()

Любимое пиво лоровца (18+)

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

Для себя я выбрал пинту свежего светлого лагера и соленые фисташки. Темное vs светлое. Фильтрованное vs нефильтр. ipa vs apa.

Делимся вкусами, тайными гемами, ноунейм крафтом и всем тем что делает вечер пятницы особенным

 , ,

Unixson
()

Как в PostgresQL сделать fuzzy search по jsonb колонке

есть колонка data, в ней лежит json, по этому json нужно сделать поиск. само собой json не особо структурирован. так что привязатся к конкретным ключам не получится. pg_trgm стоит, но если я пробую сделать как рекомендует chatГопоты, а именно:

SELECT * FROM your_table WHERE data::text % ‘search_term’;

This approach converts the JSONB data to text and then uses trigram matching for fuzzy search.

То это не работает, и просто возвращает пустой массив.

С fuzzy search в постгресе я мало знаком, так что подскажите плез что я делаю не так.

where data::text like ‘%First%’

Вот так работает, но мне нужно чтобы еще работало когда юзер например опечатался. Т.е ввел не First а Fist, или Frst. Нужен именно нечеткий поиск по триграммам

 , , ,

Unixson
()

Осторожно наркомания! Есть желание из FreeBSD сделать MorphOS для x86

inb4 пост наркоманский. Идея пришла после 4-х банок энергетика и 2-х суток без сна.

И еще.. Отвечу префаером на некоторые вопросы:

  1. почему FreeBSD? Лицензия
  2. Задолбал линуксовый зоопарк
  3. Хочется консистентную систему, а не конструктор из желудей
  4. Я знаю что есть https://chimera-linux.org/ но это немного не то..

Кароче план прост и надежен как швейцарские часы)

У MorphOS есть такая штука как QBox. Это нужно для обратной совместимости с софтом вышедшим под старые амиги.

Шо собственно говорит нам википедия:

Ядро Quark предполагает систему боксов (Box), позволяющих включать API с абсолютно различными характеристиками в одну ОС. Для того, чтобы иметь максимум программ к моменту своего выхода, MorphOS уже содержала A-Box — программную прослойку, обеспечивающую совместимость с API AmigaOS 3.1. Таким образом, тысячи программ уже работают под MorphOS. В будущем разработчики планируют добавить прослойку Q-Box, которая будет обеспечивать защиту памяти, поддержку параллельной работы нескольких процессоров, виртуальную память и отслеживание ресурсов. Также предполагается, что этот слой позволит одновременное выполнение приложений, написанных для разных ОС (прежде всего BSD, и, возможно, Mac OS X) в одной среде.

А что если сделать тоже самое только для самой BSD? Потому что линуксолятор работает еще хуже чем вайн, а работать как-то надо.

Вот я и решил, а почему бы и да? Можно сделать штуку которая будет работать как модуль ядра (назовем ее условно L-Box) которая будет мало того что обеспечивать совместимость бинарную, так еще и можно будет использовать линукс драйвера напрямую, без необходимости пересборки. Ах да, сразу скажу что это не контейнеры. Это литерали модули которые работают в пространстве ядра. А библиотеки и прочие потроха лежат в системе без всяких чрутов.

Да и зачем останавливаться на линуксе? Можно сделать общий интерфейс и писать такие вот *-Box-ы для совместимости с чем угодно в теории. Например попробовать реализовать WDM интерфейс (драйверная подсистема винды) как в https://en.wikipedia.org/wiki/Longene. ndiswrapper на стероидах обернутый в модуль короче.

Это я к чему… Таким образом можно наконец закрыть вопрос с дровами раз и навсегда, это раз. А два, это наконец получить UNIX для x86 который будет просто работать.

Ну и естественно саму систему сделать более близкой к Amiga/Apple. Ну там /System, /Libraries, атомарные обновления, launchd (или что-то типо того) - вот это вот все. Никакой консоли - GUI наше все. Ясен прекрасен что это будет уже не FreeBSD, но уже что-то свое основанное на ней.

Тред получился сумбурным и наркоманским, но такое у меня состояние сознания сейчас) Уж простите покорного слугу) Шибко хотелось поделится мыслями)

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

 , , ,

Unixson
()

Задать кастомное поведение для папки в Gnome 43

Мне нужно чтобы при нажатии на директорию с окончанием .app nautilus не открывал ее, а запускал кастомный скрипт который я написал. Еще бы неплохо как-то заставить nautilus использовать иконку которая лежит внутри как thumbnail для директории.

Я пробовал написать расширение на питоне для nautilus, но я пока что-то не совсем разобрался.

https://linuxconfig.org/how-to-write-nautilus-extensions-with-nautilus-python

Делал как тут, но проблема в том что это не совсем то что мне нужно.

Если мысли как это сделать? Может у наутилуса есть какое-то апи для этого или типо того? Я пока что не очень хочу лезть в его исходники и править что-то там. Может есть какой-то вариант как обойтись малой кровью?

 , , ,

Unixson
()

Куда девается вся мотивация?

Вот сидишь ты такой, приходит в голову классная идея или проект. Заказываешь железки или начинаешь под это дело учить новый язык. Довольно урчишь предвкушая результат… И тут бац!

А оно мне надо вообще?

А кому-то оно вообще надо будет?

Да зачем я это делаю, у меня и без этого все хорошо вроде

Да оно нинужно вообще

И все… Руки опускаются, железки отправляются на полку собирать пыль, иконка доты 2 уже озаряет рабочий стол. Занавес.

Пацаны, у одного меня такое бывает?

 , ,

Unixson
()

Возможно ли сделать микроядро которое будет работать параллельно с Linux?

Нашел такую штуку как HARMONY OS. На вики пишут что внутри нее есть ядро linux и какое-то свое микроядро которое работает как модуль ядра (я не знаю, видимо грузится через DKMS или типа того) и предоставляет некий API для разработчиков. А еще как я понял через это «микроядро» можно добавлять модули написанные для этого микроядра.

Так вот это действительно так работает или в бухгалтерии опять что-то напутали?

К примеру я захочу реализовать экую некую произвольную подсистему и запаковать ее как kernel object. Не модифицированное ядро linux вообще расчитанно на такие приколы? Или есть какие-то ограничения? Я нуб в kernel дизайне, мне просто интересно.

Вроде был подобный прикол как mkLinux, но там с точностью до наоборот все было построено. mach загружал как модуль модифицированный linux. А вот что если наоборот? Вот к примеру запустить как модуль модифицированную версию того же mach или NT (от react os)? Че будет? Появится ли возможность дергать системные вызовы обращаясь к микроядру как к драйверу или я многого прошу?

Меня не интересует нужно это в продакшене или не нужно, чисто академический интерес. Сама теоретическая возможность так сказать…

 , , , ,

Unixson
()

Упорно не обновлять железо как вид специальной олимпиады

Заметил что на лоре вообще не любят обновляться в плане железа и считают новое железо каким-то хтоническим злом. Я то в целом не против, но это маразм какой-то. Может пора признаться что эпоха феномов, core 2 duo и nvidia 710 ушла?

Одно дело ретро. Я это понимаю, и в какой-то мере поддерживаю. Тыкать палочкой в давно дохлый гроб, запускать старые программы и утилиты. Ностальгировать по прошедшим дням когда и шишка стояла и трава была более прущей зеленее - вполне себе нормальное занятие. Кто-то марки коллекционирует, кто-то вяжет, кто-то бережно реставрирует некро-ПК в память о первом сексе.

Но вот с пеной у рта доказывать что core 2 duo сейчас еще хоть куда, что затычка найденая у бомжей в шалаше вполне себе видеокарта, что ddr2 ничем не хуже ddr4 и вообще это все происки маркетологов которые какают мне на колени - это маразм. Есть все таки тонкая грань между данью уважения к ретро и просто отсутствием денег которое прикрывается всемирным заговором рептилоидов-программистов которые видите ли назло «пишут жирные программы»

Может все таки стоит присмотреться хотя бы к ryzen и rx580? Можно конечно сказать что денег у народа нет но даже если собираться совсем по бичу то:

Материнка + ЦПУ + Видюха + Оператива + БП + m2 ssd получается 37696р. Что в целом могут позволить себе все.

P.S. Я не говорю что ретро это плохо, я сам люблю старые консоли, просто я не понимаю ретроградов.

 , ,

Unixson
()

Как собирают свои дистрибутивы большие мальчики?

Я хочу собирать миниатюрные livecd образы с помощью CI/CD, поэтому у меня как говорится встал вопрос. Как собираются крупные дистрибутивы аля debian или ubuntu?

Как это вижу я:

где-то в гитлабе хранятся исходники, потом через ci/cd собирается iso образ и пушится на релиз сервер. Но вот только как это происходит? iso билдится где-то в контейнере? как собирается новый релиз? а главное чем? должен же быть какой-то автоматизированный билдер.

Я нигде не могу найти примера как собирать дистрибутив из исходников в ci/cd. Везде одни примеры с archiso или ему подобных систем.

Было бы неплохо иметь возможность собирать минимально рабочий дистрибутив в docker, podman или даже vagrant контейнере. Как вариант можно засунуть buildroot в контейнер, но это костыль как по мне.

Хочется иметь флоу аля:

пушнул код в ветку –> тригернулся пайплайн –> собрался nightly build iso

сделал релиз тег –> тригернулся пайплайн –> собрался релиз

Может есть какой-то признанный индустрией стандарт сборки или типа того? Как это работает у больших мальчиков?

 , ,

Unixson
()

Linux и игры в 2022 году

Прошло уже немало лет с тех пор как steam впервые релизнулся под Linux и хотелось бы как-то подытожить пройденный разработчиками путь и поделится своим опытом и впечатлениями за почти 10 лет.

TL/DR: Игр стало в разы больше. Появилась возможность запускать и играть в ААА тайтлы, а не только в индюшатину и opensource клоны квейка. Большинство моей библиотеки стима так или иначе поддерживается, за исключением того что требует анти-чит EAC. Но чаще всего я играю в синглы или по локальной сети, так что это не проблема вовсе. Добавилось и драйверов для самой разной периферии. От видеокарт до джойстиков и даже рулей (хотя последнее сам не пробовал)!

Итак… Мой конфиг выглядит примерно так

CPU: AMD Ryzen 5 2600 (12) @ 3.400GHz
GPU: AMD ATI Radeon RX 550 640SP / RX 560/560X
Memory: 13756MiB / 15944MiB

Составлю небольшой список игр в которые я играю исключительно под Linux

Все суждения оценочные

  • Ведьмак 3: Дикая охота - пройдено (я бы даже сказал выпито досуха) примечание: выработался условный рефлекс - сел играть в Ведьмака - нужно гнать за пивом.
  • Ведьмак 2: Убийца королей - пройдено.
  • Ведьмак: Enhanced Edition - Александр Рева ищет спирт 10 часов.
  • TESV Skyrim - прошел пока только пролог.
  • Doom Eternal - пройдено.
  • Dishonored (Definitive Edition) - пройдено (были баги с отображением, пофиксилось простым обновлением)
  • Firewatch - пройдено!
  • Portal 2 - cake is a lie.
  • FlatOut 2 - пройдено, треки добавлены в плейлист.
  • Hotline Miami 1/2 - do you like hurting other people?
  • Grand Theft Auto trilogy remaster - не пройдено, но играбельно
  • GTAIV - середина карьеры
  • Grand Theft Auto V - пройдено и не один раз.
  • Black Mesa - пройдено со скупой слезой ностальгии
  • Cuphead - играется великолепно, но сзади адски горит.
  • Metro 2033 Redux - пройдено
  • Metro Exodus - пока еще не прошел, но думаю скоро сяду.
  • Divinity Original Sin 2 - играл пару раз, но что-то не зашло
  • Surviving Mars - запустил, покрутил, но так и прошел.
  • City Skylines - симулятор «ээээ как это 4 утра».
  • Detroit: Become Human - козюмба гений
  • Saints Row The Third - круто, но gta больше заходит
  • Alien Swarm - на половине остановились
  • Frostpunk - 10 обморожений из 10
  • Gang Beasts - самый раз для посиделок
  • Teenage Mutant Ninja Turtles Shredder’s Revenge - рекомендую если ностальгируете по старым консолям
  • Bioshock Infinite - Жюль Верн держит мое пиво.
  • Bioshock - симулятор инфаркта под водой в сетинге стимпанк.
  • Subnautica - симулятор инфаркта под водой
  • Subnautica: Below Zero - симулятор инфаркта под водой во льдах
  • Wolfenstein II: The New Colossus - феминистки поворачивают стрелочку и чета там про войну (3/10)
  • ASTROKILL - прошел только пролог.
  • Mirror’s Edge - паркур - молодежное движение
  • prey - прошел пролог, только не понял что это было, хотя все хвалили.
  • Dark Souls Trilogy - начал проходить, закупил асбест на сиденье.

А вы говорите игр нет! Вон их сколько!

Я понимаю что не всем пока еще везет с драйверами, с железом и т.д.

НО! Это качественный скачек, по сравнению с тем что было тогда. Когда приделом мечтаний было запустить CS1.6 или DOOM3 на средних настройках, да так чтобы все не тормозило и не вылетало. Уже честно говоря я забыл когда в последний раз открывал WineHQ. Теперь я точно уверен что в 99% случае игра заработает без танцев с бубном.

По крайней мере именно такой ликбез у меня получился. Хотя у вас все может быть по другому.

 , ,

Unixson
()

Помогите подключить Dualshock 4 к Ubuntu 22.04

В данный момент пробовал подключать ТОЛЬКО через USB т.к bluetooth адаптера сейчас на руках нет

Версия контроллера - CUH-ZCT2E

Ядро - Linux unixson-amd 5.15.0-40-generic #43-Ubuntu SMP Wed Jun 15 12:54:21 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

lsusb -

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 1c4f:0084 SiGma Micro USB Keyboard
Bus 001 Device 003: ID 09da:9090 A4Tech Co., Ltd. XL-730K / XL-750BK / XL-755BK Mice
Bus 001 Device 005: ID 054c:05c4 Sony Corp. DualShock 4 [CUH-ZCT1x]
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

lsmod | grep hid

mac_hid                16384  0
hid_generic            16384  0
usbhid                 65536  0
hid                   147456  2 usbhid,hid_generic

tree /dev/input

/dev/input
├── by-id
│   ├── usb-A4TECH_USB_Device-event-if00 -> ../event3
│   ├── usb-A4TECH_USB_Device-event-kbd -> ../event2
│   ├── usb-A4TECH_USB_Device-if01-event-mouse -> ../event4
│   ├── usb-A4TECH_USB_Device-if01-mouse -> ../mouse0
│   ├── usb-LIZHI_Flash_IC_USB_Keyboard-event-if01 -> ../event7
│   ├── usb-LIZHI_Flash_IC_USB_Keyboard-event-kbd -> ../event5
│   └── usb-LIZHI_Flash_IC_USB_Keyboard-if01-event-kbd -> ../event8
├── by-path
│   ├── pci-0000:01:00.0-usb-0:3:1.0-event -> ../event3
│   ├── pci-0000:01:00.0-usb-0:3:1.0-event-kbd -> ../event2
│   ├── pci-0000:01:00.0-usb-0:3:1.1-event-mouse -> ../event4
│   ├── pci-0000:01:00.0-usb-0:3:1.1-mouse -> ../mouse0
│   ├── pci-0000:01:00.0-usb-0:4:1.0-event-kbd -> ../event5
│   ├── pci-0000:01:00.0-usb-0:4:1.1-event -> ../event6
│   └── pci-0000:01:00.0-usb-0:4:1.1-event-kbd -> ../event8
├── event0
├── event1
├── event10
├── event11
├── event12
├── event13
├── event14
├── event15
├── event16
├── event17
├── event18
├── event2
├── event3
├── event4
├── event5
├── event6
├── event7
├── event8
├── event9
├── mice
└── mouse0

Что я пробовал:

  • установил ds4drv - не помогло. –hidraw не распознает девайс
  • установил sc-controller - не помогло. не распознает девайс
  • накатывал патчи на ds4drv и sc-controller
  • устанавливал драйвер hid-sony через dkms
  • накатывал на него патч
  • пробовал запускать через xboxdrv - тоже не взлетело
  • прописывай рулы для udev

Что я не пробовал еще:

  • подключить через bluetooth - адаптера сейчас на руках нет
  • сделать бочку

На винде проверял, работает - но только через запущенный ds4windows (никакого plug&play, если закрыть программу то контроллер сразу отключается)

На android работает через bluetooth без всякой магии

help

 ,

Unixson
()

советы по подбору ноутбука для Linux

Начну с того что считаю ВСЕ ноутбуки жопным калом, но обстоятельства говорят не в пользу моего мнения. Сейчас мне нужна портативность. Хочу выбрать себе ноутбук для работы и для каких никаких но игр. Кому интересно что за игры могу скинуть список в комментариях)) Бюджет около 60к рублёв. Дистрибутив установлю такой же как основной на десктопе - Kubuntu 20.04 LTS. При себе сейчас имею полноценный десктоп с такими характеристиками

$ neofetch CPU: AMD Ryzen 5 2600 (12) @ 3.400GHz GPU: AMD ATI Radeon RX 550 640SP / RX 560/560X 4Gb VRAM Memory: 14033MiB / 15944MiB

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

Хочу получить примерно ту же или чуть меньшую производительность в формфакторе лептопа. Вес особого значения не играет (я работу на нем буду работать, а не фапать на дизигн и толщину) Касаемо начинки это ssd или m.2 и минимум 8G оперативной памяти. Процессор и карта желательно от красных (мне в целом нравиться их поддержка линукса, и хотел бы продолжить в том же духе). Время жизни от батарейки тоже особо не колышет, чтобы хотя бы половину рабочего дня без зарядки протянуть смог.

Нашел пару подходящих вариантов. Тыц и Тыц Прошу под катом поделится своими мыслями/советами/кулстори. wdyt

PS вот только не надо мне про System76 писать! Я знаю, я хочу его с тех пор когда о нем в первый раз услышал, но достать его в моей перди практически не реально. Заказ из омерики будет идти долго и дорого. А мне нужно здесь и сейчас. Ноутбук берется с запасом на 4-5 лет МАКСИМУМ! Потом он либо утилизируется либо перепродается новому лоху счастливому обладателю.

 , ,

Unixson
()

как работают звуковые подсистемы в Linux

К своему стыду не углублялся в эту тему и не совсем понимаю как вся эта кухня работает. И если кто нибудь объяснит человеческим языком, не особо вдаваясь в подробности что за ужас тут творится, то я буду очень признателен.

Итак, я знаю что есть pulseaudio - звуковой сервер. По идеи он должен работать с потоками аудио, сводить источник и output девайсы, управлять громкостью и т.д. Есть ALSA, как я понял работает она в пространстве ядра и тоже имеет свои настройки и делает примерно тоже самое. А также предоставляет API для программистов и работает с низкой и стабильной задержкой. А есть еще JACK и JACK2. Вот тут я уже начинаю путаться. Нафига оно нужно? Да и что такое JACK в принципе? Есть большой пласт приложений, bitwig studio например или другие DAW, которые требуют (хоть и имеют фолбеки к другим подсистемам) его наличия. Почему бы не использовать ALSA к примеру? И чем ALSA плох что на его замену был написан pulseaudio? Плюс как я понял можно объединять ALSA и pulseaudio каналы через JACK. Вопрос нафига?

И еще: всегда интересовал вопрос чем все это отличается от CoreAudio в MacOS или звуковой подсистемы в офтопике если не вдаваться в подробности.

 , , , ,

Unixson
()

Хочу собрать свой собственный «дистрибутив» на основе Gentoo

У меня довольно странный вопрос. Я хочу собрать свой собственный «дистрибутив» на основе Gentoo. Это не будет чем-то большим, вроде Ubuntu или чего-то в этом роде. Все что я хочу сделать, это установить и настроить Gentoo в соответствии с моими предпочтениями, а потом создать загрузочный iso со всеми включенным в него стафом. Таким образом, я смогу пользоваться уже настроенной системой «искраропки» когда покупаю новый компьютер или когда мне нужно установить все заново. (пользовательские данные, конечно же, будут храниться в облаке). Также было бы неплохо компилировать образы без виртуальной машины (скорее всего в chroot)

Есть какие-нибудь идеи?

Планы на будущее:

  1. Хочу перенесите систему обновления A\B из Chromium OS, чтобы я мог создавать образы обновлений на сервере, а затем просто обновлять систему, не возясь с emerge. (плюс сборки будут всегда проверенные и если что я смогу откатится на рабочую сборку если что-то не будет работать)
  2. Какой-то графический метод установки (я подумываю о том, чтобы самостоятельно создать установщик с помощью flutter, главным образом потому, что это все, что я знаю на данный момент)

И еще кое какие утилиты для улучшения повседневного удобства использования. Скорее всего emerge для обновлений я практически использовать не буду если мне удастся портировать A\B обновления. А софт планируется устанавливать с помощью appimage и/или c помощью GNUstep-style .app bundle. Подсмотрел такую штуку в helloSystem. Причем утилиты за это ответственные уже написанные под freebsd но автор клянется что на линуксе тоже работает (но это надо проверить)

Сразу отвечу на вопросы которые могут появится: q: Почему Gentoo? a: Потому что хочу систему которую я могу собрать из сырцов + хорошая документация + там есть уже эбилды того что я хочу заинтегрировать

q: НЕ НУЖНО!!!/Кому это нужно? a: т.к делаю для себя то это можно считать экспериментом и кроме меня этим никто пользоваться не будет

q: Как будешь драйвера ставить? a: Т.к это gentoo то собираться и оптимизироваться все будет под конкретную машину. А потом остается только стянуть обновление с сервера. В проприетарных дровах я не нуждаюсь т.к у меня правильная AMD карта которая очень хорошо работает c MESA драйвером.

q: А cli утилиты ты тоже в appimage будешь ставить? Все понятно афтор дятел дизлайк атписка!!11 a: Нет конечно, все что мне нужно для работы можно установить через emerge. Ну или по поэкспериментировать с linux brew

q: Ты сказал что это нужно для «когда покупаю новый компьютер» разве это не противоречит «собираться и оптимизироваться все будет под конкретную машину» a: Нет, не противоречит. Я планирую сделать сборочный пайплайн в gitlab-ci и конфигурировать сборку под каждую конкретную машину. Но опять же если/когда мне это будет нужно

q: Макось какая-то получается. Нинужно a: Ну нет, до макоси как раком до китая. Но опять же, это больше эксперимент. Если получится собрать что-то рабочее, то возможно буду использовать как daily driver

q: что такое A\B обновление a: В системах с поддержкой обновлений A /B каждый раздел, такой как ядро или корневой (или другие артефакты, такие как DLC), имеет две копии. Мы называем эти две копии активными (A) и неактивными (B). Система загружается в активный раздел (в зависимости от того, какая копия имеет более высокий приоритет во время загрузки), и когда доступно новое обновление, оно записывается в неактивный раздел. После успешной перезагрузки ранее неактивный раздел становится активным, а старый активный раздел становится неактивным.

q: Чем это отличается от бекапов? Сделай бекап и потом просто раскатывай куда хочешь. Ты тратишь мое время a: Для того чтобы накатить бекап там уже должно что-то стоять. В любом случае если я захочу сменить железку придется повторять подвиг установки генты заново. Плюс я же говорю что хочу немного поднять юзабилить, напичкав в систему своих скриптов и софта. Проще же иметь образ в котором все это уже есть и как в рекламе просто добавить воды. А пользовательские дикпики файлы у меня и так в облако синхронятся.

q: Ты дурак и рак съеби с моих двощей лора a: Я дурак, у меня справка есть

q: Нескучные обои забыл. Попов тебе не родственник? a: Да, брат от прошлого брака по маме

q: Что ты курил? a: Мальборо с кнопкой

 , , ,

Unixson
()

Звоноки из браузера на GSM телефоны без GSM железа

Есть практическая задача поднять телефонию в своем приложении. Приложение должно звонить на городские/мобильные телефоны из браузера (Electron приложения) Что я уже пробовал?

  • Yandex.телефония — WebSDK такое себе, дорого, ну прям очень дорого.
  • Voximplant — Отличное WebSDK, но так же дорого.
  • Облачная АТС от ОПсоСа — связь не дорогая, если пользоваться всеми плюшками типо минут, но нет WebSDK а следовательно нужен Asterisk и надежный сервер

Основная проблема в том что я не могу использовать свои сервера, потому что поддержка сервера и оплата хостинга выйдут в копеечку из-за высокой нагрузки. Поэтому я хочу переложить вызовы на сторону клиента. Задача состоит в том чтобы найти библиотеку/способ/готовое решение чтобы совершать звонки из браузера и/или electron приложения (клиента) без особых затрат используя решения ОПсоСа. На хабре находил вариант с baresip, но на момент написания статьи ее автор жаловался что baresip не имеет внешнего API (либо консоль либо HTTP запросы к локалхосту, так-то). Алсо копал в сторону sipjs но это именно webrtc для передачи видео/аудио и с SIP протоколом вроде как не имеет ничего общего.

P.S: Я не прошу готовую реализацию, я лишь прошу направить меня куда копать и/или возможно ли это на практике. Алсо ТС рядовой разработчик который никогда с этим не сталкивался. Так что сильно тряпками не гоните. Спасибо за понимание!

 , ,

Unixson
()

Помогите со сборкой DSDT

Ноутбук: Pegatron C15B (да, прошло 4 года и он все еще воняет китайцами)

ОС: Ubuntu 16.04

CPU: model name	: Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz

BIOS: *-firmware
          описание: BIOS
          производитель: American Megatrends Inc.
          физический ID: 0
          версия: C15B.612
          date: 01/08/2014
          размер: 64KiB
          capacity: 4032KiB
          возможности: pci upgrade shadowing cdboot bootselect socketedrom edd int13floppy1200 int13floppy720 int13floppy2880 int5printscreen int9keyboard int14serial int17printer acpi usb biosbootspecification uefi

VIDEO CARD: NVIDIA 840M

Суть такова: компьютер стартует cо второго или третьего раза, зависая то на старте lightgm то в рандомном месте загрузки. Как только его потыкать пару раз устроив аутоэротическую асфиксию отключив питание, можно добиться желаемого эффекта, а именно загрузку иксов и DE. Возможно еще это от того, что у меня чип видеокарты скорее всего навернутый, но это не точно. Ибо при загрузке всплывают сообщения об ошибках в DSDT


    0.951062] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951083] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS02._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951359] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951377] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS04._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951489] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951507] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS05._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951628] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951652] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS06._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951772] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951796] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS07._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951920] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.951944] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS08._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952101] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952125] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS09._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952263] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952286] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS10._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952409] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952432] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS11._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952557] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952580] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS12._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952701] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952724] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS13._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952845] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.952868] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.HS14._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.954130] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.954158] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.SSP3._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.954287] ACPI Error: Method parse/execution failed \_SB.XPLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)
[    0.954311] ACPI Error: Method parse/execution failed \_SB.PCI0.XHC.RHUB.SSP4._PLD, AE_AML_PACKAGE_LIMIT (20170531/psparse-550)

При разборке DSDT я вижу

Intel ACPI Component Architecture
ASL+ Optimizing Compiler version 20160108-64
Copyright (c) 2000 - 2016 Intel Corporation

Compiler aborting due to parser-detected syntax error(s)
dsdt.dsl   9695:         }
Error    6126 -         ^ syntax error, unexpected '}'

dsdt.dsl  24775: 
Error    6126 - syntax error, unexpected $end and premature End-Of-File

ASL Input:     dsdt.dsl - 24775 lines, 778498 bytes, 11643 keywords
Hex Dump:      dsdt.hex - 203 bytes

Compilation complete. 2 Errors, 0 Warnings, 0 Remarks, 0 Optimizations

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

Приложу ссылку на файлы DSDT goo.gl/6xqRrG

Алсо, хочу отключить дискретку через DSDT ибо в биосе нет пункта для ее отключения.

В тред призывается init_6

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

 , ,

Unixson
()

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