Собственно сабж. Зарелизилась вторая часть Седжвиковского курса по алгоритмам и структурам данных. В этой части будем фапа^W учиться работать с графами.
[ ~ ] # USE="python_targets_python3_5" emerge -p dev-python/matplotlib
These are the packages that would be merged, in reverse order:
Calculating dependencies... done!
[ebuild U ~] dev-python/matplotlib-1.5.1::gentoo [1.4.3::gentoo] USE="cairo examples qt4 qt5 -doc -excel -fltk -gtk2% -gtk3 -latex -pyside {-test} -tk -wxwidgets (-gtk%)" PYTHON_TARGETS="python3_4 -python2_7 -python3_3 -python3_5" 52 766 KiB
[ebuild N ~] dev-python/cycler-0.10.0::gentoo USE="{-test}" PYTHON_TARGETS="python3_4 -python2_7 -python3_3 -python3_5" 17 KiB
[ebuild N ~] dev-python/versioneer-0.15::gentoo PYTHON_TARGETS="python3_4 python3_5 -pypy -python2_7 -python3_3" 35 KiB
Total: 3 packages (1 upgrade, 2 new), Size of downloads: 52 817 KiB
The following USE changes are necessary to proceed:
(see "package.use" in the portage(5) man page for more details)
# required by dev-python/matplotlib-1.5.1::gentoo
# required by @selected
# required by @world (argument)
>=dev-python/cycler-0.10.0 -python_targets_python3_5
# required by @selected
# required by @world (argument)
>=dev-python/matplotlib-1.5.1 -python_targets_python3_5
Я тут случайно посмотрел John Wick... И это офигенно! Лучший боевик за хз сколько лет. Сюжета нет (боевик же), но постановка боев и музыка очень круты.
И, да, в этом фильме тачки не взлетают если им пальнуть в крышку бензобака ^_^
# journalctl -xb | grep blue
-- Subject: Начинается запуск юнита bluetooth.service
-- Начат процесс запуска юнита bluetooth.service.
авг 17 18:25:15 tear bluetoothd[344]: Bluetooth daemon 5.21
авг 17 18:25:15 tear bluetoothd[344]: Starting SDP server
-- Subject: Запуск юнита bluetooth.service завершен
-- Процесс запуска юнита bluetooth.service был завершен.
-- Subject: Начинается запуск юнита bluetooth.target
-- Начат процесс запуска юнита bluetooth.target.
-- Subject: Запуск юнита bluetooth.target завершен
-- Процесс запуска юнита bluetooth.target был завершен.
авг 17 18:25:15 tear bluetoothd[344]: Bluetooth management interface 1.5 initialized
авг 17 18:25:15 tear bluetoothd[344]: Sap driver initialization failed.
авг 17 18:25:15 tear bluetoothd[344]: sap-server: Operation not permitted (1)
авг 17 18:25:15 tear bluetoothd[344]: GAP and GATT are mandatory
авг 17 18:25:15 tear bluetoothd[344]: gap-gatt-profile profile probe failed for 98:D6:F7:71:0F:FD
авг 17 18:25:15 tear bluetoothd[344]: hci0 Load Connection Parameters failed: Unknown Command (0x01)
авг 17 18:25:16 tear NetworkManager[323]: <warn> bluez error getting default adapter: Method "DefaultAdapter" with signature "" on interface "org.bluez.Manager" doesn't exist
авг 17 18:25:16 tear NetworkManager[323]: <warn> bluez error getting default adapter: Method "DefaultAdapter" with signature "" on interface "org.bluez.Manager" doesn't exist
# emerge -p net-wireless/bluez
These are the packages that would be merged, in reverse order:
Calculating dependencies... done!
[ebuild R ] net-wireless/bluez-5.21-r1:0/3 USE="cups obex readline systemd udev -debug (-selinux) {-test}" 1 356 KiB
Total: 1 package (1 reinstall), Size of downloads: 1 356 KiB
# emerge -p net-misc/networkmanager
These are the packages that would be merged, in reverse order:
Calculating dependencies... done!
[ebuild R ] net-misc/networkmanager-0.9.8.10-r1 USE="avahi bluetooth dhcpcd gnutls introspection modemmanager ppp systemd wext wifi -connection-sharing -consolekit -dhclient -nss -resolvconf {-test} -vala" 1 969 KiB
Total: 1 package (1 reinstall), Size of downloads: 1 969 KiB
По теме нагуглил только это, но там инфы не особо %)
Подскажите как в линуксе сэмулировать нажатие клавиши на хардварной клавиатуре. Т.е. не средствами иксов или перенаправлением ввода, а так чтобы софт (те же иксы) результат работы программы считали нажатием по реальной клавиатуре перед пользователем.
Я подумал в сторону /dev/input/event*, но тут две неприятности:
1. в сети нагуглил только примеры кейлогеров, т.е. RDONLY
2.
# file /dev/input/event0
/dev/input/event0: character special (13/64)
# cat /dev/input/event0
cat: /dev/input/event0: No such device
Столкнулся (при сборке openmw) с вот этим багом буста. Если коротко, то надо либо собирать буст с c++11, либо собирать пользовательский код без c++11, либо специальный дефайн (-DBOOST_NO_CXX11_SCOPED_ENUMS). Workaround понятен и не интересен. Посмотрел в
tear ~ # emerge -p =dev-libs/boost-1.55.0-r1
These are the packages that would be merged, in reverse order:
Calculating dependencies... done!
[ebuild R ~] dev-libs/boost-1.55.0-r1:0/1.55.0 USE="doc icu nls threads -context -debug -mpi -python -static-libs -tools" PYTHON_TARGETS="python2_7 python3_2 python3_3 (-python2_6)" 0 kB
Total: 1 package (1 reinstall), Size of downloads: 0 kB
tear ~ #
USE флага c++11 не увидел, посмотрел в ebuild:
tear ~ # grep -i cxx /usr/portage/dev-libs/boost/boost-1.55.0-r1.ebuild
mpi? ( || ( sys-cluster/openmpi[cxx] sys-cluster/mpich2[cxx,threads] ) )
compiler_executable="$(tc-getCXX)"
compiler_executable="$(tc-getCXX)"
using ${compiler} : ${compiler_version} : ${compiler_executable} : <cflags>"${CFLAGS}" <cxxflags>"${CXXFLAGS}" <linkflags>"${LDFLAGS}" ;
if [[ $($(tc-getCXX) -v) == *trunk* ]]; then
compilerVersion=$($(tc-getCXX) -v | sed '1q' \
compilerExecutable=$(tc-getCXX)
append-cxxflags -std=gnu++98
tear ~ # grep -i std /usr/portage/dev-libs/boost/boost-1.55.0-r1.ebuild
append-cxxflags -std=gnu++98
# boost's build system truely sucks for not having a destdir. Because for
tear ~ #
Увидел <cxxflags>"${CXXFLAGS}"
Вопрос: идеологически верно добавлять c++11 к своим системным (или в env) CXXFLAGS или просить на багзилле добавить юз к ебилдам буста?
почему не починить иксы, вместо того чтобы пилить ненужно:
Fixing the other security properties is impossible using the X11 protocol as it would break too many legitimate applications that rely on those features. Disabling access to these features would effectively make the X-Server non-compliant with the X11 protocol.
скажите, я правильно понимаю, что из-за «QString uses implicit sharing (copy-on-write) to reduce memory usage and to avoid the needless copying of data» функции-члены, которые копируют QString можно смело помечать как noexcept?
планируется приложение состоящее из мат. модели, базы данных, (возможно) сетевого обмена и какого-то гуя для всего этого. При чем все это должно быть заменяемым. Мне сразу вспоминаются плагины и Qt. Но яхз как это правильно делается, т.е. если заменяется все, то ядро приложения становится только запускалкой для плагинов, тут я вспомнил qutim и личкрафты, но первое я пару лет назад не осилил, а второго вообще боюсь :(
собственно вопрос - что мне почитать (исходники, теория), чтобы сделать наименее кривую первую реализацию (хотя один хрен переделывать придется)?