С Днём Победы
Всех причастных и непричастных поздравляю с праздником победы Красной Армии и советского народа над нацистской Германией в Великой Отечественной войне 1941—1945 годов.
Всех причастных и непричастных поздравляю с праздником победы Красной Армии и советского народа над нацистской Германией в Великой Отечественной войне 1941—1945 годов.
В марте 2018 года Лука Бонисси, итальянский разработчик и ярый сторонний СПО, купил новый планшет фирмы Lenovo с предустановленной на него ОС Windows. Пользоваться последней он не собирался, поэтому написал запрос в службу поддержки производителя планшета с просьбой возврата предустановленной ОС и получения уплаченных за нее денег (42€). После того, как в Lenovo ему отказали, причем довольно демонстративно, он подал жалобу в итальянское управление по конкуренции и рынку (AGCM), но и это оказалось бесплодным. Тогда он решил подать в суд…
( читать дальше... )
>>> Подробности
cc main.c -lcurl && ./a.out https://www.linux.org.ru/people/crutch_master/profile && abc2midi lm.abc && xdg-open ./lm46.mid
main.c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdint.h>
#include <curl/curl.h>
#define MAX_DAYS 365
struct year
{
uint32_t date;
uint32_t messages;
}user_year[MAX_DAYS];
static size_t profile_json_size = 0;
size_t get_profile_json(void* ptr, size_t size,size_t nmem, void* userdata)
{
if(nmem==0) return 0;
char** str=(char**)userdata;
const char* input=(const char*)ptr;
if(!str[0])
{
str[0]=malloc(nmem+1);
}else{
str[0]=realloc(str[0], profile_json_size+nmem+1);
}
memcpy(str[0]+profile_json_size, input, nmem);
profile_json_size+=nmem;
(*str)[profile_json_size]='\0';
return nmem;
}
int sort_compare(const void *a,const void * b)
{
if(((struct year*)a)->date < ((struct year*)b)->date)
{
return -1;
}else if(((struct year*)a)->date > ((struct year*)b)->date)
{
return 1;
}else
{
return 0;
};
return 0;
}
void sort_profile_year(struct year* y)
{
qsort(y,MAX_DAYS,sizeof(struct year),sort_compare);
}
void distribute_profile_year(struct year * y)
{
struct year yn[MAX_DAYS]={0};
uint32_t day = 0;
for (int i = 0; i != MAX_DAYS; ++i)
{
if(y[i].date != 0) {day=i;break;};
}
yn[0].date=y[day].date;
for (int i = 1; i != MAX_DAYS; ++i)
{
yn[i].date=yn[i-1].date+86400;
}
for (int i = 0,c=day; i != MAX_DAYS; ++i)
{
if(yn[i].date == y[day].date)
{
yn[i].messages=y[day++].messages;
}
y[i]=yn[i];
}
}
int main(int argc, char *argv[])
{
enum io_args
{ arg_url = 1,
arg_out = 2,
};
CURL * curl;
CURLcode res;
curl = curl_easy_init();
char * profile_json_data = NULL;
char urlbuff[1024]={0};
snprintf(urlbuff,1023,"%s%s",argv[arg_url],"?year-stats");
if(curl)
{
curl_easy_setopt(curl, CURLOPT_URL,urlbuff);
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &profile_json_data);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION,get_profile_json);
res = curl_easy_perform(curl);
if(res != CURLE_OK)
{
fprintf(stderr, "curl_easy_perform() failed: %s\n",
curl_easy_strerror(res));
curl_easy_cleanup(curl);
return 1;
}
curl_easy_cleanup(curl);
}
for (size_t i = 0,c = 0; i < profile_json_size; ++i)
{
unsigned int messges_nums=0;
unsigned int messges_date=0;
if(profile_json_data[i]=='"')
{
if(sscanf(profile_json_data+i,"\"%d\"",&messges_date)==1)
{
user_year[c].date = messges_date;
};
}
if(profile_json_data[i]==':')
{
sscanf(profile_json_data+i,": %d",&messges_nums);
user_year[c++].messages=messges_nums;
}
}
sort_profile_year(user_year);
distribute_profile_year(user_year);
for (int i = 0; i != MAX_DAYS; ++i)
{
printf("[%d][%3d] -> %i\n",user_year[i].date,user_year[i].messages,i);
}
FILE * out = fopen("lm.abc","w");
if(!out)
{
return 1;
}
fprintf(out, "X:46\nK:C\n");
static char * abc_language_table[30] =
{
"F,,","b",a","g","f","e","d","c ",
"B,","A,","G,","F,","E,","D,","C,",
"B,,","A,,","G,,","F,,","E,,",
"D,,","C,,","B,,,","A,,,","G,,,",
"F,,,","E,,,","D,,,","C,,,",
};
static char * xM[7]=
{
"\"Cm\" ",
"\"Dm\" ",
"\"Em\" ",
"\"Fm\" ",
"\"Gm\" ",
"\"Am\" ",
"\"Bm\" ",
};
if(strlen(urlbuff) > 32)
{
int size =strlen(urlbuff);
for (int i = 32; urlbuff[i] != '/' && i < size;)
{
fprintf(out, "%s",abc_language_table[urlbuff[i++] % 29]);
}
}
for (int i = 0; i < MAX_DAYS; ++i)
{
if(i%7==0)
{
fprintf(out, "\n%s", xM[i%6]);
}
fprintf(out, "%s",abc_language_table[user_year[i].messages % 29]);
}
fclose(out);
return 0;
}
:D
Минцифры разработало предложения по собственной цифровизации: на модернизацию сервисов госуслуг и т.п. из бюджета предлагается выделить более 118 млрд руб. Из них 19,4 млрд руб. предложено направить на закупку для врачей и учителей 700 тыс. планшетов на российской операционной системе (ОС) «Аврора», а также разработку приложений для нее. Пока именно нехватка софта ограничивает некогда масштабные планы по использованию «Авроры» в госсекторе.
Получается, что фактическими получателями этих денег могут стать российские IT-компании «Аквариус» и «Байтэрг», так как пока только они производят российские планшеты на «Авроре», уточняет другой собеседник “Ъ” в правительстве. В «Аквариусе» отказались от комментариев, в «Байтэрге» оперативно не ответили на запрос.
По его словам, об этом уже велись переговоры с тайваньским производителем MediaTek, который оценил разработку чипсетов в $3 млн. Еще около 600 млн руб. потребуется на создание софта под них.
Гендиректор «Открытых мобильных платформ» (ОМП; разрабатывает ОС «Аврора») Павел Эйгес сказал “Ъ”, что планы по масштабированию проекта действительно есть, но ему неизвестно о возможной закупке чипсетов. В «Ростелекоме» (владеет 75% в ОМП, остальное у владельца группы ЕСН Григория Березкина и его партнеров) отказались комментировать информацию о возможной закупке чипсетов, сказав лишь, что планируется масштабирование проекта с ростом количества устройств на ОС «Аврора», которые будут поставлять в правоохранительные органы, медицинские и образовательные организации.
Как сообщал “Ъ” 16 апреля 2020 года, «Ростелеком» к тому моменту уже потратил на развитие ОС около 7 млрд руб., а начиная с 2020 года оценивал свои ежегодные затраты на нее в 2,3 млрд руб. Развитие «Авроры» невозможно без гарантированного госзаказа и регуляторной поддержки, говорил в апреле 2020 года источник, знакомый с позицией «Ростелекома». Первым крупным госпроектом по использованию устройств под этой ОС должна стать перепись населения, которая пройдет в 2021 году. Для нее «Росстату» уже поставили 360 тыс. планшетов на «Авроре».
>>> Подробности
Пришла в голову идея создать MMORGP на тему упоротой толерантности в техническом смысле. IRL такую игру уже запилили, а в техсообществе пока прогресс движется медленно.
Идея родилась из размышлений о том, является ли Linux PAM расистским. Когда логинишься, тебя просят идентифицировать себя и аутентифицироваться. Но это нарушение права на самоидентификацию
Допустим, я идентифицирую себя как небинарный root и я испытаваю угнетение от пользователей с gid=0. Надо мною стеклянный потолок, мне запрещают самовыражаться в /etc и вообще - в linux есть ПРИВИЛЕГИИ! Кроме того, я не могу с помощью adduser пригласить мигрантов из windows и гейоси которые обогатят нашу культуру.
Можно сделать на эту тему игру со следующим сюжетом: небинарный пользователь собирает группу единомышленников, запиливают иконки в форме соросовского кулака, и начинают борьбу за diversity. В ходе борьбы они находят дыру в ведре, которая экспоитится с помощью использования uidов давно удалённых пользователей, и через неё рутуют систему и делают администратором слабоумного деда с логином joebiden.
Как вам такая идея? я считаю что это отличный способ популяризовать линукс.
Выпущено обновление графического редактора GIMP. По стечению обстоятельств основная масса изменений в этой версии пришлась на плагины поддержки различных форматов файлов.
Главное:
>>> Подробности
Хочу представить вашему вниманию фреймворк под названием boobstrap, написаный на POSIX shell, для создания загрузочных образов с дистрибутивами GNU/Linux. Фреймворк позволяет пройти весь пусть в три простых шага: от развёртывания системы в chroot, создания initramfs-образа включающего в себя систему из chroot, и в конечном счёте загрузочного ISO-образа. boobstrap включает в себя три утилиты mkbootstrap, mkinitramfs и mkbootisofs соответсвенно.
( читать дальше... )
Собсно пилю потихоньку блок обработки для волоконно-оптического вибрационного извещателя
Рабочее место (моё) простенькое ибо не понимаю зачем нужна ДЕ, которая мешает больше чем помогает: таск бар + ярлыки под рукой+ генмон со статусом яндекс-диска (не нашёл под рукой удобный аплет, показывающий когда синхронизация завершилась и можно выключать ПК - так вполне понятно хотя места занимает не в коня)
Рабочее место (оператора, точнее это режим настройки для пуско-наладчика, у оператора просто план/зоны/события) в скучном сером свинге (штатная кросс-платформенная тема нимбус) - пытался привить им любовь к плюшевым цветам и лазурным кнопкам но словил фидбек из разряда «шта эта??? у нас глаза пухнут».
ДЕ у оператора ессно нет, голые иксы и одна программулька ибо нефиг.
Это версия софта в ранней стадии разработки, рабочая охраняет, помимо прочего, 4 аэропорта и прошла первый этам гос испытаний на военку :-)
Цимус в том что в течении года она станет бесплатной (точнее она и так бесплатная но пока без железа её не получить ибо смысла нет) и в обозримом будущем открытой, при этом она умеет не только в наше но и в болидовское железо (через с2000-пп) + onvif/rtsp и отлично пашет на расбери 3/4 (просто добавь USB->RS485 или ethernet->rs-485)
п.с. наличие второго монитора позволяет заодно похвастаться мимимишными обоями, призванными выдавить скупую слезу из тех, кому мамка купила первый компутер годиков 25 назад
>>> Просмотр (2179x1080, 1016 Kb)
Вашему вниманию представляется инновационный язык шизотерического визуального программирования МЕРТВОПРОГ!
Да, не мёртво-, а именно мертво-! Почему — узнаете, когда потыкаете :3
Написано на чистом JS и работает даже в Pale Moon!
Демонстрация программы для переворота юникодной строки (зеркало для тех, у кого не работает Vimeo). Язык создан специально под эту задачу и больше ни для чего не годится.
Лицензия — GPLv1.
>>> Играть онлайн без регистрации и SMS
Лично liksys отныне запрещается путать метапрог и мертвопрог.
Участники сообщества Debian рады сообщить о выходе очередного стабильного выпуска операционной системы Debian 10 кодовое имя buster.
Данный релиз включает в себя более 57703 пакетов, собранных для следующих процессорных архитектур:
( читать дальше... )
По сравнению с Debian 9 stretch в Debian 10 buster добавлено 13370 новых пакетов, обновлено более 35532 пакетов (что составляет 62% дистрибутива stretch). Также, по различным причинам многие пакеты (более 7278, 13% дистрибутива stretch) были удалены из дистрибутива.
Debian 10 buster поставляется с различными окружениями рабочего стола, такими как GNOME 3.30, KDE Plasma 5.14, LXDE 10, LXQt 0.14, MATE 1.20, и Xfce 4.12. Также в репозитории имеются Cinnamon 3.8, Deepin DE 3.0, различные оконные менеджеры.
( читать дальше... )
>>> Подробности
Полтора года назад я уже писал, что в Overwatch теперь можно играть под вайном. Тогда это было около 30 фпс на минимальных настройках. С тех пор я так и не трогал вайн. И сегодня я решил проверить, как оно теперь, когда появился DXVK.
Немного предыстории, почему я вообще снова полез в вайн. Сначала я решил проверить игру на говноноутбуке с интеграшкой Intel HD 4000, на которой было 20 фпс на минималках против 7 в шин10. Vulkan на интеграшке не завёлся, хотя нужные пакеты установлены, а vkcube и vkmark писали, что Vulkan на Ivy Bridge ещё не готов. Есть ещё дохлая дискретка AMD Radeon HD 8500M Series, которая иногда даже заводится и на ней можно поиграть, только под вулканом игры выглядят так (под RADV всё оказалось ок). И тут мне пишут:
ну это ж реально достижение. На нормальном компе (сорри за оскорбление твоего ноута) наверное будут очумительные фпс
А так как мои компы к нормальным не относятся (то феном вместо процессора, то RX 460 вместо видеокарты), то мне конечно же захотелось проверить. Чем же ещё заниматься в 4 часа утра?
Был восстановлен слетевший GRUB манжары, обновлены пакеты (из testing, ради свежих кед), установлен AMDVLK и что-то ещё. Дабы не возиться с установкой вайна и нужных ему пакетов, поставил Lutris. Список пакетов для установки я взял отсюда, добавив winetricks. Обычный вайн не подойдёт - сначала не заработает Battle.Net, а если каким-то чудом и заработает, то не запустится игра.
Из хорошего:
Из плохого:
Хотел записать короткий видосик для примера. Узнал, что OBS Studio теперь может писать видео через vaapi, что очень здорово (и насколько я понял, позволяет писать видео с экрана даже на достаточно древних радеонах). Но в нём есть косяк как и в виндовой версии OBS - если видеокарта нагружена, то видео нормально не запишется. Если писать через Relive, то фпс незначительно просядет и появится небольшой инпут лаг, что терпимо, но к сожалению релайва под линукс нет. Программный кодировщик увеличил количество фризов.
Прогресс есть, и он радует. Теперь почти любая игра заводится под вайном с приемлемой производительностью, и это прекрасно.
Вывод: произошёл переход от «да, но пока нет» к «да, но пока не совсем».
Железо:
Очень важный UPD: автор тупой и забыл проверить RADV. С ним ситуация намного лучше. Фризы немного реже, они мелкие, максимальный фриз, который я словил (на новой карте) - 2 сек (против 10 на AMDVLK). График выглядит лучше. С RADV даже можно играть.
>>> Просмотр (1920x1080, 1867 Kb)
Точнее «нейрокрыса»: т.к. модераторских полномочий у меня нет, я лишь могу сделать скрипты, которые будут отписываться в специальный тред
Тема навеяна Бан без причины (комментарий)
Суть такова: буду пилить набор скриптов для «выявления подозрительных сообщений», обучать буду на текстах с LORа, которые были удалены модераторами.
Когда доделаю попрошу модераторов оценить качество работы сабжа.
На данный момент:
Проблема: модераторы указывают причины вручную (или не указывают совсем), соответственно:
Для решения проблемы сформированы:
Да, разделитель в файлах - точка с запятой.
Прошу модераторов поглядеть в файлы по ссылкам и внести свои пожелания по классам для разметки, корректировки таблицы соответствия.
cast jollheef, Shaman007, maxcom
По результатам обсуждения тут решил:
В качестве положительных примеров брать удаленные модераторам вручную сообщения, для которых указаны нормальные причины а не всякий треш.
В качестве отрицательных - оставленные модераторами собщения из тех же топиков, что и удаленные.
Если данных хватать не будет - добью неудаленными из других топиков.
Пришлось немного переформатировать датасет (датафрейм pandas), т.к. раннее там не было ссылок сообщение-топик.
В эти выходные сделаю обучающую выборку и попробую сделать бинарный классификатор.
Если получится, - на следующей неделе буду пилить нейромодератора нейроябеду.
Прим. переводчика: для удобства читателей даты приведены по московскому времени
Недавно мы пропустили момент истечения срока действия одного из сертификатов, используемых для подписи дополнений. Это привело к отключению дополнений у пользователей. Теперь, когда по большей части проблема исправлена, я хотел бы рассказать о подробностях произошедшего и о проделанной работе.
( читать дальше... )
>>> Подробности
Релиз-менеджер легковесной среды рабочего стола XFCE Саймон Штайнбайсс (Simon Steinbeiss) в почтовой рассылке проекта опубликовал планируемый график выхода предварительных и финального выпусков XFCE версии 4.14. Команда разработчиков будет придерживаться традиционной модели выпуска новой версии: сначала будут выложены три пре-релиза, за которыми последует финальная стабильная сборка. Сам график выглядит так:
19 мая: 4.14-pre1
30 июня: 4.14-pre2
28 июля: 4.14-pre3 (если он все-таки не потребуется, то в этот день будет представлен 4.14-final)
11 августа: 4.14-final
Если верить краткому плану по задачам на релиз 4.14, то всё уже готово: среда полностью переписана на GTK3 с учетом сохранения совместимости со старыми темами xfwm4, рендеринг через GdkGC заменен на cairo, добавлена поддержка XInput2.
Желающие протестировать текущие сборки могут запустить xfce 4.14 из docker-контейнера. Обратная связь приветствуется!
>>> Подробности
Компания Google тихо и незаметно объявила о запуске своей облачной платформы для разработки, публикации и стриминга игр под названием Stadia. Как и в существующих стриминговых сервисах игрок получает на оконечное устройство видеопоток и отправляет события ввода на сервис по сети. Решение от Google отличается в первую очередь тем, что представляет из себя новую вычислительную программно-аппаратную платформу. Аппаратную основу составляют серверные юниты со следующей спецификацией, разработанной в партнёрстве с AMD:
Программную основу составляет операционная система GNU / Linux на базе дистрибутива Debian с поддержкой графического API Vulkan
Видеопоток с платформы транслируется в FullHD, 4K и, в перспективе, 8K качестве на любое устройство, где работает Google Chrome. В качестве игровых контролёров заявлена поддержка всех существующих USB-устройств ввода. Кроме того, планируется выпустить игровой контролёр с wifi-интерфейсом, обладающей дополнительной функциональностью специально для этой платформы.
Google уже тесно сотрудничает с разработчиками игровых движков Unreal Engine и Unity для адаптации их под новую платформу. Для платформы были адаптированы игры Assassin’s Creed Odyssey и Doom 3.
Сервис тесно интегрирован с другими сервисами Google - предполагается запись игрового видео на Youtube и помощь от Google Assist, для чего на контролёре даже предусмотрены отдельные кнопки.
Запуск платформы намечен на 2019 год на территории Северной Америки и Западной Европы.
>>> Анонс.
Решил опробовать Sway. Ну что сказать? Готов к употреблению. Если сравнивать с i3, то основных плюсов четыре:
- Меньше софта. В основном из-за отсутствия Xorgовского бардака.
- Плавная работа. Тиринга нет. Вообще. Там где раньше приходилось ставить кучу дров, композиты и нудно все конфигурять, сейчас достаточно просто наличия Mesa.
- Меньше вес. При одном и том же наборе софта - минус один гиг.
- Меньше конфигов. Но это вытекает из предыдущих пунктов. Нет иксов, нет комптона, нормально работает gsettings, Ш, вроде, не совсем Г... Собственно, у меня конфигов теперь всего два - один для свая, один для термита.
Минусов не зафиксировал. Ну разве что некоторое дерьмо мамонта может не запуститься.
Цель закосить под мак не ставил. Просто попалась на глаза компактная тема с приятной палитрой и небольшой пак векторных иконок.
Название для тех, кто все еще думает, что тайлинг просто обязан выглядеть чуть лучше чем голая консоль, а управляться чуть проще, чем боинг. Нет, выглядит как любое другое DE, а мышкой нельзя сделать только две вещи - развернуть окно и свернуть. Закрыть можно, инфа 146%.
>>> Просмотр (1366x768, 811 Kb)
Super UEFIinSecureBoot Disk — образ диска с загрузчиком GRUB2, предназначенным для удобного запуска неподписанных efi-программ и операционных систем в режиме UEFI Secure Boot.
Диск можно использовать в качестве основы для создания USB-накопителя с утилитами восстановления компьютера, для запуска различных Live-дистрибутивов Linux и среды WinPE, загрузки по сети, без отключения Secure Boot в настройках материнской платы, что может быть удобно при обслуживании чужих компьютеров или корпоративных ноутбуков, например, при установленном пароле на изменение настроек UEFI.
Образ состоит из трех компонентов: предзагрузчика shim из Fedora (подписан ключом Microsoft, предустановленным в подавляющее большинство материнских плат и ноутбуков), модифицированного предзагрузчика PreLoader от Linux Foundation (для отключения проверки подписи при загрузке .efi-файлов), и модифицированного загрузчика GRUB2, который загружает EFI-файлы самостоятельно, не используя функции UEFI.
Во время первой загрузки диска на компьютере с Secure Boot необходимо выбрать сертификат через меню MokManager (запускается автоматически), после чего загрузчик будет работать так, словно Secure Boot выключен: GRUB загружает любой неподписанный .efi-файл или Linux-ядро, загруженные EFI-программы могут запускать другие программы и драйверы с отсутствующей или недоверенной подписью.
Для демонстрации работоспособности, в образе присутствует Super Grub Disk (скрипты для поиска и загрузки установленных операционных систем, даже если их загрузчик поврежден), GRUB Live ISO Multiboot (скрипты для удобной загрузки Linux LiveCD прямо из ISO, без предварительной распаковки и обработки), One File Linux (ядро и initrd в одном файле, для восстановления системы), и несколько UEFI-утилит.
Диск совместим с UEFI без Secure Boot, а также со старыми компьютерами с BIOS.
Состоялся значительный релиз Lutris — игровой платформы для Linux, которая позволяет устанавливать и запускать игры без лишних хлопот, в том числе из GOG, Steam, Battle.net, Origin, Uplay с помощью специально подготовленных сценариев.
( читать дальше... )
>>> Подробности
Седьмого января 2019 года вышла встраиваемая операционная система реального времени BuguRTOS-4.0.0.
( читать дальше... )
>>> Подробности
следующие → |