Этого треда уже нет.
Это копия, сохраненная 21 августа 2019 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Это копия, сохраненная 21 августа 2019 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
295 Кб, 900x599
Приглашаю всех анонов обсудить опыт использования альтернативных шеллов. Не просто dash/ksh/zsh, а радикальных монстров, предлагающих свои синтаксис, философию и печеньки.
Маленькая предыстория. На днях меня сильно расстроил awk. В зависимости от имплементации он вёл себя по разному. Один и тот же скрипт на разных машинах давал разные результаты. Вроде мелочь, но я убил на это 6 часов. Потом я вспомнил, что разные имплементации grep парсят регулярки по разному, и приуныл окончательно. Шелл уже никогда не будет прежним. В сердцах я сел и решил пересмотреть всё, что человечество предлагает под лозунгом "bash устрел, вот вам достойная замена!!1".
Сам я успешно живу на zsh, но в этом ИТТ треде я буду стартельно перебирать различные альтернативно одарённые шеллы: от безобидного fish до маргинального rash. Я прекрасно понимаю, что Вселенная всё равно поставит меня раком и буду дальше писать костыли на sh, но так охота прикоснуться к высокому.
Велкам.
Маленькая предыстория. На днях меня сильно расстроил awk. В зависимости от имплементации он вёл себя по разному. Один и тот же скрипт на разных машинах давал разные результаты. Вроде мелочь, но я убил на это 6 часов. Потом я вспомнил, что разные имплементации grep парсят регулярки по разному, и приуныл окончательно. Шелл уже никогда не будет прежним. В сердцах я сел и решил пересмотреть всё, что человечество предлагает под лозунгом "bash устрел, вот вам достойная замена!!1".
Сам я успешно живу на zsh, но в этом ИТТ треде я буду стартельно перебирать различные альтернативно одарённые шеллы: от безобидного fish до маргинального rash. Я прекрасно понимаю, что Вселенная всё равно поставит меня раком и буду дальше писать костыли на sh, но так охота прикоснуться к высокому.
Велкам.
Итак список который я составил.
Рубрика первая: "Мы просто докостылим текущий баш синтаксическим сахаром и всем будет хорошо".
- fish https://fishshell.com/ - всем известная оболочка, которая позиционируется себя как zsh изкоробки и которая забила на обратную совместимость с башем. Написана на крестах. Существует с 2005 года.
- elvish https://elv.sh/ - шелл написанный на Go, предлагает свой синтаксис, расширяется модулями. Развивается c 2014 года.
- osh/oilshell https://www.oilshell.org/ - хитрый шелл, написанный на питоне, но предлагающий сразу два языка: osh, oil. Первый опирается на столпы баша. Последний хоть и придуман, но ещё не рализован, лол. Разрабатывается c 2016.
- murex https://github.com/lmorg/murex - шелл на Go, который фокусируется на предсказуемости, юзабилити и однострочниках. Разрабатывается с 2018.
- oh https://github.com/michaelmacinnis/oh - ещё один шелл на Go, которому чуть больше года.
- es https://wryun.github.io/es-shell/ - свободная реализация rc, оболочки из plan9. Разрабатывается с перебоями аж с 93.
Рубрика первая: "Мы просто докостылим текущий баш синтаксическим сахаром и всем будет хорошо".
- fish https://fishshell.com/ - всем известная оболочка, которая позиционируется себя как zsh изкоробки и которая забила на обратную совместимость с башем. Написана на крестах. Существует с 2005 года.
- elvish https://elv.sh/ - шелл написанный на Go, предлагает свой синтаксис, расширяется модулями. Развивается c 2014 года.
- osh/oilshell https://www.oilshell.org/ - хитрый шелл, написанный на питоне, но предлагающий сразу два языка: osh, oil. Первый опирается на столпы баша. Последний хоть и придуман, но ещё не рализован, лол. Разрабатывается c 2016.
- murex https://github.com/lmorg/murex - шелл на Go, который фокусируется на предсказуемости, юзабилити и однострочниках. Разрабатывается с 2018.
- oh https://github.com/michaelmacinnis/oh - ещё один шелл на Go, которому чуть больше года.
- es https://wryun.github.io/es-shell/ - свободная реализация rc, оболочки из plan9. Разрабатывается с перебоями аж с 93.
Рубрика вторая: "Мы просто возьмём популярный ЯП и слепим из него шелл".
- ipython https://ipython.org/ - интерактивная строка питона, сейчас ударилась в вебверсию, машинлёрнеров, датасетинтистов и прочий хайп, но всё ещё актуальна. Разрабатывается с 2001 года.
- xonsh https://xon.sh/ - ещё одна интерактивная строка питона, на этот раз с фокусом в консольку. Разрабатывается с 2015.
- rush https://github.com/s-mage/rush/wiki - шелл на ruby. Разрабатывается с 2008.
- pash http://pash.sourceforge.net/ - реализация всем известного powershell. Разрабатывается с 2008, и почсле 2013 ничего не слышно.
- ipython https://ipython.org/ - интерактивная строка питона, сейчас ударилась в вебверсию, машинлёрнеров, датасетинтистов и прочий хайп, но всё ещё актуальна. Разрабатывается с 2001 года.
- xonsh https://xon.sh/ - ещё одна интерактивная строка питона, на этот раз с фокусом в консольку. Разрабатывается с 2015.
- rush https://github.com/s-mage/rush/wiki - шелл на ruby. Разрабатывается с 2008.
- pash http://pash.sourceforge.net/ - реализация всем известного powershell. Разрабатывается с 2008, и почсле 2013 ничего не слышно.
Рубрика третья: "Мы просто возьмём менее популярный ЯП со скобочками".
Несколько шеллов основываются на различных лиспопотомках. На удивление они выглядят самими здоровыми и вменяемыми, при том снабжаются детальнейшей документацией.
- scsh https://scsh.net/ - scheme (2001-2006)
- closh https://github.com/dundalek/closh - clojure
- ammonite-shell http://ammonite.io/ - scala
- rash https://docs.racket-lang.org/rash/index.html - racket
Несколько шеллов основываются на различных лиспопотомках. На удивление они выглядят самими здоровыми и вменяемыми, при том снабжаются детальнейшей документацией.
- scsh https://scsh.net/ - scheme (2001-2006)
- closh https://github.com/dundalek/closh - clojure
- ammonite-shell http://ammonite.io/ - scala
- rash https://docs.racket-lang.org/rash/index.html - racket
ОП, у тебя, случайно, нет своего блога или чего-то в этом духе по подобным вещам, не только про шеллы, а вообще? Быть может есть что посоветовать? Был бы премного благодарен.
>>570984 (OP)
Разве gawk не универсален? Не вижу смысла использовать ничего, кроме bash, возможно dash, для обычных шел-скриптов, без башизмов.
Разве gawk не универсален? Не вижу смысла использовать ничего, кроме bash, возможно dash, для обычных шел-скриптов, без башизмов.
44 Кб, 456x531
>>571215
Да, gawk универсален, но никто не гарантирует, что стоять будет именно он. На минимальном дебиане стоит mawk и он напрочь игнорирует директиву nextfile.
Подробности: https://stackoverflow.com/questions/36346222/awk-skip-to-next-file
То есть либо ты проверяешь наличие бинарника, либо начинаешь изучать особенности всех реализаций awk, чтобы не обосраться. В любом случае - боль, костыли и экзистенциальный кризис.
Да, gawk универсален, но никто не гарантирует, что стоять будет именно он. На минимальном дебиане стоит mawk и он напрочь игнорирует директиву nextfile.
Подробности: https://stackoverflow.com/questions/36346222/awk-skip-to-next-file
То есть либо ты проверяешь наличие бинарника, либо начинаешь изучать особенности всех реализаций awk, чтобы не обосраться. В любом случае - боль, костыли и экзистенциальный кризис.
1,4 Мб, 1000x1507
>>571215
Да. Я ведь об этом напрямую написал. В прод я ничего кроме posix sh не выведу. Просто академический интерес.
Хотя тот же бидон активно используют в скриптовании, авось и сделаю какие-нибудь выводы.
> Не вижу смысла использовать ничего, кроме bash
Да. Я ведь об этом напрямую написал. В прод я ничего кроме posix sh не выведу. Просто академический интерес.
Хотя тот же бидон активно используют в скриптовании, авось и сделаю какие-нибудь выводы.
>>571134
Для блога нужна систематизированная информация, а я до этой стадии редко дохожу.
С другой стороны, жжшечка одного анона про nixos прижилась же. Потому и решил этот вялотекущий тред завести.
Учитывая, что на сегодня я только список составил, пройдись по авсом-листам:
https://github.com/alebcay/awesome-shell
https://github.com/k4m4/terminals-are-sexy
https://github.com/agarrharr/awesome-cli-apps
https://github.com/herrbischoff/awesome-command-line-apps
Для блога нужна систематизированная информация, а я до этой стадии редко дохожу.
С другой стороны, жжшечка одного анона про nixos прижилась же. Потому и решил этот вялотекущий тред завести.
> по подобным вещам, не только про шеллы, а вообще
Учитывая, что на сегодня я только список составил, пройдись по авсом-листам:
https://github.com/alebcay/awesome-shell
https://github.com/k4m4/terminals-are-sexy
https://github.com/agarrharr/awesome-cli-apps
https://github.com/herrbischoff/awesome-command-line-apps
62 Кб, 1364x701
>>571024
Есть еще eshell, в Emacs, тоже со скобочками. Написан на elisp.
Есть еще eshell, в Emacs, тоже со скобочками. Написан на elisp.
>>570984 (OP)
Пробовал последний чистый PowerShell? Довольно годная штука + кроссплатформенность.
Пробовал последний чистый PowerShell? Довольно годная штука + кроссплатформенность.
>>571308
Однажды пыталася написать ротацию логов в винде на повершелле. В итоге ретировался и скопипастаил готовый батник.
Если у тебя есть успешный опыт - рассказывай.
Я так понял главная беда любого ООП-шелла - это отсутствие структурированного вывода у большинства команд. Типа raw text абсолютно побоку на каком ЯП парсить. Павершелл вроде как предлагает кучу врапперов для типовых команд. Что с одной стороны хорошо - меньше говнокодить, а с другой плохо - теряешь контроль и дистанцируешься от стандартных команд.
Рано или поздно, буду пробовать и его тоже.
Однажды пыталася написать ротацию логов в винде на повершелле. В итоге ретировался и скопипастаил готовый батник.
Если у тебя есть успешный опыт - рассказывай.
Я так понял главная беда любого ООП-шелла - это отсутствие структурированного вывода у большинства команд. Типа raw text абсолютно побоку на каком ЯП парсить. Павершелл вроде как предлагает кучу врапперов для типовых команд. Что с одной стороны хорошо - меньше говнокодить, а с другой плохо - теряешь контроль и дистанцируешься от стандартных команд.
Рано или поздно, буду пробовать и его тоже.
Как раз недавно искал какие есть шеллы кроме фиша, даша, баша и зсша. Спасибо за такой дваче-блог, анон.
Пытаюсь вкатиться в этот скриптинг, но возникло пара вопросов:
1)Чем зсш отличается от баша/даша? Именно в плане скриптов, а не изкаробочного автокомплита
2)Где есть максимально подробный гайд по скриптам? Одни ифы пишутся как [[ ]], другие как [ ], а третьи как if [[ ]] ; then. Пиздец блять, и что использовать, почему синтаксис какой ебанутый? Почему не юзать просто скобачки как в си? Да и не понятно, что эти ифы возвращают - пытался написать [[ ! -a scripts ]] без && command и шелл нихуя не делал.
3) Как я понял, на эти альтернативные шеллы и смотреть не стоит, если я и в дефолтных не разбираюсь.
1)Чем зсш отличается от баша/даша? Именно в плане скриптов, а не изкаробочного автокомплита
2)Где есть максимально подробный гайд по скриптам? Одни ифы пишутся как [[ ]], другие как [ ], а третьи как if [[ ]] ; then. Пиздец блять, и что использовать, почему синтаксис какой ебанутый? Почему не юзать просто скобачки как в си? Да и не понятно, что эти ифы возвращают - пытался написать [[ ! -a scripts ]] без && command и шелл нихуя не делал.
3) Как я понял, на эти альтернативные шеллы и смотреть не стоит, если я и в дефолтных не разбираюсь.
>>570984 (OP)
Реквестую фото ОПа, поставленного раком.
Реквестую фото ОПа, поставленного раком.
>>570984 (OP)
Ты там из 70-х что ли пишешь? Привет Ритчи передавай. А так, gawk и egrep уже давно существуют, в которых этих проблем нет.
Бля. Используй перловку, Люк. Ларри Уолл специально сделал этот язык для таких задротов как ты. Но перловка видимо нимодная и нисовременная и очередной говнотред на дваче не создать.
>>571308
Ты разделом ошибся, здесь дети друга друга пердольками называют и пытаются активировать винду. А раздел педерастов-копрофагов в другом месте.
>>573256
1)Ничем
2)https://tiswww.case.edu/php/chet/bash/bashref.html#Looping-Constructs
3)Не стоит, хотя бы потому что они нахуй никому не нужны. Ну, можешь еще tcsh глянуть, если бзди интересуют.
>На днях меня сильно расстроил awk. В зависимости от имплементации он вёл себя по разному
>Потом я вспомнил, что разные имплементации grep парсят регулярки по разному
Ты там из 70-х что ли пишешь? Привет Ритчи передавай. А так, gawk и egrep уже давно существуют, в которых этих проблем нет.
>путон, лесп, помершелл
Бля. Используй перловку, Люк. Ларри Уолл специально сделал этот язык для таких задротов как ты. Но перловка видимо нимодная и нисовременная и очередной говнотред на дваче не создать.
>>571308
Ты разделом ошибся, здесь дети друга друга пердольками называют и пытаются активировать винду. А раздел педерастов-копрофагов в другом месте.
>>573256
1)Ничем
2)https://tiswww.case.edu/php/chet/bash/bashref.html#Looping-Constructs
3)Не стоит, хотя бы потому что они нахуй никому не нужны. Ну, можешь еще tcsh глянуть, если бзди интересуют.
>>571990
Померщель позволяет скриптоваться на C#, который мне кажется куда более вменяемым, нежели командлеты самой щели
Померщель позволяет скриптоваться на C#, который мне кажется куда более вменяемым, нежели командлеты самой щели
>>573527
В эпоху, когда твои скрипты будут запускать хрен знает в каких говноконтейнерах со спасибо-что-не-busybox, наличие эталонных реализация как-то не сильно успокаивает.
Бля у перла внезапно нет ни одной живой реализации командной строки. Ясен хрен, его в первую очередь начал гуглить.
> gawk и egrep уже давно существуют
В эпоху, когда твои скрипты будут запускать хрен знает в каких говноконтейнерах со спасибо-что-не-busybox, наличие эталонных реализация как-то не сильно успокаивает.
>Бля. Используй перловку
Бля у перла внезапно нет ни одной живой реализации командной строки. Ясен хрен, его в первую очередь начал гуглить.
34 Кб, 260x399
В общем докладываюсь. Второй день юзаю xonsh. Решил начать с него.
Во-первых у него одно из самых живых движух на гитхабе. Во-вторых у меня есть небольшой опыт бидонотворчества.
1) Ставится в одну строчку из репы или pip.
2) Есть своя встроенная система плагинов под названием xontrib.
3) Как команданя строка вполне юзабелен изкоробки.
Пока строчу однострочники.
Во-первых у него одно из самых живых движух на гитхабе. Во-вторых у меня есть небольшой опыт бидонотворчества.
1) Ставится в одну строчку из репы или pip.
2) Есть своя встроенная система плагинов под названием xontrib.
3) Как команданя строка вполне юзабелен изкоробки.
Пока строчу однострочники.
29 Кб, 862x248
Итак, прошло две недели, как я добровольно засунул себе этот двусторонний дилдо под названием xonsh. Опыт был интересный. Местами я даже получил удовольствие.
Сразу по плюсам:
1) Питон, сука, мощн. Во-первых нормальный структуры данных позволяет выкинуть на мороз половину традиционных костылей, забить на пробелы и дышать полной грудью.
2) Все эти слайсы, генераторы делают код сильно чище.
3) if
4) xonsh как консоль очень удобен. Изкоробки он изобилует всяким сахаром типа автокомплита параметров. Основные фичи типа реверсивного поиска, анду и тому подобному идентичны башу, переходить комфортно.
Сразу по плюсам:
1) Питон, сука, мощн. Во-первых нормальный структуры данных позволяет выкинуть на мороз половину традиционных костылей, забить на пробелы и дышать полной грудью.
2) Все эти слайсы, генераторы делают код сильно чище.
3) if
4) xonsh как консоль очень удобен. Изкоробки он изобилует всяким сахаром типа автокомплита параметров. Основные фичи типа реверсивного поиска, анду и тому подобному идентичны башу, переходить комфортно.
По минусам:
1) У питона и баша совершенно разные концепции. Первый дрочит на свой дзен. Второй на юниксвей. Часто эти концепции противоречат. Особенно когда у первого фокус на простоту и наглядность, а у второго - на пайплайны. Прощайте однострочники.
2) Местами питон многословен. Особенно везде где речь идёт о системе, файлах, процессах и пайплайнах. Все это нужно оборачивать в алиасы, подкостылиывать, оборачивать в проверки и так далее.
3) Импорт, пип, виртуаленв и прочие методы добавления фич с со стороны не требуют повышения прав, но зато сильно переусложнены на фоне классических менеджеров пакетов. Но это наварное дело привычки.
Вот простейший пример бесконечного лупа, который баше реализуется через while ; do echo xl sleep 1; done, тут интуитивно написать не выходит. Наивная реализация просто не останавливается ни по по ctrl-c, ни по ctrl-g, ни по pause break. Дело в том, что питону побоку, какой там код вернул поражённый процесс и нужно писать дополнительную проверку.
В целом скачать на этих двух стульях сразу - дело неблагодарное. Мозг с трудом переключает контекст, а для чёткого разделения кода на сегменты баш/питон в xonsh не хватает синтаксиса и идеологии.
Но нет худа без добра. Благодаря xonsh я перестал бояться скриптовать на питоне и теперь в равной степени пишу костыли как на bash, так и на ванильном python. Даже в проде.
Так что эксперимент продолжается.
1) У питона и баша совершенно разные концепции. Первый дрочит на свой дзен. Второй на юниксвей. Часто эти концепции противоречат. Особенно когда у первого фокус на простоту и наглядность, а у второго - на пайплайны. Прощайте однострочники.
2) Местами питон многословен. Особенно везде где речь идёт о системе, файлах, процессах и пайплайнах. Все это нужно оборачивать в алиасы, подкостылиывать, оборачивать в проверки и так далее.
3) Импорт, пип, виртуаленв и прочие методы добавления фич с со стороны не требуют повышения прав, но зато сильно переусложнены на фоне классических менеджеров пакетов. Но это наварное дело привычки.
Вот простейший пример бесконечного лупа, который баше реализуется через while ; do echo xl sleep 1; done, тут интуитивно написать не выходит. Наивная реализация просто не останавливается ни по по ctrl-c, ни по ctrl-g, ни по pause break. Дело в том, что питону побоку, какой там код вернул поражённый процесс и нужно писать дополнительную проверку.
В целом скачать на этих двух стульях сразу - дело неблагодарное. Мозг с трудом переключает контекст, а для чёткого разделения кода на сегменты баш/питон в xonsh не хватает синтаксиса и идеологии.
Но нет худа без добра. Благодаря xonsh я перестал бояться скриптовать на питоне и теперь в равной степени пишу костыли как на bash, так и на ванильном python. Даже в проде.
Так что эксперимент продолжается.
988 Кб, 2560x1600
>>570984 (OP)
Раньше, ты мог расказать это просто, но сейчас/ Во времена рекламы и грёбаного рынка, написал в тред, через несколько дней, это уже используют ради наживы. Если бы линуксоиды жили ради денег, пиздец бы они они были миллионерами,
Раньше, ты мог расказать это просто, но сейчас/ Во времена рекламы и грёбаного рынка, написал в тред, через несколько дней, это уже используют ради наживы. Если бы линуксоиды жили ради денег, пиздец бы они они были миллионерами,
6,1 Мб, webm,
523x720, 5:11
523x720, 5:11
>>584160
Лол, ты задетектил в этом аноне меня (т.е. "девочку" с анон.фм) на основании того что я тоже когда-то (довольно давно уже) этот видасик запостил?
Да ты ебанутый. Это не мой пост.
Но да, похоже мир тесен.
Лол, ты задетектил в этом аноне меня (т.е. "девочку" с анон.фм) на основании того что я тоже когда-то (довольно давно уже) этот видасик запостил?
Да ты ебанутый. Это не мой пост.
Но да, похоже мир тесен.
6 Мб, webm,
526x720, 3:29
526x720, 3:29
>>584317
fish. Но он недалеко от баша ушел. Кстати, почему у шелоов такой ебанутый синтаксис? Почему они не сделали его сиподобным, без вот этих [[ ]] , ;; и тд?
fish. Но он недалеко от баша ушел. Кстати, почему у шелоов такой ебанутый синтаксис? Почему они не сделали его сиподобным, без вот этих [[ ]] , ;; и тд?
>>584317
Они все задизайнены под работу с "системой, файлами, процессами, пайплайнми". На то они и шеллы. Просто в случае с xonsh это сделано при помощи костыльных sh вставок которые в теории должны прозрачно встраиваться в код. В теории. На практике - очень ограниченно и непредсказуемо, что проще всё на чистом питоне написать.
А так чисто внешне, в документации к третьей рубрике решения наиболее аккуратные. Впрочем неудивительно, это скобканутые постоянно топят за элегантность кода.
Они все задизайнены под работу с "системой, файлами, процессами, пайплайнми". На то они и шеллы. Просто в случае с xonsh это сделано при помощи костыльных sh вставок которые в теории должны прозрачно встраиваться в код. В теории. На практике - очень ограниченно и непредсказуемо, что проще всё на чистом питоне написать.
А так чисто внешне, в документации к третьей рубрике решения наиболее аккуратные. Впрочем неудивительно, это скобканутые постоянно топят за элегантность кода.
>>584390
Потому что шеллы изначально не были полноценными интерпретаторами с логикой. Это был ворох бинарников с параметрами, взаимодействующих друг с другом при помощи экзиткодов.
Вот элементарный иф:
[code]if [ '1' -le '2' ] ; then echo '123' ; fi[/code]
подзразумевает, что запускается бинарник с параметрами:
[code]/usr/bin/[ '1' -le '2' ]
который через код выхода сообщает if запускать код в разделе then или else.
Отсюда и требования к пробелам, требования к экранированию, требования точкам-с-запятыми и переносам строк. Современные шеллы, конечно, никакие бинарники не вызывают и калькулируют логику сами, но совместимость хранят.
>Кстати, почему у шелоов такой ебанутый синтаксис?
Потому что шеллы изначально не были полноценными интерпретаторами с логикой. Это был ворох бинарников с параметрами, взаимодействующих друг с другом при помощи экзиткодов.
Вот элементарный иф:
[code]if [ '1' -le '2' ] ; then echo '123' ; fi[/code]
подзразумевает, что запускается бинарник с параметрами:
[code]/usr/bin/[ '1' -le '2' ]
который через код выхода сообщает if запускать код в разделе then или else.
Отсюда и требования к пробелам, требования к экранированию, требования точкам-с-запятыми и переносам строк. Современные шеллы, конечно, никакие бинарники не вызывают и калькулируют логику сами, но совместимость хранят.
бамп
27 Кб, 510x334
> Альтернативные шеллы
Python/Go. Да хоть нодежс, к нему уже дохуя всего прикрутили.
> M3.019
Python/Go. Да хоть нодежс, к нему уже дохуя всего прикрутили.
бамп
Кому излишен баш можно попробовать ksh или mksh, но там долгое время был обидный баг с русскими символами.
Тред утонул или удален.
Это копия, сохраненная 21 августа 2019 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Это копия, сохраненная 21 августа 2019 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.