LINUX.ORG.RU

Избранные сообщения xaizek

Проигрывание wav файлов из C программы

 , ,

Как проще всего реализовать сабж с минимальным использованием внешних пакетов? Прямой вызов aplay из программы по определенным причинам уже не устраивает. Заранее спасибо.

MBK
()

Librevault 0.1.15 — программа децентрализованной синхронизации данных.

 , , librevault, ,

Группа Open Source

Состоялся тестовый выпуск Librevault — открытой кроссплатформенной программы для децентрализованной синхронизации данных. Эта программа является альтернативой BitTorrent Sync и Syncthing: файлы синхронизируются напрямую между узлами без участия сервера (peer-to-peer).

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

>>> Сайт проекта (librevault.com)

GamePad64
()

Вывод типа возврата при присваивании шаблонного результата вызова шаблонной функции переменной конкретного типа.

 , , , ,

Собственно сабж:

struct test {
  template<typename T> T operator()() {}
}

int main(void) {
  int a = test{}();//можно, а если не можно, то может можно как-то иначе?
}

Т.е. надо вызвать метод(любой), который бы мог узнать тип того на что его присвоили, т.е. как-то получить тип a в данном случае.

cast Kuzy

registrant27492
()

The Eudyptula Challenge

 , ,

Всем привет.

В С у меня вообще нет опыта, но очень интересен кернел. Копаясь в интернетах, набрёл на The Eudyptula Challenge проект с таким описанием:

What is it?

The Eudyptula Challenge is a series of programming exercises
for the Linux kernel, that start from a very basic "Hello world"
kernel module, moving on up in complexity to getting patches
accepted into the main Linux kernel source tree.

What skills do I need to take this?

A basic understanding of the C programming language is required.
No previous Linux kernel coding experience is needed, but that
of course will help.
и очень заинтересовался ☺ Но меня немного смущает порог вхождения. Я никогда не писал ничего серьёзного в юзер-спейсе, кроме хеллоуворлдов из упражнений в K&R (сейчас по-тихоньку разруливаю вот это, хотя, в сишке более-менее ориентирусь (по крайней мере, мне так кажется ☺). Вопрос: стоит ли вообще рыпаться с этой едиптулой, или лучше набить скиллов, лет 10-15 практикуясь в обычных С проектах?

ubik
()

Лицензия Qt библиотеки в коммерческой разработки

 

Здравствуйте
Вопрос возник по поводу лицензии Qt.
Если я занимаюсь разработкой и выпуском оборудования, предоставляя для оборудованию ПО, на своем сайте, бесплатно
Подскажите, должен ли я покупать лицензию Qt, если:
1. исходный код я в открытый доступ предоставлять не буду
2. мне необходимо статически линковать библиотеки Qt

Второй пункт не принципиален, просто как мое желание в идеале.

Писал в службу поддержки Qt, ответов не получил.
Наверняка кто-то сталкивался... подскажите пожалуйста.

pulya
()

веб-приложение для конвертации цветовых схем

 , , , ,

Находил я какой-то сайт, который брал на вход цветовые схемы одного формата, а выплёвывал другого. Плюс схему можно подредактировать или создать заново, а также выбрать из существующих. Что-то он у меня не гуглится, в свалке закладок порылся — бестолку. Напомните, пожалуйста…

batekman
()

Список кошерных приложений с псевдографикой (ncurses) для ежедневного использования дома и на работе.

 , , , ,

Peace, ЛОР!

Давайте составим список красивых и удобных приложений для терминала (очевидно, что нет терминала лучше, чем Konsole).

Мне большего всего нравятся (не все эти программы используют ncurses, но у всех хороший интерфейс):
cfdisk
https://github.com/uoaerg/wavemon
https://github.com/NSinopoli/chronos
https://github.com/rofl0r/ncdu
https://github.com/mk-fg/pulseaudio-mixer-cli
https://github.com/flamsmark/arm
https://github.com/LonnyGomes/hexcurse
https://github.com/rigel314/ttysys (красивый монитор с графиками)
https://github.com/ezrast/dusauce
whdd (отличный аналог mhdd)
iotop
mc
mcedit
nano (всяко лучше, чем vim без педалей)
iptraf
iftop
htop
top
atop
transmission-remote-cli
screen
elinks
bwm-ng
bmon
dstat
ApacgeTop
rtorrent

Списки:
http://hamzaed.com/35-terminal-text-based-application-for-linux.html (выдаёт предупреждение безопасности, но всё открывается)
http://www.cyberciti.biz/open-source/best-terminal-applications-for-linux-uni...
http://www.etcwiki.org/wiki/Best_ncurses_linux_console_programs
http://projects.laas.fr/tina//home.php

ktulhu666
()

Линковка к мажорным версиям библиотек (Linking to common version of shared library)

 ,

Здравствуйте!

При указании опции -l линкеру, например -lboost, приложение слинкуется с конкретной версией библиотеки, например libboost.so.1.56.0.

У меня вопрос: каким образом можно изменить поведение линковщика, чтобы при указании опции -lboost - он слинковал приложение с libboost.so?

PS: Синтаксис -l:libboost.so не подходит.

Deleted
()

возможно ли двойное раскрытие дефайнов в С

 ,

пример:

#define par1 10, 20

#define sum(a, b) (a + b)

void main(void) {
  int c = sum(par1);
}

эта идея в принципе реализуема на си?

pihter
()

Когерентность cpu

 ,

Добрый день. Я напишу по памяти, возможно с ошибками:

#include <iostream>
#include <thread>
int *ptr;
void fn()
{
    // Воткнуть ли aquire барьер?
    std::cout << *ptr;
}
int main()
{
    ptr = new int{0};
    // Воткнуть ли release барьер?
    std::thread t(fn);
    t.join();
    return 0;
}
Насколько знаю, пара барьеров вшита в thread::join() и при завершении потока. Имеются ли невидимые барьеры в данном случаи?

pavlick
()

Вышел GNU teseq 1.1.1 — Просветитель Управляющих Последовательностей

 , , , ,

Группа GNU's Not Unix

GNU Teseq (автор произносит это как «тисик») — это инструмент для анализа файлов, содержащих управляющие символы и управляющие последовательности терминала, путём вывода этих последовательностей и их значений на читабельном английском. Его предназначение — упрощение отладки эмуляторов терминала и программ, активно использующих расширенные возможности терминала, такие как перемещение курсора, цвета и другие свистелки.

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

>>> Источник (gnu.org)

contra_sperm_spero
()

Проверка компьютера на пригодность и исправность

 , , ,

Есть компьютер. Все детали на месте. Можно ли как то из под Live дистрибутива какого-либо Linux дистра проверить его с помощью утилит (и каких)? Инфы о компьютере нет никакой, но за сегодня я должен справиться с 5-ью такими разными.

Всем спасибо за ответы.

s3lfstyle
()

Питер: вакансия Linux администратора

 , , , ,

Компания Panbet ищет замену ценному человеку в Питере (уехал работать в другую страну). Вакансия: Linux администратор.

Оплата от 2000 Eur при неполном совпадении, растет по мере приближения к описанному ниже идеалу


Офис, пятидневка, талантливая команда, готовая ввести в курс дела, ДМС, фитнес, оплата обучения, ненавязчивая корпоративная жизнь, отсутствие дресс-кода.

Инфраструктура: 500+ виртуальных и железных серверов в нескольких дата-центрах;
Цели и задачи: расширение существующей инфраструктуры (в т.ч. ввод в строй новой площадки), запуск нескольких новых проектов.
По RPS порядок 10^4 .. 10-^5. Если войти в проект до 15го июля - будет время всё внимательно рассмотреть до начала «жаркого сезона» в нагрузке. Если позже - активно поддержим.

С чем придется работать:

  • Виртуализация на базе QEMU/KVM, OpenStack
  • Сетевые службы (bind/nsdc, dhcp)
  • Веб-сервера (apache, nginx, tomcat)
  • Службы каталогов (LDAP)
  • Скриптовые языки (bash/python)

Нужны умения:

  • Работа с ipv4/ipv6 сетями, VLAN, маршрутизация
  • Ubuntu/Debian, CentOS, OLE/RedHat/Suse – установка, настройка
  • Сборка модулей ядра, тюнинг ядра Linux
  • Почтовые сервисы (dovecot/postfix)
  • Балансировщики нагрузки/системы кластеризации (haproxy/keepalived/peacemaker, GaleraDB)
  • Файловые системы (ext3/ext4, ocfs2, glusterfs)
  • Настройка серверного оборудования, удалённое обновление прошивок
  • БД (mysql/MariaDB, postgreSQL)

Знания:

  • Принципы построения высоконагруженных распределённых инфраструктур
  • Принципы построения систем мониторинга

Примерный ожидаемый опыт:

  • От 5 лет на коммерчески активных проектах
  • Навык работы с blade-системами, обновление idrac
  • Навык постановки задач на смежников
  • Участие в крупных проектах по разворачиванию систем мониторинга
  • Участие в проектах по построению распределённых отказоустойчивых инфраструктур
    • Интеграция dovecot/postfix с OpenLDAP/AD
    • Работа с системами управления конфигураций (chef/ansible/pappet)



Рассказать о себе, поспрашивать про компанию/команду, получить контакты руководителя linux-направления для дискуссий:
SkypeID: alex.platonova,
Mobile: +79213ЧЧЧЧ55
Если удобнее начать с CV: Alexandra.Platonova@panbet.com , или добавляйтесь в LinkedIn

aplatonova
()

Дискретная математика для дебилов

 , , ,

Привет.
Хочется учебник по дискретке, чтобы на пальцах все, для таких неосиляторов как я.

Почему для дебилов, это я так свои знания в математике позиционирую, потому что знания стремятся к 0.

Спасибо.

ChuCha
()

Команда сайта Linux.Org.Ru заняла третье место на Yandex.Root

 ,

Группа Конференции и встречи

Администрация сайта от всей души поздравляет нашу команду, которая в нелёгкой борьбе заняла третье место в текущем этапе соревнований от яндекса. Наши ребята уступили менее 10 минут лидеру (время решения последней задачи)! К сожалению, в самый ответственный момент к DELIRIUM (он решал последнюю задачу) приехал курьер, а потом он вообще ушёл за пивом на те самые 10 минут :( Но всё равно ему спасибо за алко-код :).

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

Ребята, вы молодцы!

true_admin
()

Делимся полезными кусками из ~/.vimrc и показываем свои статусные строки 2015 тред

 , ,

Как говорили древние отцы-основатели редактирования текстов: « Damnosa quid non imminuit dies¹ ? »

Но мы им отвечаем: « Tempora mutantur et nos mutamur in illis² ! »

Делимся полезными и интересными кусками из своих конфигов, а также демонстрируем, кто на какой статусной строке в данный момент остановился и использует. Также это касается не общеизвестных плугинов или настройки/интеграции общеизвестных и общеиспользуемых. В общем синтастик или ЗадротДерево сюда не нужно, наверное, писать.

Я могу предложить (кое-что известное, но будет полезно новичкам, если такие есть):

  • Автопаста — не нужно нажимать :set paste перед пастой, чтобы сохранялись отступы, работает автоматически, добавить и забыть навсегда.
  • Кайфовставка — позволяет по хоткею кушающему моушины «замещать», т.е. заменять целевое слово (или моушин-цель) на то, что сейчас в буфере, с трудом вспоминаю, что я делал без этого хоткея.
  • Более лучший фолдинг — информация про к-во сложенных линий теперь справа + добавляет % от всего документа, картинка с этим и без.
  • Пипетка для верстальщиков — по хоткею вызывается пипетка (в зависимости от ОС — разная, на линуксе это zenity или Yad) с текущим значением на курсоре и авт. меняет при изменении.
  • Автопереключение раскладки — при переходе в normal mode и обратно, после настройки включает английский язык когда переходим в normal mode из insert mode, где был включен другой язык. Очень удобно, уже давно привык.
  • Удобно двигать строки/блоки — придумал чем занять бесполезные стрелки, используется vim-move, кстати предлагаю особо наглым упороться hardmode.
  • tmux-complete — комплитит в виме (добавляет в omnicomplete, т.е. безразлично какой комплитер используете neocomplete/YCM/etc) содержимое окон/панелей/сессий тмукса, в которых необязательно вим, может быть другое приложение либо просто выхлоп.
  • Переход на средину строки — текущей реальной (не виртуальной).
  • Режимо-зависимые курсоры — для тех, кто использует GUI-версию вима, я лично не использую.

А теперь по статусной строке. Почти два года сидел на airline, но вот недавно перешел на lightline, которая быстрее стартует и легче кастомизируется, а также не содержит кучу неиспользуемых (лично мной) возможностей. Попробовал еще ezbar, но японец пилит его под себя, хотя там есть кое-что интересное, насчет скорости:

lightline: 229.019  000.003: 
ezbar:     250.312  000.002: 
airline:   276.823  000.003: 
(если что, у меня еще около ~80 плагинов подгружаются), powerline не имеет смысла сюда рядом ставить, там секунды вместо миллисекунд :)

Вот такая у меня статусная строка: картинка, настройка здесь и здесь. Середина прозрачная, выведен размер файла, имя файла справа, голубой квадратик с + это модифицированный, но не сохраненный файл.

Показывайте ваши ништяки.

--------

¹ - лат. что не изменит губительное время
² - лат. времена меняются и мы меняемся с ними

redhat
()

Графы, инструмент для рисования.

 ,

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

Посоветуйте хороший и простой инструмент для вывода графов в виде рисунка. Интересуют в первую очередь направленные (как циклические, так и ациклические). Если будет возможность перед выводом узлы подвигать, будет совсем замечательно. Формат входных данных - любой можно.

Спасибо

ossa
()

Видеолекции по теорфизике под свободной лицензией (update3)

 

Группа Документация

Силами кафедры теоретической физики физического факультета Новосибирского государственного университета были записаны лекции по физике. Исходные видеофайлы выложены в открытый доступ под лицензией CC-BY-SA 4.0.

Значимые изменения после предыдущего сообщения: Добавлены все лекции спецкурса Избранные вопросы нелинейной и хаотической динамики (Жирова О.В), добавлены в первый раз лекции по Двухфотонной физике (Сербо В.Г.), семинары по Физике элементарных частиц (Сковпень Ю.И.), Физики атомного ядра (Дмитриев В.Ф.), а также «Экскурсия» в теорию струн (Померанский А.А.). Появился неофициальный YouTube канал кафедры.

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

>>> Ссылки на Youtube и торрент-файлы (nsk.su)

Evgueni
()

А как вы бы определили что установлено 2 и более флага одновременно?

 

Есть int, в котором хранится значения битовых флагов:

enum Flags
{
   F1 = 1,
   F2 = 2,
   F3 = 4,
   F4 = 8
}

Как бы вы определили, что установлены 2 или более флага одновременно? Я сделал так:

if (signum(var & F1) +
    signum(var & F2) +
    signum(var & F3) +
    signum(var & F4) > 1)
   return 1
else
   return 0;
sambist
()

Как сделать file name completion не по текущей директории, а по указанной в настройках?

 

Собственно вопрос в том, что бы file name completion искал не в текущей директории, а в той, которую я указал в настройках редактора. Например, я нахожусь в директории ~/first, жму C-xC-f, он должен мне показывать файлы из ~/second. chdir не советовать, set path не помогает

shamkir
()