• Как составить регулярку для bash?

    @Z-r
    Регулярные выражения не нужны.

    file="my.mp3"
    declare -A MP3
    while read line; do
        [[ $line == *[^=]=[^=]* ]] || continue
        IFS='=' read key value <<< "$line"
        [[ -n $key ]] || continue
        MP3[$key]="$value"
    done <\
        <(ffprobe 2>&- -show_entries format "$file")
    echo "${MP3[TAG:artist]}" 
    echo "${MP3[TAG:album]}"
    echo "${MP3[TAG:title]}"


    Комментарии нужны?
    Ответ написан
    Комментировать
  • Какую выбрать лицензию авторского права?

    @Z-r
    Чем является «продукт»? Лицензии, как правило, пишутся под конкретный тип: программное обеспечение, книга, художественная работа (фотография, рисунок и пр.) и т. д.

    Что значит «распространять от своего имени»? Т. е. просто перераспространять?

    Если продукт — ПО, то пула несвободных лицензий, такого как свободных, просто нет — мелкие проприетарщики себе лицензии пишут индивидуально, подглядывая к соседу. Ничего сложного в этом нет — чтоб запрещать, много ума не надо. Но если вы опасаетесь, что не сможете сформулировать то, что вы изложили в вопросе, на хорошем английском, то можете воспользоваться каким-нибудь генератором, например: www.binpress.com/license/generator
    Ответ написан
    Комментировать
  • Как в терминале (bash) авторизоваться под root с сохранением окружения текущего пользователя (алиасы, переменные и п.р.)?

    @Z-r
    $ sudo -s -E, а не -i. Согласно ману sudo из поставки OS X оба этих ключа тоже умеет.

    P. S. В порядке недовольства: ну как вы тэги назначаете: к Башу вопрос имеет очень косвенное отношение (возьмите любую другую оболочку — ничего не изменится), к Линуксу — вообще ни малейшего, к Убунте — определенно меньшее чем к Макоси, которую вы в тэгах не упомянули, и наконец самое прямое — к sudo, которой опять же в тэгах нет.
    Ответ написан
    1 комментарий
  • Можно ли брать фотографии с Хаббла для коммерческого использования?

    @Z-r
    IANAL.

    А что там переводить. Там написано, что изображения, источником которых указан STScI, в общественном достоянии, а остальные — уточняйте.

    Дополнительно (по ссылке об этом нет) могу вам сообщить, что фотографии с Хаббла могут принадлежать не Североамериканскому, но Европейскому космическому агентству (http://www.spacetelescope.org), таковые снятые до 2009 года также в общественном достоянии, а более поздние — под свободной лицензией CC-BY.
    Ответ написан
    1 комментарий
  • Изображения под какими из свободных лицензий я могу использовать в шаблоне предназначенном для продажи?

    @Z-r
    IANAL.

    Вы можете использовать в своих корыстных целях работы под любыми из свободных лицензий. На то они и свободные. Тем не менее, использование некоторых из них может оказаться в данном случае весьма обременительным.

    Примеры свободных лицензий: СС0 и другие формулы передачи в общественное достояние, WTFPL, трехпунктовая лицензия BSD, CC-BY, CC-BY-SA, GNU GPL, GNU FDL.

    Здесь я их перечислил в порядке возрастания обременительности. GNU FDL — это лицензия для книг, она требует, чтоб у работы был помимо бинарной формы исходный код, и обязывает распространять свой полный текст вместе с работой — короче, для изображений подходит мало; тем не менее под нею существует довольно много картинок, ибо до 2008 года это была лицензия Википедии и родственных ей проектов. GNU GPL — лицензия в первую очередь для программ, соображения по применимости к изображениям те же; тем не менее по ней распространяется несколько пакетов иконок и, как мне подсказывает Гугль, некоторое количество этих ваших шаблонов для Вордпресса; так что вы ее тоже можете встретить.

    Эти две плюс CC-BY-SA — это лицензии «авторского лева» (англ. copyleft), они требуют, чтоб работа, производная от защищенной ими, тоже была свободна на условиях не более ограничительных. Если по зыбкому, но общепринятому мнению копилефтная иллюстрация к тексту свой копилефт на текст, оформление и другие иллюстрации не распространяет, ибо они достаточно друг от друга независимы; то элемент оформления на оформление в целом — скорее всего таки да.

    На первый взгляд, это не есть большая проблема, ибо вы, как человек высокоморальный, ведь и так будете продавать свою работу как свободную, верно? Но здесь возникает проблема совместимости лицензий — часть вы хотите заимствовать из работы под одной копилефтной лицензией, скажем GNU GPL, а часть — из под другой, скажем CC-BY-SA; обе требуют, чтоб итоговая работа была на тех же условиях — как же быть? Правильно, никак — комбинировать чужие работы под GNU GPL и CC-BY-SA в рамках своей просто нельзя.

    Что до несвободных лицензий, то хорошо известны, например CC-BY-NC и CC-BY-ND, CC-BY-NC-SA и CC-BY-NC-ND, а вообще сотни их, ибо написать для своих работ несвободную лицензию много ума не надо.
    Ответ написан
    Комментировать
  • Как сделать file name completion не по текущей директории, а по указанной в настройках?

    @Z-r
    > :set path не помогает

    И не должна, под :h i_CTRL-X_CTRL-F прямо сказано, что «the 'path' option is not used here (yet)».

    > из ~/second

    И как он должен узнать, откуда именно?

    > :chdir не советовать

    Тогда только написать свою функцию автодополнения (см. :h complete-functions) и переназначить <C-x><C-f> на нее.
    Ответ написан
  • Будет ли распространяться лицензия на Frontend?

    @Z-r
    Вы бы привели ссылку на репозиторий с этим «дизайном», что бы это слово не значило. Хотя бы потому, что какой-то опредленной лицензии с именем «лицензия BSD» не существует, их как минимум три: четырех-, трех- и двухпунктовая.

    По существу:

    1. IANAL

    2> Будет ли лицензия распространяться на frontend моего сервиса?

    Нет, лицензии «в стиле BSD» — это не лицензии авторского лева, ни на что вы ее распространять не обязаны. Впрочем, ваши немногие переработки этого «дизайна» чисто технически удобнее и этически корректнее лицензировать на тех же условиях, что и оригинал.

    3> должен ли я буду загружать файл лицензии?

    Да. По-моему, сложно не заметить, что от половины (в зависимости от варианта) текста лицензии (по ссылке трехпунктная) посвящено именно этому:

    (1) Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer. 
    
    (2) Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in
    the documentation and/or other materials provided with the
    distribution.
    Ответ написан
    Комментировать
  • Vim: как выделить несколько слов разной длины, находящиеся в несколько строк, в режиме блочного выделения?

    @Z-r
    Искоробочным Вимом так не сделать, но, кажется, можно с помощью плагина multiple-cursors. Оригинал terryma/vim-multiple-cursors не обновляется, как я сейчас смотрю, уже два года, возможно, вы захотите использовать форк kristijanhusak/vim-multiple-cursors.
    Ответ написан
  • Как в bash сравнивать числа по модулю?

    @Z-r
    Не, по-моему, не умеет Баш модуль брать. Но квадрат умеет:

    $ a=10
    $ b=13
    $ delta=5
    $ (((a-b)**2 <= delta**2)) && echo 'OK'
    Ответ написан
    Комментировать
  • Почему при вводе команды в shell появляються лишние символы в начале и в конце строки?

    @Z-r
    Это не лишний символ, это некорретно отображающаяся пара из открывающей и закрывающей одиночной кавычки, вот так должно быть: ‘/etc/localtime’

    Это проблема с кодировкой; увы, вы не дали достаточно вводных, чтоб можно было сказать, где́ именно эта проблема.
    Ответ написан
    Комментировать
  • Где продавать скрипты, основанные на коде MIT?

    @Z-r
    IANAL.

    1. Да, вы можете продавать и измененные, и не измененные скрипты, лицензированные на условиях из т. н. «лицензий MIT» (по крайней мере двух самых распространенных: Expat и X11), как впрочем и на условиях любой свободной лицензии: GNU GPL, GNU LGPL, Apache v2, и т. д.

    2. «Лицензии MIT» не позволяют вам менять себя в прямом смысле этого слова. Но они позволяют вам сублицензировать работу на более ограничительных условиях, в том числе и до степени утери свободы.

    (Разумеется, в создании своей несвободной работы на основе чужой свободной нет ничего хорошего — те, кто узнают про это, определенно не помянут вас добрым словом, но в данном случае вы вправе это сделать.)

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

    3. Но сообщить о включенном в состав вашей работы материале под одной из «лицензий MIT» и привести помимо имени правообладателя полный текст этой лицензии (включая отказ от гарантий) вы обязаны. Причем сделать это вам надо так, чтоб было понятно, что это не лицензия на весь ваш скрипт. Впрочем, это уже требование ваших корыстных интересов, а не лицензии.
    Ответ написан
  • Какую выбрать лицензию на OpenSource ПО?

    @Z-r
    Какой смысл вы вкладываете в набор букв «OpenSource», если на самом деле желаете писать проприетарный (несвободный, «closed source») продукт, который нельзя использовать в любых целях?

    По сути же, для проприетарных продуктов нет (и слава богу) такого пула готовых к употреблению лицензий, как для свободных — вы можете конечно, использовать какой-нибудь генератор типа www.binpress.com/license/generator, но обычно, насколько я знаю, лицензии для проприетарщины составляют в индивидуальном порядке.
    Ответ написан
  • Как бороться с уязвимостями на Android-смартфоне если ни производитель ни сообщество не выпускают к нему обновлений?

    @Z-r
    > что там [а Android’е] Bash и другие вещи, грубо говоря, те же, что в обычном Linux

    Чушь какая-то. В типовом Андроиде Баш не предустановлен. А если вы его сами поставили, то какие проблемы обновить? К Linux® Bash, кстати, тоже никакого отношения не имеет — это два абсолютно независимых друг от друга продукта.
    Ответ написан
    1 комментарий
  • Вопросы о лицензировании?

    @Z-r
    IANAL.

    > 2. Какие Creative Commons лицензии подходят для размещения (изображений) на своем сайте?

    Что значит «похдодят»? Вы имеете в виду, какие лицензии разрешают вам использовать чужие изображения на своем сайте? Тогда так.

    Если сайт заведомо некоммерческий, т. е. не предназначен для извлечения прибыли, а это значит, в частности, что на нем не размещается реклама, вы там ничего не продаете и т. д., то все. Иначе — те, что разрешают коммерческое использование, т. е. CC0, CC-BY, CC-BY-SA, CC-BY-ND.

    > 3. Размещение ссылки на автора, это как правильно: alt тэг или снизу или снизу ссылка - 'посмотреть авторов' с открытием нового окна

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

    > 4. Что можно делать с тем что встречается без указания лицензии?

    Ничего выходящего за рамки fair use.
    Ответ написан
    Комментировать
  • Как сформировать лицензию?

    @Z-r
    Шаблон текста, куда надо подставить название программы и ваше имя, есть, и он содержится в конце самой GNU GPL — в разделе «How to Apply These Terms to Your New Programs». Но если желаете, могу его процитировать:

    <one line to give the program's name and a brief idea of what it does.>
    Copyright (C) <year>  <name of author>
    
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.
    
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.


    Его нужно внести в начало каждого файла с исходным кодом. Также в корень проекта надо положить полный текст лицензии (вот он простым текстом) под именем, как правило, COPYING.

    Если у вашей программы есть интерфейс, то стоит позаботиться о том, чтобы помимо имени автора из него был доступен (например, через окно «О программе») и полный текст лицензии.

    Вот и все, ничего сложного.
    Ответ написан
    Комментировать
  • Разрешает ли GPL лицензия встраивать рекламу(например admob) в программу?

    @Z-r
    IANAL.

    Встраивать в приложение рекламу как таковую GNU GPL, а равно и любая другая свободная лицензия, не запрещает.

    Однако любой код, используемый в одном продукте с кодом под GNU GPL должен быть лицензирован на условиях, совместимых с GPL, так что итоговый продукт может и должен распространятся под GPL целиком.

    Что касается именно AdMob’а, то если я правильно понял, то он лицензирован под Apache License v2 (подчеркиваю — если, перепроверьте это непосредственно). А она совместима с GNU GPL v3, но несовместима с GNU GPL v2.
    Ответ написан
    Комментировать
  • Как автоматически экранировать символы в строковой переменной в shell?

    @Z-r
    $ printf '%q\n' 'foo\bar? baz!'
    foo\\bar\?\ baz\!
    Ответ написан
    Комментировать
  • Как задать условие в регулярном выражении?

    @Z-r
    Не уловил, зачем здесь lookahead, ERE хватит:

    /(\w)\s*(\(\+\s\w\))?/
    Ответ написан