logo

muhas.ru — это просто блог…

О linux, о используемых или просто понравившихся инструментах, вобщем обо всем что окружает мою аскетичную компьютерную жизнь и показалось достойным упоминания или заметки «на память»

Я просто оставлю это здесь

Каким-то неведомым методом на большинстве компов в /etc/resolve.conf у меня прописано

nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 77.88.8.8
nameserver 77.88.8.1
nameserver 208.67.222.123
nameserver 208.67.220.123
nameserver 4.2.2.1
nameserver 4.2.2.2

А на каких-то компах только гуглоднс! И заметить что проблема именно в гуглоднс было не легким делом 😑

Так что ловите небольшой список публичных dns и пропишите нужные себе

Google DNS почивший по неведомым причинам у многих провайдеров

8.8.8.8
8.8.4.4

Yandex DNS

#без фильтрации
77.88.8.8
77.88.8.1
#фильтрация опасных сайтов
77.88.8.88
77.88.8.2
#фильтрация опасных сайтов и сайтов для взрослых
77.88.8.7
77.88.8.3

OpenDNS

#новые фришные
208.67.222.123
208.67.220.123
#старые фришные, но вроде ещё рабочие
208.67.222.222
208.67.220.220

DNS апушеные в ранний период интернета для внутренних нужд Level 3, но разползшиеся по сети. Лучше не использовать, но на крайний случай пойдут, так что пихайте в конец списка

4.2.2.1
4.2.2.2
4.2.2.3
4.2.2.4
4.2.2.5
4.2.2.6
P.S.

Как-то давно на рабочей машине у меня на adsl (кажется, тогда это был авангард от ростелекома) глючил dns, и по неопытноси общения с линуксом да недостатке знаний о публичных dns я нашел самый легкий, как тогда мне козалось, путь — поставил себе bind 😏

Так что днс в локалке или на локалхосте который тырит данные у корневых тоже неплохой выход из ситуации с проблемными dns

Arch Linux Updates Indicator для GNOME

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

проверка обновлений archlinux

Ну а при желании запусткаете сам апдейт, хоть через yaourt хоть через 'echo "я обновился"', т.е. в настройках прописывается команды для обновления.
У меня прописано (y это алиан на yaourt)

gnome-terminal -e 'zsh -c "y -Syu ; echo Done - Press enter to exit; read"'

Расширение живет тут, оттуда же и устанавливается в гном.

Rofi — годная замена dmenu

Наткнулся я на замечательную такую заменялку dmenu, которая уже по дефолту умеет парсить .ssh/config для выбора соединения с ssh (Alt+f3), переключать окна (Alt+f12 для всех вокспейсов или f12 для текущего), ну и соответсвенно запускать приложения (Alt+f2). Да и настраивается не только параметрами командной строки, но и через Xresources.

Называется сия замечательная штука rofi. При обычном запуске висит в фоне и ждет нажатия волшебных кнопок для её отображения или запуска rofi с управляющими параметрами (к примеру, rofi -show run, для отображения диалога запуска программ). Хотя с параметром -dmenu запускается в режиме dmenu.
Но какое же dmenu без своих скриптов, посему и rofi поддерживает и их.
Drop in dmenu replacement. (Screenshot shows rofi used by teiler ).
(пример одного из скриптов отсюда)

Живет замечательная полезняшка тут, там же более подробное описание, ман, скрипты и скриншоты.

В Арче, как обычно, yaourt -S rofi

zsh: corrupt history file fix

Проблема
zsh: corrupt history file ~/.zsh_history
Решение
mv ${HISTFILE} ${HISTFILE}.bak
strings ${HISTFILE}.bak > ${HISTFILE}

Кавычки в приглашениях zsh

Решил я как-то впихнуть себе текущую ветку git в приглашение, и таки впихнул 😀

Но поведать сегодня хочу не об этом, а о небольшом моменте который меня в то время «зацепил» — собственно вывод переменных или результата функции в приглашении zsh и разборки с кавычками…
Дело в том что обычно описание приглашения идет в двойных кавычках, но если указать в этих кавычках, к примеру, переменную $? (код завершения предыдущей программы), то эта переменная будет считана всего один раз, т.е. приглашение будет иметь всегда один и тот же вид, поэтому что бы результат считывался перед каждым выводом приглашения используют %? (или всякие %m %n) или одинарные кавычки.
Но вот вывод результата функции несколько отличается — просто указание функции не работает, посему просто '$(function_name)'. И вот благодаря этому можно выводить в приглашении что угодно без использования add-zsh-hook, как это часто делают воводя тот же git brunch. Аналогичное же поведение и у приглашения в bash.
К примеру, наипростейший вывод помянутой ветки git будет выглядеть так
git_branch() { basename `(git symbolic-ref -q HEAD || git name-rev --name-only --no-undefined --always HEAD) 2> /dev/null` 2> /dev/null}
PROMPT='$(git_branch)'"ваше приглашение"
Ну а дальше можно навернуть ещё больше, расскрасить там аль вывести что изменения незакомиченные имеются…