LINUX.ORG.RU

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

Android, зонды, безопасность, СПО, паранойя

Форум — Mobile

Disclaimer1: Проблема с данным маном в том, что местной аудитории, например, плевать на ведроид, а тому же 4pda наплевать на фанатичный СПО и избавление от зондов. Рискнем и запостим здесь.

Disclaimer2: Все описанное является суммой наклопленного мной опыта вперемешку с моим личным мнением. Пишите комменты, будем улучшать-дополнять-чинить

Уровень прошивки

Практически все стоковые прошивки на сегодняшний день идут с gapps (Google Apps). Что же это за зверь:

  • Любое приложение (даже не требуещее никаких прав) может с ним общаться.
  • Gapps имеют доступ к сети.
  • Gapps позволяют Google в любой момент установить/удалить с вашего телефона любое приложение.
  • Gapps постоянно держат открытое сетевое соединение с серверами гугла (для нужд push-нотификаций).
  • Gapps — нереальное огромное количество кода. Стоковый образ (если верить opengapps) будет весить около 700Мб.

ААААА, как это удолить этот рассадник потенциальных уязвимостей и жора батарейки?

Сложный вопрос, на самом деле. Есть три варианта действий:

  • Новый и простой, и профитный способ. Появилась прошивка «LingeageOS for microG». Если ваше устройство поддерживает её, просто ставьте её и наслаждайтесь. Fdroid+MicroG+пуши+signature spoofing+unlp+OTA-обновления из коробки
  • Самый простой способ. Если ваш андроид достаточно старый (на достаточно новом не удастся отключить самый главный компонент gapps), из Настройки->Приложения отключите все, связанное с Google (особенно, Google Service Frameworks):
    • root не требуется;
    • push-уведомления работать не будут;
    • на устройстве останется огромная и потенциальная куча гугловского дерьма, хоть и менее активная.
  • Способ посложнее. Накатываем root и вручную удаляем все пакеты и библиотеки, требуемые гуглу:
    • требуется root и разблокировка загрузчика;
    • минимальное количество зондов без смены прошивку на полностью опенсорсную;
    • увы, в последних версиях андроида вам, скорее всего, придется оставить несколько пакетов (вроде GoogleSetupWizard), иначе система не загрузится.
  • Самый профитный способ. Ставим альтернативную прошивку (или мотаем до следующей секции и покупаем устройство с пгавославной прошивкой без зондов из коробки). Наслаждаемся.
    • Требуется root, разблокировка загрузчика, шаманство и местами смена устройства.

Я тут начал наслаждаться, но вдруг понадобились пуши, да и Uber требует зонды. Что делать?

Вдоль

Попробовать поставить MicroG, свободную реализацию клиентской части гуглозондов. Самая больная часть: помимо собственно MicroG вам нужно будет запилить себе Signature Spoofing. Коротко говоря, это обход защитного механизма, не позволяющего прикидываться gapps'ами кому попало. Для этого необходимо либо патчить прошивку при помощи Xposed/Needle/Haystack, либо использовать совместимую прошивку (смотрите список, по ссылке, их стало очень много). Все подробности по той ссылке.

MicroG позволяет завести пуши, сервисы геолокации (со множеством бекендов, ищите nlp location backend в f-droid) и большое количество софта (когда я в последний раз тыкал, работали даже покемоны).

Уровень софта

Без гуглозондов жить есть!

https://f-droid.org/ — каталог с опенсорсным софтом.

Предлагаю вам следующий список приложений, способный заменить типичный набор проприетари из типичной вендорской прошивки. Аналогичный список: https://github.com/Datenschutz/awesome-FOSS-apps

  • Yalp store. Позволяет ставить приложения из Google Play (да, иногда это все-таки нужно), в том числе через общий аккаунт. Не требует зондов.
    • Позволяет так же выкачивать купленные приложения (но не факт, что они заработают: они при работе могут проверять лиценизию через gapps, возможно, тут может помочь microg).
    • Альтернативно, воспользуйтесь моим решением для выкачивания софта прямо в свой репозиторий f-droid.
  • K-9 Mail. Почтовый клиент.
  • DAVDroid. Синхронизация контактов с owncloud/nextcloud.
  • Gadgetbridge. Синхронизация с умными часами и браслетами (pebble, mi band и некоторые другие)
  • NewPipe. Клиент для YouTube. Умеет воспроизводить видео в фоновом режиме как музыку, загружать файлы.
  • Odyssey. Просто материальный музыкальный плеер, но в последнее время очень нужный, т.к. вендоры повадились заменять в прошивке плеер на Google Music.
  • Набор простых и красивых затычек для различных приложений — simple mobile tools.
  • Файрволл AFWall+ файрволл (имеет Xposed модуль для расширения возможностей)
  • Amplify Battery Extender.
  • DNS66.
  • KDE Connect.
  • OpenKeychain.
  • OpenVPN FOSS.
  • Картография и навигация: Maps.Me (приз симпатий от комментаторов), OsmAnd (приз глюкалова от меня, но щито поделать).
  • Список стал очень жирным. Пока новые элементы не добавляю, думаю над критериями включения в него софта.

Если вы будете ставить проприетарный софт, помните о следующем:

  • Желательно зайти в настройки приложения и вручную запретить доступ ко всем ненужным разрешениям, дабы не промахнуться в нужный момент.
  • Отключите приложению фоновый доступ к сети (если у вас свежий Android) или вообще доступ к сети (если у вас стоит файрволл).
  • Малвари вроде «Сбербанк Онлайн» вообще лучше создать отдельный аккаунт на телефоне.
  • Яндексовским приложениям нельзя давать доступ к местоположению. Вообще никаким — все сливают.
  • Проприетарь может читать названия аккаунтов, даже не принадлежащих ей. Называйте их максимально обще, т.е. вместо «sportloto@syncserver.com» делайте «contacts sync».

Права суперпользователя

Читая васянский 4pda вы часто можете увидеть «ну и накатываем SuperSU.zip». Не делайте этого. Есть прекрасный опенсорсный superuser, совместимый со свежими ведроидами. Нужно лишь поставить zip (используйте beta на android >=6) и apk.

Если ваша прошивка основана на LineageOS, то все еще проще. Где-то рядом с загрузками в директории extra должен валяться zip, включающий встроенные и интегрированные в прошивку права суперпользователя. Профит.

XPosed

XPosed — опенсорсный фреймворк для низкоуровневых хаков.

  • Не доступен для свежих андроидов.
  • Позволяет заставить не увидеть root всякие «Сбербанки Онлайн».
  • Имеет кучу некрофильских и неопенсорсных модулей. Осторожнее.
  • Легким движением руки может окирпичить прошивку.
  • Полезные модули:
    • PlayPermissionsExposed
    • YouTubeAdAway (но все-таки советую использовать NewPipe, LightTube, WebTube, SkyTube или MiniTube. Тысячи их!)
    • XPrivacy — по своей сути это «песочница» для любого, даже системного, ПО. Xprivacy применяет правила ко всему ПО. Эти правила можно создавать самому или качать готовые. То есть, к примеру, если установлено нечто местами полезное, но попутно показывающее свою рекламу, Xprivacy можно просто запретить этому ПО доступ в сеть. Или если очередная косынка хочет интернет, список контактов, доступ к микрофону и камере, то с Xprivacy это легко и просто запрещается конкретно этой гадости и она даже будет при этом работать не имея доступа к тому, что ей будет запрещено.

Уровень устройства

Тут тоже всё плохо. Выбор:

  • Рандомный флагман с хорошей поддержкой LineageOS (CyanogenMod). Поддержка, вероятно, будет хорошей, секьюрити-апдейты будут приходить долго (например, для htc desire hd цианоген обновлялся до самого конца — декабря 2016 года), но вот версия андроида, скорее всего, застрянет. Обычно дорого. Можно искать по списку официально поддерживаемых линейкой устройств.
  • OneplusOne / Wileyfox Swift 1. Поставлялись с CyanogenOS, имеют хорошее коммьюнити разработчиков, будут долго обновляться в софтовой части. В железной — все плохо. 1+1 уже довольно старый и хорошие запчасти купить сложно. Wileyfox изначально имел несколько проблем, в т.ч. слабенькую батарейку. Компенсируется ценой, местами можно найти новое в продаже. Довольно бюджетно.
  • Fairphone 2. Очень дорого, очень хорошо. Но это в теории, как там на практике — хз, не пользовался, отпишитесь.
  • Рандомный телефон с официальным портом los. Сойдет, главное, чтобы фатальных багов в порте не было. Долгой жизни порта не ждите.
  • Рандомный телефон с васянским los. Совсем плохо, но если телефон уже куплен, ничего не поделать.
  • Рандомный телефон с васянским ведроидом, основанным на стоковой прошивке / без исходников / проч. Лучше такое не ставить, а подготовить прошивку самостоятельно, смотрите выше и ниже.

Следует также заметить, что:

  • Существует несколько устройств с CyanogenOS, без доступной Cyanogenmod. В комплекте идут сервисы microsoft, gapps и много разной другой блотвари. Исходники обычно зажабены. Пример устройств: Wileyfox Spark, Wileyfox Swift 2(|+|x).
  • Выбирая устройство, так же загляните на его страничку на 4pda. Ресурс хоть и васянский, но очень полезный: можно увидеть список доступных прошивок, FAQ по типичным проблемом, список самых вероятных заводских проблем (которые можно проверить еще перед покупкой).

Уровень физической безопасности

Для чего нужна физическая безопасность:

Допустим, ваш девайс попал в руки злоумышленнику.

  • Во-первых, вы хотите, чтобы он не имел никакой возможности прочитать важные файлы с вашего телефона (кейз ФБ-1).
  • Во-вторых, вы хотите узнать, не добавил ли он кейлоггеров в ваш загрузчик (кейз ФБ-2).

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

Я бы на вашем месте на это не рассчитывал.

  • Аппаратные защиты часто не надежны и опираются на принципах безопасности через неясность, в них переодически находят уязвимости
  • На прекрасных, казалось бы, телефонах Xiaomi вы не сможете разблокировать загрузчик, если с Xiaomi что-либо случится: разблокировка производится с участием интернета при помощи (работающей только под Windows) программы, требующей их аккаунта и доступа к интернету. У HTC похожая ситуация, но в несколько более мягких условиях.
    • Скорее всего, это доставит неудобств именно вам, а не злоумышленнику
  • Всякие проприетарные системы полнодискового шифрования тоже не выдерживают проверок специалистами.

Выводы:

  • Для хранения ваших секретных файлов в безопасности от ФБ-1 используйте, к примеру, Secrecy.
  • «Таблеток» от ФБ-2 на сегодняшний день нет. Промбируйте телефон при помощи скотча и волос и не расставайтесь с ним.
  • Лучше все-таки не хранить никакие важные данные на телефоне.

Модули сотовой связи

В каждом мобильном телефоне, почти каждом планшете есть GSM-модуль мобильной связи. Это —

  • Фактически отдельное устройство, обычно имеющее максимальный доступ к процессору, памяти и переферии. Зачем это делают — черт знает. Возможны исключения, нужно уточнять в каждом отдельном случае.
  • Идентифиционный модуль, который постоянно разговаривает с воздухом.
  • Куча проприетарного кода, который никто не анализировал. В тех немногих случаях, когда анализировали — находили кучу всего интересного.
  • Работает это все на протоколах, местами разработанные в 80-х годах.

Так что тут все настолько плохо, что я даже предложить ничего не могу. Страдайте.

Вроде, все, что хотел сказать. Выдыхаю

 , , , ,

derlafff
()

Турбобанан.

Галерея — Рабочие места

Хочу поделиться своим детищем: торрентокачалка, NAS, маршрутизатор и много чего еще на основе одноплатника BananaPi.
Изначально планировалось что он же будет и WiFi роутером, но при отсутствии активности вафля будто засыпала, и при возобновлении активности на клиентах пишет «получение IP адреса», а на банане ничего не происходит. Ко всеобщему счастью под столом валялся KEENETIC LITE, который был настроен на 2 точки доступа: запароленную и гостевую.

Итак, сверху вниз:
1) HDD 160G: 5G = squid кэш; 155G = /mnt/trash - временный каталог загрузок rtorrent`а. Подключен через переходник SATA2USB
2) HDD 1T: каталог для готовых загрузок, которые самим rtorrent`ом автоматически сортируются по типу(music, films, images...), NFS шара и бакапы. Вся мультимедиа хранится в нём, а на клиентах локальные каталоги с музыкой, фильмами и фотками заменены ссылками на эту шару.
3) Сама плата. Подверглась небольшой переделки: выпаян аналоговый видеовыход(цеплялся о куллер), припаяна батарея для RTC, припаян разъем для резервного питания, позже добавлю к конструкции батарею, приклеены радиаторы на процессор, память, контроллер питания и на сетевую плату.
4) Платка с 4-мя релюшками для управления вентилятором. Управляется естественно через GPIO, в зависимости от температуры процессора и жесткого диска замыкая нужные реле и подавая на кулер 3, 5, 8 или 12В. Большую часть времени крутится на минимальной скорости с едва различимым шумом уже с 2-х метров. Должен сказать, что проблем с перегревом платы либо харда не было, а сделал я это все просто потому что смог(:
5) Блок питания 5V6A/12V2A.
6) Вентилятор какой-то thermaltake.
7) Рядом лежит дешманский USB хаб, множащий единственный свободный порт на 3 + все форм-факторы SD карт. К нему постоянно подключен 3G свисток(да, в моей деревне нет инета:().
Т.к. теперь доступ к GPIO ограничен, я сразу воткнул в него провода для прошивки микроконтроллеров через SPI.

На плате вертятся:
1) Сборка на основе Debian от некоего Igor Pečovnik. Голая консоль, куча надстроек. 2) squid.
3) privoxy - режет все оставляя чуть ли не голый текст на всех сайтах кроме доверенных. Сайты которые блочит роскомнадзор перенаправляются на tor.
4) tor - время смены цепочки увеличено до 10 минут, мне скрытность не к чему, лишь бы блокировки обойти.
5) dnsmasq с кэшем DNS и настроенный на OpenDNS.
6) rtorrent - подхватывает торренты скачанные в определённые директории и, в зависимости от вышеупомянутых переносит готовые торренты в другие заданные директории. Например: /mnt/storage/torrents/films/ -> /mnt/storage/media/films/.
7) вебморда rutorrent со всеми зависимостями(lighttpd, etc...).

iptables`ом 80 порт перенаправляется на цепочку squid+privoxy+tor, что бы через неё ходили и те, кто подключается через гостевую точку доступа.
Одно время баловался wireshark`ом, дампил распарсивал трафф гостей... Товарищи, пользуйтесь https!(;

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

Раз.
Два.
Три.

 , , , ,

lucky_guy
()

The 3L Project — новая ОС на кикстартере

Форум — Development

Написана одним человеком за год на Scheme (R7RS). Лицензия: 3-clause BSD и GPLv2.

Подробности:

https://www.kickstarter.com/projects/637581271/the-3l-project

 , , , ,

Oxdeadbeef
()

MIT опубликовал все материалы своих курсов в открытом доступе

Форум — Talks

Я просто оставлю это здесь: http://ocw.mit.edu/courses/index.htm

 ,

Jefail
()

Хочу классику по CL.

Форум — Development

О великие!

После этого буду благодарен за «классическую» литературу по Common Lisp'у.

По типу K&R для Си и Птице-трупа для C++.

Ресурсы/литературу/вики/доки, с чего все начинали?

Обещаю не беспокоить больше аудиторию в течение месяца новыми темами.

Upd: всё, спасибо огромное!

 , , , ,

Deleted
()

Interim OS 2015 - минималистичная ОС для небольших компьютеров

Форум — Talks

Interim OS — новейшая ОС предназначенная для небольших компьютеров, вдохновленная идеями из лисп-машин (вся ОС, включая ядро доступны через REPL) и Plan9 (все есть файл). После загрузки ОС, пользователю предоставляется интерфейс в виде лиспового REPL (используется JIT компиляция), где пользователь может управлять ресурсами ОС через файловую систему (как в Plan9).

В данный момент Interim OS запускается на следующих конфигурациях:

  • Raspberry Pi 2 (Broadcom VideoCore4/ARMv7, Bare Metal)
  • Olimex Olinuxino (Freescale IMX233/ARMv5, Bare Metal)
  • ARM5+ Linux (Hosted)
  • Intel/AMD x64 Linux (Hosted)

Основные идеи ОС:

  • оболочка — это редактор — это REPL — это язык (лисп) — это компилятор
  • namespace'ы используются для песочниц и сетевой прозрачности
  • только одна и основная кодировка для всех — UTF-8
  • все управляется с клавиатуры

Страница проекта:

http://interim.mntmn.com

Исходные коды проекта:

https://github.com/mntmn/interim

 , ,

Oxdeadbeef
()

Полезные примочки для Firefox’a (user.js|prefs.js)

Форум — General

Интересуют полезные примочки для FF, которые можно быстро класть в папку профиля в виде user.js или дописать в prefs.js, дабы не настраивать в самом about:config. В винде класть в %userprofile%\AppDataAppData\Roaming\Mozilla\Firefox\Profiles %профильпользователя%\

//Масштаб 100% вне зависимости от изменённого масштаба системы
user_pref("layout.css.devPixelsPerPx", "1.0");
//Отключить гео
user_pref("geo.enabled", false);
//что-то-там про приватность, отправку в гугл и т.д.
user_pref("browser.safebrowsing.appRepURL", "");
user_pref("browser.safebrowsing.downloads.enabled", false);
user_pref("browser.safebrowsing.enabled", false);
user_pref("browser.safebrowsing.gethashURL", "");
user_pref("browser.safebrowsing.malware.enabled", false);
user_pref("browser.safebrowsing.malware.reportURL", "");
user_pref("browser.safebrowsing.reportURL", "");
user_pref("browser.safebrowsing.updateURL", "");
user_pref("datareporting.healthreport.service.enabled", false);
user_pref("datareporting.healthreport.service.firstRun", false);
user_pref("datareporting.healthreport.uploadEnabled", false);
user_pref("media.peerconnection.enabled", false);
user_pref("media.eme.enabled", false);
user_pref("loop.enabled", false);
user_pref("browser.search.suggest.enabled", false);
user_pref("privacy.trackingprotection.enabled", true);

Наверняка у вас найдутся какие-то свои настройки. Желательно выкладывать в формате, считываемом из user.js с комментариями. Результат буду хранить у себя.

 ,

Dreamject
()

Небольшой мануал по проверке орфографии в emacs

Форум — Desktop

Тут иногда проскакивают вопросы о том, как настроить проверку орфографии в emacs. Я недавно по мере сил исследовал этот вопрос и что бы усилия не пропали даром, решил оформить в виде пары статей, вот что получилось:

Двуязычная проверка орфографии по словарю: http://reangdblog.blogspot.com/2015/06/emacs.html

И расширенная проверка пунктуации, стиля и т.п. через languagetool: http://reangdblog.blogspot.com/2015/06/emacs_28.html

 ,

ReanGD
()

Моя дачная РадиоРубка

Галерея — Рабочие места

Лето и дача. Сижу себе и в город не хочу. Всё, что надо, есть.

 

dark77
()

костыли, велосипеды, х#@к и в продакшн, это вот всё

Форум — Talks

Бесполезные, помогите с идеями девиза на футболку. Рисунок с костылями и велосипедами есть, надписи нет. Из требований - 30-50 байт, латиница предпочтительнее (по шрифтовым всяким штукам)

P.S. что уже было и повторять не хочу - keep calm and go into production: http://embed.gyazo.com/ac5e24f3bb0ce1424bb331212fc3d622.png Сейчас рисунок другой и надпись хочу другую

P.P.S. «Slap shit together and deploy» - не есть буржуйский аналог «х#@к х#@к и в продакшн», гугл находит это выражение только в рунете и окрестностях

 , ,

vostrik
()

ЯП, ОС, архитектура процессоров, инструкции

Форум — Development

Заглянув за кулисы своего компьютерного мирка, получил кучу мозаичных кусочков.
1. Вот есть у нас процессор со своей архитектурой, будь то X86 или ARM. Под нее портируют компиляторы топовых языков программирования путем использования процессорных инструкций вроде SSE. Что есть оптимизации компилятора? Вот написан код, компилятор его перековеркал для лучшей производительности на определенной архитектуре при использовании тех или иных инструкций процессора. Но всегда ли выбранный компилятором способ коверканья определенного куска кода можно считать оптимальным? Есть оптимизации на потребление оперативной памяти, производительности, размера кода, да что уж там - всяких «волшебных ключиков» просто тьма, успевай только тестировать их. Обилие этих ключиков соединяются в группы оптимизаций по параметрам. ОС пишут на компиляторе ЯП, компилятор завязан на ОС для компилирования других проектов - иначе не было бы таких разделений вроде: «поддерживаемые платформы: MS Windows, Linux, Android» и т.п. Этот список поддерживаемых платформ есть даже у самого компилятора (rust, например). Вот хочу я, например, свой процессор изобрести с уникальной архитектурой, значит ли это, что мне, минимум, придется портировать компилятор того же С? А если написать операционную систему? Ее корень - ядро, его пишут на ЯП, компилятор которого уже завязан на поддерживаемых им платформах (читай: ОС), значит ли это, что написать свое ядро на том же расте невозможно?
2. Еще мне непонятна идея генерируемого кода компиляторами. Пару слов обо мне: шарпист заинтересовался растом, значит попытаюсь понять на его примере. Так вот, у нас есть компилятор раста, который генерирует безопасный исполняемый код. В том же C или C++ генерируется код, но его безопасность исполнения не гарантируется. В C# есть сборщик мусора как решение проблемы предыдущих языков программирования. В расте сборщика мусора нет, т.е. его компилятором генерируется то же самое, что и у C или C++, но в данном случае он безопасный «на слово», в конечном виде он выглядит как и небезопасный результат компиляторов прежних 2-ух ЯП? Или компилятор раста на стадии компиляции проверяет паршивость кода, но при этом то же самое происходит при выполнении программы и от результата какой-нибудь проверки может случиться что-то иначе? Сложновато объяснил, всё сводится к следующему вопросу: какими жертвами удалось добиться безопасности растом?

 , , , ,

Dulze
()

SSH-соединение двух компьютеров без белых айпишников

Форум — Admin

Дано: два компьютера в разных частях света без белых айпишников, третий компьютер с белым айпишником.
Что хочу: первые два подключаются по SSH к третьему, после на первом можно заиметь консоль второго (желательно, напрямую, не пропуская трафик через третий).
Возможно? Или проще VPN?

 , , ,

CYB3R
()

Светлый i3

Галерея — Скриншоты

Недавно появилось желание попробовать тайлинг (да и на 1366x768 не очень комфортно работать с DE). Из-за простого конфига и шустрой скорости работы выбор сразу пал на i3. От темных тем у меня болят глаза, поэтому все оформлено в светлых цветах.

  • Некоторые окна гоняю во float'е, поэтому заголовки отключать не стал
    • Как можно заметить, в i3bar выводится играющая в deadbeef'е композиция
    • Тени рисует xcompmgr
  • dmenu был заменен на более функциональный rofi
  • Pcmanfm (шг - PT Sans 11 + бубунтопатчи)
  • Xfce4-terminal (шг - Monaco 11)
  • Конфиги
  • Обоина

Алсо, буду очень признателен, если кто-нибудь подскажет, как можно задействовать Fn. Для переключения яркости и громкости сейчас используются костыли вида

bindsym  $mod+Control+Right exec xbacklight +20
bindsym  $mod+Control+Left  exec xbacklight -20
bindsym  $mod+Control+Up    exec amixer set Master 5+
bindsym  $mod+Control+Down  exec amixer set Master 5-

 , ,

Unnamed
()

RSS, безопасность, новости

Форум — Talks

Привет, народ!

Подскажите, плиз, лучших новостных сайтов, по темам: интернет, безопасность, соцсети, корпорации, наука, технологии, хард и софт варе и подобные.

Хотел агрегатор RSS забить каналами, но с выбором возникают проблемы.

Перемещено stave из security

Just_Me
()

Незаменимые plug-in'ы Vim

Форум — General

Наверное, «незаменимые» слишком резко, но все же, какие, по вашему мнению, действительно полезные (не тривиальные, типа NERDtree, Syntastic или комплитеры) plug-in'ы для Vim вы используете?

Полагаю, эта тема будет интересна для начинающих и остальных пользователей Vim.

Из того, что использую я:

«The missing motion for Vim» полезен тем, что позволяет искать и перейти к искомому, в отличие от изкоробочного f F одного символа - по 2 или 3, также после активации опции может работать как аналог довольно неюзабельного easymotion, но главное преимущество все-таки в изначальном применении.

«simple REPL inside vim» - дико тащусь от этого малоизвестного плагина, проще посмотреть иллюстрацию по ссылке. (вкратце: получить по одному нажатию результат интерпретатора выделенного куска, :read !* отдыхает).

«Yet another rainbow parentheses plugin» - имхо лучшие цветные скобочки из существующих.

аналог имаксовского Narrow Region, когда хочешь сконцентрироваться на небольшом куске кода/текста, выделяешь, он открывается в отдельном буфере, при сохранении синхронизация с остальным.

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

предпросмотр :substitute в реальном времени

...

Кроме этого, может кто не знал: о самом удобном манипулировании с окнами, взаимодействии с tmux (например под любой интерпретатор/компилятор), стартовом экране, календаре-планировщике, отображении отступов, а также нескучной цветовой схеме для терминала, получше, чем блевотный solarized.

Что посоветуете?

 

clojure
()

gpgpwd 0.3

Новости — Open Source
Группа Open Source

gpgpwd — это терминальный менеджер паролей. Он хранит список паролей в зашифрованном файле с помощью GnuPG, и позволяет легко извлекать, изменять и добавлять в этот файл новые пароли по мере необходимости. Также программа умеет генерировать случайные пароли.

gpgpwd может использовать Git, чтобы синхронизировать свои пароли между различными машинами.

Изменения версии 0.3:

  • Добавлен параметр --all для поиска всех возможных совпадений.
  • Добавлен вывод информации на экран при вводе неправильной команды.
  • Убраны некоторые предупреждения при шифровании с помощью gpg, когда gpg является символической ссылкой на gpg2
  • Добавлена функция отключения сжатия gpg.

Список изменений

>>> Сайт

 ,

fallout4all
()

Offworld

Новости — Игры
Группа Игры

Offworld — шутер от первого лица, где игрок управляет воздушным кораблём и воюет за господство своего клана! Игра написана на Unity + Mono.

Изначально Offworld была разработана и создана друзьями в 2012 году, просто потому что они любили делать игры и хотели создать что-то удивительное. В то время они не задумывались о публикации этой игры. Но услышав в 2013 году о конкурсе «Indievelopment 2013» решили в нём участвовать и на удивление получили 3 призовое место. Это событие вдохновило создать независимую игровую студию «Tengu Games».

Особенности игры:

  • Эпичные бои воздушных кораблей, которые сражаются друг с другом за вечную славу!
  • Тактический геймплей, состоящий из двух типов кораблей и различных видов оружия на выбор!
  • Красивый, стилизованный 3D мир.
  • Аркадный геймплей.
  • Красивая музыка.

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

Игра кроссплатформенна (Windows, Mac OS X, GNU/Linux).

Видео

>>> Подробности

 , ,

fallout4all
()

selfdevelopment

Форум — Development

Профессия. Азимов

Unix - универсальная среда программирования. Керниган, Пайк

История чтения в западном мире от Античности до наших дней

Программирование вторая граммотность.Ершов

Анафем. Стивенсон

Практика программирования. Керниган,Пайк

Приход Ночи. Азимов.

Начала Программирования. Степанов

Глубина в небе. Виндж

Диалоги.Платон

Тренировочная зона. Уэйд Пол

Философия ... Эккель

Начала. Евклид

 ,

qulinxao
()

справочник по «функциональным» алгоритмам

Форум — Development

Есть ли какой-нибудь всеобъемлющий справочник/кукбук, содержащий функциональные версии базовых алгоритмов? Какой-нибудь функциональный аналог «алгоритмов на c++» Седжвика.

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

Важно

1) Иметь разбор влияния на производительность. Как с точки зрения самого алгоритма, так и нижележащей реализации «машинок» стандартной библиотеки.

По поводу алгоритма совсем хорошо было бы видеть формальное доказательство сложности или что-то такое, чтобы прочувствовать его дух.

Подразумеваются такие алгоритмы, которые написаны держа в уме оптимизацию по перфомансу, а не только и не столько по человекочитаемости.

2) Интересны варианты при отсутствии в движке (копиляторе, vm, итп) встроенной оптимизации хвостовой рекурсии, и долгой рекурсии как таковой (глубина вложенности, время исполнения).

3) Язык предпочтительно - лисп с минимумом извращенных ридеров. Ну или что-нибудь другое адекватное, легко переносимое на другие синтаксисы.

Хорошо если автор этого гипотетического справочника болел бы JVM (clojure, scala, groovy, java8) и приводил бы детали реализации на чем-то из этого, и мог бы сказать что-то по поводу нижележащей реализации на JVM.

На самый край подойдут извращения в виде Java8 или Java7+FunctionalJava, или PHP с замыканиями.

stevejobs
()

Выбора ноута очередной тред

Форум — Talks

ЛОР, возникла потребность прикупить хороший ноут (ультрабук). Собственно дома стоит коробка с 13-дюймовым MacBook Pro на новом Хасвелле в почти максимально возможной комплектации, но почитав про трудности приучения этого зверя к Linux, я решил повременить с распаковкой. К тому же, как я понял, железка эта работает куда хуже на НЕ родной ОС (греется, батарея помирает значительно быстрее, проблемы с тачпадом), поправьте, если ошибаюсь. Собственно, вопрос знатокам: есть ли что-то подобное по качеству сборки/экрана и с такой же «живучей» батареей? Цена вопроса - до $2k (живу не в России, поэтому цены на всяких яндекс маркетах для меня не показатель). Ах да, обязательным условием является более-менее адекватная поддержка всех внутренностей Linux.

 , ,

LMW
()