Меня зовут Сергей Столяров, живу и работаю Новосибирске. В этом блоге в основном о линуксе, макоси и програмировании.
Однако основное предназначение сайта — экзокортекс, это моя внешняя память, куда я записываю полезную информацию в формате, который мне поможет при необходимости быстро «загрузить» в собственную оперативную память нужные вещи. И ещё здесь очень много неопубликованных черновиков, которые видны только мне.
Движок блога Pyrengine я сам написал на Python Flask. Всё оформление я придумывал сам, а так как не дизайнер, то это может смотреться не очень хорошо. Также я специально не писал для мобильной версии — основной материал тут содержит много кода, поэтому вот.
В сферу моих профессиональных интересов входят программная архитектура, управление проектами, системная инженерия, linux, сетевые технологии и по остаточному принципу веб-интерфейсы, веб-сервисы, javascript, python.
Если вы столкнулись с какой-то проблемой при чтении этого сайта (не отправляются уведомления об ответах, не показываются картинки и т.д.), можете оставить комментарий к этой записи, я его обязательно прочитаю. Ну или можете связаться другими способами, контактные данные указаны ниже.
Для комментирования на сайте регистрация не нужна (да её и нет), можно прямо так писать, даже можно e-mail не указывать.
У сайта есть RSS: https://blog.regolit.com/rss/latest
Также здесь нет и не планируется рекламы и проплаченных статей, ни в каких коллаборациях или интеграциях я не заинтересован. А ещё не пишу на хабре и других сторонних ресурсах.
Контакты¶
- Мой емейл, я стараюсь отвечать на все письма:
- [email protected]
- Гитхаб:
- https://github.com/sigsergv
Фраза Expertus metuit принадлежит Горацию и в вольном переводе означает опытный остерегается.
Когда-то я писал о личном опыте использования Sublime Text 2, а после выхода Sublime Text 3 решил начать новую статью, ориентированную именно на версию 3 с небольшим акцентом на миграцию с 2 на 3.
Sublime Text — это профессиональный программерский текстовый редактор. Он завоевал очень большую популярность благодаря проработанности интерфейса, кроссплатформенности, удобной и простой расширяемости плагинами. Мои впечатления со времён написания первой статьи не особо изменились, поэтому я второй раз их переписывать не буду.
Очень мерзкая проблема: если thunderbird забирает почту с Exchange-сервера через IMAP, то со временем в папке начинают появляться «мерцающие» письма, они при каждой проверке то появляются, то исчезают, причём появляются в непрочитанном виде.
Баг этот известен с 2008 года, но до сих пор не поправлен, однако недавно нашли воркараунд:
- В настройках аккаунта: Server Settings → Advanced, отключить крыжик Use IDLE command if the server supports it, в поле Maximum number of server connections to cache выставить 1;
- Открыть продвинутый редактор конфига (Edit → Preferences → Advanced → Config editor) и там выставить параметр mail.server.default.check_all_folders_for_new в true, а параметр mail.imap.use_status_for_biff в false.
Спасибо вот этому сообщению http://forums.mozillazine.org/viewtopic.php?p=12847427#p12847427.
Создать файл ~/.gimp-2.8/fonts.conf
вот с таким содержимым:
<fontconfig>
<match target="font">
<edit name="rgba" mode="assign">
<const>none</const>
</edit>
</match>
</fontconfig>
Изначально проблема проявляется так: на краю отрендеренного текста цветные пятна.
В SSH есть крайне полезная фича, позволяющая организовать прозрачный проброс трафика через практически любой SSH-сервер. Принцип туннелирования простой: подключаемся к ssh-серверу со специальными опциями и получаем SOCKS-прокси, висящий на указанном в опциях порту локальной машины. Что самое приятное — на удалённой машине не надо ставить никакой софт, плюс необязательно быть суперпользователем, достаточно обычного аккаунта.
Дальше я детально опишу сценарий настройки и конфигурации такой системы.
Это древний текст, он уже неактуален и вряд ли кому понадобится, но пусть хранится для истории.
Работа с данными: адаптеры и отображение. Плюс работа с обработчиками событий виджетов.
Начиная с этой статьи, я больше не буду придерживаться строгого порядка нумерации, а также не буду вдаваться в откровенно простые вещи, которые можно прочитать в официальных руководствах.
В официальном руководстве есть обучающая статья про данные, называется она Saving Data. К сожалению, статья не очень понятная, а ещё перегруженная совершенно не нужными для обучающего текста данными (паттернами и прочим энтерпрайзом). Я постараюсь в моей статье раскрыть тему хранения и отображения данных более понятно (и по-русски).
В файле ~/.ssh/config
можно писать алиасы для используемых хостов, указывать для разных хостов разные ключи и так далее.
Host home
HostName home.example.com
Port 1488
Ciphers arcfour,blowfish-cbc
Compression yes
CompressionLevel 9
Host github.com
IdentityFile ~/.ssh/id_rsa-github
Host bitbucket.org
IdentityFile ~/.ssh/id_rsa-bitbucket
Список известных и популярных айтишных базвордов. Я постарался коротко и каждом рассказать и дать ссылку на более детальное объяснение. В списке бренды, технологии, методологии, фреймворки и концепции.
Список регулярно обновляется и дополняется.
- ACID
- Сокращение от Atomicity, Consistency, Isolation, Durability, набор свойств, гарантирующих надёжность выполнения транзакций в базе данных.
- Aerospike / https://www.aerospike.com/
- Опенсорсная распределённая NoSQL база данных, оптимизированная на хранение данных в flash-памяти (ssd-накопителях).
- AJAX
- Сокращение от английского Asynchronous JavaScript and XML, набор технологий, позволяющий выполнять запросы из веб-браузера на сервер без перезагрузки страницы.
- AngularJS / https://angularjs.org/
- Опенсорсный JavaScript-фреймворк, заточенный на разработку single-page приложений. Основной его особенностью считается так называмый Two-way data binding, это когда к DOM-модели привязан JavaScript-объект и все изменения этого объекта тут же отражаются на DOM и наоборот. Основным «конкурентом» считается React.
- Ansible / https://www.ansible.com, википедия
- Программная инфраструктура для управления облаком: деплоймент, конфигурация и всё такое.
- AWS
- Сокращение от английского Amazon Web Services, набор веб-сервисов от компании Amazon, которые можно арендовать за деньги, включает в себя сервисы хранения данные и сервисы виртуализации.
Здесь написано о GnuPG, как им пользоваться и при этом понимать, что делаешь. Изначально статья была написана в 2013 году, несколько раз слегка обновлялась, а в 2023 была значительно переработана и дополнена актуальной информацией.
GnuPG (GNU Privacy Guard, официальный сайт gnupg.org) — это опенсорсная реализация открытого стандарта OpenPGP, изложенного в RFC 4880. GnuPG состоит из набора программ и библиотек, однако нас будет интересовать только консольная программа gpg. Она существует под все операционные системы, однако наиболее комфортно используется в linux и macos. По gnupg есть множество материалов, однако из-за высокой сложности базовых концептов, всегда есть что добавить или объяснить.
В линуксах gnupg ставится из штатного репозитория, для макоси можно поставить из macports, brew, но я рекомендую GPG Suite. Все эти способы предоставляют вам консольную программу gpg с одинаковыми командами на всех операционках. Текущая актуальная версия GnuPG 2.2 и вся статья отталкивается именно от неё. Многие команды в принципе применимы и для более старых версий.
Между разными версиями gnupg формат хранения данных в каталоге с конфигурацией несколько раз менялся и связанные с этим термины типа keyring уже во многом устарели, поэтому в обновлённой версии я постараюсь не углубляться в конкретные детали реализации и слова типа keyring/кейринг тут использоваться не будут. Чтобы подчеркнуть относительность конфигурации, я буду использовать слово конфиг, под которым вы должны понимать выбранный каталог с конфигурацией. Также я не буду вдаваться в эзотерические команды или свойства подписей, который никем нигде не используются.
Когда я рассказываю о концепциях, то обычно использую термин OpenPGP, когда рассказываю о конкретных прикладных командах, то использую gpg или gnupg.
Типичная ситуация: коннектимся с машины M1 на машину M2 через SSH, затем на машине M2 меняем юзера через sudo и хотим там запустить X11-приложение, чтобы оно открылось на дисплее машины M1. Это может быть, например, отладчик или графическая гуйня к базе.
Дальше я по шагам распишу все этапы подключения с комментариями.