LINUX.ORG.RU

Сообщения KennyMinigun

 

Может ли в APT показать процесс разрешения конфликтов?

Форум — General

Короче, ситуация такова, что пакет kde-l10n-uk почему-то конфликтует с основными пакетами:

$ LC_ALL=C sudo apt install kde-l10n-uk
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following package was automatically installed and is no longer required:
  plasma-browser-integration
Use 'sudo apt autoremove' to remove it.
The following packages will be REMOVED:
  kubuntu-desktop plasma-desktop plasma-desktop-data
The following NEW packages will be installed:
  kde-l10n-uk
0 upgraded, 1 newly installed, 3 to remove and 0 not upgraded.
Need to get 4041 kB of archives.
After this operation, 32.9 MB disk space will be freed.
Do you want to continue? [Y/n] 

Поскольку мне лень смотреть в Depends/Conflicts/Replaces каждого пакета, то вопрос: можно ли как-то заставить APT написать причину удаления (или напечатать процесс разрешения зависимостей)?

 , , ,

KennyMinigun
()

Кто нибудь уже сидит на Cosmic?

Форум — Talks

Сабж. Обновлялся ли кто на Ubuntu 18.10 Cosmic Cuttlefish? Как впечатления?

Я себе накатил Kubuntu 18.10, во время обновления один пакет не установлися (ttf-mscorefonts-installer) и обновление прервалось. Через несколько часов пакет пофиксили и он устанавливается нормально. Только я вот теперь озадачен, не поломалось ли чего? По крайней мере мантра из sudo dpkg --configure -a и sudo apt install -f ничего подозрительного не выводит (и соответственно ничего не делает). Meтапакет kubuntu-desktop установлен нормально.

 ,

KennyMinigun
()

Эвалуация аргументов функции при вызове

Форум — Development

Есть вот такие функции:

void whatever(std::vector<int> lhs, bool rhs);
bool check(const std::vector<int> &v);

Вызываются вот так:

std::vector<int> arg{1, 2, 3};
whatever(std::move(arg), check(arg));

Понятно, что

Order of evaluation of the operands of almost all C++ operators (including the order of evaluation of function arguments in a function-call expression and the order of evaluation of the subexpressions within any expression) is unspecified.

Вопрос скорее о том, чем в данном случае является результат Эвалуации std::move(arg)? Обьект std::vector<int> или же rvalue-reference (std::vector<int>&&)?

 , ,

KennyMinigun
()

Велосипедом на работу/учебу/etc

Голосования — Голосования(не подтверждено)

Вопрос принципиальный: да или нет. Не важно сколько когда и как (но можно писать в комментариях).

Пункты опроса выделены на основе статистики с небольшими исключениями:

  • Собирательный пункт «ЕС», чтоб не занимать много места
  • Собирательный пункт «Северная Америка» вместо «США», чтоб учесть канадцев и мексиканцев.

 , ,

KennyMinigun
()

[SOLVED] Как указать Clang Code Model какой стандарт использовать

Форум — Development

Вопрос о QtCreator. Уже отчаился, почти дошло до копания в сорцах. Вопрос точно такой же как на stackoverflow: https://stackoverflow.com/questions/38053992/enable-c14-in-qtcreators-clangco...

Имеется Generic проект (не CMake, QBS или QMake) использующий C++17, который clang code model разбирает как C++14. Как заставить его использовать С++17?

  • Projects -> Clang Code Model -> Diagnostic Configuration не проходит внутреннюю вализацию. (Option "-std=c++17" is invalid)
  • Добавление компилятора (Compiler & Kit) с Platform Codegen Flags: -std=c++17 хоть и (вроди) работает, но выглядит страшным хаком.
  • В файле ${PROJECT_NAME}.config дописать #define __cplusplus 201703L вроди помогает, выглядит странно (но все же лучше, чем предыдущая опция).

Знаете еще какой способ?

 , ,

KennyMinigun
()

А есть статистика посещения ЛОР по странам?

Форум — Linux-org-ru

Вопрос о процентной составляющей аудитории. Если да, то можно цифры в студию?

 , , ,

KennyMinigun
()

LDAC Bluetooth кодек в Linux (#2)

Форум — General

Нашел давнешний тред: LDAC/aptX Bluetooth кодеки в Linux
Не захотел некропостить, а интересного в выдаче поисковика появилось:

  • https://en.wikipedia.org/wiki/LDAC_(codec)

    Starting from Android 8.0 'Oreo', LDAC is part of the Android Open Source Project, enabling every OEM to integrate this standard into their own Android devices freely.

  • Еще нашелся какой-то патч для ядра(?), который (как я понимаю) добавляет LDAC как кодек в A2DP. А точнее какую-то идентификацию. https://www.spinics.net/lists/linux-bluetooth/msg65228.html
  • Беглый поиск по torvalds/linux показал только какие-то дефайны с LDAC в названии

Вобщем вопрос сам напрашивается: готов?

 , , , ,

KennyMinigun
()

Наушники-тред #N+X

Форум — Talks

Короче, итак все ясно из сабжа.

Искаю наушники наушные (такие среднего размера (on-ear), а не чтоб все ухо закрывали (aka over-ear)). Потому, что после 4 лет использования сломались мои Sennheiser Urbanite которые меня полностью устраивали). Насоветуйте подобного, чтоб в магазине пойти послушать, сравнить.

Спасибо наперед.

 , ,

KennyMinigun
()

В NVIDIA все перепутали (EGLStreams + Wayland)

Форум — Talks

Так вот, в NVIDIA (наверное сильно опечаленные новостью ухода Мартина Грасслина/Флессера от поддержки kwin) решили таки запилить патчи под EGLStreams для опенсорса. Только они немного ошиблись и пропатчили Mutter вместо KWin.

https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-Better-EGLStre...

 , , ,

KennyMinigun
()

Внешний функтор/функция для итерации по контейнеру

Форум — Development

Задача такова: есть один едиственный контейнер с данными, есть несколько способов по нему пройтись, но для каждой итерации надо выполнять одинаковый код. Другими словами, нужно иметь возможность задавать алгоритм итерирования извне. Однако то, что выполняется на каждой итерации — должно быть внутренним.

Можно использовать все фичи C++17.

Для себя наклепал вот такой рабочий пример: https://wandbox.org/permlink/kQc59EAs5MSMCxTE

Поревьювьте код, пожалуйста.

using Storage = std::vector<std::string_view>;
using PointType = Storage::const_iterator;

// пример функции итерирования, которая должна вызывать коллбек для каждой итерации
// template для дедукции лямбды
template <typename Callback>
struct IterateArrivals {
  void operator()(const Storage &storage, Callback callback) const {
    for (auto pointBegin = storage.rbegin(); pointBegin != storage.rend(); pointBegin += 2) {
      callback(pointBegin.base() - 1, pointBegin.base() - 2);
    }
  }
};

namespace {
// хелпер, чтоб задедуктить тип лямбды (его не можно задать explicit)
template <template <typename...> class Iterate, typename Callback, typename... Args>
void callIterate(Callback&& callback, Args&&... args) {
    Iterate<Callback>{}(std::forward<Args>(args)..., std::forward<Callback>(callback));
}
} // namespace

template <template <typename...> class Iterate>
void print(const Storage &storage) {
  unsigned int count = 0;
  
  // тут выполняем что-то для каждой итерации (лямбду)
  callIterate<Iterate>([&](PointType loc1, PointType loc2) {
    std::cout << '[' << ++count << "] {" << *loc1 << ", " << *loc2 << "}\n";
    return true;
  }, storage);
}

int main() {
  Storage itin{"A", "B", "B", "C", "E", "F"}; 
  print<IterateArrivals>(itin);
  // печатает:
  // [1] {F, E}
  // [2] {C, B}
  // [3] {B, A}
}

 ,

KennyMinigun
()

Есть ли какое-нибудь PPA с новым Qt для Bionic?

Форум — Development

Я использую самосборный Qt Creator прилинкованый к «prebuilt» Qt 5.11.0 (c qt.io). Qt Creator собираю системным GCC 7:

$ g++ --version
g++ (Ubuntu 7.3.0-16ubuntu3) 7.3.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Qt, в свою очередь собран старшим GCC:

$ readelf -p .comment qmake  

String dump of section '.comment':
  [     0]  GCC: (GNU) 4.8.5 20150623 (Red Hat 4.8.5-28)
  [    2d]  GCC: (GNU) 5.3.1 20160406 (Red Hat 5.3.1-6)

Проблема с собранным Qt Creator такова, что получает SIGSEGV при добавлении нового файла в проект (prebuilt Qt Creator, ессесно не падает). Грешу на несовместимость ABI.

Когда-то раньше у меня была подобная проблема, решил самосборкой целого Qt. Однако сейчас как-то лень. Может есть какие-нибудь PPA с новым Qt (хотя бы 5.10) собранным под Ubuntu Bionic (18.04)?

 , , , ,

KennyMinigun
()

Невидимый палец NVIDIA

Форум — Talks

С прошлого раза в X.Org 1.20 появилась поддержка EGLStreams для XWayland. Теперь, некий Olivier Fourdan из Red Hat пропатчил X.Org, чтоб XWayland не делал вдоль, если ему сказали -eglstreams, а в процессе запуска оказалось, что не можно. Таким образом делая XWayland мягким и шелковистым по отношению к композитору Wayland.

Взято с похороникса: https://www.phoronix.com/scan.php?page=news_item&px=XWayland-Better-EGLSt...

 , , ,

KennyMinigun
()

Что бы вы меньше всего хотели видеть установленным на своем десктопе

Голосования — Голосования(не подтверждено)

Выпусти пар, ЛОРовец! Прояви свою ненависть голосуя за самые ненавистные технологии текущего времени.

* Опрос более о платформах/библиотеках/рантаймах/etc нежели о конечных продуктах (напр. Gnome, KDE, Atom, systemd, PulseAudio). Для пущего бессмыслия.

 , , ,

KennyMinigun
()

По поводу «оффтопика» в Галерее

Форум — Linux-org-ru

Тема оффтопик-ОС в разделе «Рабочие Места» в Галереи немного скользкая. Вот недавно «под разачу» попала фотка такого контента:
www.linux.org.ru/gallery/workplaces/14193788

Хотя раньше в Галерею проскальзывали рабочие места с оффтопиком:

Не то, что бы я за оффтопик в галерее (но и не против). Но, может стоит как-то данную ситуацию урегулировать? Например внести в оффтопик лист раз и навсегда?

С другой стороны наверняка есть валидные причины почему оффтопик на рабочем месте (мы живем не в идеальном мире, согласитесь). И еще:

  • есть ли принципиальная разница с выключеным компом и включеным оффтопиком (на том же компе) в галереи?
  • минимальный критерий апрува в галереи — наличие онтопика на фото?

cast jollheef

 , ,

KennyMinigun
()

Подскажите алгоритм/структуру данных

Форум — Development

Имеется огромный проект на С++ (около 9681 файлов исходников). И есть утилитарный скрипт, в котором основная задача сказать, встречаются ли два отдельно взятых файла в какой-либо единице трансляции (название единицы трансляции не важно). Иными словами, если имееются foo.h и bar.h и нужно сказать включены ли одновременно оба эти файла в какою-либо единицу трансляции, например baz.cpp.

Подскажите пожалуйста алгоритм/структуру данных чтоб можно было быстро дать ответ на вопрос из предыдущего абзаца. Причем ответ надо давать довольно часто (порядка 500 раз за прогон скрипта) и для разных пар файлов.

Disjoint Set (aka Union Find) не подходит, т.к. один заголовочный файл может включатся в разные единицы трансляции. Причем сами единицы трансляции имеют разный набор включенных файлов. Например, если имеется:

bar.h  foo.h  baz.h
  |   /     \ |
  bar.cpp    baz.cpp
то, bar.h и baz.cpp не имеют соединения. И, что важно, bar.h и baz.h не встречаются вместе ни в одной единице трансляции.

 , , ,

KennyMinigun
()

Посоветуйте где для Raspbian достать компиляторы посвежее

Форум — General

Хочется GCC 7.* и Clang 5 (или даже 6).

Не забанили в гугле, уже много чего перечитал. Местами люди сами собирают.

Вот мои находки:
https://github.com/raspbian-packages/gcc-7
https://www.raspberrypi.org/forums/viewtopic.php?t=190837

В идеале хотелось бы репозиторий с бинарными пакетами (чтоб все стандартно и не надо было собирать). Посоветуйте как лучше поступить.

 , ,

KennyMinigun
()

О том, как написать OS

Форум — Development

Блуждая просторами интернета я набрел на один занимательный канал который собственно так и называется, как топик (ну... аналогично). Материал изложен довольно просто и практично. Мне даже захотелось попробовать сделать это на практике.

Короче, вот плейлист*: https://www.youtube.com/playlist?list=PLHh55M_Kq4OApWScZyPl5HhgsTJS9MZ6M
GitHub с сорцами: https://github.com/AlgorithMan-de/wyoos

Дерзайте, кому интересно...

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

 , , ,

KennyMinigun
()

Почему оператор != не генерируется автоматически, если определен == ?

Форум — Development

Собственно сабж. Вообще логично было бы определять логически противоположные операторы обоюдной негацией (отрицанием?):

struct Comparable {
  // имеем определенный оператор ==
  template <typename T>
  bool operator ==(const T &rhs) const { /* ... */ }

  // тогда было бы логично implicit определить
  template <typename T>
  bool operator !=(T&& rhs) const { 
    return !this->operator ==(std::forward<T>(rhs)); 
  }

  // ну или explicit
  template <typename T>
  bool operator !=(const T&) = default;
};

Я тут сварганил пример (естественно без шаблонов, чтоб меньше потенциальных ошибок): https://wandbox.org/permlink/a4k0hlNVI4UgyDrc

И, как можно видеть, оператор != не определяется автоматически. Вопрос: почему, ЧЯДНТ?

P.S. Нашел на stackoverflow предложение которое не вошло в С++17) но решило бы волпрос: Explicitly defaulted comparison operators

 , ,

KennyMinigun
()

Подсветка различий показывает HTML Special Chars

Форум — Linux-org-ru

В общем при подсветке изменений происходит лишнее «экранирование»: > заменяется на &gt; и т.д.

Наблюдать явление можно тут нажав кнопку «Подсветить различия»: www.linux.org.ru/forum/general/14060502/14060616/history

 , ,

KennyMinigun
()

EGLStreams для XWayland

Форум — Talks

На похорониксе есть новость про X.Org 1.20. В ней, в частности, упоминается подержка EGLStreams d XWayland:

- EGLStreams support for XWayland is still pending but Jackson has indicated he will still let it land. This will allow the NVIDIA proprietary driver to support XWayland!

Так вот, вопрос к знатокам: значит ли это полноценный Wayland на проприетарном драйвере NVIDIA в обозримом будущем?

 , , ,

KennyMinigun
()

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