Это стек и инструменты, которые помогают мне продуктивно работать с Linux в повседневной жизни. Прежде всего, позвольте мне сказать вам, что это может не соответствовать вашим потребностям: я программист на полную ставку, поэтому у меня есть выбор ОС.
Linux — мой выбор уже несколько лет, и хотя в этом посте не будут подробно описаны причины, он будет посвящен инструментам и утилитам, которые помогут мне выжить в нем.
Distro
Ну, начнем с нуля. У меня нет явного победителя здесь. На самом деле, я использую в настоящее время 3 разных (исключая мой роутер и телефон):
- Fedora — На моем рабочем ноутбуке
- Xubuntu — на моем домашнем ноутбуке
- Raspbian (Debian) — На моем сервере Raspberry Pi
(Информация в этом посте не будет детализирована на сервере; она просто запускается и нуждается в ssh-доступе, и это все).
Причины Fedora и Ubuntu в моем случае:
- Стабильность ,
- Пакеты являются доступны в репозитории, и
- Обновления пакетов программного обеспечения не являются архаичными .
Оконный менеджер
Самые распространенные оконные менеджеры доступны во всех популярных дистрибутивах.
Мой выбор здесь Xfce :
- Нет необходимости в визуальных эффектах ,
- Скорость благоприятствовала и
- S omething , что я не дерусь с каждым днем .
Следите за: LXQt .
(0.8 был выпущен недавно, но я планирую попробовать его в следующем выпуске.)
Оболочка
У меня есть 2 кандидата здесь:
- Баш и
- Zsh.
Я использую Bash для сценариев. zsh — моя оболочка по умолчанию
Shell Env Sync
Поскольку у меня есть несколько машин, на которых я работаю, для меня есть два важных проекта:
о-мой-ЗШ
- Хорошо структурированный плагин,
- Автозаполнение , и
- Псевдонимы.
Чтобы немного документировать мой пример использования, вот те плагины, которые у меня есть в моем .zshrc
:
plugins=(git mvn glassfish yum colored-man vagrant z common-aliases gradle homeshick vim-interaction powerline tmuxinator tmux)
Пожалуйста, обратите внимание: некоторые из них не доступны официально, и на момент написания просто присутствуют в виде запроса от меня к проекту. А именно:
(Не стесняйтесь проверять их и предоставлять обратную связь, если вы считаете их полезными.)
Homeshick
Позволяет мне синхронизировать все мои собственные плагины zsh, а также .bashrc
файлы через git-репозиторий .
Единственными требованиями являются:
- git and bash на всех клиентах
- и репозиторий git доступен для всех моих клиентов.
В моем случае есть вещи, которые я не хочу показывать публике, но у меня нет проблем с размещением их в частном git-репо. Так что я выбрал bitbucket , так как у меня есть личное репозиторий git бесплатно .
Начальная загрузка Shell Sessions
Здесь есть 2 важных проекта:
- Tmux и
- тмуксинатор .
Tmux и tmuxinator позволяют мне иметь только один файл в формате yaml для начальной загрузки моих терминалов.
Я предпочитаю, чтобы в каком-либо графическом терминале было открыто несколько вкладок:
- Ежедневно загружает все мои снаряды разумным способом,
- Предоставляет мне хороший способ организовать их, и
- Навигация между ними работает только с клавиатуры => переключение между различными задачами после некоторого времени использования становится просто рутиной .
Так что больше не нужно искать в бесчисленных картах / окнах для конкретной задачи.
Shell Productivity
Некоторые, которые я считаю, стоит того:
- Ack — мощная замена grep (я могу описать это в отдельном сообщении в блоге),
- Уведомлять-отправить
Я уже писал об уведомлении-отправке .
Я использую его для всех операций управления жизненным циклом сервера приложений (в моем случае Glassfish) (запуск / остановка / перезапуск домена), а также для развертывания.
Это здорово, так как я могу работать параллельно, и это привлекает мое внимание, когда работа закончена.
Панель запуска настольных приложений
Я использую Synapse .
Файловый менеджер
Мой выбор — Krusader . То, что мне нужно, доступно, а именно:
- Манипулирование файлами / папками,
- Сравнение папок и файлов
- Поиск содержимого файла / папки.
Единственное, что меня беспокоит, так это то, что развитие застопорилось.
Тем не менее, жизнеспособной альтернативой может быть: Double Commander , который кажется даже кроссплатформенным и может использовать плагины всего Commander (который раньше был моим выбором для окон для этой цели).
редактор
Поскольку я люблю играть с Руби в эти дни, я попытался найти что-то, что могло бы помочь в этой области.
(G), то Vim
После поиска я пришел к выводу, что (G) Vim довольно популярен в мире Linux. Многие высказывают мнение об этом редакторе в теореме о бесконечной обезьяне Вима (см. Теорему о бесконечной обезьяне ).
Тем не менее, я видел:
- C ountless плагины для всех видов вещей, и
- Это невероятно мощный , насколько я видел, и его изучение может дать дивиденды.
Отличный источник информации : vimcasts , который мне очень помог в этой области.
Инструмент синхронизации файлов
Унисон мой выбор. Для получения дополнительной информации о моем случае использования см. Этот пост в блоге .
Вывод
Надеюсь, вы найдете здесь вдохновение. И был бы рад услышать от вас, ребята, обо всем, что я пропустил, но вы не могли бы жить без.
Тем не менее, я не могу поверить, что кто-то читал это далеко. Как я полагаю, я бы не заставлял себя :).